Page MenuHomec4science

No OneTemporary

File Metadata

Created
Sun, Jun 22, 07:49
This file is larger than 256 KB, so syntax highlighting was skipped.
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/MedCo_ctrlr.js b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/MedCo_ctrlr.js
index b5236826e..a013cd779 100644
--- a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/MedCo_ctrlr.js
+++ b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/MedCo_ctrlr.js
@@ -1,273 +1,320 @@
/***********************
* @ProjectDescription Secure count query for sensitive genomic and clinical data with strong privacy guarantees.
* @inherits i2b2
* @namespace i2b2.MedCo
* @author LCA1 EPFL
* @version 0.1
* --------------------------------------------------------------------------------------------------------------------
* This plugin is based on Tutorial plugin and examples on the webclient plugin development guide.
*/
+// todo delete
function tryMedCoQuery() {
var query = "\\\\CLINICAL_NON_SENSITIVE\\medco\\clinical\\nonsensitive\\GENDER\\Male\\ OR " +
"\\\\CLINICAL_NON_SENSITIVE\\medco\\clinical\\nonsensitive\\GENDER\\Female\\" +
" AND " +
"\\\\SENSITIVE_TAGGED\\medco\\encrypted\\/98y5inj97O+26HXW8fJnbHDH0CCohmlCYNgMfgJ2mzufKVl8PBffruVGm1C05tqWxrXKPNF9AMghe8ELmNmzA==\\";
}
function tryPHP() {
var success = function (responseText) {
alert(responseText);
};
var error = function (err) {
alert("Error when trying to retrieve the variants from the database: " + err)
};
var phpQuery = 'js-i2b2/cells/plugins/MedCo/php/just_a_check.php';
i2b2.MedCo.ctrlr.phpGETRequest(success, error, phpQuery);
}
-i2b2.MedCo.Init = function(loadedDiv) {
- // setup model variables for this plugin
- // i2b2.MedCo.model.responseXML = '';
- // i2b2.MedCo.model.responseString = '';
- // i2b2.MedCo.model.requestQuery = '';
- // i2b2.MedCo.model.requestPSet = '';
- // i2b2.MedCo.model.requestQueryType = '';
- // i2b2.MedCo.model.requestQueryName = '';
- // i2b2.MedCo.model.prsRecord = undefined;
- // i2b2.MedCo.model.infoType = true;
- // i2b2.MedCo.model.varType = true;
- // i2b2.MedCo.view.tabId = 0;
- // set drag and drop
- // i2b2.sdx.Master.AttachType("medco-pset", "PRS", {dropTarget: true});
- // i2b2.sdx.Master.setHandlerCustom("medco-pset", "PRS", "DropHandler", i2b2.MedCo.ctrlr.prsDropped);
+// hardcoded keys
+// i2b2.MedCo.PubKey = "eQviK90cvJ2lRx8ox6GgQKFmOtbgoG9RXa7UnmemtRA=";
+i2b2.MedCo.SecKey = "iqLQz3zMlRjCyBrg4+303hsxL7F5vDtIaBxO0oc7gQA="; // decrypt the patient count with this
+i2b2.MedCo.AggregateKey = "GKrufk6bsuMwegxcPqr7B1aFWKit1szJlugZ01HkSPA="; // encrypt the variants with this
+// i2b2.MedCo.CothorityKeys = [
+// "5loqdN2/oXEhkrIEhwc0WCKYm9+c9zs10Y4TZgF6490=",
+// "UE9/SKV6zw3PezdxzDiFXzG776pQRXT2+SyXog7k6Dc=",
+// "LFGVRk/ghvIeGwIFv/ZAFKtM2UWcjSypaVx0YAOdkMU="];
+i2b2.MedCo.Init = function() {
// register handlers for the medco query tool panels
var panels = ["medcoQryToolPanel1", "medcoQryToolPanel2", "medcoQryToolPanel3"];
var eventRouterFunc =
[
function (sdxData) {i2b2.MedCo.doDrop(sdxData, 0);},
function (sdxData) {i2b2.MedCo.doDrop(sdxData, 1);},
function (sdxData) {i2b2.MedCo.doDrop(sdxData, 2);}];
for (var i = 0; i < panels.length; i++) {
var op_trgt = {dropTarget: true};
i2b2.sdx.Master.AttachType(panels[i], 'CONCPT', op_trgt);
- // i2b2.sdx.Master.AttachType(panels[i], 'QM', op_trgt);
- // i2b2.sdx.Master.AttachType(panels[i], 'QI', op_trgt);
- // i2b2.sdx.Master.AttachType(panels[i], 'PRS', op_trgt);
- // i2b2.sdx.Master.AttachType(panels[i], 'PRC', op_trgt);
- // i2b2.sdx.Master.AttachType(panels[i], 'PR', op_trgt);
- // i2b2.sdx.Master.AttachType(panels[i], 'QDEF', op_trgt);
- // i2b2.sdx.Master.AttachType(panels[i], 'QGDEF', op_trgt);
- // i2b2.sdx.Master.AttachType(panels[i], 'XML', op_trgt);
// register drop event handler
i2b2.sdx.Master.setHandlerCustom(panels[i], 'CONCPT', 'DropHandler', eventRouterFunc[i]);
- // i2b2.sdx.Master.setHandlerCustom(panels[i], 'QM', 'DropHandler', eventRouterFunc[i]);
- // i2b2.sdx.Master.setHandlerCustom(panels[i], 'QI', 'DropHandler', eventRouterFunc[i]);
- // i2b2.sdx.Master.setHandlerCustom(panels[i], 'PRS', 'DropHandler', eventRouterFunc[i]);
- // i2b2.sdx.Master.setHandlerCustom(panels[i], 'PRC', 'DropHandler', eventRouterFunc[i]);
- // i2b2.sdx.Master.setHandlerCustom(panels[i], 'PR', 'DropHandler', eventRouterFunc[i]);
- // i2b2.sdx.Master.setHandlerCustom(panels[i], 'QDEF', 'DropHandler', eventRouterFunc[i]);
- // i2b2.sdx.Master.setHandlerCustom(panels[i], 'QGDEF', 'DropHandler', eventRouterFunc[i]);
- // i2b2.sdx.Master.setHandlerCustom(panels[i], 'XML', 'DropHandler', eventRouterFunc[i]);
}
// manage YUI tabs
i2b2.MedCo.view.yuiTabs = new YAHOO.widget.TabView("MedCo-TABS", {activeIndex: 0});
// put in an array all the (three) panels for easier access
i2b2.MedCo.view.panels = document.getElementsByClassName("medcoQryToolPanel");
for (var i = 0 ; i < 3; i++){
i2b2.MedCo.view.panels[i].innerHTML = ""
}
// initialize empty parameter for the query (no panels content)
- i2b2.MedCo.model.panels = [[], [], []]; // three panels
+ i2b2.MedCo.model.panels = new Array(3); // three panels
+ for (var i=0; i<3; i++){
+ // each panel can contain sensitive and non_sensitive elements (the sensitive ones will be encrypted)
+ i2b2.MedCo.model.panels[i] = {};
+ i2b2.MedCo.model.panels[i].sensitive = [];
+ i2b2.MedCo.model.panels[i].non_sensitive = [];
+ }
// POPUPS initialization
i2b2.MedCo.ctrlr.popups.ByVariantName.init();
i2b2.MedCo.ctrlr.popups.ByGene.init();
// store how many responses I am waiting for (I have to wait to receive all the variants before sending the query)
// This variable is incremented by a popup when sending a query to retrieve some variants and is decremented every
// time it receives the response.
i2b2.MedCo.ctrlr.pendingVariantsQueries = 0;
+
+ // just check the crypto lib is working
+ // var pk,sk;
+ // var cipher, plain;
+ // [sk, pk] = GenKey();
+ // cipher = EncryptInt(pk, 20);
+ // plain = DecryptInt(cipher, sk);
+ // alert(plain)
};
i2b2.MedCo.Unload = function() {
// purge old data
i2b2.MedCo.model = {};
i2b2.MedCo.view = {};
return true;
};
i2b2.MedCo.doDrop = function(sdxData, nPanel) {
sdxData = sdxData[0]; // only interested in first record
// save the info to our local data model
- i2b2.MedCo.model.panels[nPanel].push(sdxData);
+ i2b2.MedCo.model.panels[nPanel].non_sensitive.push(sdxData);
// show the info to the user
i2b2.MedCo.view.panels[nPanel].innerHTML += sdxData.sdxInfo.sdxDisplayName + "<br>";
// CHECK: some usefull functions:
// alert(i2b2.h.getXNodeVal(sdxData.origData.xmlOrig, "level"))
// alert(Object.getOwnPropertyNames(sdxData.origData));
// optimization to prevent requerying the hive for new results if the input dataset has not changed
// i2b2.ExampTabs.model.dirtyResultsData = true;
// TODO if is "Genomic annotations" then open a popup to insert the annotations
// if (sdxData.sdxInfo.sdxDisplayName == "Laboratory Tests"){
// i2b2.MedCo.popupShow(nPanel);
// };
};
i2b2.MedCo.ctrlr.clear = function(){
for (var i = 0; i < i2b2.MedCo.view.panels.length; i++){
i2b2.MedCo.view.panels[i].innerHTML = "";
};
- i2b2.MedCo.model.panels = [[], [], []];
+ i2b2.MedCo.model.panels = new Array(3);
};
i2b2.MedCo.ctrlr.run = function(){
// show the loading gif
document.getElementById("MED-plainResult").innerHTML = "<img id=\"MED-loadingGif\" width=\"20px\" src=\"assets/images/spin.gif\">";
document.getElementById("MED-loadingGif").style.display = 'block';
// wait until you receive all the variants you requested
while (i2b2.MedCo.ctrlr.pendingVariantsQueries != 0) {
// try again later to run the query
setTimeout(i2b2.MedCo.ctrlr.run, 500);
return
}
// todo delete. just checking the variables correspond with the ones in the panels
// for (var i = 0; i<3; i++){
// alert(i2b2.MedCo.model.panels[i].map(function(e) {
// if (typeof e === 'object'){
// return e.sdxInfo.sdxDisplayName
// }else{
// return e
// }
// }
// )
// );
// }
// callback processor to run the query from definition
this.MedCocallback = new i2b2_scopedCallback();
this.MedCocallback.scope = this;
this.MedCocallback.callback = function(results) {
try{
// alert("full message" + JSON.stringify(results));
if (results.error) {
alert(results.errorMsg);
return;
} else {
// // "results" object contains the following attributes:
// // refXML: xmlDomObject <--- for data processing
// // msgRequest: xml (string)
// // msgResponse: xml (string)
// // error: boolean
// // errorStatus: string [only with error=true]
// // errorMsg: string [only with error=true]
// alert("response" + JSON.stringify(results.msgResponse));
// hide the loading gif
document.getElementById("MED-loadingGif").style.display = 'none';
// print the whole response
var logdiv = document.getElementById("mylog");
logdiv.innerHTML += "<br><br>RESPONSE:<br>" + i2b2.h.Escape(results.msgResponse);
// show the patient count
var qi_list = results.refXML.getElementsByTagName('query_result_instance');
var patientCount = i2b2.h.getXNodeVal(qi_list[0], 'set_size');
document.getElementById("MED-plainResult").innerHTML = patientCount;
}
} catch(e){
alert("exception")
}
};
this.MedCoparams = {};
this.MedCoparams.result_wait_time = 180;
- this.MedCoparams.psm_query_definition = i2b2.MedCo.ctrlr.QueryDefinition("MedCo_query"); // chose a name for the query
-
+ // this.MedCoparams.psm_query_definition = i2b2.MedCo.ctrlr.i2b2QueryDefinition("MedCo_query"); // chose a name for the query
+ this.MedCoparams.psm_query_definition = i2b2.MedCo.ctrlr.MedCoQueryDefinition("MedCo_query");
// // print the query
// var logdiv = document.getElementById("mylog");
// logdiv.innerHTML = i2b2.h.Escape(this.MedCoparams.psm_query_definition);
// sent the query
this.MedCoparams.psm_result_output = i2b2.MedCo.ctrlr.ResultOutput;
i2b2.CRC.ajax.runQueryInstance_fromQueryDefinition("PLUGIN:MedCo", this.MedCoparams, this.MedCocallback);
};
i2b2.MedCo.ctrlr.ResultOutput = "<result_output_list><result_output priority_index=\"9\" name=\"patient_count_xml\"/>\n</result_output_list>\n";
-// return the query xml
-i2b2.MedCo.ctrlr.QueryDefinition = function (name){
+
+// return the query xml body (to query the normal MedCo shrine cell)
+i2b2.MedCo.ctrlr.MedCoQueryDefinition = function (name){
+ // get the time of the query
+ var d = new Date();
+ var time = d.getHours().toString() + ":" + d.getMinutes().toString() + ":" + d.getSeconds().toString();
+
+ var queryxml = "<query_definition>\n\t<query_name>" + name + "@" + time + "</query_name>\n\t<query_timing>ANY</query_timing>\n\t<specificity_scale>0</specificity_scale>\n\t";
+
+ for (var i = 0 ; i < 3; i++){ // there are 3 panels
+ var non_sensitive = i2b2.MedCo.model.panels[i].non_sensitive;
+ var n_non_sens = non_sensitive.length;
+
+ var sensitive = i2b2.MedCo.model.panels[i].sensitive;
+ var n_sens = sensitive.length;
+
+ if (n_non_sens == 0 && n_sens==0) {continue} // if in the panel there are no parameters the go to the next panel
+
+ // open a panel object in which we put all its concepts
+ queryxml += "<panel>\n\t\t<panel_number>" + i + "</panel_number>\n\t\t<panel_accuracy_scale>100</panel_accuracy_scale>\n\t\t<invert>0</invert>\n\t\t<panel_timing>ANY</panel_timing>\n\t\t<total_item_occurrences>1</total_item_occurrences>\n\t\t";
+ // put the non sensitive concepts
+ for (var j = 0; j < n_non_sens; j++){
+ // inters an item object for every concept
+ queryxml += "\t\t<item>\n";
+ var non_sens_item = non_sensitive[j]; // this is an sdx object
+
+ non_sens_item.origData.key = (non_sens_item .origData.key).replace(/</g,"&lt;");
+ queryxml += '\t\t\t<item_key>' + non_sens_item .origData.key + '</item_key>\n';
+
+ queryxml += '\t\t</item>\n';
+ }
+ // put the sensitive concepts
+ for (var j = 0; j < n_sens; j++){
+ // inters an item object for every concept
+ queryxml += "\t\t<item>\n";
+ var sens_item = sensitive[j]; // thi is an integer
+
+ var cipher = EncryptInt(i2b2.MedCo.AggregateKey, sens_item);
+ queryxml += '\t\t\t<item_key>' + "\\\\ENCRYPTED_KEY\\" + cipher + "\\" + '</item_key>\n';
+
+ queryxml += '\t\t</item>\n';
+ }
+ queryxml +="\n\t</panel>\n"
+
+ }
+
+ queryxml += "\n</query_definition>\n";
+
+ return queryxml
+};
+
+
+// return the query xml body (to query the normal i2b2 crc)
+i2b2.MedCo.ctrlr.i2b2QueryDefinition = function (name){
//"<query_definition>\n\t<query_name>undefined</query_name>\n\t<query_timing>ANY</query_timing>\n\t<specificity_scale>0</specificity_scale>\n\t<panel>\n\t\t<panel_number>1</panel_number>\n\t\t<panel_accuracy_scale>100</panel_accuracy_scale>\n\t\t<invert>0</invert>\n\t\t<panel_timing>ANY</panel_timing>\n\t\t<total_item_occurrences>1</total_item_occurrences>\n\t\t<item>\n\t\t\t<hlevel>1</hlevel>\n\t\t\t<item_name>Procedures</item_name>\n\t\t\t<item_key>\\\\i2b2_PROC\\i2b2\\Procedures\\</item_key>\n\t\t\t<tooltip>Procedures</tooltip>\n\t\t\t<class>ENC</class>\n\t\t\t<item_icon>FA</item_icon>\n\t\t\t<item_is_synonym>false</item_is_synonym>\n\t\t</item>\n\t</panel>\n</query_definition>\n"
// get the time of the query
var d = new Date();
var time = d.getHours().toString() + ":" + d.getMinutes().toString() + ":" + d.getSeconds().toString();
var queryxml = "<query_definition>\n\t<query_name>" + name + "@" + time + "</query_name>\n\t<query_timing>ANY</query_timing>\n\t<specificity_scale>0</specificity_scale>\n\t";
// hardcoded query1 (result should be 102)
//queryxml += "<panel>\n\t\t<panel_number>1</panel_number>\n\t\t<panel_accuracy_scale>100</panel_accuracy_scale>\n\t\t<invert>0</invert>\n\t\t<panel_timing>ANY</panel_timing>\n\t\t<total_item_occurrences>1</total_item_occurrences>\n\t\t<item>\n\t\t\t<hlevel>1</hlevel>\n\t\t\t<item_name>Procedures</item_name>\n\t\t\t<item_key>\\\\i2b2_PROC\\i2b2\\Procedures\\</item_key>\n\t\t\t<tooltip>Procedures</tooltip>\n\t\t\t<class>ENC</class>\n\t\t\t<item_icon>FA</item_icon>\n\t\t\t<item_is_synonym>false</item_is_synonym>\n\t\t</item>\n\t</panel>";
// hardcoded query2 (result should be 36)
// queryxml += "<panel>\n\t\t<panel_number>1</panel_number>\n\t\t<panel_accuracy_scale>100</panel_accuracy_scale>\n\t\t<invert>0</invert>\n\t\t<panel_timing>ANY</panel_timing>\n\t\t<total_item_occurrences>1</total_item_occurrences>\n\t\t<item>\n\t\t\t<hlevel>2</hlevel>\n\t\t\t<item_name>Circulatory system</item_name>\n\t\t\t<item_key>\\\\i2b2_DIAG\\i2b2\\Diagnoses\\Circulatory system (390-459)\\</item_key>\n\t\t\t<tooltip>Diagnoses \\ Circulatory system</tooltip>\n\t\t\t<class>ENC</class>\n\t\t\t<item_icon>FA</item_icon>\n\t\t\t<item_is_synonym>false</item_is_synonym>\n\t\t</item>\n\t</panel>\n\t";
// queryxml += "<panel>\n\t\t<panel_number>2</panel_number>\n\t\t<panel_accuracy_scale>100</panel_accuracy_scale>\n\t\t<invert>0</invert>\n\t\t<panel_timing>ANY</panel_timing>\n\t\t<total_item_occurrences>1</total_item_occurrences>\n\t\t<item>\n\t\t\t<hlevel>2</hlevel>\n\t\t\t<item_name>Affymetrix HG-U133</item_name>\n\t\t\t<item_key>\\\\i2b2_EXPR\\i2b2\\Expression Profiles Data\\Affymetrix HG-U133\\</item_key>\n\t\t\t<tooltip>Expression Profiles Data\\Affymetrix HG-U133</tooltip>\n\t\t\t<class>ENC</class>\n\t\t\t<item_icon>FA</item_icon>\n\t\t\t<item_is_synonym>false</item_is_synonym>\n\t\t</item>\n\t\t<item>\n\t\t\t<hlevel>2</hlevel>\n\t\t\t<item_name>Skin diseases</item_name>\n\t\t\t<item_key>\\\\i2b2_DIAG\\i2b2\\Diagnoses\\Skin diseases (680-709)\\</item_key>\n\t\t\t<tooltip>Diagnoses \\ Skin diseases</tooltip>\n\t\t\t<class>ENC</class>\n\t\t\t<item_icon>FA</item_icon>\n\t\t\t<item_is_synonym>false</item_is_synonym>\n\t\t</item>\n\t</panel>\n\t";
// queryxml += "<panel>\n\t\t<panel_number>3</panel_number>\n\t\t<panel_accuracy_scale>100</panel_accuracy_scale>\n\t\t<invert>0</invert>\n\t\t<panel_timing>ANY</panel_timing>\n\t\t<total_item_occurrences>1</total_item_occurrences>\n\t\t<item>\n\t\t\t<hlevel>3</hlevel>\n\t\t\t<item_name>Diagnostic and nonsurgical procedures</item_name>\n\t\t\t<item_key>\\\\i2b2_PROC\\i2b2\\Procedures\\PRC\\ICD9 (Inpatient)\\(87-99) Diagnostic and nonsurgical procedures\\</item_key>\n\t\t\t<tooltip>Procedures \\ ICD9 (Inpatient) \\ Diagnostic and nonsurgical procedures</tooltip>\n\t\t\t<class>ENC</class>\n\t\t\t<item_icon>FA</item_icon>\n\t\t\t<item_is_synonym>false</item_is_synonym>\n\t\t</item>\n\t</panel>\n"
// hardcoded query2 it run even if there is only the key for the concepts
// queryxml += "<panel>\n\t\t<panel_number>1</panel_number>\n\t\t<panel_accuracy_scale>100</panel_accuracy_scale>\n\t\t<invert>0</invert>\n\t\t<panel_timing>ANY</panel_timing>\n\t\t<total_item_occurrences>1</total_item_occurrences>\n\t\t<item>\n\t\t\t<item_key>\\\\i2b2_DIAG\\i2b2\\Diagnoses\\Circulatory system (390-459)\\</item_key>\n\t\t</item>\n\t</panel>\n\t";
// queryxml += "<panel>\n\t\t<panel_number>2</panel_number>\n\t\t<panel_accuracy_scale>100</panel_accuracy_scale>\n\t\t<invert>0</invert>\n\t\t<panel_timing>ANY</panel_timing>\n\t\t<total_item_occurrences>1</total_item_occurrences>\n\t\t<item>\n\t\t\t<item_key>\\\\i2b2_EXPR\\i2b2\\Expression Profiles Data\\Affymetrix HG-U133\\</item_key>\n\t\t</item>\n\t\t<item>\n\t\t\t<item_key>\\\\i2b2_DIAG\\i2b2\\Diagnoses\\Skin diseases (680-709)\\</item_key>\n\t\t</item>\n\t</panel>\n\t";
// queryxml += "<panel>\n\t\t<panel_number>3</panel_number>\n\t\t<panel_accuracy_scale>100</panel_accuracy_scale>\n\t\t<invert>0</invert>\n\t\t<panel_timing>ANY</panel_timing>\n\t\t<total_item_occurrences>1</total_item_occurrences>\n\t\t<item>\n\t\t\t<item_key>\\\\i2b2_PROC\\i2b2\\Procedures\\PRC\\ICD9 (Inpatient)\\(87-99) Diagnostic and nonsurgical procedures\\</item_key>\n\t\t</item>\n\t</panel>\n"
for (var i = 0 ; i < 3; i++){ // there are 3 panels
- var params = i2b2.MedCo.model.panels[i];
+ var params = i2b2.MedCo.model.panels[i].non_sensitive;
var nparams = params.length;
if (nparams != 0) { // if in the panel there are no parameters the go to the next panel
// open a panel object in which we put all its concepts
queryxml += "<panel>\n\t\t<panel_number>" + i + "</panel_number>\n\t\t<panel_accuracy_scale>100</panel_accuracy_scale>\n\t\t<invert>0</invert>\n\t\t<panel_timing>ANY</panel_timing>\n\t\t<total_item_occurrences>1</total_item_occurrences>\n\t\t";
for (var j = 0; j < nparams; j++){
// inters an item object for every concept
queryxml += "\t\t<item>\n";
var sdxData = params[j];
sdxData.origData.key = (sdxData.origData.key).replace(/</g,"&lt;");
queryxml += '\t\t\t<item_key>' + sdxData.origData.key + '</item_key>\n';
- try {
- var t = i2b2.h.XPath(sdxData.origData.xmlOrig,'descendant::synonym_cd/text()');
- t = (t[0].nodeValue=="Y");
- } catch(e) {
- var t = "false";
- }
+ // ?
+ // try {
+ // var t = i2b2.h.XPath(sdxData.origData.xmlOrig,'descendant::synonym_cd/text()');
+ // t = (t[0].nodeValue=="Y");
+ // } catch(e) {
+ // var t = "false";
+ // }
+
// lab values ??
// if (sdxData.LabValues && !jQuery.isEmptyObject(sdxData.LabValues)) {
// queryxml += i2b2.CRC.view.modLabvaluesCtlr.getModLabValuesForXML(sdxData.LabValues);
// }
queryxml += '\t\t</item>\n';
}
queryxml +="\n\t</panel>\n"
}
}
queryxml += "\n</query_definition>\n";
return queryxml
};
function backslashX2(str) {
return str.replace("\\", "\\\\");
}
// whole harcoded query, should return 13
// <query_definition> <query_name>query3@9:47:2</query_name> <query_timing>ANY</query_timing> <specificity_scale>0</specificity_scale> <panel> <panel_number>0</panel_number> <panel_accuracy_scale>100</panel_accuracy_scale> <invert>0</invert> <panel_timing>ANY</panel_timing> <total_item_occurrences>1</total_item_occurrences> <item> <item_key>\\i2b2_PROC\i2b2\Procedures\PRC\ICD9 (Inpatient)\(87-99) Diagnostic and nonsurgical procedures\</item_key> <item_is_synonym>false</item_is_synonym> </item> </panel> <panel> <panel_number>1</panel_number> <panel_accuracy_scale>100</panel_accuracy_scale> <invert>0</invert> <panel_timing>ANY</panel_timing> <total_item_occurrences>1</total_item_occurrences> <item> <item_key>\\i2b2_PROV\i2b2\Providers\Emergency\</item_key> <item_is_synonym>false</item_is_synonym> </item> </panel> </query_definition>
\ No newline at end of file
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/README b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/README
index a489b2a08..bb23058c9 100644
--- a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/README
+++ b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/README
@@ -1,8 +1,8 @@
-This plugin make a php request to the server in order to retrieve the annotations.
+This plugin makes a php request to the server in order to retrieve the annotations.
The server will connect to a postgre server, therefore make sure to install
the package "sudo apt-get install php-pgsql" and restart the server. If it still
does not connect add to the php.ini "extension=php_pdo_pgsql.dll" and restart
again.
N.B. Change if necessary getAnnotations.php in order to connect correctly to the
database.
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/popup_ctrlr.js b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/popup_ctrlr.js
index fcd55cb13..3392ed1f5 100644
--- a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/popup_ctrlr.js
+++ b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/popup_ctrlr.js
@@ -1,940 +1,940 @@
// // check the paths are correct
// i2b2.MedCo.popup.getAnnotationPath = 'js-i2b2/cells/plugins/MedCo/getAnnotations.php';
// // in getAnnotationValuesPath append a variable called 'annotation_name' to specify the annotation
// i2b2.MedCo.popup.getAnnotationValuesPath = 'js-i2b2/cells/plugins/MedCo/getAnnotationValues.php';
// // in getVariantsPath append two variables 'annotation_name' and 'annotation_value' to respectively specify
// // the name and the value fo the annotation. Moreover, a variable 'panel_number' is needed too so to know
// // to which panel correspond the received response.
// i2b2.MedCo.popup.getVariantsPath = 'js-i2b2/cells/plugins/MedCo/getVariants.php';
i2b2.MedCo.ctrlr.popups = {};
// GENE POPUP
i2b2.MedCo.ctrlr.popups.ByGene = {
dialog: null,
// variable to access easily the popup
window: $("MedCo_genePopup"),
// input box in which the user will write. It is an <input type="search"> element
geneInputBox: document.querySelector("#searchGeneInputBox"),
// selection list to display the matching genes. It is a <select> element
geneList: document.querySelector("#geneList"),
// selection list with the 4 predefined options
zygosityList: {
heterozygousCheckbox:null,
homozygousCheckbox:null,
unknownCheckbox:null
},
// variable used for the popup to know to which panel it is bound
panelNumber: 0, // todo set this when opening the popup (at the drag)
// initialize the gene popup
init: function(){
var context = i2b2.MedCo.ctrlr.popups.ByGene;
context.window = $("MedCo_genePopup");
context.geneInputBox = document.querySelector("#searchGeneInputBox");
context.geneList = document.querySelector("#geneList");
// the three checkboxes
context.zygosityList.heterozygousCheckbox = document.querySelector("#heterozygousGenePopup");
context.zygosityList.homozygousCheckbox = document.querySelector("#homozygousGenePopup");
context.zygosityList.unknownCheckbox = document.querySelector("#unknownGenePopup");
// update the scrolldown list every time the user digits chars
context.geneInputBox
.addEventListener("keyup", context.getGenes.run);
context.panelNumber = 0;
context.getGenes.path = 'js-i2b2/cells/plugins/MedCo/php/getGenes.php';
context.getVariants.path = 'js-i2b2/cells/plugins/MedCo/php/getVariants.php';
var handleCancel = function() {
this.cancel();
};
var handleOk = function() {
var context = i2b2.MedCo.ctrlr.popups.ByGene;
// validate the fields
if (context.geneList.options.length < 1){
// todo: can the user not put any gene name and just search by zygosity? (most probably too many variants)
// if the drop down list is empty then
alert("Please, write down a gene name and pick one choice form the dropdown list.");
return;
}
if (context.zygosityList.heterozygousCheckbox.checked == false &&
context.zygosityList.homozygousCheckbox.checked == false &&
context.zygosityList.unknownCheckbox.checked == false) {
alert("Please, select at least one zygosity option.");
return;
}
if (context.geneInputBox.value.toLowerCase() != context.geneList.options[context.geneList.selectedIndex].text.toLowerCase()){
// if it is different then the user has still to pick one from the dropdown list
alert("Please, pick a gene name from the dropdown list.");
return;
}
// run the query to retrieve all the annotations with the specified gene and zygosyty
i2b2.MedCo.ctrlr.popups.ByGene.getVariants.run();
this.hide()
};
context.dialog = new YAHOO.widget.SimpleDialog("MedCo_genePopup", {
draggable: true,
zindex: 10000,
width: "500px",
// height: "200px",
autofillheight: "body",
constraintoviewport: true,
context: ["showbtn", "tl", "bl"],
fixedcenter: true,
modal: true,
buttons: [{
text: "OK",
handler: handleOk,
isDefault: true
}, {
text: "Cancel",
handler: handleCancel
}]
});
},
// show the popup
// panelNumber: specifies with which panel is the popup related
show: function(panelNumber) {
var context = i2b2.MedCo.ctrlr.popups.ByGene;
context.panelNumber = panelNumber;
// context.clear();
context.window.show();
context.dialog.render(document.body);
context.dialog.show();
},
// // hide the popup, not needed (events already registered to the various buttons)
// hide: function(){
// i2b2.MedCo.ctrlr.genePopup.popup.hide();
// i2b2.MedCo.ctrlr.genePopup.dialog.cancel();
// },
// clear (empty) all the elements
clear: function(){
// i2b2.MedCo.ctrlr.genePopup.geneInputBox.value = "";
// var list = i2b2.MedCo.ctrlr.genePopup.geneList;
// while (list.hasChildNodes()) {
// list.removeChild(list.lastChild);
// }
// todo clear fields?
},
// get the genes names from the database
getGenes: {
// Store some variables I need to efficiently manage the request
// path for the php request to retrieve the genes
path: 'js-i2b2/cells/plugins/MedCo/getGenes.php',
// if previousGene (which stores the "old" geneInputBox content) stays the same for a certain period
// of time then the user stopped writing => I retrieve from the database the matching genes
previousGene: "",
// here I store the last executed query so to avoid repeating it
lastGeneQueried: "",
// here I store the current timeout (so that I can stop it when I want)
timeoutGene: null,
run: function () {
var context = i2b2.MedCo.ctrlr.popups.ByGene.getGenes;
// (call run until the user stops writing)
// stop the previous call (every new digits trigger a getGenes() call)
clearTimeout(context.timeoutGene);
// take the current value and check if it is equal to the previous one
var currGene = i2b2.MedCo.ctrlr.popups.ByGene.geneInputBox.value.replace(/\s/g, ''); // remove whitespaces
if (currGene == ""){
// if it is empty then just empty the dropdown list
var list = i2b2.MedCo.ctrlr.popups.ByGene.geneList;
while (list.hasChildNodes()) {
list.removeChild(list.lastChild);
}
context.lastGeneQueried = "";
return;
}
if (currGene == context.lastGeneQueried) {
// if it is equal to the previous queried then I already have all the matching ones => do nothing
return;
}
if (currGene != context.previousGene) {
// if they were different then wait for the user to finish to write
context.previousGene = currGene;
context.timeoutGene = setTimeout(context.run, 500);
return;
}
// If you ended up here then the user stopped writing and we can execute the query
context.lastGeneQueried = currGene; // store the current query so to avoid repeating it
var success = function (responseText) {
var list = i2b2.MedCo.ctrlr.popups.ByGene.geneList;
// remove all the previous genes from the dropdown list
while (list.hasChildNodes()) {
list.removeChild(list.lastChild);
}
// todo sort the genes
var receivedGenes = JSON.parse(responseText);
for (var i = 0; i < receivedGenes.length; i++) {
var opt = document.createElement("option");
opt.value = receivedGenes[i];
opt.innerHTML = receivedGenes[i];
list.appendChild(opt);
}
// if there was only one match the copy that in the text box
if (receivedGenes.length == 1) {
i2b2.MedCo.ctrlr.popups.ByGene.geneInputBox.value = receivedGenes[0];
}
};
var error = function (err) {
alert("Error when trying to retrieve the gene values from the database: " + err)
};
var phpQuery =
context.path +
"?gene=" + currGene +
"&limit=20"; // todo is it ok 20?
i2b2.MedCo.ctrlr.phpGETRequest(success, error, phpQuery);
}
},
// run the query to retrieve the id of the variants
getVariants: {
path: 'js-i2b2/cells/plugins/MedCo/getVariants.php',
run: function () {
var context = i2b2.MedCo.ctrlr.popups.ByGene;
var geneName = context.geneInputBox.value;
var zygosyty = [];
if (context.zygosityList.heterozygousCheckbox.checked == true) {
zygosyty.push("Heterozygous")
}
if (context.zygosityList.homozygousCheckbox.checked == true) {
zygosyty.push("Homozygous")
}
if (context.zygosityList.unknownCheckbox.checked == true) {
zygosyty.push("Unknown")
}
var queryType = "gene_and_zygosity"; // used at the server side to know how to build the query
var success = function (responseText) {
alert(responseText)
var response = JSON.parse(responseText);
for(var i=0; i<response.variants.length; i++)
{
- i2b2.MedCo.model.panels[response.panel_number].push(response.variants[i]);
+ i2b2.MedCo.model.panels[response.panel_number].sensitive.push(response.variants[i]);
}
// I received the response so decrease the counter
- i2b2.MedCo.popups.variantsQueryCounter -= 1;
+ i2b2.MedCo.ctrlr.pendingVariantsQueries -= 1;
};
var error = function (err) {
alert("Error when trying to retrieve the variants from the database: " + err)
};
// increase the number of responses I should wait for
- i2b2.MedCo.ctrlr.variantsQueryCounter += 1;
+ i2b2.MedCo.ctrlr.pendingVariantsQueries += 1;
// better pass the panel number too. It will be returned with the response so that I bind it to a
// specific panel. (if the query is very slow it could happen that the user starts two queries in parallel
// which are related to two different panels).
var phpQuery =
context.getVariants.path +
"?query_type=" + queryType +
"&panel_number=" + context.panelNumber +
"&gene_name=" + geneName +
"&zygosity[]=" + zygosyty.join("&zygosity[]="); // build an array of zygosity options
i2b2.MedCo.ctrlr.phpGETRequest(success, error, phpQuery);
}
}
};
// VARIANT NAME POPUP
i2b2.MedCo.ctrlr.popups.ByVariantName = {
dialog: null,
// variable to access easily the popup's window
window: $("MedCo_variantNamePopup"),
// input box in which the user will write. It is an <input type="search"> element
variantNameInputBox: document.querySelector("#searchVariantNameInputBox"),
// selection list to display the matching VARIANT NAMES. It is a <select> element
variantNameList: document.querySelector("#variantNameList"),
//
// selection list with the 4 predefined options
zygosityList: {
heterozygousCheckbox:null,
homozygousCheckbox:null,
unknownCheckbox:null
},
// variable used for the popup to know to which panel it is bound
panelNumber: 0, // todo set this when opening the popup (at the drag)
// initialize the variant popup
init: function(){
var context = i2b2.MedCo.ctrlr.popups.ByVariantName;
context.window = $("MedCo_variantNamePopup");
context.variantNameInputBox = document.querySelector("#searchVariantNameInputBox");
context.variantNameList = document.querySelector("#variantNameList");
// the three checkboxes
context.zygosityList.heterozygousCheckbox = document.querySelector("#heterozygousVariantNamePopup");
context.zygosityList.homozygousCheckbox = document.querySelector("#homozygousVariantNamePopup");
context.zygosityList.unknownCheckbox = document.querySelector("#unknownVariantNamePopup");
// update the scrolldown list every time the user digits chars
context.variantNameInputBox
.addEventListener("keyup",
context.getVariantNames.run
);
context.panelNumber = 0;
context.getVariantNames.path = 'js-i2b2/cells/plugins/MedCo/php/getVariantNames.php';
context.getVariants.path = 'js-i2b2/cells/plugins/MedCo/php/getVariants.php';
var handleCancel = function() {
this.cancel();
};
var handleOk = function() {
var context = i2b2.MedCo.ctrlr.popups.ByVariantName;
// validate the fields
if (context.variantNameList.options.length < 1){
// if the drop down list is empty then
alert("Please, write down a variant name and pick one choice form the dropdown list.");
return;
}
if (context.variantNameInputBox.value.toLowerCase() !=
context.variantNameList.options[context.variantNameList.selectedIndex].text.toLowerCase()){
// if it is different then the user has still to pick one from the dropdown list
alert("Please, pick a variant name from the dropdown list.");
return;
}
if (context.zygosityList.heterozygousCheckbox.checked == false &&
context.zygosityList.homozygousCheckbox.checked == false &&
context.zygosityList.unknownCheckbox.checked == false) {
alert("Please, select at least one zygosity option.");
return;
}
// run the query to retrieve all the annotations with the specified variant name and zygosyty
i2b2.MedCo.ctrlr.popups.ByVariantName.getVariants.run();
this.hide()
};
context.dialog = new YAHOO.widget.SimpleDialog("MedCo_variantNamePopup", {
draggable: true,
zindex: 10000,
width: "500px",
// height: "200px",
autofillheight: "body",
constraintoviewport: true,
context: ["showbtn", "tl", "bl"],
fixedcenter: true,
modal: true,
buttons: [{
text: "OK",
handler: handleOk,
isDefault: true
}, {
text: "Cancel",
handler: handleCancel
}]
});
},
// show the popup
// panelNumber: specifies with which panel is the popup related
show: function(panelNumber) {
var context = i2b2.MedCo.ctrlr.popups.ByVariantName;
context.panelNumber = panelNumber;
// context.clear();
context.window.show();
context.dialog.render(document.body);
context.dialog.show();
},
// // hide the popup, not needed (events already registered to the various buttons)
// hide: function(){
// i2b2.MedCo.ctrlr.variantNamePopup.popups.hide();
// i2b2.MedCo.ctrlr.variantNamePopup.dialog.cancel();
// },
// clear (empty) all the elements
clear: function(){
// i2b2.MedCo.ctrlr.variantNamePopup.variantNameInputBox.value = "";
// var list = i2b2.MedCo.ctrlr.variantNamePopup.variantNameList;
// while (list.hasChildNodes()) {
// list.removeChild(list.lastChild);
// }
// todo clear fields?
},
// get the variant names from the database
getVariantNames: {
// Store some variables I need to efficiently manage the request
// path for the php request to retrieve the variant names
path: 'js-i2b2/cells/plugins/MedCo/php/getVariantNames.php',
// if previousVariant (which stores the "old" variantNameInputBox content) stays the same for a certain period
// of time then the user stopped writing => I retrieve from the database the matching variant names
previousVariantName: "",
// here I store the last executed query so to avoid repeating it
lastVariantQueried: "",
// here I store the current timeout (so that I can stop it when I want)
timeoutVariant: null,
run: function () {
var context = i2b2.MedCo.ctrlr.popups.ByVariantName.getVariantNames;
// (call run until the user stops writing)
// stop the previous call (every new digits trigger a getVariantNames() call)
clearTimeout(context.timeoutVariant);
// take the current value and check if it is equal to the previous one
var currVariantName = i2b2.MedCo.ctrlr.popups.ByVariantName.variantNameInputBox.value.replace(/\s/g, ''); // remove whitespaces
if (currVariantName == ""){
// if it is empty then just empty the dropdown list
var list = i2b2.MedCo.ctrlr.popups.ByVariantName.variantNameList;
while (list.hasChildNodes()) {
list.removeChild(list.lastChild);
}
context.lastVariantQueried = "";
return;
}
if (currVariantName == context.lastVariantQueried) {
// if it is equal to the previous query then do nothing
return;
}
if (currVariantName != context.previousVariantName) {
// if they are different then wait for the user to finish to write
context.previousVariantName = currVariantName;
context.timeoutVariant = setTimeout(context.run, 500);
return;
}
// If you ended up here then the user stopped writing and we can execute the query
context.lastVariantQueried = currVariantName; // store the current query so to avoid repeating it
var success = function (responseText) {
var list = i2b2.MedCo.ctrlr.popups.ByVariantName.variantNameList;
// remove all the previous variant names from the dropdown list
while (list.hasChildNodes()) {
list.removeChild(list.lastChild);
}
// todo sort the variant names
var receivedVariantNames= JSON.parse(responseText);
for (var i = 0; i < receivedVariantNames.length; i++) {
var opt = document.createElement("option");
opt.value = receivedVariantNames[i];
opt.innerHTML = receivedVariantNames[i];
list.appendChild(opt);
}
// if there was only one match the copy that in the text box
if (receivedVariantNames.length == 1) {
i2b2.MedCo.ctrlr.popups.ByVariantName.variantNameInputBox.value = receivedVariantNames[0];
}
};
var error = function (err) {
alert("Error when trying to retrieve the variant names from the database: " + err)
};
var phpQuery =
context.path +
"?variant_name=" + currVariantName +
"&limit=20"; // todo is it ok 20?
i2b2.MedCo.ctrlr.phpGETRequest(success, error, phpQuery);
}
},
// run the query to retrieve the id of the variants
getVariants: {
path: 'js-i2b2/cells/plugins/MedCo/php/getVariants.php',
run: function () {
var context = i2b2.MedCo.ctrlr.popups.ByVariantName;
var variantName = context.variantNameInputBox.value;
var zygosyty = [];
if (context.zygosityList.heterozygousCheckbox.checked == true) {
zygosyty.push("Heterozygous")
}
if (context.zygosityList.homozygousCheckbox.checked == true) {
zygosyty.push("Homozygous")
}
if (context.zygosityList.unknownCheckbox.checked == true) {
zygosyty.push("Unknown")
}
var queryType = "variantName_and_zygosity"; // used at the server side to know how to build the query
var success = function (responseText) {
alert(responseText); // todo delete
var response = JSON.parse(responseText);
for(var i=0; i<response.variants.length; i++)
{
- i2b2.MedCo.model.panels[response.panel_number].push(response.variants[i]);
+ i2b2.MedCo.model.panels[response.panel_number].sensitive.push(response.variants[i]);
}
// I received the response so decrease the counter
- i2b2.MedCo.popups.variantsQueryCounter -= 1;
+ i2b2.MedCo.ctrlr.pendingVariantsQueries -= 1;
};
var error = function (err) {
alert("Error when trying to retrieve the variants from the database: " + err)
};
// increase the number of responses I should wait for
- i2b2.MedCo.ctrlr.variantsQueryCounter += 1;
+ i2b2.MedCo.ctrlr.pendingVariantsQueries += 1;
// better pass the panel number too. It will be returned with the response so that I bind it to a
// specific panel. (if the query is very slow it could happen that the user starts two queries in parallel
// which are related to two different panels).
var phpQuery =
context.getVariants.path +
"?query_type=" + queryType +
"&panel_number=" + context.panelNumber +
"&variant_name=" + variantName +
"&zygosity[]=" + zygosyty.join("&zygosity[]="); // build an array of zygosity options
i2b2.MedCo.ctrlr.phpGETRequest(success, error, phpQuery);
}
}
};
// Manage the php requests.
// success: function that takes as input the response form the server
// error: function that takes as input the error code returned by the server
// phpQuery: string that contains the path and the parameters of the request
i2b2.MedCo.ctrlr.phpGETRequest = function (success, error, phpQuery) {
// create the request object to send the request and manage the response
var req = false;
try {
// most browsers
req = new XMLHttpRequest();
} catch (e) {
// IE
try {
req = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
// try an older version
try {
req = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
return false;
}
}
}
// if the http request obj has not been created then return
if (!req) return false;
// update the request object to act when receiving the response
req.onreadystatechange = function () {
if (req.readyState == 4) {
return req.status === 200 ?
success(req.responseText) : error(req.status);
}
};
req.open("GET", phpQuery, true);
req.send(null);
return req;
};
// OLD POPUP, TODO DELETE
// // initialize the popup: load the names of the annotations and register handlers to manage the automatic completion
// i2b2.MedCo.ctrlr.PopupInit = function (){
// // get the element to register the event handler (auto completion)
// var searchAnnotationBox = document.querySelector("#searchAnnotationBox");
// var annotations = document.querySelector("#annotationList"); // this will be loaded with all the annotations
//
// var searchAnnotationValueBox = document.querySelector("#searchAnnotationValueBox");
// var selectedAnnotationValue = document.querySelector("#selectedAnnotationValue");
// // (inefficient) var annotationValues = document.querySelector("#annotationValueList"); // this will be loaded with all the values an annotation can assume
//
// // load annotations from database (that will be shown when opening the popup)
// // the annotations name are loaded immediately (they are not too many) while the values of an annotation
// // are loaded only when that annotation is selected
// i2b2.MedCo.ctrlr.loadAnnotations();
//
// // autocompletion function, e is an <input type="search"> object, list is a <select> object
// function autoCompletionAnnotation (e, list) {
// var text = e.target.value;
// var lowerText = text.toLowerCase();
// var options = list.options;
// var initialOption = options[list.selectedIndex].text;
// var goodMatch = false;
// for (var i = 0; i < options.length; i++) {
// var option = options[i];
// var optionText = option.text;
// var regex = new RegExp("^" + text, "i");
// var match = optionText.match(regex);
// // best match
// if (match){ // if it starts the same the select this one
// option.selected = true;
// break;
// }
// // good match (still looking for a best match)
// var contains = optionText.indexOf(text) != -1;
// if(contains) {
// option.selected = true;
// goodMatch = true;
// }
// if (!goodMatch) { // if no good match was found then try this too
// // worse match (still looking for a good or best match)
// var lowerOptionText = optionText.toLowerCase();
// contains = lowerOptionText.indexOf(lowerText) != -1;
// if (contains) { // it contains the string select this one but go on with looking for a better match
// option.selected = true;
// }
// }
// option.selectedIndex = 0;
// }
// // if the selected annotation changed then reload its values
// var currOption = options[list.selectedIndex].text;
// if (initialOption != currOption) {
// // want to reduce the number of "loadAnnotationValues", if after some time the option didn't changed
// // then I suppose the user stopped typing
// setTimeout(
// function(){
// if(currOption == list.options[list.selectedIndex].text)
// i2b2.MedCo.ctrlr.loadAnnotationValues()
// }, 500);
// }
// }
//
// // showValue is an html object in which we will show the value
// function autoCompletionAnnotationValue (e, showValue) {
// var text = e.target.value;
// var lowerText = text.toLowerCase();
// var values = i2b2.MedCo.popup.annotationValues; // list of possible values []string
// var goodMatch = false;
// for (var i = 0; i < values.length; i++) {
// var valueText = values[i];
// var regex = new RegExp("^" + text, "i");
// var match = valueText.match(regex);
// // best match
// if (match){ // if it starts the same the select this one
// showValue.innerHTML = valueText;
// break;
// }
// // good match (still looking for a best match)
// var contains = valueText.indexOf(text) != -1;
// if(contains) {
// showValue.innerHTML = valueText;
// goodMatch = true;
// }
// if (!goodMatch) { // if no good match was found then try this too
// // worse match (still looking for a good or best match)
// var lowerValueText = valueText.toLowerCase();
// contains = lowerValueText.indexOf(lowerText) != -1;
// if (contains) { // it contains the string select this one but go on with looking for a better match
// showValue.innerHTML = valueText;
//
// }
// }
// }
// }
//
// // autocomplete the annotation name when entered
// searchAnnotationBox.addEventListener("keyup", function (e) {autoCompletionAnnotation(e, annotations)});
//
// // autocomplete the annotation value when entered
// searchAnnotationValueBox.addEventListener("keyup", function (e) {autoCompletionAnnotationValue(e, selectedAnnotationValue)});
//
//
// // variable used for the popup to know to which panel it is bound
// i2b2.MedCo.popup.panelNumber = 0;
// //variable to know which is the latest pending request sent for annotation values retrieval (the previous ones will be dropped)
// i2b2.MedCo.popup.latestAnnotationRequest = "";
//
// // store the current loaded annotation values
// i2b2.MedCo.popup.annotationValues = [];
//
// // a counter used to count how many queries the client sent and is still waiting for a response.
// // while this counter is > 0 the query cannot be built
// i2b2.MedCo.popup.variantsQueryCounter = 0;
// };
//
// i2b2.MedCo.popupShow = function (panelNumber) {
// i2b2.MedCo.popup.panelNumber = panelNumber;
// var messageBox=document.getElementById("annoMessage");
// // Center the messageBox
// // alert(messageBox.style.clientWidth)
// // messageBox.style.marginTop=-messageBox.style.height/2;
// // messageBox.style.marginLeft=-messageBox.style.width/2;
//
// // Show message box (and background)
// document.getElementById("MedCo_popupBackground").style.display="block";
// messageBox.style.display="block";
// };
//
// i2b2.MedCo.popupHide = function (){
// document.getElementById("MedCo_popupBackground").style.display="none";
// document.getElementById("annoMessage").style.display="none";
// };
//
// // i2b2.MedCo.popupEnterPressed = function (e) {
// // e = e || window.event;
// // if (e.keyCode == 13) // if enter is pressed ...
// // {
// // i2b2.MedCo.popupOk()
// // }
// // };
//
// i2b2.MedCo.popupOk = function(){
// // chosenAnnotationsElem = document.getElementById("chosen_annotations");
// // chosenAnnotationsElem.innerHTML = "";
//
// // var annotations = document.querySelector("#annotationList");
// // var selectedAnnotation = annotations.options[annotations.selectedIndex].text;
// //
// // var selectedAnnotationValue = document.querySelector("#selectedAnnotationValue").innerHTML;
// // var annotationValues = document.querySelector("#annotationValueList");
// // var selectedAnnotationValue = annotationValues.options[annotationValues.selectedIndex].text;
//
//
// // var annoVal = selectedAnnotation+":"+selectedAnnotationValue;
//
// // i2b2.MedCo.model.chosenAnnotations[i2b2.MedCo.popup.panelNumber].push(annoVal);
//
// // i2b2.MedCo.view.panels[i2b2.MedCo.popup.panelNumber].innerHTML += annoVal + "<br>";
//
//
// i2b2.MedCo.ctrlr.loadVariants(); // send php request
// i2b2.MedCo.popupHide();
// };
//
// // MANAGE PHP REQUEST
//
// // load the annotations from the database (done only when initializing the popup!)
// i2b2.MedCo.ctrlr.loadAnnotations = function () {
// // create the request object to send the request and manage the response
// var req = false;
// try{
// // most browsers
// req = new XMLHttpRequest();
// } catch (e){
// // IE
// try{
// req = new ActiveXObject("Msxml2.XMLHTTP");
// } catch(e) {
// // try an older version
// try{
// req = new ActiveXObject("Microsoft.XMLHTTP");
// } catch(e) {
// return false;
// }
// }
// }
// // if the http request obj has not been created then return
// if (!req) return false;
//
// // define two functions to manage the result received by the server
// var success = function (responseText) {
// // load the popup with the annotation names (you receive a json list of strings)
// var annotations = document.querySelector("#annotationList");
//
// // remove all children
// while (annotations.hasChildNodes()) {
// annotations.removeChild(annotations.lastChild);
// }
// // todo sort the annotations
// var receivedAnnotations = JSON.parse(responseText);
// for(var i=0; i<receivedAnnotations.length; i++)
// {
// var opt = document.createElement("option");
// opt.value = receivedAnnotations[i];
// opt.innerHTML = receivedAnnotations[i];
// annotations.appendChild(opt);
// }
// i2b2.MedCo.ctrlr.loadAnnotationValues();
// };
// var error = function (err) {
// alert("Error when trying to retrieve the annotations from the database." + err)
// };
//
// // update the request object to act when receiving the response
// req.onreadystatechange = function(){
// if(req.readyState == 4) {
// return req.status === 200 ?
// success(req.responseText) : error(req.status);
// }
// };
//
// req.open("GET", i2b2.MedCo.popup.getAnnotationPath, true);
// req.send(null);
// return req;
// };
//
// i2b2.MedCo.ctrlr.loadAnnotationValues = function (){
// // just reset the two elements relative to the annotation value
// var selectedAnnotationValue = document.querySelector("#selectedAnnotationValue");
// selectedAnnotationValue.innerHTML = "";
// var searchAnnotationValueBox = document.querySelector("#searchAnnotationValueBox");
// searchAnnotationValueBox.innerHTML = "";
//
// // don't use the select anymore
// // var annotationValues = document.querySelector("#annotationValueList");
// // // remove all options
// // while (annotationValues.firstChild) {
// // annotationValues.removeChild(annotationValues.firstChild);
// // }
//
// // show that we are loading the values
// // document.getElementById("MED-loadingValues").innerHTML = "<img id=\"MED-LoadingValuesGif\" width=\"15px\" src=\"assets/images/spin.gif\">";
// // document.getElementById("MED-LoadingValuesGif").style.display = 'block';
//
// // create the request object to send the request and manage the response
// var req = false;
// try{
// // most browsers
// req = new XMLHttpRequest();
// } catch (e){
// // IE
// try{
// req = new ActiveXObject("Msxml2.XMLHTTP");
// } catch(e) {
// // try an older version
// try{
// req = new ActiveXObject("Microsoft.XMLHTTP");
// } catch(e) {
// return false;
// }
// }
// }
// // if the http request obj has not been created then return
// if (!req) return false;
//
// // define two functions to manage the result received by the server
// var success = function (responseText) {
// // $%$ is used as delimeter (AnnotationName$%$[val1,...,valn])
// var response = responseText.split("$%$");
// if (response[0] != i2b2.MedCo.popup.latestAnnotationRequest){
// // if I received an old response just ignore it
// return
// }
//
// var receivedValues = JSON.parse(response[1].slice(1, -1));
// // load the annotation values in the popup
// // var annotationValues = document.querySelector("#annotationValueList"); // don't use anymore the select
// i2b2.MedCo.popup.annotationValues = [];
// for(var i = 0; i < receivedValues.length; i++)
// {
// i2b2.MedCo.popup.annotationValues.push(receivedValues[i].toString());
// // var opt = document.createElement("option");
// // opt.value = receivedValues[i];
// // opt.innerHTML = receivedValues[i];
// // annotationValues.appendChild(opt);
// }
// // hide the loading gif
// // document.getElementById("MED-LoadingValuesGif").style.display = 'none';
// };
// var error = function (err) {
// alert("Error when trying to retrieve the values of the annotation from the database."+err)
// };
//
// // update the request object to act when receiving the response
// req.onreadystatechange = function(){
// if(req.readyState == 4) {
// return req.status === 200 ?
// success(req.responseText) : error(req.status);
// }
// };
//
// // get the selected annotation
// var annotations = document.querySelector("#annotationList");
// var selectedAnnotation = annotations.options[annotations.selectedIndex].value;
// // store it so that I will know if the answer is the most recent
// i2b2.MedCo.popup.latestAnnotationRequest = selectedAnnotation;
//
// req.open("GET", i2b2.MedCo.popup.getAnnotationValuesPath + "?annotation_name=" + selectedAnnotation , true);
// req.send(null);
// return req;
// };
//
//
// i2b2.MedCo.ctrlr.loadVariants = function (){
// // create the request object to send the request and manage the response
// var req = false;
// try{
// // most browsers
// req = new XMLHttpRequest();
// } catch (e){
// // IE
// try{
// req = new ActiveXObject("Msxml2.XMLHTTP");
// } catch(e) {
// // try an older version
// try{
// req = new ActiveXObject("Microsoft.XMLHTTP");
// } catch(e) {
// return false;
// }
// }
// }
// // if the http request obj has not been created then return
// if (!req) return false;
//
// // define two functions to manage the result received by the server
// var success = function (responseText) {
// var response = JSON.parse(responseText);
// for(var i=0; i<response.variants.length; i++)
// {
// i2b2.MedCo.model.panels[response.panel_number].push(response.variants[i]);
// }
// // I received the response so decrease the counter
// i2b2.MedCo.popup.variantsQueryCounter -= 1;
// };
// var error = function (err) {
// alert("Error when trying to retrieve the variants from the database."+err)
// };
//
// // update the request object to act when receiving the response
// req.onreadystatechange = function(){
// if(req.readyState == 4) {
// return req.status === 200 ?
// success(req.responseText) : error(req.status);
// }
// };
//
// // just write down that there is one more response we are waiting for
// i2b2.MedCo.popup.variantsQueryCounter += 1;
//
// var annotations = document.querySelector("#annotationList");
// var selectedAnnotation = annotations.options[annotations.selectedIndex].value;
//
// var selectedValue = document.querySelector("#selectedAnnotationValue").innerHTML;
//
// req.open("GET", i2b2.MedCo.popup.getVariantsPath +
// "?annotation_name=" + selectedAnnotation +
// "&annotation_value=" + selectedValue +
// "&panel_number=" + i2b2.MedCo.popup.panelNumber, true);
// req.send(null);
// return req;
// };
\ No newline at end of file
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/MedCo_ctrlr.js b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/MedCo_ctrlr.js
similarity index 100%
copy from shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/MedCo_ctrlr.js
copy to shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/MedCo_ctrlr.js
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/README b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/README
similarity index 100%
copy from shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/README
copy to shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/README
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/close.gif b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/close.gif
new file mode 100644
index 000000000..f88aaac95
Binary files /dev/null and b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/close.gif differ
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/injected_screens.html b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/injected_screens.html
new file mode 100644
index 000000000..3f20cab38
--- /dev/null
+++ b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/injected_screens.html
@@ -0,0 +1,256 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+ <body>
+
+
+ <div id='MedCo-mainDiv'>
+
+ <div id="MedCo-TABS" class="yui-navset">
+
+ <!--tabs definitions-->
+ <ul class="yui-nav">
+ <li id="MedCo-TAB0" class="selected"><a href="#MedCo-TAB0"><em>Secure Query Dashboard</em></a></li>
+ <!--<li id="MedCo-TAB1"><a href="#MedCo-TAB1"><em>Genomic Annotations Attributes</em></a></li>-->
+ <!--<li id="MedCo-TAB2"><a href="#MedCo-TAB2"><em>Clinical Ontology Attributes</em></a></li>-->
+ <li id="MedCo-TAB3"><a href="#MedCo-TAB3"><em>Plugin Help</em></a></li>
+ </ul>
+ <!-- tabs definition -->
+
+ <div class="yui-content" id="MedCo-CONTENT">
+ <!-- Secure Query DashBoard tab -->
+ <div class="MedCo-Dashboard">
+ <!-- run - reset - drop patient set - query for query status - decrypt result -->
+
+ <div class="MedCo-ControlButtons">
+
+ <!-- old popup todo delete &lt;!&ndash; Popup &ndash;&gt;-->
+ <!--<div id="annoMessage" class="popupMessage">-->
+ <!--<div>-->
+ <!--<h1>Annotations</h1>-->
+ <!--<div style="margin: 5px 10px 10px 10px">-->
+ <!--<label>-->
+ <!--Select an annotation:-->
+ <!--<input type="search" id="searchAnnotationBox">-->
+ <!--<select id="annotationList" onchange="i2b2.MedCo.ctrlr.loadAnnotationValues()">-->
+
+ <!--</select>-->
+ <!--</label>-->
+
+ <!--<br>-->
+
+ <!--<label>-->
+ <!--Select a value:-->
+ <!--<input type="search" id="searchAnnotationValueBox">-->
+ <!--&lt;!&ndash;<div id="MED-loadingValues" style="float:left;"></div>&ndash;&gt;-->
+ <!--&lt;!&ndash;todo often too many values (20 000) the select is useless and slow&ndash;&gt;-->
+ <!--&lt;!&ndash;<select id="annotationValueList">&ndash;&gt;-->
+
+ <!--&lt;!&ndash;</select>&ndash;&gt;-->
+
+ <!--&lt;!&ndash;use span for inline text&ndash;&gt;-->
+ <!--<span id="selectedAnnotationValue"></span>-->
+ <!--</label>-->
+
+ <!--&lt;!&ndash;<br>&ndash;&gt;-->
+
+ <!--&lt;!&ndash;a textbox to write down annotations&ndash;&gt;-->
+ <!--&lt;!&ndash;<label>&ndash;&gt;-->
+ <!--&lt;!&ndash;Write the annotations separated by a ';':&ndash;&gt;-->
+ <!--&lt;!&ndash;<input&ndash;&gt;-->
+ <!--&lt;!&ndash;id="written_annotations"&ndash;&gt;-->
+ <!--&lt;!&ndash;type="text"&ndash;&gt;-->
+ <!--&lt;!&ndash;value="annotation x"&ndash;&gt;-->
+ <!--&lt;!&ndash;onkeypress="i2b2.MedCo.popupEnterPressed(event)">&ndash;&gt;-->
+ <!--&lt;!&ndash;</label>&ndash;&gt;-->
+
+ <!--<div>-->
+ <!--<input type="button" value="Ok" onclick="i2b2.MedCo.popupOk()" style="float: left">-->
+ <!--<input type="button" value="Cancel" onclick="i2b2.MedCo.popupHide()" style="float: right">-->
+ <!--</div>-->
+ <!--</div>-->
+
+
+ <!--</div>-->
+ <!--</div>-->
+ <!--&lt;!&ndash; &ndash;&gt;-->
+
+ <input type="button" onclick="i2b2.MedCo.ctrlr.popups.ByGene.show(1);" value="show gene popup"/>
+ <input type="button" onclick="i2b2.MedCo.ctrlr.popups.ByVariantName.show(1);" value="show variant name popup"/>
+ <input type="button" onclick="tryPHP();" value="check php"/>
+ <input type="button" onclick="tryMedCoQuery();" value="hardcoded query"/>
+
+ <h2 class="medcoQryToolTitle">Drop concepts here</h2>
+ <div class="medcoQryToolPanels">
+ <div>
+ <!--<div class="droptrgtlbl">Drop concepts here</div>-->
+ <div id="medcoQryToolPanel1" class="medcoQryToolPanel droptrgt SDX-PRS">
+ <p id="panel1content"> </p>
+ </div>
+ <div id="medcoQryToolPanel2" class="medcoQryToolPanel droptrgt SDX-PRS">
+ <p id="panel2content"> </p>
+ </div>
+ <div id="medcoQryToolPanel3" class="medcoQryToolPanel droptrgt SDX-PRS">
+ <p id="panel3content"> </p>
+ </div>
+
+ <!--&lt;!&ndash;Show chosen annotations&ndash;&gt;-->
+ <!--<div style="background-color: aliceblue; height: 100%; " class="medcoQryToolPanel">-->
+ <!--<h3>Chosen annotations: </h3>-->
+ <!--<p id="chosen_annotations"> </p>-->
+ <!--<input type="button" value="Clear" onclick="i2b2.MedCo.Clear()">-->
+ <!--</div>-->
+ <!--&lt;!&ndash; &ndash;&gt;-->
+ </div>
+ </div>
+
+
+ <div>
+ <div style="padding-top: 10px">
+ <div class="MED-Buttons">
+ <div class="runButton"><a href="JavaScript:i2b2.MedCo.ctrlr.run()">Run Query</a></div>
+ <div class="resetButton"><a href="JavaScript:i2b2.MedCo.ctrlr.clear()">Clear</a></div>
+ </div>
+
+ <table class="MED-resultTable">
+ <tbody>
+ <tr>
+ <td>Number of patients</td>
+ </tr>
+ <tr>
+ <td id="MED-plainResult">
+ -
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <!--<div class="statusBox"><a href="JavaScript:i2b2.MedCo.ctrlr.queryStatus()">Query Status</a></div>-->
+ <!-- status info goes into lower status div in i2b2 -->
+ </div>
+ </div>
+
+ <pre id="mylog" style="overflow: scroll; width: 100%; height: 100%;">
+
+ </pre>
+ </div>
+
+
+
+ </div>
+
+ <!-- Genomic Annotations Attributes tab -->
+ <!--<div>-->
+ <!--<div id="byGene" style="disply:block;">-->
+ <!--<div class="label">Genomic Annotations Search</div>-->
+ <!--<input type="string" name="gene_input" id="gene_input" class="medco-input"/>-->
+ <!--</div>-->
+
+ <!--<div id="annotations_display">-->
+ <!--&lt;!&ndash; dynamically inserted annotations text &ndash;&gt;-->
+ <!--&lt;!&ndash; TODO: autocompletion in text bow &ndash;&gt;-->
+
+ <!--</div>-->
+ <!--</div>-->
+
+ <!-- Clinical Ontology Attributes tab -->
+ <!--<div>-->
+ <!--<div id="secure_ontology_selector">-->
+ <!--&lt;!&ndash; dynamically inserted ontology query builder &ndash;&gt;-->
+
+ <!--</div>-->
+
+ <!--</div>-->
+
+
+ <!-- Plugin Help tab -->
+ <div>
+ <div class="MedCo-MainContent">
+ <div class="MedCo-MainContentPad">
+
+ </div>
+ </div>
+ </div>
+
+ <!-- gene popup -->
+ <div id="MedCo_genePopup" style="visibility: collapse;">
+ <div class="hd">Search by Gene</div>
+ <div class="bd">
+ <p>
+ Use the gene name box to specify the variant for which to search. When you
+ begin typing in the search box below, the dropdown list will be populated with
+ some matching options. Regular expressions are accepted.
+ </p>
+
+ <table class="MedCo_popupTable">
+ <tr>
+ <th> Gene Name* </th>
+ <td>
+ <input type="search" id="searchGeneInputBox">
+ </td>
+ <td>
+ <!-- todo I should update too when the user clicks the already selected option -->
+ <select id="geneList" onchange="
+ document.querySelector('#searchGeneInputBox').value = this.options[this.selectedIndex].text;">
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <th>Zygosity*</th>
+ <td colspan="2">
+ <div id="zygosityListGenePopup">
+ <label><input type="checkbox" id="heterozygousGenePopup">Heterozygous</label>
+ <label><input type="checkbox" id="homozygousGenePopup">Homozygous</label>
+ <label><input type="checkbox" id="unknownGenePopup">Unknown</label>
+ </div>
+ </td>
+ </tr>
+ </table>
+ </div>
+ </div>
+ <!-- -->
+
+ <!-- variant name popup -->
+ <div id="MedCo_variantNamePopup" style="visibility: collapse;">
+ <div class="hd">Search by variant name</div>
+ <div class="bd">
+ <p>
+ Use the variant name box to specify the variant for which to search. When you
+ begin typing in the search box below, the dropdown list will be populated with
+ some matching options. Regular expressions are accepted.
+ </p>
+
+ <table class="MedCo_popupTable">
+ <tr>
+ <th> Variant Name* </th>
+ <td>
+ <input type="search" id="searchVariantNameInputBox">
+ </td>
+ <td>
+ <!-- todo I should update too when the user clicks the already selected option -->
+ <select id="variantNameList" onchange="
+ document.querySelector('#searchVariantNameInputBox').value = this.options[this.selectedIndex].text;">
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <th>Zygosity*</th>
+ <td colspan="2">
+ <div id="zygosityListVariantNamePopup">
+ <label><input type="checkbox" id="heterozygousVariantNamePopup">Heterozygous</label>
+ <label><input type="checkbox" id="homozygousVariantNamePopup">Homozygous</label>
+ <label><input type="checkbox" id="unknownVariantNamePopup">Unknown</label>
+ </div>
+ </td>
+ </tr>
+ </table>
+ </div>
+ </div>
+ <!-- -->
+
+ </div>
+ </div>
+ </div>
+ </body>
+</html>
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/loading.gif b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/loading.gif
new file mode 100644
index 000000000..b57e4d820
Binary files /dev/null and b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/loading.gif differ
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/spin.gif b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/spin.gif
new file mode 100644
index 000000000..5169619be
Binary files /dev/null and b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/spin.gif differ
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/vwMedCo.css b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/vwMedCo.css
new file mode 100644
index 000000000..35095573a
--- /dev/null
+++ b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/vwMedCo.css
@@ -0,0 +1,418 @@
+/*** CSS for main plugin wrapper ***/
+
+DIV#MedCo-mainDiv {
+ padding: 0px;
+}
+
+
+
+/*** CSS for tab background ***/
+
+DIV#MedCo-TABS DIV.yui-content {
+ background: #FFF;
+}
+
+DIV#MedCo-TABS DIV.MedCo-Dashboard {
+ background:#FFF;
+ border:solid #63758C;
+ border-width:1px 0;
+ overflow:auto;
+ height:100%;
+}
+DIV#GEN-TABS DIV.GEN-MainContentPad {
+ padding:5px 10px;
+ overflow:hidden;
+
+}
+DIV#GEN-TABS DIV.GEN-QueryDefinitionPad {
+ background:#FFF;
+ padding:0px 20px;
+ margin-bottom:30px;
+ overflow:hidden;
+}
+DIV#GEN-TABS DIV.GEN-VariantDefinition {
+ float:left;
+ overflow:hidden;
+}
+DIV#GEN-TABS DIV.GEN-Buttons,
+DIV#GEN-TABS DIV.GEN-ResultTypes {
+ padding-left:20px;
+ margin-bottom:10px;
+ overflow:hidden;
+}
+
+
+/*** CSS for the Enter Note and View Results tabs ***/
+
+DIV#GEN-TABS .gen-input {
+ padding: 2px 10px;
+ background: #DEEBEF;
+ margin-top: 17px;
+ margin-bottom: 2px;
+ text-align:left;
+ width: 500px;
+ height: 28px;
+ border: 1px solid #63758C;
+ overflow:hidden;
+ float:left;
+}
+
+DIV#GEN-TABS DIV.label {
+ padding: 8px 0px;
+ width:80px;
+ height:16px;
+ overflow:hidden;
+ text-align:right;
+ float: left;
+ font-weight:bold;
+ color:#666;
+ margin: 15px 10px 0px 0px;
+}
+
+DIV#GEN-TABS DIV.label2 {
+ padding: 2px 0px;
+ width:80px;
+ height:16px;
+ overflow:hidden;
+ text-align:right;
+ float: left;
+ font-weight:bold;
+ color:#666;
+ margin: 15px 10px 0px 0px;
+}
+
+DIV#GEN-TABS DIV.label3 {
+ width:80px;
+ height:16px;
+ overflow:hidden;
+ text-align:right;
+ float: left;
+ font-weight:bold;
+ color:#666;
+ padding:0px 20px 5px 0px;
+}
+
+DIV#GEN-TABS select.gen-select {
+ width:200px;
+ height:20px;
+ overflow:hidden;
+ float:left;
+ background: #DEEBEF;
+ margin-top: 15px;
+ border: 1px solid #63758C;
+}
+
+DIV#GEN-TABS DIV.radio {
+ padding: 6px 0px;
+ width:120px;
+ height:20px;
+ overflow:hidden;
+ text-align:right;
+ float: left;
+ font-weight:bold;
+ color:#666;
+ margin: 15px 0px 0px 0px;
+}
+
+DIV#GEN-TABS DIV.droptrgt {
+ padding: 5px 10px;
+ background: #DEEBEF;
+ margin-top: 15px;
+ text-align:left;
+ border: 1px solid #63758C;
+ width:300px;
+ overflow:hidden;
+ white-space:nowrap;
+}
+
+DIV#GEN-TABS DIV.dropresult {
+ padding: 5px 10px;
+ background: #DEEBEF;
+ margin-bottom: 15px;
+ text-align:left;
+ border: 1px solid #63758C;
+ width:300px;
+ overflow:hidden;
+ white-space:nowrap;
+}
+
+DIV#GEN-TABS DIV.closeButton {
+ opacity:0.5;
+ background: url('close.gif');
+ background-size:12px 12px;
+ background-repeat: no-repeat;
+ height:12px;
+ width:12px;
+ float:right;
+ margin:2px -2px 0px 4px;
+}
+
+DIV#GEN-TABS DIV.loading {
+ background: url('spin.gif');
+ background-size:16px 16px;
+ background-repeat: no-repeat;
+ height:16px;
+ width:16px;
+ margin:0px 5px;
+ float:left;
+}
+
+DIV#GEN-TABS DIV.progress {
+ margin:0px 0px 10px 0px;
+}
+
+DIV#GEN-TABS DIV.resetBox,
+DIV#GEN-TABS DIV.runBox {
+ position:relative;
+ xdisplay:none;
+ background:#6677AA;
+ border:1px solid #667788;
+ color:#FFFFFF;
+ font-weight:bold;
+ font-family:arial,helvetica;
+ font-size:11px;
+ height:16px;
+ line-height:16px;
+ text-align:center;
+ color:#FFF;
+ cursor:pointer;
+ float: left;
+ margin:0px 5px 0px 0px;
+ width:72px;
+ xz-index:5;
+ overflow:hidden;
+}
+
+DIV#GEN-TABS DIV.resetBox a,
+DIV#GEN-TABS DIV.runBox a {
+ color:#FFF;
+ display:block;
+ text-decoration:none;
+}
+
+DIV#GEN-TABS DIV.resetBox a:hover,
+DIV#GEN-TABS DIV.runBox a:hover {
+ background-color:#7687bf;
+}
+
+
+/*** CSS for the Plugin Help tab ***/
+
+DIV#GEN-TABS H1 {
+ margin:0 0 10px 0;
+ font-size:16px;
+ color:#42558C;
+ font-weight:bold;
+}
+DIV#GEN-TABS H2 {
+ margin:10px 0 10px 0;
+ font-size:13px;
+ color:#42558C;
+ font-weight:bold;
+}
+DIV#GEN-TABS HR {
+ margin:0;
+}
+
+
+
+/*!*Added 11/09/2017*!*/
+
+/*!*Popup*!*/
+/*.popupBackground {*/
+ /*display: none;*/
+ /*opacity: .75;*/
+ /*filter: alpha(opacity=75);*/
+ /*-ms-filter: "alpha(opacity=75)";*/
+ /*-khtml-opacity: .75;*/
+ /*-moz-opacity: .75;*/
+ /*background: #B8B8B8;*/
+ /*position: absolute;*/
+ /*left: 0px;*/
+ /*top: 0px;*/
+ /*height: 100%;*/
+ /*width: 100%;*/
+ /*z-index:990*/
+/*}*/
+
+/*.popupMessage {*/
+ /*display: none;*/
+ /*position: absolute;*/
+ /*left: 50%;*/
+ /*top: 50%;*/
+ /*!*height: 250px;*!*/
+ /*!*width: 550px;*!*/
+ /*!*margin-top should be half of the height*!*/
+ /*margin-top: -125px;*/
+ /*!*margin-left should be half of the width*!*/
+ /*margin-left: -275px;*/
+ /*background: #BBCCEE;*/
+ /*border: 1px solid #ccc;*/
+ /*box-shadow: 3px 3px 7px #777;*/
+ /*-webkit-box-shadow: 3px 3px 7px #777;*/
+ /*-moz-border-radius: 5px;*/
+ /*-webkit-border-radius: 5px;*/
+ /*z-index:999*/
+/*}*/
+
+/*.popupMessage h1{*/
+ /*text-align:center;*/
+ /*background:#6677AA;*/
+ /*border:1px solid #314763;*/
+ /*color:#FFFFFF !important;*/
+ /*font-size:11px;*/
+ /*font-weight:bold;*/
+ /*height:13px;*/
+ /*line-height:12px;*/
+ /*padding: 5px;*/
+/*}*/
+
+/*.popupMessage input[type="button"]{*/
+ /*width: 100px;*/
+ /*margin: 5px;*/
+/*}*/
+
+/*div#selected_annotations label{*/
+ /*display: inline-block;*/
+ /*vertical-align: middle;*/
+/*}*/
+
+/*div#selected_annotations label input{*/
+ /*vertical-align: middle;*/
+/*}*/
+
+/* POPUPS */
+.hd {
+ color: #FFFFFF !important;
+ background: transparent !important;
+ background-image: url(images/top_hive.gif) !important;
+ background-repeat: repeat-x !important;
+ font-size:14px !important;
+ font-weight:bold !important;
+ cursor: move !important;
+}
+
+.bd {
+ background: #EFEFFF !important;
+
+ background:#FFF;
+ border:solid #63758C;
+ border-width:1px 0;
+ overflow:auto;
+ height:100%;
+}
+
+.MedCo_popupTable{
+ border-spacing: 0px 15px;
+}
+
+.MedCo_popupTable th{
+ width: auto;
+}
+
+.MedCo_popupTable tr td {
+ width: 400px;
+}
+
+.MedCo_popupTable tr td *{
+ width: 100%;
+}
+
+#zygosityListGenePopup,
+#zygosityListVariantNamePopup{
+ margin: auto;
+ width: auto;
+ vertical-align: middle;
+ float: left;
+ border: 2px solid #d5d5d5;
+}
+
+#zygosityListGenePopup label,
+#zygosityListVariantNamePopup label{
+ margin-left: 10px;
+ margin-right: 7px;
+ width: auto;
+ float: left;
+}
+
+#zygosityListGenePopup input,
+#zygosityListVariantNamePopup input{
+ width: auto;
+ vertical-align: middle;
+}
+
+/*reset and run Buttons*/
+DIV#MedCo-TABS DIV.MED-Buttons {
+ padding-left:20px;
+ margin-bottom:10px;
+ overflow:hidden;
+}
+
+DIV#MedCo-TABS DIV.resetButton,
+DIV#MedCo-TABS DIV.runButton {
+ position:relative;
+ xdisplay:none;
+ background:#6677AA;
+ border:1px solid #667788;
+ color:#FFFFFF;
+ font-weight:bold;
+ font-family:arial,helvetica;
+ font-size:11px;
+ height:16px;
+ line-height:16px;
+ text-align:center;
+ color:#FFF;
+ cursor:pointer;
+ float: left;
+ margin:0px 5px 0px 0px;
+ width:72px;
+ xz-index:5;
+ overflow:hidden;
+}
+
+DIV#MedCo-TABS DIV.resetButton a,
+DIV#MedCo-TABS DIV.runButton a {
+ color:#FFF;
+ display:block;
+ text-decoration:none;
+}
+
+DIV#MedCo-TABS DIV.resetButton a:hover,
+DIV#MedCo-TABS DIV.runButton a:hover {
+ background-color:#7687bf;
+}
+
+/*Result*/
+DIV#MedCo-TABS table.MED-resultTable{
+ width: 400px;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+ /*"Number of patient"*/
+DIV#MedCo-TABS table.MED-resultTable tr:first-child td{
+ background-color: #B0C4DE;
+ color: black;
+ text-align: center;
+ vertical-align: middle;
+}
+
+ /*count*/
+DIV#MedCo-TABS table.MED-resultTable tr:last-child td{
+ background-color: #B0C4DE;
+ color: darkblue;
+ text-align: center;
+ vertical-align: middle;
+ font-size: 45px;
+}
+
+/*loading query gif*/
+img#MED-loadingGif {
+ width:47px;
+ height:47px;
+ display: none;
+ text-align: center;
+ vertical-align: middle;
+ margin-left: auto;
+ margin-right: auto;
+}
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/vwMedcoQryTool.css b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/vwMedcoQryTool.css
new file mode 100755
index 000000000..b2746bd20
--- /dev/null
+++ b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/assets/vwMedcoQryTool.css
@@ -0,0 +1,22 @@
+.medcoQryToolTitle{
+ text-align: center;
+ margin: auto;
+ padding: 10px;
+}
+
+div.medcoQryToolPanels {
+ height: 200px;
+ width: 100%;
+}
+
+div.medcoQryToolPanel {
+ box-sizing: border-box;
+ padding: 3px;
+ background-color: #CBD8EF;
+ float: left;
+ width: 33%;
+ height: 100%;
+ /*margin: 2px;*/
+ border: 2px solid #3c4c5c;
+ overflow: scroll;
+}
\ No newline at end of file
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/cell_config_data.js b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/cell_config_data.js
new file mode 100644
index 000000000..4c640a4d2
--- /dev/null
+++ b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/cell_config_data.js
@@ -0,0 +1,31 @@
+// this file contains a list of all files that need to be loaded dynamically for this i2b2 Cell
+// every file in this list will be loaded after the cell's Init function is called
+{
+ files:[
+ "MedCo_ctrlr.js",
+ "i2b2_msgs.js",
+ "popup_ctrlr.js",
+ "cryptolib.js"
+ ],
+ css:[
+ "vwMedCo.css",
+ "vwMedcoQryTool.css"
+ ],
+ config: {
+ // additional configuration variables that are set by the system
+ short_name: "MedCo Plugin",
+ name: "MedCo Privacy-Preserving Query Plugin",
+ description: "This plugin allows to make query using a MedCo setup using a collective authority.",
+ //icons: { size32x32: "TUR_icon_32x32.gif" },
+ category: ["celless","plugin"], //TODO: plugin or cell??
+ plugin: {
+ isolateHtml: false, // this means do not use an IFRAME
+ isolateComm: false, // this means to expect the plugin to use AJAX communications provided by the framework
+ standardTabs: true, // this means the plugin uses standard tabs at top
+ html: {
+ source: 'injected_screens.html',
+ mainDivId: 'MedCo-mainDiv'
+ }
+ }
+ }
+}
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/cryptolib.js b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/cryptolib.js
new file mode 100755
index 000000000..c69081a5f
--- /dev/null
+++ b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/cryptolib.js
@@ -0,0 +1,54879 @@
+"use strict";
+(function() {
+
+Error.stackTraceLimit = Infinity;
+
+var $global, $module;
+if (typeof window !== "undefined") { /* web page */
+ $global = window;
+} else if (typeof self !== "undefined") { /* web worker */
+ $global = self;
+} else if (typeof global !== "undefined") { /* Node.js */
+ $global = global;
+ $global.require = require;
+} else { /* others (e.g. Nashorn) */
+ $global = this;
+}
+
+if ($global === undefined || $global.Array === undefined) {
+ throw new Error("no global object found");
+}
+if (typeof module !== "undefined") {
+ $module = module;
+}
+
+var $packages = {}, $idCounter = 0;
+var $keys = function(m) { return m ? Object.keys(m) : []; };
+var $flushConsole = function() {};
+var $throwRuntimeError; /* set by package "runtime" */
+var $throwNilPointerError = function() { $throwRuntimeError("invalid memory address or nil pointer dereference"); };
+var $call = function(fn, rcvr, args) { return fn.apply(rcvr, args); };
+var $makeFunc = function(fn) { return function() { return $externalize(fn(this, new ($sliceType($jsObjectPtr))($global.Array.prototype.slice.call(arguments, []))), $emptyInterface); }; };
+var $unused = function(v) {};
+
+var $mapArray = function(array, f) {
+ var newArray = new array.constructor(array.length);
+ for (var i = 0; i < array.length; i++) {
+ newArray[i] = f(array[i]);
+ }
+ return newArray;
+};
+
+var $methodVal = function(recv, name) {
+ var vals = recv.$methodVals || {};
+ recv.$methodVals = vals; /* noop for primitives */
+ var f = vals[name];
+ if (f !== undefined) {
+ return f;
+ }
+ var method = recv[name];
+ f = function() {
+ $stackDepthOffset--;
+ try {
+ return method.apply(recv, arguments);
+ } finally {
+ $stackDepthOffset++;
+ }
+ };
+ vals[name] = f;
+ return f;
+};
+
+var $methodExpr = function(typ, name) {
+ var method = typ.prototype[name];
+ if (method.$expr === undefined) {
+ method.$expr = function() {
+ $stackDepthOffset--;
+ try {
+ if (typ.wrapped) {
+ arguments[0] = new typ(arguments[0]);
+ }
+ return Function.call.apply(method, arguments);
+ } finally {
+ $stackDepthOffset++;
+ }
+ };
+ }
+ return method.$expr;
+};
+
+var $ifaceMethodExprs = {};
+var $ifaceMethodExpr = function(name) {
+ var expr = $ifaceMethodExprs["$" + name];
+ if (expr === undefined) {
+ expr = $ifaceMethodExprs["$" + name] = function() {
+ $stackDepthOffset--;
+ try {
+ return Function.call.apply(arguments[0][name], arguments);
+ } finally {
+ $stackDepthOffset++;
+ }
+ };
+ }
+ return expr;
+};
+
+var $subslice = function(slice, low, high, max) {
+ if (low < 0 || high < low || max < high || high > slice.$capacity || max > slice.$capacity) {
+ $throwRuntimeError("slice bounds out of range");
+ }
+ var s = new slice.constructor(slice.$array);
+ s.$offset = slice.$offset + low;
+ s.$length = slice.$length - low;
+ s.$capacity = slice.$capacity - low;
+ if (high !== undefined) {
+ s.$length = high - low;
+ }
+ if (max !== undefined) {
+ s.$capacity = max - low;
+ }
+ return s;
+};
+
+var $substring = function(str, low, high) {
+ if (low < 0 || high < low || high > str.length) {
+ $throwRuntimeError("slice bounds out of range");
+ }
+ return str.substring(low, high);
+};
+
+var $sliceToArray = function(slice) {
+ if (slice.$array.constructor !== Array) {
+ return slice.$array.subarray(slice.$offset, slice.$offset + slice.$length);
+ }
+ return slice.$array.slice(slice.$offset, slice.$offset + slice.$length);
+};
+
+var $decodeRune = function(str, pos) {
+ var c0 = str.charCodeAt(pos);
+
+ if (c0 < 0x80) {
+ return [c0, 1];
+ }
+
+ if (c0 !== c0 || c0 < 0xC0) {
+ return [0xFFFD, 1];
+ }
+
+ var c1 = str.charCodeAt(pos + 1);
+ if (c1 !== c1 || c1 < 0x80 || 0xC0 <= c1) {
+ return [0xFFFD, 1];
+ }
+
+ if (c0 < 0xE0) {
+ var r = (c0 & 0x1F) << 6 | (c1 & 0x3F);
+ if (r <= 0x7F) {
+ return [0xFFFD, 1];
+ }
+ return [r, 2];
+ }
+
+ var c2 = str.charCodeAt(pos + 2);
+ if (c2 !== c2 || c2 < 0x80 || 0xC0 <= c2) {
+ return [0xFFFD, 1];
+ }
+
+ if (c0 < 0xF0) {
+ var r = (c0 & 0x0F) << 12 | (c1 & 0x3F) << 6 | (c2 & 0x3F);
+ if (r <= 0x7FF) {
+ return [0xFFFD, 1];
+ }
+ if (0xD800 <= r && r <= 0xDFFF) {
+ return [0xFFFD, 1];
+ }
+ return [r, 3];
+ }
+
+ var c3 = str.charCodeAt(pos + 3);
+ if (c3 !== c3 || c3 < 0x80 || 0xC0 <= c3) {
+ return [0xFFFD, 1];
+ }
+
+ if (c0 < 0xF8) {
+ var r = (c0 & 0x07) << 18 | (c1 & 0x3F) << 12 | (c2 & 0x3F) << 6 | (c3 & 0x3F);
+ if (r <= 0xFFFF || 0x10FFFF < r) {
+ return [0xFFFD, 1];
+ }
+ return [r, 4];
+ }
+
+ return [0xFFFD, 1];
+};
+
+var $encodeRune = function(r) {
+ if (r < 0 || r > 0x10FFFF || (0xD800 <= r && r <= 0xDFFF)) {
+ r = 0xFFFD;
+ }
+ if (r <= 0x7F) {
+ return String.fromCharCode(r);
+ }
+ if (r <= 0x7FF) {
+ return String.fromCharCode(0xC0 | r >> 6, 0x80 | (r & 0x3F));
+ }
+ if (r <= 0xFFFF) {
+ return String.fromCharCode(0xE0 | r >> 12, 0x80 | (r >> 6 & 0x3F), 0x80 | (r & 0x3F));
+ }
+ return String.fromCharCode(0xF0 | r >> 18, 0x80 | (r >> 12 & 0x3F), 0x80 | (r >> 6 & 0x3F), 0x80 | (r & 0x3F));
+};
+
+var $stringToBytes = function(str) {
+ var array = new Uint8Array(str.length);
+ for (var i = 0; i < str.length; i++) {
+ array[i] = str.charCodeAt(i);
+ }
+ return array;
+};
+
+var $bytesToString = function(slice) {
+ if (slice.$length === 0) {
+ return "";
+ }
+ var str = "";
+ for (var i = 0; i < slice.$length; i += 10000) {
+ str += String.fromCharCode.apply(undefined, slice.$array.subarray(slice.$offset + i, slice.$offset + Math.min(slice.$length, i + 10000)));
+ }
+ return str;
+};
+
+var $stringToRunes = function(str) {
+ var array = new Int32Array(str.length);
+ var rune, j = 0;
+ for (var i = 0; i < str.length; i += rune[1], j++) {
+ rune = $decodeRune(str, i);
+ array[j] = rune[0];
+ }
+ return array.subarray(0, j);
+};
+
+var $runesToString = function(slice) {
+ if (slice.$length === 0) {
+ return "";
+ }
+ var str = "";
+ for (var i = 0; i < slice.$length; i++) {
+ str += $encodeRune(slice.$array[slice.$offset + i]);
+ }
+ return str;
+};
+
+var $copyString = function(dst, src) {
+ var n = Math.min(src.length, dst.$length);
+ for (var i = 0; i < n; i++) {
+ dst.$array[dst.$offset + i] = src.charCodeAt(i);
+ }
+ return n;
+};
+
+var $copySlice = function(dst, src) {
+ var n = Math.min(src.$length, dst.$length);
+ $copyArray(dst.$array, src.$array, dst.$offset, src.$offset, n, dst.constructor.elem);
+ return n;
+};
+
+var $copyArray = function(dst, src, dstOffset, srcOffset, n, elem) {
+ if (n === 0 || (dst === src && dstOffset === srcOffset)) {
+ return;
+ }
+
+ if (src.subarray) {
+ dst.set(src.subarray(srcOffset, srcOffset + n), dstOffset);
+ return;
+ }
+
+ switch (elem.kind) {
+ case $kindArray:
+ case $kindStruct:
+ if (dst === src && dstOffset > srcOffset) {
+ for (var i = n - 1; i >= 0; i--) {
+ elem.copy(dst[dstOffset + i], src[srcOffset + i]);
+ }
+ return;
+ }
+ for (var i = 0; i < n; i++) {
+ elem.copy(dst[dstOffset + i], src[srcOffset + i]);
+ }
+ return;
+ }
+
+ if (dst === src && dstOffset > srcOffset) {
+ for (var i = n - 1; i >= 0; i--) {
+ dst[dstOffset + i] = src[srcOffset + i];
+ }
+ return;
+ }
+ for (var i = 0; i < n; i++) {
+ dst[dstOffset + i] = src[srcOffset + i];
+ }
+};
+
+var $clone = function(src, type) {
+ var clone = type.zero();
+ type.copy(clone, src);
+ return clone;
+};
+
+var $pointerOfStructConversion = function(obj, type) {
+ if(obj.$proxies === undefined) {
+ obj.$proxies = {};
+ obj.$proxies[obj.constructor.string] = obj;
+ }
+ var proxy = obj.$proxies[type.string];
+ if (proxy === undefined) {
+ var properties = {};
+ for (var i = 0; i < type.elem.fields.length; i++) {
+ (function(fieldProp) {
+ properties[fieldProp] = {
+ get: function() { return obj[fieldProp]; },
+ set: function(value) { obj[fieldProp] = value; }
+ };
+ })(type.elem.fields[i].prop);
+ }
+ proxy = Object.create(type.prototype, properties);
+ proxy.$val = proxy;
+ obj.$proxies[type.string] = proxy;
+ proxy.$proxies = obj.$proxies;
+ }
+ return proxy;
+};
+
+var $append = function(slice) {
+ return $internalAppend(slice, arguments, 1, arguments.length - 1);
+};
+
+var $appendSlice = function(slice, toAppend) {
+ if (toAppend.constructor === String) {
+ var bytes = $stringToBytes(toAppend);
+ return $internalAppend(slice, bytes, 0, bytes.length);
+ }
+ return $internalAppend(slice, toAppend.$array, toAppend.$offset, toAppend.$length);
+};
+
+var $internalAppend = function(slice, array, offset, length) {
+ if (length === 0) {
+ return slice;
+ }
+
+ var newArray = slice.$array;
+ var newOffset = slice.$offset;
+ var newLength = slice.$length + length;
+ var newCapacity = slice.$capacity;
+
+ if (newLength > newCapacity) {
+ newOffset = 0;
+ newCapacity = Math.max(newLength, slice.$capacity < 1024 ? slice.$capacity * 2 : Math.floor(slice.$capacity * 5 / 4));
+
+ if (slice.$array.constructor === Array) {
+ newArray = slice.$array.slice(slice.$offset, slice.$offset + slice.$length);
+ newArray.length = newCapacity;
+ var zero = slice.constructor.elem.zero;
+ for (var i = slice.$length; i < newCapacity; i++) {
+ newArray[i] = zero();
+ }
+ } else {
+ newArray = new slice.$array.constructor(newCapacity);
+ newArray.set(slice.$array.subarray(slice.$offset, slice.$offset + slice.$length));
+ }
+ }
+
+ $copyArray(newArray, array, newOffset + slice.$length, offset, length, slice.constructor.elem);
+
+ var newSlice = new slice.constructor(newArray);
+ newSlice.$offset = newOffset;
+ newSlice.$length = newLength;
+ newSlice.$capacity = newCapacity;
+ return newSlice;
+};
+
+var $equal = function(a, b, type) {
+ if (type === $jsObjectPtr) {
+ return a === b;
+ }
+ switch (type.kind) {
+ case $kindComplex64:
+ case $kindComplex128:
+ return a.$real === b.$real && a.$imag === b.$imag;
+ case $kindInt64:
+ case $kindUint64:
+ return a.$high === b.$high && a.$low === b.$low;
+ case $kindArray:
+ if (a.length !== b.length) {
+ return false;
+ }
+ for (var i = 0; i < a.length; i++) {
+ if (!$equal(a[i], b[i], type.elem)) {
+ return false;
+ }
+ }
+ return true;
+ case $kindStruct:
+ for (var i = 0; i < type.fields.length; i++) {
+ var f = type.fields[i];
+ if (!$equal(a[f.prop], b[f.prop], f.typ)) {
+ return false;
+ }
+ }
+ return true;
+ case $kindInterface:
+ return $interfaceIsEqual(a, b);
+ default:
+ return a === b;
+ }
+};
+
+var $interfaceIsEqual = function(a, b) {
+ if (a === $ifaceNil || b === $ifaceNil) {
+ return a === b;
+ }
+ if (a.constructor !== b.constructor) {
+ return false;
+ }
+ if (a.constructor === $jsObjectPtr) {
+ return a.object === b.object;
+ }
+ if (!a.constructor.comparable) {
+ $throwRuntimeError("comparing uncomparable type " + a.constructor.string);
+ }
+ return $equal(a.$val, b.$val, a.constructor);
+};
+
+var $min = Math.min;
+var $mod = function(x, y) { return x % y; };
+var $parseInt = parseInt;
+var $parseFloat = function(f) {
+ if (f !== undefined && f !== null && f.constructor === Number) {
+ return f;
+ }
+ return parseFloat(f);
+};
+
+var $froundBuf = new Float32Array(1);
+var $fround = Math.fround || function(f) {
+ $froundBuf[0] = f;
+ return $froundBuf[0];
+};
+
+var $imul = Math.imul || function(a, b) {
+ var ah = (a >>> 16) & 0xffff;
+ var al = a & 0xffff;
+ var bh = (b >>> 16) & 0xffff;
+ var bl = b & 0xffff;
+ return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0) >> 0);
+};
+
+var $floatKey = function(f) {
+ if (f !== f) {
+ $idCounter++;
+ return "NaN$" + $idCounter;
+ }
+ return String(f);
+};
+
+var $flatten64 = function(x) {
+ return x.$high * 4294967296 + x.$low;
+};
+
+var $shiftLeft64 = function(x, y) {
+ if (y === 0) {
+ return x;
+ }
+ if (y < 32) {
+ return new x.constructor(x.$high << y | x.$low >>> (32 - y), (x.$low << y) >>> 0);
+ }
+ if (y < 64) {
+ return new x.constructor(x.$low << (y - 32), 0);
+ }
+ return new x.constructor(0, 0);
+};
+
+var $shiftRightInt64 = function(x, y) {
+ if (y === 0) {
+ return x;
+ }
+ if (y < 32) {
+ return new x.constructor(x.$high >> y, (x.$low >>> y | x.$high << (32 - y)) >>> 0);
+ }
+ if (y < 64) {
+ return new x.constructor(x.$high >> 31, (x.$high >> (y - 32)) >>> 0);
+ }
+ if (x.$high < 0) {
+ return new x.constructor(-1, 4294967295);
+ }
+ return new x.constructor(0, 0);
+};
+
+var $shiftRightUint64 = function(x, y) {
+ if (y === 0) {
+ return x;
+ }
+ if (y < 32) {
+ return new x.constructor(x.$high >>> y, (x.$low >>> y | x.$high << (32 - y)) >>> 0);
+ }
+ if (y < 64) {
+ return new x.constructor(0, x.$high >>> (y - 32));
+ }
+ return new x.constructor(0, 0);
+};
+
+var $mul64 = function(x, y) {
+ var high = 0, low = 0;
+ if ((y.$low & 1) !== 0) {
+ high = x.$high;
+ low = x.$low;
+ }
+ for (var i = 1; i < 32; i++) {
+ if ((y.$low & 1<<i) !== 0) {
+ high += x.$high << i | x.$low >>> (32 - i);
+ low += (x.$low << i) >>> 0;
+ }
+ }
+ for (var i = 0; i < 32; i++) {
+ if ((y.$high & 1<<i) !== 0) {
+ high += x.$low << i;
+ }
+ }
+ return new x.constructor(high, low);
+};
+
+var $div64 = function(x, y, returnRemainder) {
+ if (y.$high === 0 && y.$low === 0) {
+ $throwRuntimeError("integer divide by zero");
+ }
+
+ var s = 1;
+ var rs = 1;
+
+ var xHigh = x.$high;
+ var xLow = x.$low;
+ if (xHigh < 0) {
+ s = -1;
+ rs = -1;
+ xHigh = -xHigh;
+ if (xLow !== 0) {
+ xHigh--;
+ xLow = 4294967296 - xLow;
+ }
+ }
+
+ var yHigh = y.$high;
+ var yLow = y.$low;
+ if (y.$high < 0) {
+ s *= -1;
+ yHigh = -yHigh;
+ if (yLow !== 0) {
+ yHigh--;
+ yLow = 4294967296 - yLow;
+ }
+ }
+
+ var high = 0, low = 0, n = 0;
+ while (yHigh < 2147483648 && ((xHigh > yHigh) || (xHigh === yHigh && xLow > yLow))) {
+ yHigh = (yHigh << 1 | yLow >>> 31) >>> 0;
+ yLow = (yLow << 1) >>> 0;
+ n++;
+ }
+ for (var i = 0; i <= n; i++) {
+ high = high << 1 | low >>> 31;
+ low = (low << 1) >>> 0;
+ if ((xHigh > yHigh) || (xHigh === yHigh && xLow >= yLow)) {
+ xHigh = xHigh - yHigh;
+ xLow = xLow - yLow;
+ if (xLow < 0) {
+ xHigh--;
+ xLow += 4294967296;
+ }
+ low++;
+ if (low === 4294967296) {
+ high++;
+ low = 0;
+ }
+ }
+ yLow = (yLow >>> 1 | yHigh << (32 - 1)) >>> 0;
+ yHigh = yHigh >>> 1;
+ }
+
+ if (returnRemainder) {
+ return new x.constructor(xHigh * rs, xLow * rs);
+ }
+ return new x.constructor(high * s, low * s);
+};
+
+var $divComplex = function(n, d) {
+ var ninf = n.$real === Infinity || n.$real === -Infinity || n.$imag === Infinity || n.$imag === -Infinity;
+ var dinf = d.$real === Infinity || d.$real === -Infinity || d.$imag === Infinity || d.$imag === -Infinity;
+ var nnan = !ninf && (n.$real !== n.$real || n.$imag !== n.$imag);
+ var dnan = !dinf && (d.$real !== d.$real || d.$imag !== d.$imag);
+ if(nnan || dnan) {
+ return new n.constructor(NaN, NaN);
+ }
+ if (ninf && !dinf) {
+ return new n.constructor(Infinity, Infinity);
+ }
+ if (!ninf && dinf) {
+ return new n.constructor(0, 0);
+ }
+ if (d.$real === 0 && d.$imag === 0) {
+ if (n.$real === 0 && n.$imag === 0) {
+ return new n.constructor(NaN, NaN);
+ }
+ return new n.constructor(Infinity, Infinity);
+ }
+ var a = Math.abs(d.$real);
+ var b = Math.abs(d.$imag);
+ if (a <= b) {
+ var ratio = d.$real / d.$imag;
+ var denom = d.$real * ratio + d.$imag;
+ return new n.constructor((n.$real * ratio + n.$imag) / denom, (n.$imag * ratio - n.$real) / denom);
+ }
+ var ratio = d.$imag / d.$real;
+ var denom = d.$imag * ratio + d.$real;
+ return new n.constructor((n.$imag * ratio + n.$real) / denom, (n.$imag - n.$real * ratio) / denom);
+};
+
+var $kindBool = 1;
+var $kindInt = 2;
+var $kindInt8 = 3;
+var $kindInt16 = 4;
+var $kindInt32 = 5;
+var $kindInt64 = 6;
+var $kindUint = 7;
+var $kindUint8 = 8;
+var $kindUint16 = 9;
+var $kindUint32 = 10;
+var $kindUint64 = 11;
+var $kindUintptr = 12;
+var $kindFloat32 = 13;
+var $kindFloat64 = 14;
+var $kindComplex64 = 15;
+var $kindComplex128 = 16;
+var $kindArray = 17;
+var $kindChan = 18;
+var $kindFunc = 19;
+var $kindInterface = 20;
+var $kindMap = 21;
+var $kindPtr = 22;
+var $kindSlice = 23;
+var $kindString = 24;
+var $kindStruct = 25;
+var $kindUnsafePointer = 26;
+
+var $methodSynthesizers = [];
+var $addMethodSynthesizer = function(f) {
+ if ($methodSynthesizers === null) {
+ f();
+ return;
+ }
+ $methodSynthesizers.push(f);
+};
+var $synthesizeMethods = function() {
+ $methodSynthesizers.forEach(function(f) { f(); });
+ $methodSynthesizers = null;
+};
+
+var $ifaceKeyFor = function(x) {
+ if (x === $ifaceNil) {
+ return 'nil';
+ }
+ var c = x.constructor;
+ return c.string + '$' + c.keyFor(x.$val);
+};
+
+var $identity = function(x) { return x; };
+
+var $typeIDCounter = 0;
+
+var $idKey = function(x) {
+ if (x.$id === undefined) {
+ $idCounter++;
+ x.$id = $idCounter;
+ }
+ return String(x.$id);
+};
+
+var $newType = function(size, kind, string, named, pkg, exported, constructor) {
+ var typ;
+ switch(kind) {
+ case $kindBool:
+ case $kindInt:
+ case $kindInt8:
+ case $kindInt16:
+ case $kindInt32:
+ case $kindUint:
+ case $kindUint8:
+ case $kindUint16:
+ case $kindUint32:
+ case $kindUintptr:
+ case $kindUnsafePointer:
+ typ = function(v) { this.$val = v; };
+ typ.wrapped = true;
+ typ.keyFor = $identity;
+ break;
+
+ case $kindString:
+ typ = function(v) { this.$val = v; };
+ typ.wrapped = true;
+ typ.keyFor = function(x) { return "$" + x; };
+ break;
+
+ case $kindFloat32:
+ case $kindFloat64:
+ typ = function(v) { this.$val = v; };
+ typ.wrapped = true;
+ typ.keyFor = function(x) { return $floatKey(x); };
+ break;
+
+ case $kindInt64:
+ typ = function(high, low) {
+ this.$high = (high + Math.floor(Math.ceil(low) / 4294967296)) >> 0;
+ this.$low = low >>> 0;
+ this.$val = this;
+ };
+ typ.keyFor = function(x) { return x.$high + "$" + x.$low; };
+ break;
+
+ case $kindUint64:
+ typ = function(high, low) {
+ this.$high = (high + Math.floor(Math.ceil(low) / 4294967296)) >>> 0;
+ this.$low = low >>> 0;
+ this.$val = this;
+ };
+ typ.keyFor = function(x) { return x.$high + "$" + x.$low; };
+ break;
+
+ case $kindComplex64:
+ typ = function(real, imag) {
+ this.$real = $fround(real);
+ this.$imag = $fround(imag);
+ this.$val = this;
+ };
+ typ.keyFor = function(x) { return x.$real + "$" + x.$imag; };
+ break;
+
+ case $kindComplex128:
+ typ = function(real, imag) {
+ this.$real = real;
+ this.$imag = imag;
+ this.$val = this;
+ };
+ typ.keyFor = function(x) { return x.$real + "$" + x.$imag; };
+ break;
+
+ case $kindArray:
+ typ = function(v) { this.$val = v; };
+ typ.wrapped = true;
+ typ.ptr = $newType(4, $kindPtr, "*" + string, false, "", false, function(array) {
+ this.$get = function() { return array; };
+ this.$set = function(v) { typ.copy(this, v); };
+ this.$val = array;
+ });
+ typ.init = function(elem, len) {
+ typ.elem = elem;
+ typ.len = len;
+ typ.comparable = elem.comparable;
+ typ.keyFor = function(x) {
+ return Array.prototype.join.call($mapArray(x, function(e) {
+ return String(elem.keyFor(e)).replace(/\\/g, "\\\\").replace(/\$/g, "\\$");
+ }), "$");
+ };
+ typ.copy = function(dst, src) {
+ $copyArray(dst, src, 0, 0, src.length, elem);
+ };
+ typ.ptr.init(typ);
+ Object.defineProperty(typ.ptr.nil, "nilCheck", { get: $throwNilPointerError });
+ };
+ break;
+
+ case $kindChan:
+ typ = function(v) { this.$val = v; };
+ typ.wrapped = true;
+ typ.keyFor = $idKey;
+ typ.init = function(elem, sendOnly, recvOnly) {
+ typ.elem = elem;
+ typ.sendOnly = sendOnly;
+ typ.recvOnly = recvOnly;
+ };
+ break;
+
+ case $kindFunc:
+ typ = function(v) { this.$val = v; };
+ typ.wrapped = true;
+ typ.init = function(params, results, variadic) {
+ typ.params = params;
+ typ.results = results;
+ typ.variadic = variadic;
+ typ.comparable = false;
+ };
+ break;
+
+ case $kindInterface:
+ typ = { implementedBy: {}, missingMethodFor: {} };
+ typ.keyFor = $ifaceKeyFor;
+ typ.init = function(methods) {
+ typ.methods = methods;
+ methods.forEach(function(m) {
+ $ifaceNil[m.prop] = $throwNilPointerError;
+ });
+ };
+ break;
+
+ case $kindMap:
+ typ = function(v) { this.$val = v; };
+ typ.wrapped = true;
+ typ.init = function(key, elem) {
+ typ.key = key;
+ typ.elem = elem;
+ typ.comparable = false;
+ };
+ break;
+
+ case $kindPtr:
+ typ = constructor || function(getter, setter, target) {
+ this.$get = getter;
+ this.$set = setter;
+ this.$target = target;
+ this.$val = this;
+ };
+ typ.keyFor = $idKey;
+ typ.init = function(elem) {
+ typ.elem = elem;
+ typ.wrapped = (elem.kind === $kindArray);
+ typ.nil = new typ($throwNilPointerError, $throwNilPointerError);
+ };
+ break;
+
+ case $kindSlice:
+ typ = function(array) {
+ if (array.constructor !== typ.nativeArray) {
+ array = new typ.nativeArray(array);
+ }
+ this.$array = array;
+ this.$offset = 0;
+ this.$length = array.length;
+ this.$capacity = array.length;
+ this.$val = this;
+ };
+ typ.init = function(elem) {
+ typ.elem = elem;
+ typ.comparable = false;
+ typ.nativeArray = $nativeArray(elem.kind);
+ typ.nil = new typ([]);
+ };
+ break;
+
+ case $kindStruct:
+ typ = function(v) { this.$val = v; };
+ typ.wrapped = true;
+ typ.ptr = $newType(4, $kindPtr, "*" + string, false, "", exported, constructor);
+ typ.ptr.elem = typ;
+ typ.ptr.prototype.$get = function() { return this; };
+ typ.ptr.prototype.$set = function(v) { typ.copy(this, v); };
+ typ.init = function(pkgPath, fields) {
+ typ.pkgPath = pkgPath;
+ typ.fields = fields;
+ fields.forEach(function(f) {
+ if (!f.typ.comparable) {
+ typ.comparable = false;
+ }
+ });
+ typ.keyFor = function(x) {
+ var val = x.$val;
+ return $mapArray(fields, function(f) {
+ return String(f.typ.keyFor(val[f.prop])).replace(/\\/g, "\\\\").replace(/\$/g, "\\$");
+ }).join("$");
+ };
+ typ.copy = function(dst, src) {
+ for (var i = 0; i < fields.length; i++) {
+ var f = fields[i];
+ switch (f.typ.kind) {
+ case $kindArray:
+ case $kindStruct:
+ f.typ.copy(dst[f.prop], src[f.prop]);
+ continue;
+ default:
+ dst[f.prop] = src[f.prop];
+ continue;
+ }
+ }
+ };
+ /* nil value */
+ var properties = {};
+ fields.forEach(function(f) {
+ properties[f.prop] = { get: $throwNilPointerError, set: $throwNilPointerError };
+ });
+ typ.ptr.nil = Object.create(constructor.prototype, properties);
+ typ.ptr.nil.$val = typ.ptr.nil;
+ /* methods for embedded fields */
+ $addMethodSynthesizer(function() {
+ var synthesizeMethod = function(target, m, f) {
+ if (target.prototype[m.prop] !== undefined) { return; }
+ target.prototype[m.prop] = function() {
+ var v = this.$val[f.prop];
+ if (f.typ === $jsObjectPtr) {
+ v = new $jsObjectPtr(v);
+ }
+ if (v.$val === undefined) {
+ v = new f.typ(v);
+ }
+ return v[m.prop].apply(v, arguments);
+ };
+ };
+ fields.forEach(function(f) {
+ if (f.name === "") {
+ $methodSet(f.typ).forEach(function(m) {
+ synthesizeMethod(typ, m, f);
+ synthesizeMethod(typ.ptr, m, f);
+ });
+ $methodSet($ptrType(f.typ)).forEach(function(m) {
+ synthesizeMethod(typ.ptr, m, f);
+ });
+ }
+ });
+ });
+ };
+ break;
+
+ default:
+ $panic(new $String("invalid kind: " + kind));
+ }
+
+ switch (kind) {
+ case $kindBool:
+ case $kindMap:
+ typ.zero = function() { return false; };
+ break;
+
+ case $kindInt:
+ case $kindInt8:
+ case $kindInt16:
+ case $kindInt32:
+ case $kindUint:
+ case $kindUint8 :
+ case $kindUint16:
+ case $kindUint32:
+ case $kindUintptr:
+ case $kindUnsafePointer:
+ case $kindFloat32:
+ case $kindFloat64:
+ typ.zero = function() { return 0; };
+ break;
+
+ case $kindString:
+ typ.zero = function() { return ""; };
+ break;
+
+ case $kindInt64:
+ case $kindUint64:
+ case $kindComplex64:
+ case $kindComplex128:
+ var zero = new typ(0, 0);
+ typ.zero = function() { return zero; };
+ break;
+
+ case $kindPtr:
+ case $kindSlice:
+ typ.zero = function() { return typ.nil; };
+ break;
+
+ case $kindChan:
+ typ.zero = function() { return $chanNil; };
+ break;
+
+ case $kindFunc:
+ typ.zero = function() { return $throwNilPointerError; };
+ break;
+
+ case $kindInterface:
+ typ.zero = function() { return $ifaceNil; };
+ break;
+
+ case $kindArray:
+ typ.zero = function() {
+ var arrayClass = $nativeArray(typ.elem.kind);
+ if (arrayClass !== Array) {
+ return new arrayClass(typ.len);
+ }
+ var array = new Array(typ.len);
+ for (var i = 0; i < typ.len; i++) {
+ array[i] = typ.elem.zero();
+ }
+ return array;
+ };
+ break;
+
+ case $kindStruct:
+ typ.zero = function() { return new typ.ptr(); };
+ break;
+
+ default:
+ $panic(new $String("invalid kind: " + kind));
+ }
+
+ typ.id = $typeIDCounter;
+ $typeIDCounter++;
+ typ.size = size;
+ typ.kind = kind;
+ typ.string = string;
+ typ.named = named;
+ typ.pkg = pkg;
+ typ.exported = exported;
+ typ.methods = [];
+ typ.methodSetCache = null;
+ typ.comparable = true;
+ return typ;
+};
+
+var $methodSet = function(typ) {
+ if (typ.methodSetCache !== null) {
+ return typ.methodSetCache;
+ }
+ var base = {};
+
+ var isPtr = (typ.kind === $kindPtr);
+ if (isPtr && typ.elem.kind === $kindInterface) {
+ typ.methodSetCache = [];
+ return [];
+ }
+
+ var current = [{typ: isPtr ? typ.elem : typ, indirect: isPtr}];
+
+ var seen = {};
+
+ while (current.length > 0) {
+ var next = [];
+ var mset = [];
+
+ current.forEach(function(e) {
+ if (seen[e.typ.string]) {
+ return;
+ }
+ seen[e.typ.string] = true;
+
+ if (e.typ.named) {
+ mset = mset.concat(e.typ.methods);
+ if (e.indirect) {
+ mset = mset.concat($ptrType(e.typ).methods);
+ }
+ }
+
+ switch (e.typ.kind) {
+ case $kindStruct:
+ e.typ.fields.forEach(function(f) {
+ if (f.name === "") {
+ var fTyp = f.typ;
+ var fIsPtr = (fTyp.kind === $kindPtr);
+ next.push({typ: fIsPtr ? fTyp.elem : fTyp, indirect: e.indirect || fIsPtr});
+ }
+ });
+ break;
+
+ case $kindInterface:
+ mset = mset.concat(e.typ.methods);
+ break;
+ }
+ });
+
+ mset.forEach(function(m) {
+ if (base[m.name] === undefined) {
+ base[m.name] = m;
+ }
+ });
+
+ current = next;
+ }
+
+ typ.methodSetCache = [];
+ Object.keys(base).sort().forEach(function(name) {
+ typ.methodSetCache.push(base[name]);
+ });
+ return typ.methodSetCache;
+};
+
+var $Bool = $newType( 1, $kindBool, "bool", true, "", false, null);
+var $Int = $newType( 4, $kindInt, "int", true, "", false, null);
+var $Int8 = $newType( 1, $kindInt8, "int8", true, "", false, null);
+var $Int16 = $newType( 2, $kindInt16, "int16", true, "", false, null);
+var $Int32 = $newType( 4, $kindInt32, "int32", true, "", false, null);
+var $Int64 = $newType( 8, $kindInt64, "int64", true, "", false, null);
+var $Uint = $newType( 4, $kindUint, "uint", true, "", false, null);
+var $Uint8 = $newType( 1, $kindUint8, "uint8", true, "", false, null);
+var $Uint16 = $newType( 2, $kindUint16, "uint16", true, "", false, null);
+var $Uint32 = $newType( 4, $kindUint32, "uint32", true, "", false, null);
+var $Uint64 = $newType( 8, $kindUint64, "uint64", true, "", false, null);
+var $Uintptr = $newType( 4, $kindUintptr, "uintptr", true, "", false, null);
+var $Float32 = $newType( 4, $kindFloat32, "float32", true, "", false, null);
+var $Float64 = $newType( 8, $kindFloat64, "float64", true, "", false, null);
+var $Complex64 = $newType( 8, $kindComplex64, "complex64", true, "", false, null);
+var $Complex128 = $newType(16, $kindComplex128, "complex128", true, "", false, null);
+var $String = $newType( 8, $kindString, "string", true, "", false, null);
+var $UnsafePointer = $newType( 4, $kindUnsafePointer, "unsafe.Pointer", true, "", false, null);
+
+var $nativeArray = function(elemKind) {
+ switch (elemKind) {
+ case $kindInt:
+ return Int32Array;
+ case $kindInt8:
+ return Int8Array;
+ case $kindInt16:
+ return Int16Array;
+ case $kindInt32:
+ return Int32Array;
+ case $kindUint:
+ return Uint32Array;
+ case $kindUint8:
+ return Uint8Array;
+ case $kindUint16:
+ return Uint16Array;
+ case $kindUint32:
+ return Uint32Array;
+ case $kindUintptr:
+ return Uint32Array;
+ case $kindFloat32:
+ return Float32Array;
+ case $kindFloat64:
+ return Float64Array;
+ default:
+ return Array;
+ }
+};
+var $toNativeArray = function(elemKind, array) {
+ var nativeArray = $nativeArray(elemKind);
+ if (nativeArray === Array) {
+ return array;
+ }
+ return new nativeArray(array);
+};
+var $arrayTypes = {};
+var $arrayType = function(elem, len) {
+ var typeKey = elem.id + "$" + len;
+ var typ = $arrayTypes[typeKey];
+ if (typ === undefined) {
+ typ = $newType(12, $kindArray, "[" + len + "]" + elem.string, false, "", false, null);
+ $arrayTypes[typeKey] = typ;
+ typ.init(elem, len);
+ }
+ return typ;
+};
+
+var $chanType = function(elem, sendOnly, recvOnly) {
+ var string = (recvOnly ? "<-" : "") + "chan" + (sendOnly ? "<- " : " ") + elem.string;
+ var field = sendOnly ? "SendChan" : (recvOnly ? "RecvChan" : "Chan");
+ var typ = elem[field];
+ if (typ === undefined) {
+ typ = $newType(4, $kindChan, string, false, "", false, null);
+ elem[field] = typ;
+ typ.init(elem, sendOnly, recvOnly);
+ }
+ return typ;
+};
+var $Chan = function(elem, capacity) {
+ if (capacity < 0 || capacity > 2147483647) {
+ $throwRuntimeError("makechan: size out of range");
+ }
+ this.$elem = elem;
+ this.$capacity = capacity;
+ this.$buffer = [];
+ this.$sendQueue = [];
+ this.$recvQueue = [];
+ this.$closed = false;
+};
+var $chanNil = new $Chan(null, 0);
+$chanNil.$sendQueue = $chanNil.$recvQueue = { length: 0, push: function() {}, shift: function() { return undefined; }, indexOf: function() { return -1; } };
+
+var $funcTypes = {};
+var $funcType = function(params, results, variadic) {
+ var typeKey = $mapArray(params, function(p) { return p.id; }).join(",") + "$" + $mapArray(results, function(r) { return r.id; }).join(",") + "$" + variadic;
+ var typ = $funcTypes[typeKey];
+ if (typ === undefined) {
+ var paramTypes = $mapArray(params, function(p) { return p.string; });
+ if (variadic) {
+ paramTypes[paramTypes.length - 1] = "..." + paramTypes[paramTypes.length - 1].substr(2);
+ }
+ var string = "func(" + paramTypes.join(", ") + ")";
+ if (results.length === 1) {
+ string += " " + results[0].string;
+ } else if (results.length > 1) {
+ string += " (" + $mapArray(results, function(r) { return r.string; }).join(", ") + ")";
+ }
+ typ = $newType(4, $kindFunc, string, false, "", false, null);
+ $funcTypes[typeKey] = typ;
+ typ.init(params, results, variadic);
+ }
+ return typ;
+};
+
+var $interfaceTypes = {};
+var $interfaceType = function(methods) {
+ var typeKey = $mapArray(methods, function(m) { return m.pkg + "," + m.name + "," + m.typ.id; }).join("$");
+ var typ = $interfaceTypes[typeKey];
+ if (typ === undefined) {
+ var string = "interface {}";
+ if (methods.length !== 0) {
+ string = "interface { " + $mapArray(methods, function(m) {
+ return (m.pkg !== "" ? m.pkg + "." : "") + m.name + m.typ.string.substr(4);
+ }).join("; ") + " }";
+ }
+ typ = $newType(8, $kindInterface, string, false, "", false, null);
+ $interfaceTypes[typeKey] = typ;
+ typ.init(methods);
+ }
+ return typ;
+};
+var $emptyInterface = $interfaceType([]);
+var $ifaceNil = {};
+var $error = $newType(8, $kindInterface, "error", true, "", false, null);
+$error.init([{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}]);
+
+var $mapTypes = {};
+var $mapType = function(key, elem) {
+ var typeKey = key.id + "$" + elem.id;
+ var typ = $mapTypes[typeKey];
+ if (typ === undefined) {
+ typ = $newType(4, $kindMap, "map[" + key.string + "]" + elem.string, false, "", false, null);
+ $mapTypes[typeKey] = typ;
+ typ.init(key, elem);
+ }
+ return typ;
+};
+var $makeMap = function(keyForFunc, entries) {
+ var m = {};
+ for (var i = 0; i < entries.length; i++) {
+ var e = entries[i];
+ m[keyForFunc(e.k)] = e;
+ }
+ return m;
+};
+
+var $ptrType = function(elem) {
+ var typ = elem.ptr;
+ if (typ === undefined) {
+ typ = $newType(4, $kindPtr, "*" + elem.string, false, "", elem.exported, null);
+ elem.ptr = typ;
+ typ.init(elem);
+ }
+ return typ;
+};
+
+var $newDataPointer = function(data, constructor) {
+ if (constructor.elem.kind === $kindStruct) {
+ return data;
+ }
+ return new constructor(function() { return data; }, function(v) { data = v; });
+};
+
+var $indexPtr = function(array, index, constructor) {
+ array.$ptr = array.$ptr || {};
+ return array.$ptr[index] || (array.$ptr[index] = new constructor(function() { return array[index]; }, function(v) { array[index] = v; }));
+};
+
+var $sliceType = function(elem) {
+ var typ = elem.slice;
+ if (typ === undefined) {
+ typ = $newType(12, $kindSlice, "[]" + elem.string, false, "", false, null);
+ elem.slice = typ;
+ typ.init(elem);
+ }
+ return typ;
+};
+var $makeSlice = function(typ, length, capacity) {
+ capacity = capacity || length;
+ if (length < 0 || length > 2147483647) {
+ $throwRuntimeError("makeslice: len out of range");
+ }
+ if (capacity < 0 || capacity < length || capacity > 2147483647) {
+ $throwRuntimeError("makeslice: cap out of range");
+ }
+ var array = new typ.nativeArray(capacity);
+ if (typ.nativeArray === Array) {
+ for (var i = 0; i < capacity; i++) {
+ array[i] = typ.elem.zero();
+ }
+ }
+ var slice = new typ(array);
+ slice.$length = length;
+ return slice;
+};
+
+var $structTypes = {};
+var $structType = function(pkgPath, fields) {
+ var typeKey = $mapArray(fields, function(f) { return f.name + "," + f.typ.id + "," + f.tag; }).join("$");
+ var typ = $structTypes[typeKey];
+ if (typ === undefined) {
+ var string = "struct { " + $mapArray(fields, function(f) {
+ return f.name + " " + f.typ.string + (f.tag !== "" ? (" \"" + f.tag.replace(/\\/g, "\\\\").replace(/"/g, "\\\"") + "\"") : "");
+ }).join("; ") + " }";
+ if (fields.length === 0) {
+ string = "struct {}";
+ }
+ typ = $newType(0, $kindStruct, string, false, "", false, function() {
+ this.$val = this;
+ for (var i = 0; i < fields.length; i++) {
+ var f = fields[i];
+ var arg = arguments[i];
+ this[f.prop] = arg !== undefined ? arg : f.typ.zero();
+ }
+ });
+ $structTypes[typeKey] = typ;
+ typ.init(pkgPath, fields);
+ }
+ return typ;
+};
+
+var $assertType = function(value, type, returnTuple) {
+ var isInterface = (type.kind === $kindInterface), ok, missingMethod = "";
+ if (value === $ifaceNil) {
+ ok = false;
+ } else if (!isInterface) {
+ ok = value.constructor === type;
+ } else {
+ var valueTypeString = value.constructor.string;
+ ok = type.implementedBy[valueTypeString];
+ if (ok === undefined) {
+ ok = true;
+ var valueMethodSet = $methodSet(value.constructor);
+ var interfaceMethods = type.methods;
+ for (var i = 0; i < interfaceMethods.length; i++) {
+ var tm = interfaceMethods[i];
+ var found = false;
+ for (var j = 0; j < valueMethodSet.length; j++) {
+ var vm = valueMethodSet[j];
+ if (vm.name === tm.name && vm.pkg === tm.pkg && vm.typ === tm.typ) {
+ found = true;
+ break;
+ }
+ }
+ if (!found) {
+ ok = false;
+ type.missingMethodFor[valueTypeString] = tm.name;
+ break;
+ }
+ }
+ type.implementedBy[valueTypeString] = ok;
+ }
+ if (!ok) {
+ missingMethod = type.missingMethodFor[valueTypeString];
+ }
+ }
+
+ if (!ok) {
+ if (returnTuple) {
+ return [type.zero(), false];
+ }
+ $panic(new $packages["runtime"].TypeAssertionError.ptr("", (value === $ifaceNil ? "" : value.constructor.string), type.string, missingMethod));
+ }
+
+ if (!isInterface) {
+ value = value.$val;
+ }
+ if (type === $jsObjectPtr) {
+ value = value.object;
+ }
+ return returnTuple ? [value, true] : value;
+};
+
+var $stackDepthOffset = 0;
+var $getStackDepth = function() {
+ var err = new Error();
+ if (err.stack === undefined) {
+ return undefined;
+ }
+ return $stackDepthOffset + err.stack.split("\n").length;
+};
+
+var $panicStackDepth = null, $panicValue;
+var $callDeferred = function(deferred, jsErr, fromPanic) {
+ if (!fromPanic && deferred !== null && deferred.index >= $curGoroutine.deferStack.length) {
+ throw jsErr;
+ }
+ if (jsErr !== null) {
+ var newErr = null;
+ try {
+ $curGoroutine.deferStack.push(deferred);
+ $panic(new $jsErrorPtr(jsErr));
+ } catch (err) {
+ newErr = err;
+ }
+ $curGoroutine.deferStack.pop();
+ $callDeferred(deferred, newErr);
+ return;
+ }
+ if ($curGoroutine.asleep) {
+ return;
+ }
+
+ $stackDepthOffset--;
+ var outerPanicStackDepth = $panicStackDepth;
+ var outerPanicValue = $panicValue;
+
+ var localPanicValue = $curGoroutine.panicStack.pop();
+ if (localPanicValue !== undefined) {
+ $panicStackDepth = $getStackDepth();
+ $panicValue = localPanicValue;
+ }
+
+ try {
+ while (true) {
+ if (deferred === null) {
+ deferred = $curGoroutine.deferStack[$curGoroutine.deferStack.length - 1];
+ if (deferred === undefined) {
+ /* The panic reached the top of the stack. Clear it and throw it as a JavaScript error. */
+ $panicStackDepth = null;
+ if (localPanicValue.Object instanceof Error) {
+ throw localPanicValue.Object;
+ }
+ var msg;
+ if (localPanicValue.constructor === $String) {
+ msg = localPanicValue.$val;
+ } else if (localPanicValue.Error !== undefined) {
+ msg = localPanicValue.Error();
+ } else if (localPanicValue.String !== undefined) {
+ msg = localPanicValue.String();
+ } else {
+ msg = localPanicValue;
+ }
+ throw new Error(msg);
+ }
+ }
+ var call = deferred.pop();
+ if (call === undefined) {
+ $curGoroutine.deferStack.pop();
+ if (localPanicValue !== undefined) {
+ deferred = null;
+ continue;
+ }
+ return;
+ }
+ var r = call[0].apply(call[2], call[1]);
+ if (r && r.$blk !== undefined) {
+ deferred.push([r.$blk, [], r]);
+ if (fromPanic) {
+ throw null;
+ }
+ return;
+ }
+
+ if (localPanicValue !== undefined && $panicStackDepth === null) {
+ throw null; /* error was recovered */
+ }
+ }
+ } finally {
+ if (localPanicValue !== undefined) {
+ if ($panicStackDepth !== null) {
+ $curGoroutine.panicStack.push(localPanicValue);
+ }
+ $panicStackDepth = outerPanicStackDepth;
+ $panicValue = outerPanicValue;
+ }
+ $stackDepthOffset++;
+ }
+};
+
+var $panic = function(value) {
+ $curGoroutine.panicStack.push(value);
+ $callDeferred(null, null, true);
+};
+var $recover = function() {
+ if ($panicStackDepth === null || ($panicStackDepth !== undefined && $panicStackDepth !== $getStackDepth() - 2)) {
+ return $ifaceNil;
+ }
+ $panicStackDepth = null;
+ return $panicValue;
+};
+var $throw = function(err) { throw err; };
+
+var $noGoroutine = { asleep: false, exit: false, deferStack: [], panicStack: [] };
+var $curGoroutine = $noGoroutine, $totalGoroutines = 0, $awakeGoroutines = 0, $checkForDeadlock = true;
+var $mainFinished = false;
+var $go = function(fun, args, direct) {
+ $totalGoroutines++;
+ $awakeGoroutines++;
+ var $goroutine = function() {
+ try {
+ $curGoroutine = $goroutine;
+ var r = fun.apply(undefined, args);
+ if (r && r.$blk !== undefined) {
+ fun = function() { return r.$blk(); };
+ args = [];
+ return;
+ }
+ $goroutine.exit = true;
+ } catch (err) {
+ if (!$goroutine.exit) {
+ throw err;
+ }
+ } finally {
+ $curGoroutine = $noGoroutine;
+ if ($goroutine.exit) { /* also set by runtime.Goexit() */
+ $totalGoroutines--;
+ $goroutine.asleep = true;
+ }
+ if ($goroutine.asleep) {
+ $awakeGoroutines--;
+ if (!$mainFinished && $awakeGoroutines === 0 && $checkForDeadlock) {
+ console.error("fatal error: all goroutines are asleep - deadlock!");
+ if ($global.process !== undefined) {
+ $global.process.exit(2);
+ }
+ }
+ }
+ }
+ };
+ $goroutine.asleep = false;
+ $goroutine.exit = false;
+ $goroutine.deferStack = [];
+ $goroutine.panicStack = [];
+ $schedule($goroutine);
+};
+
+var $scheduled = [];
+var $runScheduled = function() {
+ try {
+ var r;
+ while ((r = $scheduled.shift()) !== undefined) {
+ r();
+ }
+ } finally {
+ if ($scheduled.length > 0) {
+ setTimeout($runScheduled, 0);
+ }
+ }
+};
+
+var $schedule = function(goroutine) {
+ if (goroutine.asleep) {
+ goroutine.asleep = false;
+ $awakeGoroutines++;
+ }
+ $scheduled.push(goroutine);
+ if ($curGoroutine === $noGoroutine) {
+ $runScheduled();
+ }
+};
+
+var $setTimeout = function(f, t) {
+ $awakeGoroutines++;
+ return setTimeout(function() {
+ $awakeGoroutines--;
+ f();
+ }, t);
+};
+
+var $block = function() {
+ if ($curGoroutine === $noGoroutine) {
+ $throwRuntimeError("cannot block in JavaScript callback, fix by wrapping code in goroutine");
+ }
+ $curGoroutine.asleep = true;
+};
+
+var $send = function(chan, value) {
+ if (chan.$closed) {
+ $throwRuntimeError("send on closed channel");
+ }
+ var queuedRecv = chan.$recvQueue.shift();
+ if (queuedRecv !== undefined) {
+ queuedRecv([value, true]);
+ return;
+ }
+ if (chan.$buffer.length < chan.$capacity) {
+ chan.$buffer.push(value);
+ return;
+ }
+
+ var thisGoroutine = $curGoroutine;
+ var closedDuringSend;
+ chan.$sendQueue.push(function(closed) {
+ closedDuringSend = closed;
+ $schedule(thisGoroutine);
+ return value;
+ });
+ $block();
+ return {
+ $blk: function() {
+ if (closedDuringSend) {
+ $throwRuntimeError("send on closed channel");
+ }
+ }
+ };
+};
+var $recv = function(chan) {
+ var queuedSend = chan.$sendQueue.shift();
+ if (queuedSend !== undefined) {
+ chan.$buffer.push(queuedSend(false));
+ }
+ var bufferedValue = chan.$buffer.shift();
+ if (bufferedValue !== undefined) {
+ return [bufferedValue, true];
+ }
+ if (chan.$closed) {
+ return [chan.$elem.zero(), false];
+ }
+
+ var thisGoroutine = $curGoroutine;
+ var f = { $blk: function() { return this.value; } };
+ var queueEntry = function(v) {
+ f.value = v;
+ $schedule(thisGoroutine);
+ };
+ chan.$recvQueue.push(queueEntry);
+ $block();
+ return f;
+};
+var $close = function(chan) {
+ if (chan.$closed) {
+ $throwRuntimeError("close of closed channel");
+ }
+ chan.$closed = true;
+ while (true) {
+ var queuedSend = chan.$sendQueue.shift();
+ if (queuedSend === undefined) {
+ break;
+ }
+ queuedSend(true); /* will panic */
+ }
+ while (true) {
+ var queuedRecv = chan.$recvQueue.shift();
+ if (queuedRecv === undefined) {
+ break;
+ }
+ queuedRecv([chan.$elem.zero(), false]);
+ }
+};
+var $select = function(comms) {
+ var ready = [];
+ var selection = -1;
+ for (var i = 0; i < comms.length; i++) {
+ var comm = comms[i];
+ var chan = comm[0];
+ switch (comm.length) {
+ case 0: /* default */
+ selection = i;
+ break;
+ case 1: /* recv */
+ if (chan.$sendQueue.length !== 0 || chan.$buffer.length !== 0 || chan.$closed) {
+ ready.push(i);
+ }
+ break;
+ case 2: /* send */
+ if (chan.$closed) {
+ $throwRuntimeError("send on closed channel");
+ }
+ if (chan.$recvQueue.length !== 0 || chan.$buffer.length < chan.$capacity) {
+ ready.push(i);
+ }
+ break;
+ }
+ }
+
+ if (ready.length !== 0) {
+ selection = ready[Math.floor(Math.random() * ready.length)];
+ }
+ if (selection !== -1) {
+ var comm = comms[selection];
+ switch (comm.length) {
+ case 0: /* default */
+ return [selection];
+ case 1: /* recv */
+ return [selection, $recv(comm[0])];
+ case 2: /* send */
+ $send(comm[0], comm[1]);
+ return [selection];
+ }
+ }
+
+ var entries = [];
+ var thisGoroutine = $curGoroutine;
+ var f = { $blk: function() { return this.selection; } };
+ var removeFromQueues = function() {
+ for (var i = 0; i < entries.length; i++) {
+ var entry = entries[i];
+ var queue = entry[0];
+ var index = queue.indexOf(entry[1]);
+ if (index !== -1) {
+ queue.splice(index, 1);
+ }
+ }
+ };
+ for (var i = 0; i < comms.length; i++) {
+ (function(i) {
+ var comm = comms[i];
+ switch (comm.length) {
+ case 1: /* recv */
+ var queueEntry = function(value) {
+ f.selection = [i, value];
+ removeFromQueues();
+ $schedule(thisGoroutine);
+ };
+ entries.push([comm[0].$recvQueue, queueEntry]);
+ comm[0].$recvQueue.push(queueEntry);
+ break;
+ case 2: /* send */
+ var queueEntry = function() {
+ if (comm[0].$closed) {
+ $throwRuntimeError("send on closed channel");
+ }
+ f.selection = [i];
+ removeFromQueues();
+ $schedule(thisGoroutine);
+ return comm[1];
+ };
+ entries.push([comm[0].$sendQueue, queueEntry]);
+ comm[0].$sendQueue.push(queueEntry);
+ break;
+ }
+ })(i);
+ }
+ $block();
+ return f;
+};
+
+var $jsObjectPtr, $jsErrorPtr;
+
+var $needsExternalization = function(t) {
+ switch (t.kind) {
+ case $kindBool:
+ case $kindInt:
+ case $kindInt8:
+ case $kindInt16:
+ case $kindInt32:
+ case $kindUint:
+ case $kindUint8:
+ case $kindUint16:
+ case $kindUint32:
+ case $kindUintptr:
+ case $kindFloat32:
+ case $kindFloat64:
+ return false;
+ default:
+ return t !== $jsObjectPtr;
+ }
+};
+
+var $externalize = function(v, t) {
+ if (t === $jsObjectPtr) {
+ return v;
+ }
+ switch (t.kind) {
+ case $kindBool:
+ case $kindInt:
+ case $kindInt8:
+ case $kindInt16:
+ case $kindInt32:
+ case $kindUint:
+ case $kindUint8:
+ case $kindUint16:
+ case $kindUint32:
+ case $kindUintptr:
+ case $kindFloat32:
+ case $kindFloat64:
+ return v;
+ case $kindInt64:
+ case $kindUint64:
+ return $flatten64(v);
+ case $kindArray:
+ if ($needsExternalization(t.elem)) {
+ return $mapArray(v, function(e) { return $externalize(e, t.elem); });
+ }
+ return v;
+ case $kindFunc:
+ return $externalizeFunction(v, t, false);
+ case $kindInterface:
+ if (v === $ifaceNil) {
+ return null;
+ }
+ if (v.constructor === $jsObjectPtr) {
+ return v.$val.object;
+ }
+ return $externalize(v.$val, v.constructor);
+ case $kindMap:
+ var m = {};
+ var keys = $keys(v);
+ for (var i = 0; i < keys.length; i++) {
+ var entry = v[keys[i]];
+ m[$externalize(entry.k, t.key)] = $externalize(entry.v, t.elem);
+ }
+ return m;
+ case $kindPtr:
+ if (v === t.nil) {
+ return null;
+ }
+ return $externalize(v.$get(), t.elem);
+ case $kindSlice:
+ if ($needsExternalization(t.elem)) {
+ return $mapArray($sliceToArray(v), function(e) { return $externalize(e, t.elem); });
+ }
+ return $sliceToArray(v);
+ case $kindString:
+ if ($isASCII(v)) {
+ return v;
+ }
+ var s = "", r;
+ for (var i = 0; i < v.length; i += r[1]) {
+ r = $decodeRune(v, i);
+ var c = r[0];
+ if (c > 0xFFFF) {
+ var h = Math.floor((c - 0x10000) / 0x400) + 0xD800;
+ var l = (c - 0x10000) % 0x400 + 0xDC00;
+ s += String.fromCharCode(h, l);
+ continue;
+ }
+ s += String.fromCharCode(c);
+ }
+ return s;
+ case $kindStruct:
+ var timePkg = $packages["time"];
+ if (timePkg !== undefined && v.constructor === timePkg.Time.ptr) {
+ var milli = $div64(v.UnixNano(), new $Int64(0, 1000000));
+ return new Date($flatten64(milli));
+ }
+
+ var noJsObject = {};
+ var searchJsObject = function(v, t) {
+ if (t === $jsObjectPtr) {
+ return v;
+ }
+ switch (t.kind) {
+ case $kindPtr:
+ if (v === t.nil) {
+ return noJsObject;
+ }
+ return searchJsObject(v.$get(), t.elem);
+ case $kindStruct:
+ var f = t.fields[0];
+ return searchJsObject(v[f.prop], f.typ);
+ case $kindInterface:
+ return searchJsObject(v.$val, v.constructor);
+ default:
+ return noJsObject;
+ }
+ };
+ var o = searchJsObject(v, t);
+ if (o !== noJsObject) {
+ return o;
+ }
+
+ o = {};
+ for (var i = 0; i < t.fields.length; i++) {
+ var f = t.fields[i];
+ if (!f.exported) {
+ continue;
+ }
+ o[f.name] = $externalize(v[f.prop], f.typ);
+ }
+ return o;
+ }
+ $throwRuntimeError("cannot externalize " + t.string);
+};
+
+var $externalizeFunction = function(v, t, passThis) {
+ if (v === $throwNilPointerError) {
+ return null;
+ }
+ if (v.$externalizeWrapper === undefined) {
+ $checkForDeadlock = false;
+ v.$externalizeWrapper = function() {
+ var args = [];
+ for (var i = 0; i < t.params.length; i++) {
+ if (t.variadic && i === t.params.length - 1) {
+ var vt = t.params[i].elem, varargs = [];
+ for (var j = i; j < arguments.length; j++) {
+ varargs.push($internalize(arguments[j], vt));
+ }
+ args.push(new (t.params[i])(varargs));
+ break;
+ }
+ args.push($internalize(arguments[i], t.params[i]));
+ }
+ var canBlock = $curGoroutine.canBlock;
+ $curGoroutine.canBlock = false;
+ try {
+ var result = v.apply(passThis ? this : undefined, args);
+ } finally {
+ $curGoroutine.canBlock = canBlock;
+ }
+ switch (t.results.length) {
+ case 0:
+ return;
+ case 1:
+ return $externalize(result, t.results[0]);
+ default:
+ for (var i = 0; i < t.results.length; i++) {
+ result[i] = $externalize(result[i], t.results[i]);
+ }
+ return result;
+ }
+ };
+ }
+ return v.$externalizeWrapper;
+};
+
+var $internalize = function(v, t, recv) {
+ if (t === $jsObjectPtr) {
+ return v;
+ }
+ if (t === $jsObjectPtr.elem) {
+ $throwRuntimeError("cannot internalize js.Object, use *js.Object instead");
+ }
+ if (v && v.__internal_object__ !== undefined) {
+ return $assertType(v.__internal_object__, t, false);
+ }
+ var timePkg = $packages["time"];
+ if (timePkg !== undefined && t === timePkg.Time) {
+ if (!(v !== null && v !== undefined && v.constructor === Date)) {
+ $throwRuntimeError("cannot internalize time.Time from " + typeof v + ", must be Date");
+ }
+ return timePkg.Unix(new $Int64(0, 0), new $Int64(0, v.getTime() * 1000000));
+ }
+ switch (t.kind) {
+ case $kindBool:
+ return !!v;
+ case $kindInt:
+ return parseInt(v);
+ case $kindInt8:
+ return parseInt(v) << 24 >> 24;
+ case $kindInt16:
+ return parseInt(v) << 16 >> 16;
+ case $kindInt32:
+ return parseInt(v) >> 0;
+ case $kindUint:
+ return parseInt(v);
+ case $kindUint8:
+ return parseInt(v) << 24 >>> 24;
+ case $kindUint16:
+ return parseInt(v) << 16 >>> 16;
+ case $kindUint32:
+ case $kindUintptr:
+ return parseInt(v) >>> 0;
+ case $kindInt64:
+ case $kindUint64:
+ return new t(0, v);
+ case $kindFloat32:
+ case $kindFloat64:
+ return parseFloat(v);
+ case $kindArray:
+ if (v.length !== t.len) {
+ $throwRuntimeError("got array with wrong size from JavaScript native");
+ }
+ return $mapArray(v, function(e) { return $internalize(e, t.elem); });
+ case $kindFunc:
+ return function() {
+ var args = [];
+ for (var i = 0; i < t.params.length; i++) {
+ if (t.variadic && i === t.params.length - 1) {
+ var vt = t.params[i].elem, varargs = arguments[i];
+ for (var j = 0; j < varargs.$length; j++) {
+ args.push($externalize(varargs.$array[varargs.$offset + j], vt));
+ }
+ break;
+ }
+ args.push($externalize(arguments[i], t.params[i]));
+ }
+ var result = v.apply(recv, args);
+ switch (t.results.length) {
+ case 0:
+ return;
+ case 1:
+ return $internalize(result, t.results[0]);
+ default:
+ for (var i = 0; i < t.results.length; i++) {
+ result[i] = $internalize(result[i], t.results[i]);
+ }
+ return result;
+ }
+ };
+ case $kindInterface:
+ if (t.methods.length !== 0) {
+ $throwRuntimeError("cannot internalize " + t.string);
+ }
+ if (v === null) {
+ return $ifaceNil;
+ }
+ if (v === undefined) {
+ return new $jsObjectPtr(undefined);
+ }
+ switch (v.constructor) {
+ case Int8Array:
+ return new ($sliceType($Int8))(v);
+ case Int16Array:
+ return new ($sliceType($Int16))(v);
+ case Int32Array:
+ return new ($sliceType($Int))(v);
+ case Uint8Array:
+ return new ($sliceType($Uint8))(v);
+ case Uint16Array:
+ return new ($sliceType($Uint16))(v);
+ case Uint32Array:
+ return new ($sliceType($Uint))(v);
+ case Float32Array:
+ return new ($sliceType($Float32))(v);
+ case Float64Array:
+ return new ($sliceType($Float64))(v);
+ case Array:
+ return $internalize(v, $sliceType($emptyInterface));
+ case Boolean:
+ return new $Bool(!!v);
+ case Date:
+ if (timePkg === undefined) {
+ /* time package is not present, internalize as &js.Object{Date} so it can be externalized into original Date. */
+ return new $jsObjectPtr(v);
+ }
+ return new timePkg.Time($internalize(v, timePkg.Time));
+ case Function:
+ var funcType = $funcType([$sliceType($emptyInterface)], [$jsObjectPtr], true);
+ return new funcType($internalize(v, funcType));
+ case Number:
+ return new $Float64(parseFloat(v));
+ case String:
+ return new $String($internalize(v, $String));
+ default:
+ if ($global.Node && v instanceof $global.Node) {
+ return new $jsObjectPtr(v);
+ }
+ var mapType = $mapType($String, $emptyInterface);
+ return new mapType($internalize(v, mapType));
+ }
+ case $kindMap:
+ var m = {};
+ var keys = $keys(v);
+ for (var i = 0; i < keys.length; i++) {
+ var k = $internalize(keys[i], t.key);
+ m[t.key.keyFor(k)] = { k: k, v: $internalize(v[keys[i]], t.elem) };
+ }
+ return m;
+ case $kindPtr:
+ if (t.elem.kind === $kindStruct) {
+ return $internalize(v, t.elem);
+ }
+ case $kindSlice:
+ return new t($mapArray(v, function(e) { return $internalize(e, t.elem); }));
+ case $kindString:
+ v = String(v);
+ if ($isASCII(v)) {
+ return v;
+ }
+ var s = "";
+ var i = 0;
+ while (i < v.length) {
+ var h = v.charCodeAt(i);
+ if (0xD800 <= h && h <= 0xDBFF) {
+ var l = v.charCodeAt(i + 1);
+ var c = (h - 0xD800) * 0x400 + l - 0xDC00 + 0x10000;
+ s += $encodeRune(c);
+ i += 2;
+ continue;
+ }
+ s += $encodeRune(h);
+ i++;
+ }
+ return s;
+ case $kindStruct:
+ var noJsObject = {};
+ var searchJsObject = function(t) {
+ if (t === $jsObjectPtr) {
+ return v;
+ }
+ if (t === $jsObjectPtr.elem) {
+ $throwRuntimeError("cannot internalize js.Object, use *js.Object instead");
+ }
+ switch (t.kind) {
+ case $kindPtr:
+ return searchJsObject(t.elem);
+ case $kindStruct:
+ var f = t.fields[0];
+ var o = searchJsObject(f.typ);
+ if (o !== noJsObject) {
+ var n = new t.ptr();
+ n[f.prop] = o;
+ return n;
+ }
+ return noJsObject;
+ default:
+ return noJsObject;
+ }
+ };
+ var o = searchJsObject(t);
+ if (o !== noJsObject) {
+ return o;
+ }
+ }
+ $throwRuntimeError("cannot internalize " + t.string);
+};
+
+/* $isASCII reports whether string s contains only ASCII characters. */
+var $isASCII = function(s) {
+ for (var i = 0; i < s.length; i++) {
+ if (s.charCodeAt(i) >= 128) {
+ return false;
+ }
+ }
+ return true;
+};
+
+$packages["github.com/gopherjs/gopherjs/js"] = (function() {
+ var $pkg = {}, $init, Object, Error, sliceType, ptrType, ptrType$1, MakeFunc, init;
+ Object = $pkg.Object = $newType(0, $kindStruct, "js.Object", true, "github.com/gopherjs/gopherjs/js", true, function(object_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.object = null;
+ return;
+ }
+ this.object = object_;
+ });
+ Error = $pkg.Error = $newType(0, $kindStruct, "js.Error", true, "github.com/gopherjs/gopherjs/js", true, function(Object_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Object = null;
+ return;
+ }
+ this.Object = Object_;
+ });
+ sliceType = $sliceType($emptyInterface);
+ ptrType = $ptrType(Object);
+ ptrType$1 = $ptrType(Error);
+ Object.ptr.prototype.Get = function(key) {
+ var $ptr, key, o;
+ o = this;
+ return o.object[$externalize(key, $String)];
+ };
+ Object.prototype.Get = function(key) { return this.$val.Get(key); };
+ Object.ptr.prototype.Set = function(key, value) {
+ var $ptr, key, o, value;
+ o = this;
+ o.object[$externalize(key, $String)] = $externalize(value, $emptyInterface);
+ };
+ Object.prototype.Set = function(key, value) { return this.$val.Set(key, value); };
+ Object.ptr.prototype.Delete = function(key) {
+ var $ptr, key, o;
+ o = this;
+ delete o.object[$externalize(key, $String)];
+ };
+ Object.prototype.Delete = function(key) { return this.$val.Delete(key); };
+ Object.ptr.prototype.Length = function() {
+ var $ptr, o;
+ o = this;
+ return $parseInt(o.object.length);
+ };
+ Object.prototype.Length = function() { return this.$val.Length(); };
+ Object.ptr.prototype.Index = function(i) {
+ var $ptr, i, o;
+ o = this;
+ return o.object[i];
+ };
+ Object.prototype.Index = function(i) { return this.$val.Index(i); };
+ Object.ptr.prototype.SetIndex = function(i, value) {
+ var $ptr, i, o, value;
+ o = this;
+ o.object[i] = $externalize(value, $emptyInterface);
+ };
+ Object.prototype.SetIndex = function(i, value) { return this.$val.SetIndex(i, value); };
+ Object.ptr.prototype.Call = function(name, args) {
+ var $ptr, args, name, o, obj;
+ o = this;
+ return (obj = o.object, obj[$externalize(name, $String)].apply(obj, $externalize(args, sliceType)));
+ };
+ Object.prototype.Call = function(name, args) { return this.$val.Call(name, args); };
+ Object.ptr.prototype.Invoke = function(args) {
+ var $ptr, args, o;
+ o = this;
+ return o.object.apply(undefined, $externalize(args, sliceType));
+ };
+ Object.prototype.Invoke = function(args) { return this.$val.Invoke(args); };
+ Object.ptr.prototype.New = function(args) {
+ var $ptr, args, o;
+ o = this;
+ return new ($global.Function.prototype.bind.apply(o.object, [undefined].concat($externalize(args, sliceType))));
+ };
+ Object.prototype.New = function(args) { return this.$val.New(args); };
+ Object.ptr.prototype.Bool = function() {
+ var $ptr, o;
+ o = this;
+ return !!(o.object);
+ };
+ Object.prototype.Bool = function() { return this.$val.Bool(); };
+ Object.ptr.prototype.String = function() {
+ var $ptr, o;
+ o = this;
+ return $internalize(o.object, $String);
+ };
+ Object.prototype.String = function() { return this.$val.String(); };
+ Object.ptr.prototype.Int = function() {
+ var $ptr, o;
+ o = this;
+ return $parseInt(o.object) >> 0;
+ };
+ Object.prototype.Int = function() { return this.$val.Int(); };
+ Object.ptr.prototype.Int64 = function() {
+ var $ptr, o;
+ o = this;
+ return $internalize(o.object, $Int64);
+ };
+ Object.prototype.Int64 = function() { return this.$val.Int64(); };
+ Object.ptr.prototype.Uint64 = function() {
+ var $ptr, o;
+ o = this;
+ return $internalize(o.object, $Uint64);
+ };
+ Object.prototype.Uint64 = function() { return this.$val.Uint64(); };
+ Object.ptr.prototype.Float = function() {
+ var $ptr, o;
+ o = this;
+ return $parseFloat(o.object);
+ };
+ Object.prototype.Float = function() { return this.$val.Float(); };
+ Object.ptr.prototype.Interface = function() {
+ var $ptr, o;
+ o = this;
+ return $internalize(o.object, $emptyInterface);
+ };
+ Object.prototype.Interface = function() { return this.$val.Interface(); };
+ Object.ptr.prototype.Unsafe = function() {
+ var $ptr, o;
+ o = this;
+ return o.object;
+ };
+ Object.prototype.Unsafe = function() { return this.$val.Unsafe(); };
+ Error.ptr.prototype.Error = function() {
+ var $ptr, err;
+ err = this;
+ return "JavaScript error: " + $internalize(err.Object.message, $String);
+ };
+ Error.prototype.Error = function() { return this.$val.Error(); };
+ Error.ptr.prototype.Stack = function() {
+ var $ptr, err;
+ err = this;
+ return $internalize(err.Object.stack, $String);
+ };
+ Error.prototype.Stack = function() { return this.$val.Stack(); };
+ MakeFunc = function(fn) {
+ var $ptr, fn;
+ return $makeFunc(fn);
+ };
+ $pkg.MakeFunc = MakeFunc;
+ init = function() {
+ var $ptr, e;
+ e = new Error.ptr(null);
+ $unused(e);
+ };
+ ptrType.methods = [{prop: "Get", name: "Get", pkg: "", typ: $funcType([$String], [ptrType], false)}, {prop: "Set", name: "Set", pkg: "", typ: $funcType([$String, $emptyInterface], [], false)}, {prop: "Delete", name: "Delete", pkg: "", typ: $funcType([$String], [], false)}, {prop: "Length", name: "Length", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Index", name: "Index", pkg: "", typ: $funcType([$Int], [ptrType], false)}, {prop: "SetIndex", name: "SetIndex", pkg: "", typ: $funcType([$Int, $emptyInterface], [], false)}, {prop: "Call", name: "Call", pkg: "", typ: $funcType([$String, sliceType], [ptrType], true)}, {prop: "Invoke", name: "Invoke", pkg: "", typ: $funcType([sliceType], [ptrType], true)}, {prop: "New", name: "New", pkg: "", typ: $funcType([sliceType], [ptrType], true)}, {prop: "Bool", name: "Bool", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Int", name: "Int", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Int64", name: "Int64", pkg: "", typ: $funcType([], [$Int64], false)}, {prop: "Uint64", name: "Uint64", pkg: "", typ: $funcType([], [$Uint64], false)}, {prop: "Float", name: "Float", pkg: "", typ: $funcType([], [$Float64], false)}, {prop: "Interface", name: "Interface", pkg: "", typ: $funcType([], [$emptyInterface], false)}, {prop: "Unsafe", name: "Unsafe", pkg: "", typ: $funcType([], [$Uintptr], false)}];
+ ptrType$1.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Stack", name: "Stack", pkg: "", typ: $funcType([], [$String], false)}];
+ Object.init("github.com/gopherjs/gopherjs/js", [{prop: "object", name: "object", exported: false, typ: ptrType, tag: ""}]);
+ Error.init("", [{prop: "Object", name: "", exported: true, typ: ptrType, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ init();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["runtime/internal/sys"] = (function() {
+ var $pkg = {}, $init;
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["runtime"] = (function() {
+ var $pkg = {}, $init, js, sys, Func, TypeAssertionError, errorString, structType, ptrType, ptrType$3, init, GOROOT, Caller, Goexit, GOMAXPROCS, SetFinalizer, FuncForPC, Stack;
+ js = $packages["github.com/gopherjs/gopherjs/js"];
+ sys = $packages["runtime/internal/sys"];
+ Func = $pkg.Func = $newType(0, $kindStruct, "runtime.Func", true, "runtime", true, function(opaque_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.opaque = new structType.ptr();
+ return;
+ }
+ this.opaque = opaque_;
+ });
+ TypeAssertionError = $pkg.TypeAssertionError = $newType(0, $kindStruct, "runtime.TypeAssertionError", true, "runtime", true, function(interfaceString_, concreteString_, assertedString_, missingMethod_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.interfaceString = "";
+ this.concreteString = "";
+ this.assertedString = "";
+ this.missingMethod = "";
+ return;
+ }
+ this.interfaceString = interfaceString_;
+ this.concreteString = concreteString_;
+ this.assertedString = assertedString_;
+ this.missingMethod = missingMethod_;
+ });
+ errorString = $pkg.errorString = $newType(8, $kindString, "runtime.errorString", true, "runtime", false, null);
+ structType = $structType("", []);
+ ptrType = $ptrType(Func);
+ ptrType$3 = $ptrType(TypeAssertionError);
+ init = function() {
+ var $ptr, e, jsPkg;
+ jsPkg = $packages[$externalize("github.com/gopherjs/gopherjs/js", $String)];
+ $jsObjectPtr = jsPkg.Object.ptr;
+ $jsErrorPtr = jsPkg.Error.ptr;
+ $throwRuntimeError = (function(msg) {
+ var $ptr, msg;
+ $panic(new errorString((msg)));
+ });
+ e = $ifaceNil;
+ e = new TypeAssertionError.ptr("", "", "", "");
+ $unused(e);
+ };
+ GOROOT = function() {
+ var $ptr, goroot, process;
+ process = $global.process;
+ if (process === undefined) {
+ return "/";
+ }
+ goroot = process.env.GOROOT;
+ if (!(goroot === undefined)) {
+ return $internalize(goroot, $String);
+ }
+ return "/usr/lib/go-1.8";
+ };
+ $pkg.GOROOT = GOROOT;
+ Caller = function(skip) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, file, info, line, ok, parts, pc, skip;
+ pc = 0;
+ file = "";
+ line = 0;
+ ok = false;
+ info = new ($global.Error)().stack.split($externalize("\n", $String))[(skip + 2 >> 0)];
+ if (info === undefined) {
+ _tmp = 0;
+ _tmp$1 = "";
+ _tmp$2 = 0;
+ _tmp$3 = false;
+ pc = _tmp;
+ file = _tmp$1;
+ line = _tmp$2;
+ ok = _tmp$3;
+ return [pc, file, line, ok];
+ }
+ parts = info.substring(($parseInt(info.indexOf($externalize("(", $String))) >> 0) + 1 >> 0, $parseInt(info.indexOf($externalize(")", $String))) >> 0).split($externalize(":", $String));
+ _tmp$4 = 0;
+ _tmp$5 = $internalize(parts[0], $String);
+ _tmp$6 = $parseInt(parts[1]) >> 0;
+ _tmp$7 = true;
+ pc = _tmp$4;
+ file = _tmp$5;
+ line = _tmp$6;
+ ok = _tmp$7;
+ return [pc, file, line, ok];
+ };
+ $pkg.Caller = Caller;
+ Goexit = function() {
+ var $ptr;
+ $curGoroutine.exit = $externalize(true, $Bool);
+ $throw(null);
+ };
+ $pkg.Goexit = Goexit;
+ GOMAXPROCS = function(n) {
+ var $ptr, n;
+ return 1;
+ };
+ $pkg.GOMAXPROCS = GOMAXPROCS;
+ SetFinalizer = function(x, f) {
+ var $ptr, f, x;
+ };
+ $pkg.SetFinalizer = SetFinalizer;
+ Func.ptr.prototype.Entry = function() {
+ var $ptr;
+ return 0;
+ };
+ Func.prototype.Entry = function() { return this.$val.Entry(); };
+ Func.ptr.prototype.FileLine = function(pc) {
+ var $ptr, _tmp, _tmp$1, file, line, pc;
+ file = "";
+ line = 0;
+ _tmp = "";
+ _tmp$1 = 0;
+ file = _tmp;
+ line = _tmp$1;
+ return [file, line];
+ };
+ Func.prototype.FileLine = function(pc) { return this.$val.FileLine(pc); };
+ Func.ptr.prototype.Name = function() {
+ var $ptr;
+ return "";
+ };
+ Func.prototype.Name = function() { return this.$val.Name(); };
+ FuncForPC = function(pc) {
+ var $ptr, pc;
+ return ptrType.nil;
+ };
+ $pkg.FuncForPC = FuncForPC;
+ Stack = function(buf, all) {
+ var $ptr, all, buf, s;
+ s = new ($global.Error)().stack;
+ if (s === undefined) {
+ return 0;
+ }
+ return $copyString(buf, $internalize(s.substr(($parseInt(s.indexOf($externalize("\n", $String))) >> 0) + 1 >> 0), $String));
+ };
+ $pkg.Stack = Stack;
+ TypeAssertionError.ptr.prototype.RuntimeError = function() {
+ var $ptr;
+ };
+ TypeAssertionError.prototype.RuntimeError = function() { return this.$val.RuntimeError(); };
+ TypeAssertionError.ptr.prototype.Error = function() {
+ var $ptr, e, inter;
+ e = this;
+ inter = e.interfaceString;
+ if (inter === "") {
+ inter = "interface";
+ }
+ if (e.concreteString === "") {
+ return "interface conversion: " + inter + " is nil, not " + e.assertedString;
+ }
+ if (e.missingMethod === "") {
+ return "interface conversion: " + inter + " is " + e.concreteString + ", not " + e.assertedString;
+ }
+ return "interface conversion: " + e.concreteString + " is not " + e.assertedString + ": missing method " + e.missingMethod;
+ };
+ TypeAssertionError.prototype.Error = function() { return this.$val.Error(); };
+ errorString.prototype.RuntimeError = function() {
+ var $ptr, e;
+ e = this.$val;
+ };
+ $ptrType(errorString).prototype.RuntimeError = function() { return new errorString(this.$get()).RuntimeError(); };
+ errorString.prototype.Error = function() {
+ var $ptr, e;
+ e = this.$val;
+ return "runtime error: " + (e);
+ };
+ $ptrType(errorString).prototype.Error = function() { return new errorString(this.$get()).Error(); };
+ ptrType.methods = [{prop: "Entry", name: "Entry", pkg: "", typ: $funcType([], [$Uintptr], false)}, {prop: "FileLine", name: "FileLine", pkg: "", typ: $funcType([$Uintptr], [$String, $Int], false)}, {prop: "Name", name: "Name", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$3.methods = [{prop: "RuntimeError", name: "RuntimeError", pkg: "", typ: $funcType([], [], false)}, {prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ errorString.methods = [{prop: "RuntimeError", name: "RuntimeError", pkg: "", typ: $funcType([], [], false)}, {prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ Func.init("runtime", [{prop: "opaque", name: "opaque", exported: false, typ: structType, tag: ""}]);
+ TypeAssertionError.init("runtime", [{prop: "interfaceString", name: "interfaceString", exported: false, typ: $String, tag: ""}, {prop: "concreteString", name: "concreteString", exported: false, typ: $String, tag: ""}, {prop: "assertedString", name: "assertedString", exported: false, typ: $String, tag: ""}, {prop: "missingMethod", name: "missingMethod", exported: false, typ: $String, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = js.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sys.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ init();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["../mappingTable"] = (function() {
+ var $pkg = {}, $init;
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $pkg.PointToInt = $makeMap($String.keyFor, [{ k: "00022ddff3737fda59ef096dae2ea2876a5893510442fde25cb37486ed8b97c3", v: new $Int64(0, 7414) }, { k: "0005017991bc0cdfb618cfd2e18250ba5730f741ff0e6f3a5a308c3cbb7927eb", v: new $Int64(0, 124) }, { k: "000c85a01eaf44038fa1f6fe0a37adf920db7206a72a179c603474565ef4fad3", v: new $Int64(0, 5311) }, { k: "000f547fa873763b596829603eae0a52571c801cba6ce9d60b6ec33e51d5f97b", v: new $Int64(0, 4892) }, { k: "00108dccfe585387fb1cc5fe8fe4550877417cdae1bbca2b59875ea7534fdd65", v: new $Int64(0, 2602) }, { k: "0012bef9639e0081ca092f67541bdfd5b33d1f33fe2eb1684d0763214e83edf7", v: new $Int64(0, 5991) }, { k: "0024d4dc0977ae0ae7bdcbebc674380660cde2724e626817cb1abb12057f586c", v: new $Int64(0, 1850) }, { k: "002e9fad6e9755e585e383612c5c7d31a100127b20a26a902f4bb134bc4269e6", v: new $Int64(0, 8152) }, { k: "0032eb8c4bd51bfcb3579231a84815c830755f4483721d53b6f3109d19a64d94", v: new $Int64(0, 1711) }, { k: "003b50ed1588b3b6eb39e47bb212c65935d2e0eab0d1d88e3f7e58367637e8cc", v: new $Int64(0, 7598) }, { k: "003bf15329e6cb116782c888941007061378cae5123dd1576483cf4a562cc7d1", v: new $Int64(0, 2306) }, { k: "003c5507eddcc823f5dfd81210179e05f752240c091263448202b1f8c4292a42", v: new $Int64(0, 2172) }, { k: "003cc8d5ea844893cc10f7b575038ef195616c575828824c3c9d87840e8b5eb2", v: new $Int64(0, 8579) }, { k: "00433138f289adda7a56fbb2d8d72ac06bace8dd05dbd54c460a5687a68de60a", v: new $Int64(0, 796) }, { k: "0044eafc6ad1b194e454e924e564465fd8af8fd87ce3e81b008abb4b13f5cee1", v: new $Int64(0, 8026) }, { k: "004b1d43303510d6113949c8cabb8e55ec74703e2ef7dcade125e973b7a07a09", v: new $Int64(0, 5881) }, { k: "005a792485d9cb2a231d857e607a4f0b549fa197d0f74071fee799996ce3dc96", v: new $Int64(0, 6814) }, { k: "0062c07e9834ed4f2dd23df1546f8517914cb4d404a948d6f43386f1e51cda39", v: new $Int64(0, 3491) }, { k: "0074580b66607591576c783f36deeb314f5beeb6dec83521411836a6630249cc", v: new $Int64(0, 3160) }, { k: "007b30bdadafae1e3f90f33ebfc687147f708644f09d5fcc52cfb0a18d7af534", v: new $Int64(0, 569) }, { k: "00801391f1f4a8224e7a07cb4c3522be0ca19954dc5f4b197f61e86a012f5f1e", v: new $Int64(0, 9952) }, { k: "008e37db1aa63698082d95fe33501a0326ebad166c3810d5f3d67d0262c69bce", v: new $Int64(0, 5977) }, { k: "00920985345f7db5cccca87c98acca82a8e75c290ad8abbfcb64e021a6370371", v: new $Int64(0, 636) }, { k: "009437fc996a4a38ee24e6267bb276fdf6b04f96c84eca26d7533ac65a4759c9", v: new $Int64(0, 792) }, { k: "009e412e86f2f279da2906f0a45da436c1c92119c11ea916d1a49dbfcd39dbe3", v: new $Int64(0, 5019) }, { k: "00ac1a9e0e98c1966794daf0cd2a152733bc1ffa3477e122e25de8784c2f9fc1", v: new $Int64(0, 7607) }, { k: "00ad96e961edefb936fc7157f57bbe964f64362a05d999845b4d4f07fb9415c0", v: new $Int64(0, 3351) }, { k: "00b3b54bc7508ba520b5a828ce8fdea33698b4751f7489c150f1c9cdb3dcd58e", v: new $Int64(0, 8247) }, { k: "00b441a0aa772a54de9634a443daae91459f2b4fe9042f6adb1dc63a0329042a", v: new $Int64(0, 3820) }, { k: "00bb25c563e7cd2980705f034f2a06065c18abe3aa0a028a0625870768ca9445", v: new $Int64(0, 3036) }, { k: "00c3c09465385bbb62081b64975550f13497b3b3e627c33531406a33fc378caf", v: new $Int64(0, 1098) }, { k: "00cbd0686dad4e4e75cd93dcee52acd44388873bb2d2141c051e07ef6f4a0a07", v: new $Int64(0, 8664) }, { k: "00d6905fd1c145164591f023550bc47eea3b47046657aaf065e867009459ecf7", v: new $Int64(0, 4374) }, { k: "00da73c820a956f7e8aae221b91153b525059c4078273340209e11bc995a3511", v: new $Int64(0, 3236) }, { k: "00e2ef1c2b073b93b2084e4622dd1bdadf11678f5ad99699226a5a339267ab6f", v: new $Int64(0, 7812) }, { k: "00e755d79edbb912544fbcc15e9111dfffba8e55d7fe3a67a2b2ec8bb1151d8c", v: new $Int64(0, 7418) }, { k: "00ea381a631be2e4c16d8bee20c620efeed0f14b252a8df22e843f146de67db2", v: new $Int64(0, 4417) }, { k: "00ecb18e602f0434989fc5df3e37c6f13729e745dddea95348d6b4c47c7b7ddd", v: new $Int64(0, 1380) }, { k: "00f2ca8406b047b7f50d4d1531f59876ca5373e4aab6fabb6d1e5658ff6f0019", v: new $Int64(0, 5658) }, { k: "00f93cdaf41fbc89b023688dd41e9050a16596745d24632eb91c677dda2a49c2", v: new $Int64(0, 5601) }, { k: "00fd133c0a80de1cd0e9d33252e7aa3b8582b8e7dfe5d8e2f5bc1b5361877426", v: new $Int64(0, 7866) }, { k: "0100000000000000000000000000000000000000000000000000000000000000", v: new $Int64(0, 0) }, { k: "0101d673155f6cb12ef84976dd9fd4f936d92450d64f3843e2f7815015e5aef2", v: new $Int64(0, 6327) }, { k: "0103f9115211f2bec123f8b7f1adae7572e7aec8ca38cc8f725efb5c9bbb1301", v: new $Int64(0, 898) }, { k: "0108a71ba938a4ebf1767e34c0e5bbd33df8e6552957340c817a67dfa41a17f9", v: new $Int64(0, 7542) }, { k: "010ae6f5bebf7308eb60658395c1b859f2bc4ecee37b2f96626c2d639400c465", v: new $Int64(0, 800) }, { k: "010f7dfc752747003113c7414e680d9163226efb33cd8aec0051c24169396dae", v: new $Int64(0, 6114) }, { k: "011398beea1456ebe04950b433f3fb1e01b8f2efe4b9be70f37d6966d62a20f3", v: new $Int64(0, 753) }, { k: "0115832aee7570ce4d8b5dc82c452526d9eb88de3c15cf5c3f96b12b4e0e5707", v: new $Int64(0, 7921) }, { k: "011e544162652fc21e7ca00e0a4b954b31b89079fa313705a8e7860fcb77b5fa", v: new $Int64(0, 9268) }, { k: "011f50c662878fe64277627e0c0e1e3efeb9d42aae37cacb256793301e150416", v: new $Int64(0, 4448) }, { k: "01277f69000364f44ddd4aa7b1b19743e7f5c793604218764bfc8ac7c1ba9e7c", v: new $Int64(0, 2298) }, { k: "012b7e7a487ac3f948510bd5a5a8b2ad5658b86b804f2a2cb7ccf8f20db74bf7", v: new $Int64(0, 324) }, { k: "012c02627a1b6eb40a54cef8d76f6999aee78ed0d3ea1cb8ccc9e38fe70ee587", v: new $Int64(0, 2258) }, { k: "012f7abcc02496c0994b918e8dc63a1ea297b6638361d9abf6975d9e4cd24a39", v: new $Int64(0, 6340) }, { k: "01355ee5f3639c086e07c04aa5e10f03d9bfda3709cb9cf60d4942dfe2877351", v: new $Int64(0, 3222) }, { k: "0139ececd119c799cdb0af428c4e33d6e01b1d0abc3b01dd0aa69c43ccb56c0a", v: new $Int64(0, 5575) }, { k: "013a998ddde85a3d271a0a1c4fe7e0009e6ec4df47e92b3e035f560bd11bbf9f", v: new $Int64(0, 5142) }, { k: "013c172c0e0a75bedb681cfd9eba1b23d69950e80382012522ca0f1682883b6e", v: new $Int64(0, 5385) }, { k: "013c4b3e623b46913054cc1180cac3c90537ce6bf1910de9f26f8470058892af", v: new $Int64(0, 235) }, { k: "01409cb3be80cb709580fb0648b2951496c4d8497ffb77d37f3a504fe37bc300", v: new $Int64(0, 9115) }, { k: "014c8b89e73061f04b2565258b2e11a317c5e06d997b70e0dcefd4c2c82338fd", v: new $Int64(0, 3158) }, { k: "014e12162827c1e6088ded107418436f010fd10883d8e9547326b6bd5067b120", v: new $Int64(0, 2154) }, { k: "014e19fd4f950d6e934f5f68c6dcb2fdc09ed7c318f0a651e9fa184a7da488d9", v: new $Int64(0, 6514) }, { k: "014fd8c291fabf50784fed5b10369163c25b29332fa7c5511dc72ea1c925b979", v: new $Int64(0, 5104) }, { k: "0162190fae7334ee974484c6e848f1f1e585898a1fe82f2f15dd3756cecf1a70", v: new $Int64(0, 7405) }, { k: "016619f36c40a9c0df5d6289880560ccf031413c4e61fd075cf2afc05c4acfa4", v: new $Int64(0, 6366) }, { k: "016a4a60c7741ba56b3b9fed819e64ac4bc743dfbde34b973ff25eefc36719b4", v: new $Int64(0, 5512) }, { k: "01735de5d4f6758b3888b6f64f87a722da2b97a29e36a18bccab7bf38e0db20d", v: new $Int64(0, 3796) }, { k: "0175d5ce9afef2db96eb5bffb71e0d0ee83c63a9452135d62c8e2ea594a9d6dd", v: new $Int64(0, 407) }, { k: "0179a779ca8dc61e90ed0c2410d08aad03f33af44a3a5e8804124dc64b13cfa7", v: new $Int64(0, 3516) }, { k: "017b595b1b665e1d9691045f262d1bddc2678551aff06473af0571f9b0b8a554", v: new $Int64(0, 3711) }, { k: "017b8d0a4aac7b875b6c6773ecf1e2b499c22b7188c6aa04b60c54799bf7d732", v: new $Int64(0, 9355) }, { k: "019a4911d47352559013372820fdf1d1c41c0125f40d3402b56b3d01b4d875f8", v: new $Int64(0, 3235) }, { k: "019eb96046f7583c09e3d2900190fb41ee75cad08026cc9293c8dc3d05e88bf7", v: new $Int64(0, 2855) }, { k: "01aec7a76b577b06823cd2d6a36ebeef8ff62f930bee396e87e1beb4408638a7", v: new $Int64(0, 5094) }, { k: "01b65f556553dd7778e2ac38973d6f2b795dc1f9ee1d86b92ebc8944798f38c9", v: new $Int64(0, 7194) }, { k: "01b816d9c12e073f95b8c26eea5071dc8e0b952d88feaa40cd5b1e60a547cb9a", v: new $Int64(0, 2685) }, { k: "01b94ae7f882182fbd21e5d60569abb5e73f4ab27b7b5e19febeb19e00fc88c0", v: new $Int64(0, 904) }, { k: "01c7af31426d629cabb83d027f6bf03ad1ac4979cb7e03bcca85b2719a42478f", v: new $Int64(0, 5185) }, { k: "01d10aa23f59921230b63f09141937fb463fe03913a3d631ac590218f12c1599", v: new $Int64(0, 2635) }, { k: "01d1da200d7af136a2e75026265ad14471064a3d5b8f5c0a9f91547ab4010367", v: new $Int64(0, 1999) }, { k: "01dffbd9ade39823987bbe106f9035d823a6a74fde8b184a239aa850ebddb02d", v: new $Int64(0, 7634) }, { k: "01e47d0d0dc3111c7029c6459b3a18ded934e2a8ddb2fce7ac557a7176c98d1e", v: new $Int64(0, 5681) }, { k: "01ebedf5bdf88ddb27947c74723e85481a9e3e54e15020bb0bd8204132245221", v: new $Int64(0, 8025) }, { k: "01ec02480d16f10f52646e296350567d541f6fe0ea50262324270abe316f760b", v: new $Int64(0, 6148) }, { k: "01f06a01754aacdcdf4c70ee8e8a28f4f837136b8e59f3c121cc32d7f7a096d8", v: new $Int64(0, 1835) }, { k: "01f248dd79e197ea8a1ef154c0075f809d70686ddcc1e0296387e12906b4a9d3", v: new $Int64(0, 6982) }, { k: "01f6982a981892628c4ba7dc393cd62ffe1ba119e7b96d53ad8840c6224ca938", v: new $Int64(0, 8860) }, { k: "01fa0a604ed9198b7f85341322829e2a4571aa4512a3bda73314905cdebda9d9", v: new $Int64(0, 6733) }, { k: "01fe1887a4429590004da20a031ab0e57a8c293159cbf5b4356e475ec73a9b43", v: new $Int64(0, 2950) }, { k: "020feee8aaa4325f0535cdbbb326088c56834b8df7793977bb016245abf188d9", v: new $Int64(0, 968) }, { k: "02166ec8da1a91bce6d2196619cd009f0d24ca7862093325d130ae21767c882a", v: new $Int64(0, 6247) }, { k: "02198dcf3ac861d8a77d3596968575a4bd7c5f90644a7d5eb30142801507dac0", v: new $Int64(0, 1501) }, { k: "021b2b8e0111ea6ac93d6024db6c270dfc55eb91935bc738ade0eb9f462abb33", v: new $Int64(0, 6013) }, { k: "0223b3b1a1582306526e112d790ea5670b82df866f8282c64ffabddae6deffb8", v: new $Int64(0, 1490) }, { k: "023caecbc4dda1eb586fddfbd6ee0e8ad29b9f7877445ebd3c896c62b9e91f1d", v: new $Int64(0, 385) }, { k: "024588e3969e3eb2e961a019ce52ea67c55679a7942772429a4a638768f36f37", v: new $Int64(0, 7419) }, { k: "0253013acc54cc1d71a4fa2a1530ca38e035a95bbbf1b0befd673aa2ba2d6c5f", v: new $Int64(0, 4986) }, { k: "025aa92ad7724b7497b0e89447afbed9dad25f37b2cf1eaf4f1325e88006dbac", v: new $Int64(0, 9717) }, { k: "02665a1348fb727951dfca75d38160a2b32a06c5c134ed4d9bbe08cc982702b7", v: new $Int64(0, 137) }, { k: "0269e8b12c8eac4c3dd91192927edbbc1482cf473b36c6fe64c7cda7477a34be", v: new $Int64(0, 1089) }, { k: "026e46b355300b94b9bdc60d5a08cb0ca7c12a873d3b1defbbe89c41c9844f7d", v: new $Int64(0, 9685) }, { k: "026e6e10e785b8f4c9d82d1a8a131c08bce0808b8bae1e7f615a3805e6a55390", v: new $Int64(0, 2097) }, { k: "02707b2c441953a269a592a07b20862621c1f9b2d71afb91454a44b6166f27d5", v: new $Int64(0, 1068) }, { k: "027bd21a4d76978b5694b1c47ebe6c1a18ed5d74a1d4c381dc2e0544f9f409e9", v: new $Int64(0, 7175) }, { k: "027f65bb2fbbf313c34149d37ee414040898247f4b54b1b219f0fa9c97386842", v: new $Int64(0, 6580) }, { k: "0283497e66f43e9daf97542f7edf3a7558eac33bd7b97acc5f022491c80f7c55", v: new $Int64(0, 6552) }, { k: "028576a309815b57c98dcd101fcf577807af49e81fb74336f5781c61f1f6a5d2", v: new $Int64(0, 7578) }, { k: "0285aca504c6f24a3dab92667cd6d2940bd369e1a389493fccee4b1d02ba4f12", v: new $Int64(0, 1621) }, { k: "0288db0c8f380465613d68a186102c5200f3a163325af48252db24399909ad19", v: new $Int64(0, 5287) }, { k: "0289b3fd52545e705ebddb55ee3d9f8308720bce2e1fd0c55875008edb65e19a", v: new $Int64(0, 9305) }, { k: "0298aa9b952a8f59c7af5a809257b3ef3dddc0a26062838b6586c8a7618ebbce", v: new $Int64(0, 3045) }, { k: "029c8db192739e5b0a16d94d003479149a604df9276760c201f42fd3de8049a4", v: new $Int64(0, 768) }, { k: "02a48f1834550381814f221291457a8500b65631b827a511d334a4819e39d401", v: new $Int64(0, 4742) }, { k: "02b641376e92b1aa0c9419a0621cded34aeebb8e8a485eb91e38907fa00fd74d", v: new $Int64(0, 2808) }, { k: "02c05eac5493195dc50d697d916e7e7bf2426f1e5023b2219b64936f96610ac8", v: new $Int64(0, 8729) }, { k: "02c1b53dc8c166539c56d23b016f64c1486f042d35cebb8c214933c7b201c055", v: new $Int64(0, 7055) }, { k: "02c7ee11585e64d9bdb33ea8f6c8f68137c8fe813832010044b5bf41ea19439b", v: new $Int64(0, 7183) }, { k: "02cbd1964e8868b166e826637e9678bd91e38359a2e585ea760d9fc11d1c8431", v: new $Int64(0, 5459) }, { k: "02d3c60aa6fe3508059b259bd97366bc4bdab1904a2c2e570ca24d98eabb1ce6", v: new $Int64(0, 365) }, { k: "02d8c5ec947440e3102c11fe3c3c83ffb0df3d7363c36a4e0c3670cc0fd4be2b", v: new $Int64(0, 6610) }, { k: "03113895b630b50b29d44273412dd5b3f723516ee8418180548a2f57de809d92", v: new $Int64(0, 4920) }, { k: "03159ed0fe4830909bb5f401e5c5e0209e7be306676bf6132049de74bb67b63f", v: new $Int64(0, 6822) }, { k: "0315cdbdcf76a6fd80da37f8a39f9e68245f4ee95a2fd5e61989f25ad720fe01", v: new $Int64(0, 5469) }, { k: "03194ade2d352b301a2100585aceafed52bc5a940da2838cf2dd9a5e7b350a9d", v: new $Int64(0, 5199) }, { k: "031e4f5a7ee2d61bf5eac3658f3470ce62adb11f66c80b030a28dff0c1eb3df4", v: new $Int64(0, 2534) }, { k: "0320236ca3bacec60d74ab2a48792ef6a12a6a0ec9ea42a51c097f814b3b434e", v: new $Int64(0, 2592) }, { k: "0320437175f3b2b033cf770c8ced987c67ffe72e3ba49ce029fbacc1f85c8acd", v: new $Int64(0, 4191) }, { k: "0323118cfaed3e08becd88adb4a47050ec35abe781a4c8c7b4872b2fb9eb77b1", v: new $Int64(0, 4583) }, { k: "03253f10d4bcd768919ebd1b364c0b412706d15551c6703a8c0f6868f89ae22e", v: new $Int64(0, 6269) }, { k: "032b1410a6385aec990edd6372c9ef963fd0970faf1c71810c1f9efabf265b00", v: new $Int64(0, 2626) }, { k: "032c4af2191bfaf5c125a894b23b6d5434a5a9d9df93d20f9618aa45a1b91b4d", v: new $Int64(0, 8512) }, { k: "0336d836346d6e80418dbd271aed19320ef81f8932ae5fb42a1b56fc462a615e", v: new $Int64(0, 6802) }, { k: "0348f69d1e1283b6cf542ef9d781a4623a8a199bb08618926e3236572ae13ccc", v: new $Int64(0, 5937) }, { k: "034cfbde70dfb2f5b176d4cd45b4834c4e92f68a8aa3598ef69c1f534485e535", v: new $Int64(0, 6726) }, { k: "035014f4bac307b1d934664899a15946a785b9bfe707e8541adcd80a4e39357f", v: new $Int64(0, 457) }, { k: "03549003269c7f1877b0ff7580ad27b70376192df495b4dcddc29738f0a91707", v: new $Int64(0, 7857) }, { k: "03694c8311361a01e6ce91e0ae7bbf0469b8645e0f7f6e967752b937c57f40ef", v: new $Int64(0, 37) }, { k: "036e7aecf0b8d27fd9e3ff717c24c687a672275087b163c4957e3c853a873467", v: new $Int64(0, 2496) }, { k: "037596da0d21d59446f1e71197281192925d0acaa26894f7337970f140ef486a", v: new $Int64(0, 7975) }, { k: "0378a992dfe587f7322c4f35619d130009d8e818bac9870a15dde8ebcff52a99", v: new $Int64(0, 5564) }, { k: "037ff782a500d09a9294b1b1e221322b62f8a5a5f46c9dc0054b297a944220bb", v: new $Int64(0, 9201) }, { k: "038777f5065faa5da8ae49b24dcf12cfc1fc70f9ce23c6bd6cac0f5dde02e3fb", v: new $Int64(0, 4787) }, { k: "038bbb03af996058d0a52e37e032ce51299b13ce72cb9dc9c06a807274afd87b", v: new $Int64(0, 8010) }, { k: "038d3b7a464a936ea580ff071e55cba69d4e938006cb893d217c3c697c21c80a", v: new $Int64(0, 3108) }, { k: "03a4790cde96324d11367a00102fe390e24cd5ccf85d6e1aa15baf4722c8989e", v: new $Int64(0, 5454) }, { k: "03a815f3abb5427881be5f89e07af00b8af9cb2d4cdcff96499623d5c9b220cd", v: new $Int64(0, 7861) }, { k: "03aa9160d5b5360cc732daed6fb7d55695879bd98864cf67fb00ef790d4339a2", v: new $Int64(0, 7298) }, { k: "03ab251886d44879a1a40e887f4734553a43e68b55bbcaacdbbdb9065ac6f0a2", v: new $Int64(0, 8636) }, { k: "03afa053c27b6a187335d1171693eea916128e1a1a56759afbf378533158813e", v: new $Int64(0, 4229) }, { k: "03c7cb1b934594a34d1c1a3851f656a6335314798f5b5a55ae0e27298517789c", v: new $Int64(0, 9639) }, { k: "03ccd11d914500ab46cd9051ff3840db602a5bf31d697a1404efc007ea7bd68f", v: new $Int64(0, 9658) }, { k: "03de4f7be651e9d3d3f3b42abf2de8596cd99fcf9379db4c8947f28fc3c0bd1b", v: new $Int64(0, 396) }, { k: "03de5d6b61c924e79f9ff2b867d53a091cd2efa44760d23040e1b1923a412585", v: new $Int64(0, 6556) }, { k: "03df1d6535897635268e75a5e04266cf4c66c3fa4a8bbc570ac2e54bc2d43b4a", v: new $Int64(0, 2557) }, { k: "03e1d949a190015b1965f9bb1afcbb4da3822126da9fd8fdfbc7917001664b9c", v: new $Int64(0, 6098) }, { k: "03e3d1b91e33aa217af9d66530c23dec393315bddca4a83146f0ef5d6faf4a18", v: new $Int64(0, 1251) }, { k: "03e8aa5a14ff097ffc608ec907c2e5da473bad23cdcf36dfef730c1a2caefd06", v: new $Int64(0, 8181) }, { k: "03e995afda43deed6ffc78e2fd86745e6c674ca757b8be56351ae491ccd7229a", v: new $Int64(0, 9233) }, { k: "03ec2430dc8b99272d9d4c49e664a5897b60f51cd7776f87e0c5459bbc93e9e3", v: new $Int64(0, 9039) }, { k: "03ec8c7610ba70019265307be7499680aa5306f4b6e67dccbdaa2d15ec6212a9", v: new $Int64(0, 2158) }, { k: "03f19a66bf374dc49c31b7cafb3e8b653b61ec500ae2e7b8f6edc4d932bd1a86", v: new $Int64(0, 6935) }, { k: "03f21c92e3d3884932e10aa0a19487df01ba1868ccd244340d04031964442178", v: new $Int64(0, 4740) }, { k: "03f2d239e353094c6788c89da15b0acdf521f0d929fa37e37eace4d737111640", v: new $Int64(0, 7998) }, { k: "03f3bf5e2fcc5004caec307f1b0378afa5ad67a77fcd9498c552d9f727fdf8e4", v: new $Int64(0, 2410) }, { k: "03f9dbd1f8370d8eda28eb98ce3773d757be3590cb2a7e518cee9b047fe48c69", v: new $Int64(0, 5495) }, { k: "0404f3b14e3baf9fed64cd39086266781063157cdd5b1058a7ff1ddcc14a9660", v: new $Int64(0, 3785) }, { k: "040639a972914c6cef8581ce00dac5dfccc554eeb5920e035c556cfd4839c10b", v: new $Int64(0, 7312) }, { k: "04091e45921c73b84206e21d9ccc496464d65a25c6a30e039d4dd4ecde6bb972", v: new $Int64(0, 6224) }, { k: "041246469dd12b7f185817a29899e282248f4f976b84036a0e99afc21e8dae6e", v: new $Int64(0, 2658) }, { k: "042299d598d87112ae1ee95eaf787ff2b717caff9e875d18dca510f6f99f2c29", v: new $Int64(0, 8539) }, { k: "0422b66062da06c00ad39d12f5672ab6e351a918ad4bc72cc763b944eb89f266", v: new $Int64(0, 2341) }, { k: "0422f8bce2074437cf90620567398a9afb8701eaf37c68a68c553bfffc9fbfd4", v: new $Int64(0, 5161) }, { k: "042ac3e3787b75c3dfc17b93287b32d875f0154c81e318aaf086858cbb0a184e", v: new $Int64(0, 2227) }, { k: "0430d23167e949bda8a9e7e3db4345b3dc0da465d6b0805fbcaa3381d760995b", v: new $Int64(0, 4529) }, { k: "043795b3c1508d6be116c4ff7f96ae132116468acb2249656dc281242f17c9ab", v: new $Int64(0, 7855) }, { k: "0448197a67d4e71ed8d3ba2d1333fca55205b9e9cefda430e70c8dc3afd0b618", v: new $Int64(0, 9836) }, { k: "04486e5234034ec8760838cea772bc4d05b8c763114e0839ff83c2d813c6bf6c", v: new $Int64(0, 7021) }, { k: "044a599f6395fe9d44c50baf50c3facbc224cbde6d1822106504bdfde4a7b1dd", v: new $Int64(0, 8065) }, { k: "044c12676a0be79780fa3d9c79d48325ae682ddfa09aff0d20189a187edb58ce", v: new $Int64(0, 8045) }, { k: "0469a37f37a153a70a5b25c362a8225a4f61b9017a9abbb3cbbea179db6b5c04", v: new $Int64(0, 5674) }, { k: "046bfe7c705c37fabd8e1133b26febe06f66d71b5d085cef5ce5c40e72619c27", v: new $Int64(0, 8593) }, { k: "047131bd9591dbd1d3686371bd7a46ebd867071d79b7aed2661578a6a57e0b3a", v: new $Int64(0, 895) }, { k: "04791f26e3eace438a9b1b5fe642ec2576dd120f3eb76258d0528a2a2ead373b", v: new $Int64(0, 3076) }, { k: "0479669eaff9ebde5f0eaec82c828f76a29bbed56e138d1ca54014b2b134dedb", v: new $Int64(0, 8633) }, { k: "04831cd6ea652cf5624e147d31e937f3e53064f216ea150d7bb487ee851fbf3d", v: new $Int64(0, 6689) }, { k: "048b4fc2c6cbcc377b390641029434365f8ad35eeb42abfa33dfa0b96ab219bd", v: new $Int64(0, 1782) }, { k: "048ece4aaf96f7abb4706569a6ffc58421bbe52ebdf3d3882f40ac7aed2d5b75", v: new $Int64(0, 6104) }, { k: "049cd5569af41fcfe7a93846eca74eda86e6f27687fb1392b08b7970e7a014c5", v: new $Int64(0, 9668) }, { k: "04a6b48f5d492d979163d46c5cba88e86d34f6ffe88fe3a59210c27280294a00", v: new $Int64(0, 1390) }, { k: "04b02e94d4b6385be2c30a79bc32bf0fdc19bde002e63808c00f022240f8e1ea", v: new $Int64(0, 7651) }, { k: "04b17b55cb1cb2bb08c81f6e6ee5e25870f067624c55a93bbac4b198bc176b2c", v: new $Int64(0, 4993) }, { k: "04baec8c0807ad99787807726e5289a1e2280a2dfb8a2372edf64075d6d3e2f9", v: new $Int64(0, 9738) }, { k: "04be97ec9bfe6ccd01f9343b7288b117b79f91cc45c24af2f93e0060ca2b6d6f", v: new $Int64(0, 17) }, { k: "04ccbad04aeea6124a7b445b8abd8b90ad0df2584707c893fe47bc9d6ac364e8", v: new $Int64(0, 8676) }, { k: "04cdf241026cab93355a9fe2d7bf816b691f0804ad29112cbc0d7400bb1a8a7e", v: new $Int64(0, 9023) }, { k: "04d01ae96819f19635ea4cd4c7a59f89e9c50b5a1676addb566102e19382f52c", v: new $Int64(0, 8442) }, { k: "04de8271f22d3ed0d1be0c6cc0288a796fb6be33cb5f1c12dfbe3f581b277660", v: new $Int64(0, 6854) }, { k: "04e24214540d4e3f96a0ea8f2f27e1dcbcf2b101a9699bb8739377d72fc0cab8", v: new $Int64(0, 9371) }, { k: "04e342afdeba87ad1c3616cb912b119281a7d22264076b28b1ce8dc9ad4c55c3", v: new $Int64(0, 6937) }, { k: "04e3dd0c7795176d087ffe5a5772612e35304f50f08341e1541c262e61402470", v: new $Int64(0, 1144) }, { k: "04e56159d7b573862216321ee06d57c9ef2e5f37ab3e2600b4a1fa8707e732a8", v: new $Int64(0, 3161) }, { k: "04ea3c22c04f7002cd700efbf268081a196e39a3b66ff65788beecbe1b9f03db", v: new $Int64(0, 3732) }, { k: "04f0dcda72b5322cb05f5dfc1eabfcd1715a56d0e5e290ff99bd75229d9c730e", v: new $Int64(0, 1846) }, { k: "04f29317c7f0470567032f1090fc41002af220a67ef5e27921e28d2b801516a5", v: new $Int64(0, 7276) }, { k: "0500b233b7d0f56860a8d9219c9a248be89bb53386ea8884a0539993db3d9df6", v: new $Int64(0, 2061) }, { k: "050636622c3227e6f1dc34f09ce9cf6ddc20cf9dbdf73a2a4141b3deb75ec5d9", v: new $Int64(0, 8375) }, { k: "050fc3f536354e98a3f967f0ddaff05ff4e43f0a367d78d7692c6de812f06531", v: new $Int64(0, 8585) }, { k: "05103be9dff652f3ac659900eb66aaa1f0b713e55dff5eba8d8ab436a23a7be6", v: new $Int64(0, 4881) }, { k: "051148db5ad81876f9b99a8df05e0b6d909f5ba5fe54107cee64695351e05f0b", v: new $Int64(0, 2540) }, { k: "0513aafd944640b48ae675b727b962147789b43898100b1b4eaed628cd0b3aad", v: new $Int64(0, 6685) }, { k: "051e380a9f1aa4e1515c25ebe5a3cf2de61ea8717fa4ab73d0a8b662492c3a62", v: new $Int64(0, 4843) }, { k: "052517f5e08413ca95afef921596ea1689e3151df5cafebabc4fa1e0695ffbb3", v: new $Int64(0, 2432) }, { k: "052b6189500340d5213a761f4b264038504efca657e384b595fa1d260aa2aee9", v: new $Int64(0, 5968) }, { k: "0531b771ed29f1bd022b6865a7e64efcf5c59233166d38d3afce3275232c44a2", v: new $Int64(0, 7473) }, { k: "0532ba19a6b704f67476b3cf257e679f2066c14350929844cd9e7143c1a5e01c", v: new $Int64(0, 7746) }, { k: "0538f406559617f5572e5ecfb154e8d1ec5013475509d5705410d20d9c9d1533", v: new $Int64(0, 5765) }, { k: "054fd38fa052645ed4814883e6d214dd2f38c2f4b042ad91f6b8ba4d46913236", v: new $Int64(0, 9838) }, { k: "0556dcc4ba6c5b3cda4b9b8b9d21fde8abc37d33430f45df95af91f4d498f937", v: new $Int64(0, 4890) }, { k: "05622c2d21a2c3490f0dc84b3c194b6c01ffc6b2b66eb72e04e0dbae21aa510c", v: new $Int64(0, 2851) }, { k: "0562eb5a54f9681f2de327a7c81127574168a5cf52a937715dd71858559d8cd6", v: new $Int64(0, 7867) }, { k: "0570ba35cdc5f1222de5bccc3be8633433b6ee6af1522ba06ca8f83d51b0bb12", v: new $Int64(0, 4086) }, { k: "0579df9fc1dc00cdd25743d49297079362e82920bdf6b7a187d33acc024541fa", v: new $Int64(0, 4683) }, { k: "05840763c536cc380cffd8b2b599449346c13cb71c8bd9cf6a7502cb6990438c", v: new $Int64(0, 9942) }, { k: "05a17771789e08d2b9e3f2419085b8d4582e99acf44170ea4f9f3ed729fcb43d", v: new $Int64(0, 6374) }, { k: "05a2266998cd1e555b2b594841aeab2b99dbc8388a17bf51a2d7cf52c63ae575", v: new $Int64(0, 7133) }, { k: "05a62ff62c98f26efa1f61800bb23c3d35a36dfc35b8c262c0820ef7f0fa62f6", v: new $Int64(0, 203) }, { k: "05a967dc52357ce2e8361d0d29e8067e333aa509392d3242d6a53c4f9ad5ad46", v: new $Int64(0, 5129) }, { k: "05b41dd5f62b5b8994f4636002afd7933a3b2bf26684e166b4de2c36727206fd", v: new $Int64(0, 2116) }, { k: "05b67de39035e95f9650bbe4e7ea2d2e485f8412e72fc8f9773125f13dbd1e4e", v: new $Int64(0, 3009) }, { k: "05bd12f360bd876ee32e230dae625da2c04442a27ed30a02635f5a744b3a059b", v: new $Int64(0, 4544) }, { k: "05c1517dc8ebca0285104db24fdad0dc54a661377aa0c9c6d6ed8c4f024205aa", v: new $Int64(0, 626) }, { k: "05c338bea5fd43640efd07884717367499ecb91875ccc9c1deda6c7166345bfc", v: new $Int64(0, 8943) }, { k: "05c447f7ab0c0a4ffd33f81a35d371dd17771be152aabebb83334375db07f19b", v: new $Int64(0, 9373) }, { k: "05c733e7e541b2306501159b47ada3c8f199bf518062f138711288ba92d828d0", v: new $Int64(0, 4895) }, { k: "05d990a2f2e7efd718c6645e3e7fb755b31a1cc8d036a566a6e368f51ab04ab0", v: new $Int64(0, 9311) }, { k: "05df9e57c9ebb078795eb7396b450ea6a9eb7e1baa94a850ea5bc4573bef83a1", v: new $Int64(0, 6565) }, { k: "05e25c9b77f9c97fc8b0875f8b049666a34554fd26525c9259faa067a3b8e160", v: new $Int64(0, 2112) }, { k: "05e50b6fc33f95123a5c559ce353cf9d47f922424d885da10b7788cca4fd217b", v: new $Int64(0, 9547) }, { k: "05eb28bba56929eb3ce7ac640830486783977ef5ad6b164c8254712188813c7c", v: new $Int64(0, 7050) }, { k: "05faeac61a94014f90806a6b76764736fcc1a94191667a20f2695977917bceda", v: new $Int64(0, 4149) }, { k: "06091219f211221338f9036e068e9db50d6f62d9a950190ffac86384280fd161", v: new $Int64(0, 6647) }, { k: "060e105f7a13c158368f902f64315a69047605f44b79e1b46e79a48813462d8c", v: new $Int64(0, 1188) }, { k: "060fe7535991f1c0270ccdffb7dc6fd7b102d1e61457a0ade07399368a6f6c54", v: new $Int64(0, 2476) }, { k: "061a06acc793e1f22b2c7a0c2aacbd817162463cc18023a6a18837c2d2e16422", v: new $Int64(0, 8740) }, { k: "062169de51516535a375eaed1c025ae1b5332a449cd6c96f66900b75523c1865", v: new $Int64(0, 6334) }, { k: "062426bb0f66e416db95e65be75156e1214f6f36e5de6f86942a59174cf56584", v: new $Int64(0, 2186) }, { k: "0643e02f09f3ad6a3b4db9ccba3b4f141f051819b096d29d0874450ccb56ebaf", v: new $Int64(0, 7199) }, { k: "064a53c94436bd96d2735d9e20feda18b85490cc4e9543bba2f64ba5cefeabdd", v: new $Int64(0, 7909) }, { k: "065dc87381eed05a5cddbf7d5a9c220bd0023a8272d439ffb023a195a215c5fb", v: new $Int64(0, 3486) }, { k: "066b0ef76acfc3863eb42bae56204c0b33c748a9e18cf06ae583e9b16e0e9c36", v: new $Int64(0, 2447) }, { k: "066b11e3778496dd15cf25bba74aac6a0fd33d61ce4629556f05bb6079f4bd1b", v: new $Int64(0, 1578) }, { k: "067826aabad0982c7cdde0c675694b24ab734529d82caa3a9c41a8201bb98102", v: new $Int64(0, 7056) }, { k: "067ae3abe86932239b4d7f1a062427714bcee9a9e2923f38e1755f742554c2f0", v: new $Int64(0, 4840) }, { k: "067b6f0484f3bfa61e6ce43f8da1decaa2a80f0b8d0273546af933bc1fba88d5", v: new $Int64(0, 4087) }, { k: "067d7ea10409f25f15468c2f11aed7db19563d166579c629b26926ebd3706ebf", v: new $Int64(0, 9240) }, { k: "067f9e3bd3dc0df823b0072524c18b24134943ca92444f9e64d9c63518a19c99", v: new $Int64(0, 2039) }, { k: "0680be2d2e3328b2603e0670a1b2555d6036286db742bfb3ff840451499870e5", v: new $Int64(0, 6795) }, { k: "0683f71e399f62e0b49703d6ef0a6f7f8da6ecf350b5d6ba306cefd3e32d6ec0", v: new $Int64(0, 8030) }, { k: "068f0fbe4f5acac7278214f4b1ffbf38a418789506b25e2ad467d8875a568800", v: new $Int64(0, 1270) }, { k: "06a2546606009f5b2079afab8efdb89d2303fd724f30dbd84e748fbde7c66e70", v: new $Int64(0, 9621) }, { k: "06a3aaa3f7a9a69dc8f6cf34753ef5c209ec4a49746b1ef007997129cef4c981", v: new $Int64(0, 4800) }, { k: "06a59efbca3194819931314762ee71043493647d581d8ea223a45a4454ea1bd9", v: new $Int64(0, 5501) }, { k: "06a86ce4ba2db86f082ad6484e4d487b297754f1231dc46459d00718d13f312f", v: new $Int64(0, 6118) }, { k: "06afb790575cea3788bb7cc65a22a74ad53af11f9c46999fffc518fe6c0169dd", v: new $Int64(0, 1640) }, { k: "06b06c3c2926ed8d47a1941f69f66018397c941b9577a301fc83723ba8af4e35", v: new $Int64(0, 9468) }, { k: "06b15d9781608dd202cff16baa1949a543a2b26137976cb050565c9d530d4f50", v: new $Int64(0, 5035) }, { k: "06b79aa407e0a2b7ffb7caa20e6ad24a2c138cf1fd2bce7728f699f22f355164", v: new $Int64(0, 9241) }, { k: "06b85114d810a234c8e7122d5780b7220cdb05f932775a98af3c7b617126570c", v: new $Int64(0, 7270) }, { k: "06bf28fe0d81677dd220c887ae7e0ff8976142948f267559827cd1a9e35e5f30", v: new $Int64(0, 4839) }, { k: "06bfe4699bb6606546641036cc78e7e0027e675cf5d932f4c087d25aad7cc6ec", v: new $Int64(0, 3751) }, { k: "06c26075e1c1dd643a260926f8105b632a3c6d3eb808382bd456a82570725f84", v: new $Int64(0, 9828) }, { k: "06ca384bc3e54a56ea248d374fd9ac61729ba7eaf5bdc02b7cbca684d62dac36", v: new $Int64(0, 5026) }, { k: "06d558ff13da15e8b83e8ebad5e7fc47ee0a837890e7364f065ad77f825ff131", v: new $Int64(0, 1340) }, { k: "06d6da64a3f56f74d6211d1940836e24a2eef4cd0fc1db39eaba88272a08dbf8", v: new $Int64(0, 7407) }, { k: "06e57fad495a4c4224e1bbb6bb50440aabd1ea4060f37fd3d07042417faa83cc", v: new $Int64(0, 6192) }, { k: "06e95144f1a8654faf9be9262c82a371b4e474147e33e03c7cee263e129f3c34", v: new $Int64(0, 2178) }, { k: "07009ed1c4b607470b48787b628d7c7d5062fcb4299149a2fbcc0db9b1439ef3", v: new $Int64(0, 9047) }, { k: "070e07408b704bc9dd4698d1e486cfdf90a722b88aaef33cf312433e80fce257", v: new $Int64(0, 7406) }, { k: "070e83d223469a0fc7187e265627484ed2e5de4dc9c69b2eae74b8664d608c98", v: new $Int64(0, 9204) }, { k: "071dfae303f3f7c89ab8f6e595b8dafa649e3046dc574c25cbc6c70d478ee7f0", v: new $Int64(0, 5746) }, { k: "07251579c3962f8e1ea7d0309d7538ba03dc575c829ef3503eac46622d38f4ad", v: new $Int64(0, 1453) }, { k: "0729ccf5a1e55b09611453c94cb8dafd13d6eb6238d85427fca717a0b8647d98", v: new $Int64(0, 7592) }, { k: "073101e2d9944d4fa7ee05b09241af9c0448c839a6ea297b0d57555a8d10a11c", v: new $Int64(0, 1688) }, { k: "073554631821159c7a01e8b16893f29f7e92990b68f026d876077a38e6208dbb", v: new $Int64(0, 8869) }, { k: "07461c5f4082113e5bda9d6efeb448cd4f11d25b24d819f358ed1a4621a60c85", v: new $Int64(0, 8286) }, { k: "07471842e126060fdcc5056e00d24e10307151fa4f9d0b82fc68f204e083d6a8", v: new $Int64(0, 4181) }, { k: "074bc7e0fcbd587fdbc0969444245fadc562809c8f6e97e949af62484b5b81a6", v: new $Int64(0, 170) }, { k: "0754c27e9da5f2f38e585b459c6902f50f52bafe438d44137578dee7387308eb", v: new $Int64(0, 9538) }, { k: "0759d73e2f3eb60109ad72b472fa8c5b3e32a05284a975f39095b0bd472f19a3", v: new $Int64(0, 8447) }, { k: "075f68ace6e4f89fb81811caf93f7fa66afef29763a72ef6481d67845169498d", v: new $Int64(0, 5467) }, { k: "07672cac953f1fa254b193249279da8c86f17eb11e2f17d0db63183d1f59109a", v: new $Int64(0, 4485) }, { k: "076f93138bc4a00446663454d7fcabcd57f603eea1a6736ba0eb4b5e6878575a", v: new $Int64(0, 1930) }, { k: "0772d84c87cd70659fbf0a5a8229d225fd47e8c5646b2951f559a543d9aebc92", v: new $Int64(0, 2159) }, { k: "0776b08403eae76c514d06921b0ad448cd7cbc84b1217883813c695d6e5a58d6", v: new $Int64(0, 7791) }, { k: "077acf4022f91feceddbce319f8f7087b8755bbcd9ecbac22dba477a02d4701a", v: new $Int64(0, 5151) }, { k: "078733028d1f861caf5d17a4dab43271eed973b2b992791d4856da6caa7d3fef", v: new $Int64(0, 5065) }, { k: "0787fce3bd1a26603ef4ef7bd52b739d501b774bcd9faa60dae0206778af7ccb", v: new $Int64(0, 7685) }, { k: "078b49a2c6ca34aa505168fccd49124bf3d672d8d845929b697350b776e1a873", v: new $Int64(0, 5160) }, { k: "078ee1aa01ccc4cb398fac15c8acec711cd8eff7f358c32ac11417974edcc11c", v: new $Int64(0, 6492) }, { k: "079ec35f62742f6c19f2b2603b8c44ab4510efc6f2a2dbb5d20f366465d56421", v: new $Int64(0, 179) }, { k: "07b177d6faa7bef475674aff3314f764b94533f5db7d8b6143097e5980b4a865", v: new $Int64(0, 1812) }, { k: "07b82ea772ef86e11450888c80319950469e2b8dcb3d400a2ed44c13c233f56c", v: new $Int64(0, 8617) }, { k: "07bd3806e591db5534e7c267993e55b46a1dad8c638bbbe214bafa9142d74e10", v: new $Int64(0, 8423) }, { k: "07bebccd726c1b85e8381a4140573c3748a2459028447906a73d43dbb3b859f3", v: new $Int64(0, 8330) }, { k: "07e732c003eb2c623ebd85a15b1163941f1d0cc26529238321d4e837e05f858f", v: new $Int64(0, 7510) }, { k: "07f8c069f9ec66a9335f415700ba059c4d44b58b1e1f607f4758412ad70cc850", v: new $Int64(0, 6039) }, { k: "080b55f9c73289e6f9b0b6f03b5dc1c5575e29baeb4ea1537ad98d10558fcd37", v: new $Int64(0, 7943) }, { k: "080f1b232e78d0d9b447ece20083163d5408b0e36308a1ebe8da12b3407d15ac", v: new $Int64(0, 6825) }, { k: "08101774fc9eab5e04e8b2d18e8232cbccce1312229c5f4b05e147fe3f7e2a1c", v: new $Int64(0, 4952) }, { k: "0810dbf4bf88f9b4263d93b615f3ea2b354958011a98a348d8baf4017b6c252e", v: new $Int64(0, 4850) }, { k: "08157aac80a282fc5f150e362d7b802c4d56ce28c3e705e394d8d417ee192fa3", v: new $Int64(0, 5508) }, { k: "0818d2b68591de5178e64e9b819d819e5c93342af7bb4d1762a24d6338ac6c6b", v: new $Int64(0, 5347) }, { k: "081e70f1c6c77ddd799a9b49e6c508133311455b6b3591939df496083940c8aa", v: new $Int64(0, 7890) }, { k: "0825f6e5211bc32bff73aeb2669e64831c360ba5688afe29d2b7b53b6ddf2bf3", v: new $Int64(0, 3344) }, { k: "08272da8009edc4619c23571e82c8ef396a76de8e87c4c386d968074b18baef9", v: new $Int64(0, 7755) }, { k: "08278bf546899cc7144e2186b414500041e78188cf18958c681d31c69e601ef4", v: new $Int64(0, 9997) }, { k: "0836709728ae6e18af728796d6f574b6c9454c61664b41cb6cae176e14b829e1", v: new $Int64(0, 6827) }, { k: "0836db304369b62b467a779a14012bbbeb6e0fae9b11ce612e769cc63bd70ecd", v: new $Int64(0, 9549) }, { k: "083b2bb5006fcaa2702bfb94f41bdf90b2d816ed96b0d3aa95605a8b053e4b5f", v: new $Int64(0, 5922) }, { k: "083d6bde7cb089616af84c06b1bcf89434b848b1dd470fe57cba16981acf5d5f", v: new $Int64(0, 3995) }, { k: "083f412df67633c6ebe7f63d687e87bfd603715fe55a1978ee256db1ba51b34a", v: new $Int64(0, 3218) }, { k: "083f657eb54dde02dde7961b24230ce1cbda116b978e70aaf678565e248377e7", v: new $Int64(0, 5208) }, { k: "08460fb2641119fe8c3abddd16d336e68f1c4de858bf86b2daa71ec4991e82a9", v: new $Int64(0, 1963) }, { k: "084c15f0ec64c2eb59441b65a2e0c9d1c3b54f4582886cd1f6454ace157d464d", v: new $Int64(0, 6166) }, { k: "084c60be29887eb41bef7ea118ff5e035a1464176599ca624a9588ebf9b15ec2", v: new $Int64(0, 1570) }, { k: "0861c57f14efd1b958ab747fde46ceefa0f29878ada8245ad90900bb04112f3d", v: new $Int64(0, 692) }, { k: "086bb0182e41d4a4cae6dd4e00a6aac496751ee4e2670d7ef422731ccf17a709", v: new $Int64(0, 6048) }, { k: "086d75a77f4357fdeaf8317a827ba201512409aee3ea3f1141b36b7936ab971c", v: new $Int64(0, 4207) }, { k: "0874ecddd6d1ad8fd3db2f1fdbefdecf8e8af471df28bcf050cc51a9c64be03c", v: new $Int64(0, 3572) }, { k: "0875f477c9779270ee2c3ce5b20893d4d0308ffcf1cee47c746d7f5f5db3d7e5", v: new $Int64(0, 3276) }, { k: "0878e0c08d994c250635659e46a53f39b00e3cd81ed2998f36453357e33b952a", v: new $Int64(0, 9893) }, { k: "08801ef594ea591a0e35752f9e907075dc7849e8e3c4cddaf863b420447e31e5", v: new $Int64(0, 3394) }, { k: "0885970bbc7bc4212165ef4f332472bbbec62769a18f778aa78be2721078431c", v: new $Int64(0, 8534) }, { k: "08887657c62f0535c556812e92bd63d3334b92d5412f320d44a60ebc88c12d5e", v: new $Int64(0, 3850) }, { k: "088be5b945cef3e871a84921d3446f08e196b77f85803399fe66e0204d4458ce", v: new $Int64(0, 735) }, { k: "089a50f9bc1ad58c773cdcdcbbbeaa93ad724f5011df445caab8a3265404c206", v: new $Int64(0, 5091) }, { k: "089fbfb71147f07023ee9914aa2e4d485c6fcbd44aada7dfac40cd868643b0da", v: new $Int64(0, 4041) }, { k: "08a23ae63fafe5d5259ee1c791223405c215870d3cacedb01069b7f2e20d7241", v: new $Int64(0, 3566) }, { k: "08a93d90374a71f8b41e5cd376883b63d9eae5a9dc9c8f721742991f7e84836b", v: new $Int64(0, 5242) }, { k: "08be8e45b7bbc7f233f05d273fa8099af9ce61dc73088c7fad0b05d744faeeab", v: new $Int64(0, 7238) }, { k: "08bfc4b49d36105f23a512efa5feadee7f19a74de87ee70b20416df8361d2fd2", v: new $Int64(0, 1235) }, { k: "08c1ae2a683d01137eae9e332b00e6cd8d6a330c87b7625b544f4d0b803b69b9", v: new $Int64(0, 5697) }, { k: "08cac86a3250311d37c2d77d7fc4d22fca0fef34e0c55496e5750cf75aea2953", v: new $Int64(0, 1112) }, { k: "08d3e8fe55f1614d68791e44cbc99539be55395ad84e9ba39980275dadcc11ac", v: new $Int64(0, 2004) }, { k: "08de0911d7861331ff58a9381752a9a58a95fec6430fe2bed58e470f6ba20d3d", v: new $Int64(0, 212) }, { k: "08dfcc430b687ddb8832823cfe73a628492111df804188f9740ad72426b8d2b5", v: new $Int64(0, 7552) }, { k: "08fff396bfe546b1d9117d6fc44b74cb6ba78607bf5786cc721f79689a15a743", v: new $Int64(0, 3195) }, { k: "0903ab1e85e62d7d530df0cec45958eb2e4c75266c8b180a0da94262c00228a4", v: new $Int64(0, 8828) }, { k: "09083525277d003186143408774519e17d0d2104c9ea29bf43831eeec840d3e0", v: new $Int64(0, 2872) }, { k: "090bfcb6453dcc933a4f2effccb00c9944d9b32d06a67a4acf1bd1c6a025abd6", v: new $Int64(0, 2031) }, { k: "0915f08dcef57ecc8bf480635b19a930170b0252286cae16cbc6c80ea75bc960", v: new $Int64(0, 6221) }, { k: "09185336092023309528c031be42047701b7ebd46323fba9bee4b7801deeb422", v: new $Int64(0, 5868) }, { k: "091c5dc6004146d59c56f007d0464e28a20d8431404191055dc2106e88373696", v: new $Int64(0, 3281) }, { k: "091df1ae6b7baa049e352779e8ce9faba16d89b39b7df71685e7ea9a1537b542", v: new $Int64(0, 4232) }, { k: "092f793fda519e69699cdf00c3aeadd2acdd7a6178c53af1b50aa4b01f3bbe38", v: new $Int64(0, 4212) }, { k: "093524c07f3ff3d575ab4fd0572d67ad30dae4f49fd41b280ea99d84d72121cf", v: new $Int64(0, 8292) }, { k: "093c59d9d3edb426260af17734aba018aba087e7e67280a657249b6d12c4d71a", v: new $Int64(0, 1101) }, { k: "093cec8604a21099bd00ffaf64dc4fae63e675f274d74cfd3cb304016f16b34e", v: new $Int64(0, 5537) }, { k: "093f17f785aefda56f0385a355e2386a58a49a6c8b961c6653e364316b7d34e3", v: new $Int64(0, 6776) }, { k: "0940e1723fe868dd55b2ceb9769fd1a2e633e611fff84b26117e478b0e7ac479", v: new $Int64(0, 549) }, { k: "0942d3bf2f199be2248396afcc693eca82be28884cf3c48913cd47f39c3711df", v: new $Int64(0, 6314) }, { k: "09436dcd90db0604342358ea5fb08ad27d2f77e5f2729d53ac75dccbd4100121", v: new $Int64(0, 6979) }, { k: "09468849c504c4a7b674a616c7eb535b721964f8b62242c836400a1bdc14c1d2", v: new $Int64(0, 6723) }, { k: "094a5e473c0d99118c6981cbc36b078fb4ef2d2f3a5d2ca46f7f7178fc7bb267", v: new $Int64(0, 7328) }, { k: "094cbe60f3b7243e17725d91dfac3fe83f878f4bd15bdcd90feafe00a4daeb28", v: new $Int64(0, 1927) }, { k: "094e0724dbfe8e28c4145496262919d4a6662534646f769c8d8ffe8e02c28288", v: new $Int64(0, 704) }, { k: "09501cc2e234190c92223cadcd314b68caaf45505cc662a119a544cad2bab61b", v: new $Int64(0, 6978) }, { k: "0950db0138e1961024f3da08fb70a03add8342b48e68d01f99daa8fa8d496f76", v: new $Int64(0, 8127) }, { k: "09566d11bfe96a116078ba8b6fff2fb8edbebf9ec93aed8a998149e0b93e624e", v: new $Int64(0, 2776) }, { k: "095921e6bacafdfb2310879d797c9375d2d55a8b5fabcc7b73bff512284be8d2", v: new $Int64(0, 8219) }, { k: "095a80e42cd30886f27d2efc5716434ef2dd3808c5af2be3bd640515918f62b2", v: new $Int64(0, 1597) }, { k: "0969334c98b3e2ee309c57bc2fa42da1390f24e0d0c18392ccbce68ac6094c3e", v: new $Int64(0, 172) }, { k: "096e4b49b0ab055eb2ac3e6dadeecdedb42b0c4cb5daa8de2813a5fe45f44b89", v: new $Int64(0, 3545) }, { k: "098192263b2faa91e6bfeabcf7628a34a7fe34aa0aa23340767b413deb8b8f73", v: new $Int64(0, 5883) }, { k: "098a97cc3e570fa06b9678c232c31d439583fd402e291a2f43738835f172d4ff", v: new $Int64(0, 9431) }, { k: "0991120e64540443d5bd994863e7e2329d78a711eacefe90d18bc9622de1cefd", v: new $Int64(0, 447) }, { k: "0997207b2ea7766e5f4fb582ba7c449c82f0ff53781b52a17aa7c0791f800937", v: new $Int64(0, 1906) }, { k: "09a541a80cef622c69d9588336fe39873e1041d1e97cc7f8ba7acf1664505456", v: new $Int64(0, 5791) }, { k: "09b005d7833d6b4f431526bf782cfda7dd02d6e90e1eb335dc40e205ac0309fb", v: new $Int64(0, 9984) }, { k: "09b61ce5e78ef34af673c992b1c76e8e4265cfce46007eb5a3b4f9fea181f0bf", v: new $Int64(0, 5367) }, { k: "09b7ea6c8ed4c31e32a4f6ef9be06d284fa15af9c4d24a84d3313da95f8af04f", v: new $Int64(0, 8511) }, { k: "09b8b599bd71de0102349468e695fb5aea118084d02c61a49ee222706be153a7", v: new $Int64(0, 2603) }, { k: "09bd8f3b006e2bbd021b57991204fbf8d24eebfa0e6f5be91550be2fe64c95f6", v: new $Int64(0, 9768) }, { k: "09c2b523fa60e252f82178e8877c69bb6fca887ca7ab8a29a3b854dfe40cceba", v: new $Int64(0, 3517) }, { k: "09c31174ef37fd44fdd18e5e0942475bff111d142848e0d49a553c98f221d1b8", v: new $Int64(0, 2477) }, { k: "09c4ab0b16ab54d788d6fa5512f78aab200593090daece872cdcd08cad1ee2de", v: new $Int64(0, 4160) }, { k: "09cb44fd021ebcbaa67f477146b8bd176ecce0bb1741618761f36be7ba6bcc4f", v: new $Int64(0, 3197) }, { k: "09d29312e67492c48d3e53daeb099cc089fd3f433adc80c0e68eadc2f2491854", v: new $Int64(0, 1504) }, { k: "09d8ca9bc01f7ae5154812c81c75728130501852b71be9fbf322bcaf9aaea0b0", v: new $Int64(0, 3811) }, { k: "09d9eac18ad77bf8e4d711df8fca1fdc15eecc8991c07aecaa63ccdbc5ec299d", v: new $Int64(0, 1367) }, { k: "09dca739683e0db673fc41cbf0a06ece2dfd6744ab0a59283a9720c3867dc74a", v: new $Int64(0, 7544) }, { k: "09e44e48d8b559265d9c3ce25c5c433ac61b9224336e843f32a10635614a8017", v: new $Int64(0, 5386) }, { k: "09f1f1c5fa07c728be12aa6873d1070944ca5da83688d239f763a76a6d75d731", v: new $Int64(0, 8909) }, { k: "09f848a92e69efece12c3e87f4549494c31de90dfddcfcd8431789980614c764", v: new $Int64(0, 2976) }, { k: "09fc7bd9cac4c66ebacdd7fff986b660023d961fee2bc5a6495f183da045f0e3", v: new $Int64(0, 1765) }, { k: "0a0224436dc2654c6a200c60d4213674bce1a2d3430cfd1f8eb13ac4c6eb60d2", v: new $Int64(0, 646) }, { k: "0a09aa8b98dfc7a3390c5b7f9936a1b2119b3348171ed0eed7e171479297d792", v: new $Int64(0, 8652) }, { k: "0a107bd182b1b50c66aee61121238ed607724c44503ff07913bf9ffff99cae4f", v: new $Int64(0, 5619) }, { k: "0a1d57eea36af907dddbf3ecda5af46406f1428f8f790eeb756319eba5d0cedd", v: new $Int64(0, 3704) }, { k: "0a20907794f243bdcbd3afc12d87ccb7fa6e98ac6ebb8d09c927a09e0e2c9128", v: new $Int64(0, 2737) }, { k: "0a228c128b1f09c3aee849ef87786a926353ad748f0545703061e2dd814946eb", v: new $Int64(0, 2688) }, { k: "0a23b2743affc41cc239928d8db0c6e101119fba054db01c4e58c4b40db74c63", v: new $Int64(0, 8629) }, { k: "0a25beef9be0c10a345adaa52e041fd8c7e8defb504f83e79eb55f9f0325ee0c", v: new $Int64(0, 4354) }, { k: "0a2b71ab4df293d7544c6c645ac9e6c91fc6499ebb8a8bb934dfdf5c2c241d5b", v: new $Int64(0, 1555) }, { k: "0a42c990d0fce0547b57414adfedcceeaef4b696007cea6d0eba463f8977d53a", v: new $Int64(0, 3401) }, { k: "0a43a39089cd08692a1d06f0a6b3e92e3eb8d86a1ac67a56406514cd6cf39b01", v: new $Int64(0, 8573) }, { k: "0a4bc92348fbe9911e29aa6986ff90a590684bf87dab5db4b4841e43396474b7", v: new $Int64(0, 6964) }, { k: "0a4ebf6107ef5299b5f5db65f810d84c9b5f321a07a1360cf7e81567e4bdce49", v: new $Int64(0, 4963) }, { k: "0a5442892d161bfda1592d048d010594576be8ced620465a3fe69bd7fb0f4736", v: new $Int64(0, 655) }, { k: "0a66e73e0e419e2a12fee2914e93f30abe6f5aad018ccf605da59b48a035b7bf", v: new $Int64(0, 8332) }, { k: "0a8c279ee37634bc59be30ed2d3e4dd3cf7f17e016dc57b15d8c289f92df86c3", v: new $Int64(0, 2719) }, { k: "0a933e37402de21907ff70acc4e7de8e7d31f093a5bf98e70fe5e34827e5654e", v: new $Int64(0, 5470) }, { k: "0a9f78df7d40545f7063c1205fca7bc329a5d52a0df3319140aff2be910cb784", v: new $Int64(0, 5669) }, { k: "0aa4018237c2dd025a29abb6fc4e40e15e272d2999fb0d6658ec2ae58e7dea2c", v: new $Int64(0, 7896) }, { k: "0aab6dc046f4356fb2b1907f15fd12ed595c740ff71054c10c033087635618cb", v: new $Int64(0, 4592) }, { k: "0ab9f060455bcd312a4015f7e276dcce7067abd0e0bc2215caae25528e69ecdd", v: new $Int64(0, 4118) }, { k: "0abfd6d16a28c22c0a197ff8500717a8af813a7b067e913b43f4dbe08c1effc4", v: new $Int64(0, 1149) }, { k: "0ac20d5c30053d3a9f3ece65c35cfdf1b3b6cb1076a78df6bc4b5e0800684713", v: new $Int64(0, 9361) }, { k: "0acc89f244a5fbeb7b59da84e4411e8cc3a45ae5ef741dca5eb1e8c5adc52356", v: new $Int64(0, 1493) }, { k: "0ad5560f035834d5890b7395d8a3cb3a51a326b3e514fa5d39a6ec16ce95eabd", v: new $Int64(0, 8271) }, { k: "0ad76534b7b7733b0093f5bc7d949f07afd3227533abc6f79d4e039d74267c0a", v: new $Int64(0, 911) }, { k: "0adadce577d2ff40d840b7d3de27ab5325cdb94401190258318b2307fdce28c5", v: new $Int64(0, 3280) }, { k: "0adb43e918424cf6cb354381a5cd7c0169efabdc3f8b7dfc15ef12d7e371a1d2", v: new $Int64(0, 5749) }, { k: "0adc96c9c3da3fbc9f7a8bc39d91dfd0ed4ff3dbf1ccdfaa28174341f69d1528", v: new $Int64(0, 4356) }, { k: "0add801a758aabce8850316d74e8ab02f4da4303fcb8dfd870b8dc2b3a7b56e2", v: new $Int64(0, 6047) }, { k: "0adfe04f39b37bda0b4fbb2e22689aa66e0b82f5dd7d326382e7ae0245b29709", v: new $Int64(0, 9199) }, { k: "0aea6aa3bc0415d2cbe3e49cd402dc8e2154b4c6526d7b48aef900c8abea702d", v: new $Int64(0, 4669) }, { k: "0af62c44b681184fe984830194658503c3efe9037317c7a4f87f461efa6502bc", v: new $Int64(0, 5827) }, { k: "0af7d776a971c0a809d2a973e21d36e578a5b6ee7669eadbd0c1dccf2af0bda8", v: new $Int64(0, 7061) }, { k: "0b04a83aab436f2994ba57d8d4d98053108cf9ebd6a0c620c594401d2faa0593", v: new $Int64(0, 3552) }, { k: "0b0807f3f186fe448cdfa9fe1b3108dd4111fe68d25a40d51f34810384010692", v: new $Int64(0, 4941) }, { k: "0b0d647b0dcd2f7fda4db4cb7b465d848cbb10dccdb7df5480431314b2c53cb0", v: new $Int64(0, 3006) }, { k: "0b0ec6f22161d97cafea30a65212b013d94381c0de90b5512e931aed3028abd8", v: new $Int64(0, 6011) }, { k: "0b16624fe577262c3768871a7a5683515837b4b01a993616853635de40722955", v: new $Int64(0, 6016) }, { k: "0b1a21426bf56210c420112df52897d3b7ff8123fb8472b329214355e6f24260", v: new $Int64(0, 7251) }, { k: "0b1b0e0aff3d1133e99920d7c31ee604f8dfeb64e9e2764842213e7e656d1eed", v: new $Int64(0, 8592) }, { k: "0b1d793519782d1b10d244e26e73c0ccb89690b22f7f85bc994dc8772f93cc9f", v: new $Int64(0, 565) }, { k: "0b306f250b1de3483cee172e993efc852ccef2c82d098c317a7d5863e1f60713", v: new $Int64(0, 9936) }, { k: "0b32fcac746c65f070d3c57d25c443ecac82e6befdb50b48546a6f7fe56d0b5c", v: new $Int64(0, 6220) }, { k: "0b33d4267e3071cdadbb4388e1ddc4f4f981ba2c04324f80a0c662a392b9ec46", v: new $Int64(0, 7710) }, { k: "0b37cfc86bccef9f856fd70ec06fc85818f0fd7129c4888d6a4ef35e52f1b092", v: new $Int64(0, 694) }, { k: "0b37d606506e8b9b954063801989a32784cbf728319dc5a0337b5baedfc2130f", v: new $Int64(0, 3220) }, { k: "0b3a3e676a0a860eab7d91b648a2badae2c4fb63b9ba78a807244f74c975b780", v: new $Int64(0, 8481) }, { k: "0b3bd498a44b5d731f3477b1ae994260d7dc7479e45ab237a2e489aec1334903", v: new $Int64(0, 1554) }, { k: "0b3f3ec01718854b0ddb2edc46c33f460b2cef5b47ca537b1a088f08d9cc353a", v: new $Int64(0, 7713) }, { k: "0b4a6f9764c4e7c44a137f07aa3f9a1e9b031029d19c662fc59d9c6b92807d0d", v: new $Int64(0, 1562) }, { k: "0b4d052977707ac99efdbe5b8937b07aa4cafbdf54ad9876b03ac9a6e5ac84a6", v: new $Int64(0, 605) }, { k: "0b4d7dc15ff0e6a68ef84cc74f03c02a5d2b8e9b6e9e83e310f995c60b43b778", v: new $Int64(0, 4110) }, { k: "0b55c7aba2ab3b93d0939652214c8ff6c95e6ac70fa18216b5bfd381dc10b2d5", v: new $Int64(0, 7044) }, { k: "0b6d4d9c7d7a6640b02a553e48932dbbfbe2b3ec33ddd84d921dadd753c14ca4", v: new $Int64(0, 4924) }, { k: "0b6d9b0c536424a5d74b82faacadb0a2834103334ba00911d7ced6e5c9eaa830", v: new $Int64(0, 6285) }, { k: "0b79dcd961a3492c4d08e64edc246ae8927f7bfa3a7698b35417e3972ccbb561", v: new $Int64(0, 915) }, { k: "0b7a022e53d916db7ae4c9774b7707dfde5ec403b9ed0848e8fc6d45ddd9c2be", v: new $Int64(0, 338) }, { k: "0b7e6c1c5019bb9fc0a5ceb308e62ad4eaf80baac7721c6fb666a9513317b600", v: new $Int64(0, 6436) }, { k: "0b8ebcb4d1d5fedfc43086d3f8570cd5dea1d51a81372277520961f152e64f94", v: new $Int64(0, 1623) }, { k: "0b99271126ae594890efb56715d4e7dd9753ef342c3c2f13b90b33830d031318", v: new $Int64(0, 7142) }, { k: "0b9cbb044e8f042810866ee085866d353eb9c5569d30d28d93476e77e1935213", v: new $Int64(0, 8191) }, { k: "0ba88710310e012644f9f09b5b4075b27b9d7d96f71a9e419b380a5bc141b63f", v: new $Int64(0, 1778) }, { k: "0bb2df09b2aebcb193e7904f3d00c2fe01678e3ae5ef8c012bedd406f97c2b5e", v: new $Int64(0, 5040) }, { k: "0bb4de64fd362f52e65a30315101edfcd6653264fa0aa1a9062b6a10d118b31c", v: new $Int64(0, 1338) }, { k: "0bb6dd1a8af10093dc584181ff1dca76eca42b4365fca6abc58603bc5f9d865b", v: new $Int64(0, 9947) }, { k: "0bb84c36b5b632559cba688267ec13ca6a7fc09c3dee316c75a7045a31494f1a", v: new $Int64(0, 7518) }, { k: "0bc275c4748bec5066583aaefdc800134d0de80fe8623d3bf3a8087a0c5bf0e9", v: new $Int64(0, 2269) }, { k: "0bc3879b8c8a8e7771b5103fc63d18ebffc941eef2ee56109b039c3b292f7046", v: new $Int64(0, 6557) }, { k: "0bc7d00e9e46ae68ed420b549789e7e00fbc334baf980ef738640980d89f160e", v: new $Int64(0, 4075) }, { k: "0bcd70bc569bc9066f693e66a90f737f3cdd6d33b96631aa10389ff1161e490a", v: new $Int64(0, 1579) }, { k: "0bd3ef436cde15a558ef985114e7291e8dce2039a69032681ee6d40191cdcdeb", v: new $Int64(0, 3719) }, { k: "0be540280e04e9c5c7c7c6008c02c2c6d728f0d18794743a024d12af9ca0052a", v: new $Int64(0, 4444) }, { k: "0bea5863cadf311772f82ecbc939380c907c8b60bda104dab3cc846ea76a3255", v: new $Int64(0, 9657) }, { k: "0beb733c35ba2497e33d11c0757353b5d0555f7e59c9af3c5eb004466fb89ba4", v: new $Int64(0, 8032) }, { k: "0bf63236d100e1650f4f0f4e7754ad1c0eb21f53eac22845e2e8f71e7f328d7b", v: new $Int64(0, 9013) }, { k: "0c0b4d2a8f9e02bfbb7c422c129198d34387c1b6ba3d8d6aaf1e1f33552166f7", v: new $Int64(0, 2086) }, { k: "0c0f93d7877186bfe988627f10991cd6b7d1b5727b8fbbe8a9f9a1076efb0adf", v: new $Int64(0, 2266) }, { k: "0c15c87079c44ab54cfb7f70a0f7a0f6747f05099c472be3163db37dc178a7a4", v: new $Int64(0, 6595) }, { k: "0c1afaa1afe9df11b03ed6b7809370c9e5d6914da080a1e9c9cfb0eae8e766ec", v: new $Int64(0, 26) }, { k: "0c21c95f90c294fd22f874753620cbba46688ee7e04969ded9cd28465de0ea3e", v: new $Int64(0, 702) }, { k: "0c21f2d1b20960c87c857218778630aac374a0c87202519d2d957759a257913d", v: new $Int64(0, 5121) }, { k: "0c222a0978d1b0bcacb8971a96894705bbc000b66b560edf27e94d6c7d23d3b8", v: new $Int64(0, 3128) }, { k: "0c2b5223a7e54c62c4a47fe46e4ca03e3ad3324850e6571279899bf24772f127", v: new $Int64(0, 6522) }, { k: "0c378d512e80b1142aa4866452c1d2f2165537f14af6307b488e96a69e40c16a", v: new $Int64(0, 6739) }, { k: "0c4306d503aab1fa25dc4380da4870984a1e35e8604725a236dcb5a6cf948d4e", v: new $Int64(0, 8333) }, { k: "0c468494524b31579689555952f6287b843e6f8d77b6e9e3383d35585a5654fe", v: new $Int64(0, 3608) }, { k: "0c4e8af4f56a34ae3a1aa4c8a183828b9d7e3d95fe203986f1bd1bb5d90368cb", v: new $Int64(0, 7066) }, { k: "0c51e397b94560ee232aeec35e757087bccac1cdb04ad579f4be84311c24926a", v: new $Int64(0, 4990) }, { k: "0c54ad5432436cbdd56c66d6bc165b9e19ac0a73e4e669ac5f586c345371844b", v: new $Int64(0, 1333) }, { k: "0c5567d398ae920f768f610cab8bf64827e9302909e9a0b9806b1d2687d3a7e1", v: new $Int64(0, 9793) }, { k: "0c5809e6623834a061c8e1c26345b295394633764978af43e354b48c249004b2", v: new $Int64(0, 3556) }, { k: "0c622dd5683d623cc24ad850076fa21219d97528d904f8e316a6e4a69a411998", v: new $Int64(0, 7886) }, { k: "0c6c1936c582052694c372c79f6b4c2089d4676645b609dbbf2c20a889a1217a", v: new $Int64(0, 6409) }, { k: "0c6e8ae152934e0990cb1d1bb9b32c57878340b4148bfdc7048835230c5093c3", v: new $Int64(0, 5428) }, { k: "0c6ffcb811ca90329a1cf4774f07b7ae8e34774297d9f14d2ee758e754316e4f", v: new $Int64(0, 6383) }, { k: "0c75ccf93e0e3a77e8973c64cb578c5108e2fd4ecc26096bdcf85f2bd8396d44", v: new $Int64(0, 3764) }, { k: "0c79e6f529415d63e9dcdfa09e510948152f6965b41c0aa637377242114e74e3", v: new $Int64(0, 6539) }, { k: "0c82d858038ab106876ff757787885dda02c376fbc74108dd5f1ff85ea389c10", v: new $Int64(0, 3821) }, { k: "0c8a60617a280c905f44084b45d61cc86084253e03e0b5d40a68bdf59e013b29", v: new $Int64(0, 789) }, { k: "0c8b3f87683dbf777c5c39fa0186ff190466d0a4890f3ab16468a6ec1895f4fe", v: new $Int64(0, 5896) }, { k: "0c8e53bd02cab3da33edd97efb391cddf2a1b725f36bdb1a955ec779d3d69a0c", v: new $Int64(0, 426) }, { k: "0c90e30a6a69720b69e6bf1aff1a685e224718bc4a3be8da1b82a069521856ee", v: new $Int64(0, 6587) }, { k: "0c9814b3e9a3fe0a92a91f3a3172629b602c1f88c2164dd9c8691287a0c7ac2e", v: new $Int64(0, 3511) }, { k: "0cabf6044350934d7813d506faf49e1bc74136dd2ed4bb430e2a1e79470349d5", v: new $Int64(0, 4560) }, { k: "0cb49203f924ca07a5d1b6f14c0fb79ec9537b1c689188aa734c90cfc09eee9c", v: new $Int64(0, 3499) }, { k: "0cba28d553b76c6d4e9a26c758582bdc4045f5e5c9bf329342b7bda77fb96a73", v: new $Int64(0, 5805) }, { k: "0cc9b7bee9684fcc484157f26eaac1acb3a0b63e3c85896f49c7f1d50d506368", v: new $Int64(0, 7278) }, { k: "0cd5f431bfc2d7b680e93cfd835a43aad3ce3a999d252dfb0dbc0f6980b669cf", v: new $Int64(0, 1395) }, { k: "0cd65dbb0adbebc17fdfbb337a5653148df322d3266b0c06174cc3b086fffa03", v: new $Int64(0, 2852) }, { k: "0ce982e90ac3204184a69cedced74171ac624a12dd05945d9c0ea03107fa6318", v: new $Int64(0, 6808) }, { k: "0cf0b8d7f549a27418284a967343c6740689a6403fdee0bdb34676a98e0ef4df", v: new $Int64(0, 5829) }, { k: "0cf69a96e63e341e589f9138ee763ce3a01bc9fddc2699fad5419d961182e1ef", v: new $Int64(0, 4040) }, { k: "0cfc3f74c436b3fcb4b1e8a40650b0e1e643ca3cad8038702206c45c299d2768", v: new $Int64(0, 5362) }, { k: "0d1170f12101e4787a82ddcf19aa81b735c1937c5cd3038d13752ba8928eddde", v: new $Int64(0, 7161) }, { k: "0d12cd5e49ec099a1c633f5c05636784657e03ce3937a978d06c6f06eaea9d6d", v: new $Int64(0, 1300) }, { k: "0d160999f95722f3216eff6d5b09ad8b1a4df29f94825415cb23b8e01525e1bd", v: new $Int64(0, 2196) }, { k: "0d1b2fb9927aca7a6220797c2ad013533f054400d4fb9557b98174e6bf55d69d", v: new $Int64(0, 4393) }, { k: "0d1dc59762296a17fe58c70cd53c1d6419699746ff1c2c2cee5c1eaa5a39dfc3", v: new $Int64(0, 9343) }, { k: "0d219f9ac43bc516a76f691867f32cf0f50c1d282e70364c41c48334d27cfd4a", v: new $Int64(0, 4602) }, { k: "0d2b311bd70bb523fb48deef8433e944ba7d9edc05e25517382b67e8cfd9c7bf", v: new $Int64(0, 9597) }, { k: "0d2b5b285e6bc8af741dbe71f4ef0a7f2c4e91a4640720a8c8655d23a42f8e8e", v: new $Int64(0, 6046) }, { k: "0d3cbc38d348e0d3f5960976660504acaf4ceb745ccb7fa6f9e36a4d72a1c276", v: new $Int64(0, 7626) }, { k: "0d49cebe8a045a2af308d27aa1994c814be008329f577f3fd028a2d3940aa0ac", v: new $Int64(0, 1360) }, { k: "0d4ba7f3117fd902c962fdd1cd4d40d90c8d4fc6cfdaa8af89f7f6142f96a883", v: new $Int64(0, 3783) }, { k: "0d4f43633d89b11e2bcd23886f01de88ddf88b8bc564bec4126421891e8b0627", v: new $Int64(0, 9577) }, { k: "0d5168665530e645e2c8b49aebe81f8dff9f5c383a498fc232904943a7cdb1be", v: new $Int64(0, 2856) }, { k: "0d687be2de9de6253c4f590bf90d600681a4dd1525d52a1a35a120802a812322", v: new $Int64(0, 9043) }, { k: "0d82aa15fcc83491f325872bec2090ae160d140801b2c4e81287e2fc1d362105", v: new $Int64(0, 767) }, { k: "0d9dc638357644cb2bfb881ba0e6653fa9a79ec38af1b031da2e673a55364f50", v: new $Int64(0, 6527) }, { k: "0d9e0ce8656db6726cb2e8da9ca8a7a8ba93aaa98b51a3dc0e2425f66bd83350", v: new $Int64(0, 560) }, { k: "0da07a0f8048897d201f2f54f99c65738a865c65b569985596c485384fe2ea10", v: new $Int64(0, 7752) }, { k: "0da67d68fd583cae642f2188274addf18f6e05bb876f3566ec6e4db7f0353e79", v: new $Int64(0, 182) }, { k: "0daa01b13c8be87770ee81f58aa117b31d6fe5f135b807ed254c0c006e94649d", v: new $Int64(0, 5418) }, { k: "0dab62508573631624674457296c276624b947147a94c9582f2f606913da23f8", v: new $Int64(0, 7692) }, { k: "0dac888a388d7b6a6bae270b121b2a71cc254247673764127ffe5a75bd42dc9d", v: new $Int64(0, 1665) }, { k: "0db1f2742dc9d20ba0b006fb3aa3c097ea7c0135c826e32c324062bca6e3cc59", v: new $Int64(0, 7421) }, { k: "0db771a4f2a353adb48423508ba85838e6792625b073e67ad28ed17ca1958dd0", v: new $Int64(0, 7553) }, { k: "0dbdbf75f6c0263e01197e129d4996672b404a6003d4e777fd72b77e833027e3", v: new $Int64(0, 5994) }, { k: "0dbe72ab4bad280c0fea7ee5a4c9c00568a98867781ee7983a283a118762ae03", v: new $Int64(0, 4866) }, { k: "0dbf617a7496894f7e5bcbcdc0b358f888f39a353b74f40a8b356e581209585c", v: new $Int64(0, 2573) }, { k: "0dc2cf86a70df160810c677008465ade6ac4bcb9a73d763fa8e517989fe58cd3", v: new $Int64(0, 9185) }, { k: "0dc849887ee89cf00d633131dd7d0d23de1456a89b2ce4eedd0affee4394d53e", v: new $Int64(0, 76) }, { k: "0dcedfcd338d0d2b0dfe1a4f9f29719c1b31a7185b62c010cbcf0d148d0f746a", v: new $Int64(0, 846) }, { k: "0dd4a310b09868e0c7e0d0d2961cf8519c3d802ec960c7f1c83e673632d732a7", v: new $Int64(0, 3531) }, { k: "0df136e772945f5efb20d664b0074a88724fb87b22b7ec6087b4927ca531ea3a", v: new $Int64(0, 8742) }, { k: "0e0c95703cae7faf88af69d045d552441f76dc3d85fccd141e00010129934aeb", v: new $Int64(0, 3874) }, { k: "0e1d39dec515d329f95b0780243be353ec84ce14a637de97a39db1ecbc9d5f11", v: new $Int64(0, 4715) }, { k: "0e1f7901e49e1ca2b7dd2bac56660ecb26ca976a7e57d9bb64f31cbffcca7e97", v: new $Int64(0, 7776) }, { k: "0e24a31b620b9bf0ed0711208cbbb4c20eafc4fad8594c77870049024f9b58ff", v: new $Int64(0, 272) }, { k: "0e26616118d61a0afbdcfbb4fedbc248d090820c76329604aab74ac90363bd69", v: new $Int64(0, 5930) }, { k: "0e2b430c47fbfd4e6aecaa6803323cb4c62a35ee6e4485d264fd61900906b8f6", v: new $Int64(0, 1848) }, { k: "0e31dc919a1bf5560bc28d4adbb69b24bfdbab57a623893d5210d67629e95d5d", v: new $Int64(0, 6010) }, { k: "0e3346de6a4c853583c8def4bd94f0da8f2d8c4bc4aed49a040845ca8f3f4696", v: new $Int64(0, 9372) }, { k: "0e385178040e97b6447520a731b8a9999b5cd1cb2eb209b5efb2570bc1c44015", v: new $Int64(0, 9138) }, { k: "0e3f76e731b3417eb96917f16e4e6ba9ca422974ceb4da5fba1401ed75b95b57", v: new $Int64(0, 5201) }, { k: "0e3fa912cd3a1b8a4da59b2c289d58d1bca8d9e9371169aec94d40a975484f25", v: new $Int64(0, 5190) }, { k: "0e40848715696e4a7483a9320ee48ec06c80ca946c1148b966e76337cd95bc17", v: new $Int64(0, 1003) }, { k: "0e41b87e742596f6d50d7411494cf821cf92c540260d380161ae8d9453021613", v: new $Int64(0, 2727) }, { k: "0e46566a14e134245fb5e11b98e27437d0403f64240b6960583e8ee86ce7c830", v: new $Int64(0, 2145) }, { k: "0e4d5517ec4eb1de9c60c36669290eba14c2fe530e9037373526e505b11abdb9", v: new $Int64(0, 4123) }, { k: "0e5a171cc6c2a8220d118d569d7ad9f8c9bb77c64e04e4805f8e36f577429f6f", v: new $Int64(0, 8113) }, { k: "0e5bbca8c8eb141f9ed7d2a480e3536540cd87be96bcac6c16120d670c49da71", v: new $Int64(0, 4656) }, { k: "0e5eb78790f8627ef91be80935c85359acb94df301aa6e952d809a17f5acf0c8", v: new $Int64(0, 2919) }, { k: "0e637452528425ec9d42af0fbb138bc511d17bc22baf0ce6bd1d078957673207", v: new $Int64(0, 4950) }, { k: "0e65c27a3ba6a0fb16601f1782df926a72cc74c064a4474a9a3bc573237662c3", v: new $Int64(0, 5526) }, { k: "0e6b9fcdec0b2eee36c374264d62805bbb3bd72c9a6405dff21fd3f1594b96f7", v: new $Int64(0, 1909) }, { k: "0e6eec3232c2c3114cbd1488929f9288f944a334ecd37cd134813830c3906e30", v: new $Int64(0, 2960) }, { k: "0e76b8bc7caeb8cc00947624ac3670f9e6e7ccd60e24508cb18123381e32f0d9", v: new $Int64(0, 7686) }, { k: "0e79f0660706cd67919b4be982511c75b35266f6f1565140e1c02984fa71771d", v: new $Int64(0, 8296) }, { k: "0e7a7300dba2d17a41357abfb39f6b2737946688e2c3ad6b0535be463b8172c4", v: new $Int64(0, 7891) }, { k: "0e8cd8a01b0077d9b86d4f3c06e42bce65324658e79729b46b626ea31efc36a6", v: new $Int64(0, 411) }, { k: "0e8f19b521726160d75399e418b737bf4135d39c59752976910d9562b7163b4c", v: new $Int64(0, 2712) }, { k: "0e9071fc293a9a2603c96a06a8302b80f74f517cf7d632638b9aa6435b1e24da", v: new $Int64(0, 3085) }, { k: "0e92468a3562814f32d4f59a88b462e76ba1c87936f180f31602b81eb987bde0", v: new $Int64(0, 6157) }, { k: "0e99fc4f57b3e61fbb760d9c71e6f06ad027beb1ac0e4ab8e9bbfeaabb916191", v: new $Int64(0, 9694) }, { k: "0e9b673d61742c7d7852cf43af183304b9d3c0d4989cebeef4fe11dd42388817", v: new $Int64(0, 1497) }, { k: "0e9e55f8d2c30dd6093718546cc71cf20f4a0e4cef7d68355e088608f65cafa6", v: new $Int64(0, 1271) }, { k: "0ea23a35e9a11a6905da976b573e6b7aad7909616c4be643260a898e9dd9659c", v: new $Int64(0, 3455) }, { k: "0ea67a959f6483e6c55523ad88acdba71f0090393dcd5fc324aa4c255cf847d8", v: new $Int64(0, 9635) }, { k: "0ea7c0bf295dda9e6119a97d86d008276cccaa19a21edae6945f0942843124ea", v: new $Int64(0, 3956) }, { k: "0eab8fe164d778841f6b1e1920dc4be5a5961473ab3ab2c25a003587b8a9bfeb", v: new $Int64(0, 3348) }, { k: "0eaba0fdbd81b5cf0510f592b8583d12ab5f5d7d6660fd939a9120672862aee3", v: new $Int64(0, 1481) }, { k: "0eb325d7b1b6b373e4bfbf253f0ace0a799cbcf3cc16096c912089b653d99d0c", v: new $Int64(0, 5701) }, { k: "0ebb1ebc717513a9246a85354dbbe214854512c4fe793151099851b9fa45d44c", v: new $Int64(0, 8395) }, { k: "0ecea1b939e1245de0144bf7526df30ca647ba93e75862dcfdd09a70a14aee25", v: new $Int64(0, 1902) }, { k: "0ed11e049d4466bb7292558b7a3bfcaa73adac61eb2b4d07822607454f1e02b7", v: new $Int64(0, 3110) }, { k: "0ed13215ac6f68c70374fd07b1a5a9943c49bb0f2739158618f21ef7df5ddb5e", v: new $Int64(0, 7306) }, { k: "0ed5a12ec0262ac7b83b1efa8e8cd38a41538c72dd32f2f50db2d9ced4b5a45c", v: new $Int64(0, 563) }, { k: "0edbc13068b90d170ac23db81411061ae7522d875c1df85a1371c3b528c7debc", v: new $Int64(0, 9444) }, { k: "0ee7b7d0420227f21f039ef94d54613dd5fa3ed76c8005aee81b28975c7320f7", v: new $Int64(0, 843) }, { k: "0ef0837c6ef9c8b24e91c6c3a797669c77af066c9286fc2e642bbed3d96baf23", v: new $Int64(0, 4662) }, { k: "0ef88d15622b7e6f637ec2b13533483e8c3dc89114c8c012afeae514dabf75ee", v: new $Int64(0, 5247) }, { k: "0eff89c7ea8e4639c3bfd1ad3c6c416d753dc03a664c9539161d346e3c4b244b", v: new $Int64(0, 2191) }, { k: "0f0e421c82ece8f51f165947e8b8ffcc60f536a1b0d3da74452edfcd9f4cbe6a", v: new $Int64(0, 8722) }, { k: "0f1108188b6a631f4015207de970f27f9042ae32e32d147b6bd2c45dae52e4e5", v: new $Int64(0, 5974) }, { k: "0f11b346596afb57d3441bc13adf02c25f79cbe7bff03608ca8a8de760157d1c", v: new $Int64(0, 1454) }, { k: "0f17ed4db5439c12760228956c86cb104dec151d81146d52bc1e83dd1950cc76", v: new $Int64(0, 5001) }, { k: "0f197e2adc09c71260d749cd42ce31c7d881d6693713e9247215d5b29da814ee", v: new $Int64(0, 7077) }, { k: "0f20979658977d4f4f6387d241519dfb0d82ed5c66c6005904e430fb86fd4103", v: new $Int64(0, 3776) }, { k: "0f23ac87b25edb0115c75860702bb892d08201fb85d52ddbd23fced41ddc4894", v: new $Int64(0, 4981) }, { k: "0f2aa54ed1cbd7d343d036f890f637611ea1f31e82fe1a065e4ac25c99c78d67", v: new $Int64(0, 2139) }, { k: "0f30aa9b5ec20b79115a690b18cf1d198c1a478aa5bc1ab2e4e7f560f7485685", v: new $Int64(0, 3287) }, { k: "0f3bfaa1c482e284aa370b7aac5e008eddb67f6edb830ab709a3bdac7c10cdde", v: new $Int64(0, 7944) }, { k: "0f436b9d53c6832ef324f95fa191c3d07cecd2844edfcee141a6a878503aa40f", v: new $Int64(0, 4982) }, { k: "0f49c536d1699e4bb13d54261c4b7393812bcef717735789594811f24b79a45e", v: new $Int64(0, 9585) }, { k: "0f4e5832f72cd45aeb97b3b7ded3c045e4ef188429ce9d2d07f56c9a22c77d45", v: new $Int64(0, 7744) }, { k: "0f5141ac6785b6b977acdc333a9397c8846c2f6a89dccbbb40b0f7e2e2ecb423", v: new $Int64(0, 4979) }, { k: "0f532663f51442b017c8a55c859713d620ff0e9ce74279e4c1b7ff7033152b64", v: new $Int64(0, 1054) }, { k: "0f66058892c41ba6cd6d84a8ffc672e4a9c4a283634b78beafd929c3c9835b2a", v: new $Int64(0, 4226) }, { k: "0f6805c5b6d0d5c1db9e5a5a7c77a1655e1519ceec65fb2448ca2071cf3dfe06", v: new $Int64(0, 2283) }, { k: "0f6b5ba3d1eb8cf94e1a1be7452573d695b63d68ba8150669d7128bef1f47ddb", v: new $Int64(0, 4032) }, { k: "0f703421348023f9361836e38a5277e12c43e67411c6cce38d517d471048e79d", v: new $Int64(0, 1847) }, { k: "0f7b1b31431b891538e76d2f29655f3a426d64d9783babeda173139467436de5", v: new $Int64(0, 8946) }, { k: "0f7cf72b43a7de08c332086d7c99cc5fb453ed4867b412af1c967aac8152591d", v: new $Int64(0, 9764) }, { k: "0f852ae3c497afdaeb2a71e0d53d395172ec0e7c12f75315c0cdbe001a8eb2e9", v: new $Int64(0, 4182) }, { k: "0f8a24f33c15f452a61821cd8f8dd493c9b677c2e868c1088446b0a05b1826b3", v: new $Int64(0, 8635) }, { k: "0fae86db3e6a9e0ab71c2ba8d7991eecad2d7e276bc4e2c04e0acefb64b78607", v: new $Int64(0, 9546) }, { k: "0fb39df3de26c7535df29bbfcc49b8746908796b3a307b63c1f2d56f7f6d11c7", v: new $Int64(0, 4372) }, { k: "0fb3bb6a64db5202973434b1dafed2a92031da51f69b9cee2bc66104a08aeae7", v: new $Int64(0, 2865) }, { k: "0fb903c49b378806bfe6df660322dc1f609eb22d5418a23928308c0bbee69668", v: new $Int64(0, 6786) }, { k: "0fc03ee2ed94f71142c51e124f85f6e3afa69a6e24d3d660626454f7ca7cb90f", v: new $Int64(0, 3122) }, { k: "0fcd44e80fca53b61a364cad3a4e72cb8b0055bcd84d105766aafbb86d383c95", v: new $Int64(0, 3219) }, { k: "0fcd6443e8242c5f4e5a49f04445b8f5f7cab0a550f9418b7fdf8233a6ad7348", v: new $Int64(0, 418) }, { k: "0fe03be60edaf1a18f10adaeab1fa831c4b46a18c5c5629208a7b4e79f8833ea", v: new $Int64(0, 5170) }, { k: "0fe0febb563f22fea136e1285bdeeafa50780002beea15f94f2753d4fa0b67a2", v: new $Int64(0, 9631) }, { k: "0fe7962e379ce15a122908fcb421fdb105e97553123e3a67d2721a1f6e761aaf", v: new $Int64(0, 116) }, { k: "0ff11d999f48010dbdff55fc9dbf3c40354e1a718cc6caf59902d1bdc7bd7448", v: new $Int64(0, 2333) }, { k: "10001e1594a59dd0c759485965d7447c743fdd70a9b433610d6ffd7b663022d4", v: new $Int64(0, 8993) }, { k: "100326c24bcbd7c0762542a4206b8004e1667d643ca832fd3bd6724c985e0146", v: new $Int64(0, 6502) }, { k: "100959b334711e1f9486f611b6085fdb9293ff5542d8df594963073b3d273f06", v: new $Int64(0, 234) }, { k: "100db4ef76bc2b792e70176d5610d09c31cda6faf917d243b6380442cb42d2d4", v: new $Int64(0, 731) }, { k: "101012e0c69cc90cf7efc9f852a54c2fbc8ea307f6256149089c0d0aaed50146", v: new $Int64(0, 6590) }, { k: "10114735da356d9121fbc21c7b8f051387d8bf647fefa9ce1535cd741b621d0e", v: new $Int64(0, 6857) }, { k: "101a910f3fd1ad11a4c29c46ddd3675a682472c413988024ccd6d00b534683b3", v: new $Int64(0, 7348) }, { k: "1023a1ecf1e9724d0dddc193ef81c72aba64139b48b89ce273d2f41753fbb930", v: new $Int64(0, 9091) }, { k: "1028cb40d3ac03c013bac931f11edd6a13bfa8843a75ece2020ed1b552cbb64a", v: new $Int64(0, 7736) }, { k: "102ad08b872a3c2f1cd08fb51c4a0e1ce5c6cb8d3b90b4adaa7e64e03f8ab782", v: new $Int64(0, 1135) }, { k: "102da1013166f728c001442a01e4a3014a55eb9e178f079e8642f5194f8aa9d9", v: new $Int64(0, 839) }, { k: "10303b2d6d21a10653fded8dfb50e1fdbeae78f1e548402b02cb26e43b91b022", v: new $Int64(0, 3559) }, { k: "1038f80c9996bec957f214718ae7a2c3d2fe31c4f5c6c832adfca029eee076f3", v: new $Int64(0, 5667) }, { k: "104229e078358c2397457248891b0fc4b7aadc9107c4ba08c9c1dc6dc645cced", v: new $Int64(0, 8018) }, { k: "1045c6d284ef55bf826449601ae27284a356f077e2348f4e08aefd5df99953ba", v: new $Int64(0, 9957) }, { k: "1045fed0b014fecf33116b49e0e9313ef671e50400203160fd2d56a31113b917", v: new $Int64(0, 5705) }, { k: "104de7814d7cd77a49e55bbe86692a6df2bc179a51ac0e4274292a669373df59", v: new $Int64(0, 5381) }, { k: "10514a4ffd6d2d014b151e4bb54bc00780625f351846b47092cb8a0291cd8495", v: new $Int64(0, 1987) }, { k: "1053e18fbfdf4f8c75a462e66bd140b63fe23148a45cc348dffd6ce4ee74f358", v: new $Int64(0, 1592) }, { k: "10597ed06b36c96fb09de7dab8da655ac9b5026d958ccc4a51033e01b5c789c1", v: new $Int64(0, 3111) }, { k: "106760c09d45f2b6ab8b7cc5be058cbf9706c197275e05a92ce46220677546eb", v: new $Int64(0, 7397) }, { k: "10764d7207cabe1f65357779e1d70ee42b63778db00fe7364b8e04e1f9ed61c5", v: new $Int64(0, 9472) }, { k: "1080f20b7b410a4505f3f257c92d45f4b887e5800c2222ff4b845140f7fb8ad2", v: new $Int64(0, 8980) }, { k: "1082b4e8077124d22921db571a99d4ac63fe8ba51a595e81323bc6d44810dd5e", v: new $Int64(0, 6030) }, { k: "108e4ac6d9ac75ef646382389dd241618febbbe1350c5325cd4f57f0c250331b", v: new $Int64(0, 2126) }, { k: "108f7f9b4dfcf99da889f6c3b7563b92e432996d90fd43af70315b59810b7796", v: new $Int64(0, 8837) }, { k: "1093bca1bea93dc3bb3ec91d74efedb3df8801038e1292c3cca42cb36682dcf4", v: new $Int64(0, 8845) }, { k: "109442b5fa560ecee524bea8a4f68c65d5d05edf11d7db78233014d9308cc156", v: new $Int64(0, 608) }, { k: "109660ae1fa347507423c3a0b2545d6fedb565b927721ec0f8b8884b8ac90285", v: new $Int64(0, 8538) }, { k: "109a3e7c61bf2939d83b5264db966efd70d858bf8cc47b89ae757bc76bc41522", v: new $Int64(0, 5599) }, { k: "109e8600fa76de471d7211f2be965a4e07ac6e294d859b783d92fc6124d91148", v: new $Int64(0, 4121) }, { k: "10ac13b1e86c237617d1264f8dcf1786f5c73123c04145580b5ddaf63e20d861", v: new $Int64(0, 129) }, { k: "10ac544f7e5e8a64d53f35a5da14992013f083a4066fa380394b3431f9a67fca", v: new $Int64(0, 3179) }, { k: "10bc020ceba7447a92219720d7a6c5e55d904da839580c14d934a2e0c3a1394a", v: new $Int64(0, 4251) }, { k: "10c5b4a14a4cc118baf66cba0ade1ba61f802a8a2666f31fddeb57f31be8771f", v: new $Int64(0, 7496) }, { k: "10cb7ce411f8a7e1e265a7d144e0fde8ab010cddb66820cc4a3fb3d44627f144", v: new $Int64(0, 6344) }, { k: "10ccdffa59526fba6ee01de6acae8043f723b5b985906bd533e13f05b87cf859", v: new $Int64(0, 1334) }, { k: "10d5e5705dc0fc5c54b63ecb55afcc015ab94bf3355db906624d822b409b6708", v: new $Int64(0, 3887) }, { k: "10e52c2c2d74ea1704e68ab8b88414cd1b03a6132edf8580b181d250bef8a508", v: new $Int64(0, 4003) }, { k: "10e680c562c14aebbb50193c9635b181e4bae1e9a66cd9754eae55b1b3a174cf", v: new $Int64(0, 1398) }, { k: "10e72c8eed429ddd93c7c4c8e141254a785f119c78cb2f3f9e036449888bdcde", v: new $Int64(0, 6659) }, { k: "10ec0a6143f9c67fd78a5a56cd1c2968469d7935158ea9837bae9c993ba0f714", v: new $Int64(0, 4914) }, { k: "10f826411ccfaab280b6a93ee87c1a66a1328b04fc4a92df208c4e128ffc223a", v: new $Int64(0, 5702) }, { k: "10fba206800a2bb59a3da5061adeac93233e889494718022badc22a4207043d5", v: new $Int64(0, 7086) }, { k: "1107514ffcf23b6a25e59da8a1d8567ed16bb31309593a4b00083fc368f0d306", v: new $Int64(0, 9859) }, { k: "110c08ef751abc3f7c73bb99555a23ce9a6e5bbed3783bb3e703d11491a252e9", v: new $Int64(0, 3316) }, { k: "111eeac05f77938c2f1da0f8eafc9abccb29565bf6824ca12252e4f702fbeddb", v: new $Int64(0, 8994) }, { k: "1122222746133f476c2fb534190484a188417d80b1ac295e75596fca371a4eb4", v: new $Int64(0, 1462) }, { k: "11227843c465bb5c344e2c77973d76d3bee2855cb0ebd18aa8cead3db22f4c99", v: new $Int64(0, 1313) }, { k: "1123a7d1a0f6708596d8ee39e68ee88ed89babd72813d5403781dec521f00489", v: new $Int64(0, 4202) }, { k: "112767533941456d3bac30d4731ef30e285bb022b35331d42a410945f14d75af", v: new $Int64(0, 749) }, { k: "113c0268db0fe2e52775dd9e04b99f2b82221f80529f02b88d598abe24f8c15e", v: new $Int64(0, 9088) }, { k: "114216ac23cacca1cf8d4babd373e47120db9ae340f92bf5452c4a85ea5d6715", v: new $Int64(0, 3912) }, { k: "1148ad1e1b25e74d08d86558844868cbe11d64ee01f166999b4a7e7cb3dcd432", v: new $Int64(0, 9567) }, { k: "114b308ac7913eb26fe6f3e9b45de9560c0402fab8ffea2a6a1675f9f2297c2a", v: new $Int64(0, 8122) }, { k: "114cb60a5cf2148db808decdaae0b769278b37a65e619d7889dc01d0e9f30b10", v: new $Int64(0, 1814) }, { k: "114d992d760e51172614578a8788d5d20beed47269767bca644e661d4fda88dc", v: new $Int64(0, 1984) }, { k: "1151f08912507cb851250046dbfbddf7ddae0b94f0aa54059602b863cf8f6379", v: new $Int64(0, 820) }, { k: "1159d61d9aa1e95655b589c06190540c1cac1ddefc3c2665e622feb267d08fe5", v: new $Int64(0, 9961) }, { k: "115c2350514610cd6aa140e259702b97c165d8bf63ba07fee24cb3c2b6464c22", v: new $Int64(0, 3107) }, { k: "115cfc14d7795d736902e524de1408d42a7b26e26a758812a6e6035c1c59d67d", v: new $Int64(0, 572) }, { k: "116473262f65c3b32bab4d7bbbc4024554beab84c60fe84a29e13bfb84991c1a", v: new $Int64(0, 8277) }, { k: "117b80afbf03415a3e129f10f36bf790f0b32450fbbf22082c8443568e3a5c92", v: new $Int64(0, 5795) }, { k: "117bca61b890591b6672e3d5ae63ff7712aa27d726da736032223be40ca5146b", v: new $Int64(0, 2609) }, { k: "1180fe277ca86c1b8483f2bad3b00d1e00115310f7e0b5a8da7af0cd30a733f3", v: new $Int64(0, 1336) }, { k: "118e2c895943cc2b7e771246c49f373f859a162f956d89aba7852ef314ed04b4", v: new $Int64(0, 8408) }, { k: "118f45ac8ccb5d2fe2865c17222958fb57fabb90050ff77c7743e6be86d9987f", v: new $Int64(0, 3137) }, { k: "119caf1b120c9f90834f6bd3ed5f6361a88b9aa78743fd5058182a7c4d4c1e1b", v: new $Int64(0, 8487) }, { k: "119e0ff90f72111b0d38ab7f3390c27a8842389c32d6133c3f1feb828b881926", v: new $Int64(0, 2155) }, { k: "11a54901e6194b83a2d45cd98d4840727ab10ba52fae3496741bce6769116192", v: new $Int64(0, 3897) }, { k: "11a95a31e444264a1f1e50de01e58da588f80a1eb61f1879540788836c9a3e35", v: new $Int64(0, 8093) }, { k: "11aa10656a9619fe697202829abcf3a1ab978fb9851fe4a79fbc9a1631e542c6", v: new $Int64(0, 1324) }, { k: "11bd959d982eda21fce7cf1a509a47d0ca9c6013bf6d433373de947de106b04e", v: new $Int64(0, 4400) }, { k: "11bf5ca8911ac2b967da1f33db3344269b5ad784aaa05a85990cd86705fa9a93", v: new $Int64(0, 8228) }, { k: "11c12405d71fb0797e6633b54e30715406662f3ca6e91a798549046e10858083", v: new $Int64(0, 2904) }, { k: "11c37c97764f31a31d5bbe282e279f604f236d60d83ce37694779af7a31ccdae", v: new $Int64(0, 8285) }, { k: "11c635669b34e49f3b1ca8319eb4c909fcafa4447c39fe5373aaa804f6fcb3a5", v: new $Int64(0, 5961) }, { k: "11cdce5335c86442b4852140171ccfa8f45eedf68a1c0f9b685aefbbf7d38f10", v: new $Int64(0, 3208) }, { k: "11d47096308d57b3df410e40afa0c5b4887e8d5e80d06f96f722bd4fcad910ee", v: new $Int64(0, 6161) }, { k: "11d812a53f7b7c184de5554f0ea98a8685269105a74a19ccd5338d340f482323", v: new $Int64(0, 9918) }, { k: "11df06a27bea4587a3442b888773e68b1ad21f14e28497a8a4aa326d723043e5", v: new $Int64(0, 48) }, { k: "11e005cb7becd6b3cd7a2202da436c8ec1a380937f06fb77c832eb6c4dc22085", v: new $Int64(0, 1057) }, { k: "11e7180edc93b16ca994281e66cc33e11ba3916fb878dac20c9d77942e7fb0bb", v: new $Int64(0, 1130) }, { k: "11e77b56a16c913e7892e8ce2368d132b3f908baf2b3c382476523dffed40224", v: new $Int64(0, 814) }, { k: "11eadd2a8463c0ba7e00f0fb172f81e3c281cc1dcf4976b8a72e150674df2c39", v: new $Int64(0, 3875) }, { k: "11ec58e366c7141722a152f6c5e66c3a140ec9448ec897b418d173387e8395ec", v: new $Int64(0, 6512) }, { k: "11f16506dfacbd1716de941d1ade5552e923b5791a656537bc70793702efe3d4", v: new $Int64(0, 9068) }, { k: "11f1cc8fa76fcce77b6bd9190e82cd73cb400b835eb4280a748031d641f0aa43", v: new $Int64(0, 370) }, { k: "11fd3a09473715b539f70c360afb25a23a01ca4f5274254b131b8120db2ae319", v: new $Int64(0, 7817) }, { k: "12063153b163a443022148d94d485adc0b51613b3bbf0b0f37a027ff3949b4b3", v: new $Int64(0, 6962) }, { k: "1211a65e570e7395a5e4a46c1aaca0b709bcc1e9e0940355c146760639cedcfb", v: new $Int64(0, 9030) }, { k: "121d144a7f4c2b5ebb34a8898758fe7d7958fe651bb894db0bff9f0e6fc2ff6e", v: new $Int64(0, 1479) }, { k: "1223120ba898948a3386806011174fef2a26ddab4b3dede6e76e10cdafa288c2", v: new $Int64(0, 6536) }, { k: "1227fc301f6ebf32e9fed256560c16f1ae7c2bb83108191678283dfaa92a2998", v: new $Int64(0, 4344) }, { k: "122ab7d6031bfe89ffaf50b1d803c1573f29a1fb44c7c8d297463dc77e0f5e71", v: new $Int64(0, 3340) }, { k: "122bef058afea5e5a9118b332127016cb18a9275ad72e1c2e4ed12d40b9a39af", v: new $Int64(0, 8540) }, { k: "1230f2e61cf27942a4491cae8055d979072c26c2265635910c2ad6528aedd628", v: new $Int64(0, 68) }, { k: "123545b4ae41fcdd1b730c34408448f65b33a2ee54589f64b2f930211a37b8ae", v: new $Int64(0, 2660) }, { k: "1237c39197e628c41700b5724e422e6f4b74d69eb31c9facdef6b2d99c6bdcfd", v: new $Int64(0, 5267) }, { k: "124b3f53adab7422b0449a9ad75f69657db82dbe0f589a6b58a1c91d9244c69c", v: new $Int64(0, 44) }, { k: "124b42c8d3f28840dfaea6448eb769cbba59be04e54c6b0b3711034076d511d3", v: new $Int64(0, 8781) }, { k: "124d525c68117c07774235c866a4aa956f363848e6d608252ecf8369ec2b6acf", v: new $Int64(0, 9374) }, { k: "124eafdca8b49455903b0d3e07b6cc13f8945038a7cc7b7b6db53a4e30fd931d", v: new $Int64(0, 555) }, { k: "12572c8615b313bdc42fe2601dcb0a7775ce7ebb3e9fc1be3cf948bac8ea2b86", v: new $Int64(0, 1965) }, { k: "12623e7fd44e1101642634d9f847a8dbe62f3dcb548d87f301c1c7515e4b08be", v: new $Int64(0, 7753) }, { k: "12744989add81408d4371ddddbfff1004d1a81f3d03c722b622c7abd5cf2e00b", v: new $Int64(0, 5907) }, { k: "1277a09c7c246f5a0c1889eb8cfbe6e7d77858fe2add424d440fe09ae6030b05", v: new $Int64(0, 4453) }, { k: "127988df16c3dbfdeec66172cd0786f121d94035263b5b266d012ad1a5833744", v: new $Int64(0, 3408) }, { k: "1282264e9e15c2e7ca7951b750eefce8bf657bc252773b4be266ea272ef594bf", v: new $Int64(0, 9302) }, { k: "12858f4c262d633d18f95ca739e0330c43b7b0c486f84440fc898b48f47a6f55", v: new $Int64(0, 668) }, { k: "128936edc5186653063e81e3adb3963ab81fe43943a3ef3ac7068a47daf48cb0", v: new $Int64(0, 2498) }, { k: "1292af7410a91faa51352af5e3fdb7e880d92d06775c5f4b88f731c9bab0be5d", v: new $Int64(0, 5834) }, { k: "129f3abc0d7f3d284f7ee16399d52a2d1dbfdeede6b128fd0e1d1e985d0dd9cd", v: new $Int64(0, 7967) }, { k: "12a6e95f2a513061581742b533195a70e6584726cb4fab2e0eb377b352ef52f2", v: new $Int64(0, 969) }, { k: "12a9c051c64480b362e129f5353bff85f83e6913f7d6188bccd0c5c7852d421b", v: new $Int64(0, 7731) }, { k: "12b7072aa0899ca3adc390980337347959935ed19176e09c26b6b9f53e051e9d", v: new $Int64(0, 1608) }, { k: "12c05a379ffa5f0f68dd87b650221b20ce9f7a8b9dda383bcc1e8bde5d8574f7", v: new $Int64(0, 5635) }, { k: "12d06421046cfdabb7922e40125d982a6e7fcacee7769d3b7f513bb73df9c95f", v: new $Int64(0, 9008) }, { k: "12dc56af42f1ac409a8f21a60ce5926d76250a3e43dcd4a2b9edd991e721df0e", v: new $Int64(0, 1256) }, { k: "12dd7c040c09bd2c6496a643b202928d60f4a631e039862a251086842eb3887d", v: new $Int64(0, 8096) }, { k: "12ea44b2c20527baa8c3a8e0f10ce8594974a5acf14bc6bb96d49225575e0ebe", v: new $Int64(0, 464) }, { k: "12ebf5df50594296d2c8096ef26688a2916b7c8a06813744e13b3b96b574d932", v: new $Int64(0, 8566) }, { k: "12f1ce6a69945b2010eeee46226e4ddabba4624ff231f4a9b33c252089966a13", v: new $Int64(0, 4460) }, { k: "12f3cd67e0d2f415b77a66c27197abc7fac6af67946da1bc97e0020348973472", v: new $Int64(0, 9740) }, { k: "12f7abeb90ce155080740799d7cb11b779f33281f746df59bb826bcd1c0d175a", v: new $Int64(0, 8591) }, { k: "12f9ac1332f0175412cbbf57079088b3810124c29b27349eb4d89695918ddb1f", v: new $Int64(0, 897) }, { k: "12fb09b5b934bebf191dc8bc41064c8acb2f419093be34bbd6966c0ab8cb42d9", v: new $Int64(0, 2164) }, { k: "1301fe1b06841692bee2a36f5f365e1ad63e292bd4b2280dc5679198d9e5f72d", v: new $Int64(0, 7006) }, { k: "1304aa274ab0bfccabf784e15f8fb0fa0fc3dd353be94bb8e306afb927d00319", v: new $Int64(0, 4175) }, { k: "130d6a5123b3fa3525ff3f1cb958d34662f9b9dbe6d5fbc1e757a03a0b112eff", v: new $Int64(0, 3858) }, { k: "13130246b54b2fe5239435f6fff26c67a97cb27e2ea66168e2da81236c247e75", v: new $Int64(0, 1448) }, { k: "131a1d571bf88e81f3a48b548c6207621a96a3c8a22f8c0b5b2e3ef18da0ba62", v: new $Int64(0, 6037) }, { k: "131e96974d89917a1b7a8318db2492d716215df6a0a7f0044b8fa0702c906942", v: new $Int64(0, 7939) }, { k: "1329920234462d661f705251ee440840578e359f3aaf2b53a079495037e0f507", v: new $Int64(0, 8557) }, { k: "133633797260ec49141c2d9d86119fdfec0e679d60f310334cc947d2ea8f61ee", v: new $Int64(0, 3896) }, { k: "1337036ac32d8f30d4589c3c1c595812ce0fff40e37c6f5a97ab213f318290ad", v: new $Int64(0, 11) }, { k: "13425cc8c1f85a49cedfb6db9ee8072b1831072440e6e530be849ec7428c1f14", v: new $Int64(0, 8655) }, { k: "1347b8eb11a046418eda2b97536d5dee2cdf181acf6aec8608505016a3f6db1f", v: new $Int64(0, 7781) }, { k: "134954e65abf75135334ff4c16e2188ce507c3127f5b16e68954461a2e935678", v: new $Int64(0, 9230) }, { k: "134f0ca506baf271d367a76269bacd8f7bb99bc8837145163adb41418c934ef5", v: new $Int64(0, 9261) }, { k: "135853c5f4217270bdea83a452df5b447f74fdf9ff98b321c77662fa5cf92983", v: new $Int64(0, 8066) }, { k: "135f396f55853a2f5cde1d8349f73865381ce5badfe3503f5286350ea929294d", v: new $Int64(0, 1559) }, { k: "13632d98edfece92b50d20e7a93b089276ed3e6d5d4c58cc76c2031f2b8cab8b", v: new $Int64(0, 6831) }, { k: "13676840a439a05928db508586cd0e6f9dac223fdce5707ad480af66272a92af", v: new $Int64(0, 5982) }, { k: "136d2b384ac1bb546781fdf8780393f5ba56a95ee44adb92927676bb18d46697", v: new $Int64(0, 4266) }, { k: "138b3004970ebfe6b12eae54e0f75fcf26f11e4f2025eb294edc19287d2ee584", v: new $Int64(0, 9854) }, { k: "138db66ac9afc8577cf5c639438cea4f2255bbd55a115d3cce1968de5528e9d3", v: new $Int64(0, 8620) }, { k: "138e9004b7fd03ab4f84c3b8690a58992037892d6cd19cb379172cda46a44294", v: new $Int64(0, 214) }, { k: "13908c712c2ae47aced2635f2b42457d5069a5926437da7569906fa8451d0cc4", v: new $Int64(0, 2991) }, { k: "1391253a7c57eacd7c598af0b22db946d623db9b77b397c55c61c2bd0c66886d", v: new $Int64(0, 8492) }, { k: "1393b7db241e27991e5df71b632a7b426bf201b43f75cc14d44bfda59c0bcf6d", v: new $Int64(0, 936) }, { k: "13969a4d426840b72cb09ac93c8e795c5b634c19640ed4d6988cbcdf3f3f2eab", v: new $Int64(0, 1161) }, { k: "13a42d39efddd8c0067fed2230f499f98e8598e2d2d6bc25a46c189ada4f19af", v: new $Int64(0, 862) }, { k: "13a70fc9320ad33a4ade80951fb3175eeeb89a9f16f61ab0c91a9600f31b626b", v: new $Int64(0, 2683) }, { k: "13a84511980e3c621bbb79bd0797bd12c047fdb549ca726c6d6e59b6a8f54070", v: new $Int64(0, 504) }, { k: "13bb4d454c3a9fe9738b3dbadaf15226826fe57f85983e3e21e436414bc91d68", v: new $Int64(0, 599) }, { k: "13c0896961dd91b05eec84d7f382172edbe7ab399870d25a824abdd8d15dc0ba", v: new $Int64(0, 5009) }, { k: "13c154ada2db07c3c887617035f310d29f5789272f1eab7895abf766c023ff37", v: new $Int64(0, 2811) }, { k: "13ceb004b6f8e5d4ea61d30f579cf970bbf1e5f2878d5414bed983100665d90f", v: new $Int64(0, 4796) }, { k: "13d740b32304843b982548983b537017381f6352c12bb01636b4ebee2b7b78fb", v: new $Int64(0, 9576) }, { k: "13e246c4752b61fb08d90211b255ab57ca4e346748c7af86887f1774422addfc", v: new $Int64(0, 9589) }, { k: "13e59a6eb9a31bc16d0d1596ed57014f5b099640f749e453ebdc2c696d9857ba", v: new $Int64(0, 1500) }, { k: "13eaa94734f0c8a2abbd3518d9b547025b84c43ea3f4fd7ff7e23c8aeaffa50b", v: new $Int64(0, 2422) }, { k: "13ed89162e2e4b29a1f40b749ea5a68cf65b5fe7fe046d7f4079cdc15790ca18", v: new $Int64(0, 1087) }, { k: "13f102dd705df910430f4c54eb02c984ea726b0c9381b8de9ee9e69ddcd65d08", v: new $Int64(0, 5249) }, { k: "13f989c99cb9a61177ead8c11fab7cbac1ecd2239eeda40add86504c4119ebd9", v: new $Int64(0, 884) }, { k: "13f9c9d803bb17772ce96eae23135ba60a4485318e394c4ea9864562bcbb742f", v: new $Int64(0, 5223) }, { k: "13ff05136ec4da2ef2430b8e6b7994978a2fc4d06370c488ee0f95b95714ab52", v: new $Int64(0, 2234) }, { k: "140548f2ff466d428b6c746232ed470c8cfd8f3d187b9d1c008a1e894b4f5778", v: new $Int64(0, 6614) }, { k: "140670f5a3c73cb803a2f1947fabb6d2287b9bae361f5358a89618f30fd5ff7b", v: new $Int64(0, 6559) }, { k: "1409d6af149ac2842925a2a1ef73f451b21422416e50e40fd9d9bf00ae189053", v: new $Int64(0, 6407) }, { k: "141bc3cb6ef630f04aa059b9c55004e2f771b47fbbe471cafdaab828a16288e0", v: new $Int64(0, 2303) }, { k: "141c79cca405dd35dd833d2eef2e2b61818241ff1ccf776f22b663fe790fa682", v: new $Int64(0, 4615) }, { k: "142ee39b645f7243fa37b8fa9ef721becf4c5e86ec054f7d3dc9c66f12ddd532", v: new $Int64(0, 6646) }, { k: "143585e7daeacd5b81e1014d606ee4d956c1dc828a1ce9c35be34e6028ad28d6", v: new $Int64(0, 7335) }, { k: "143721b2755101099c4f96655f92e2fe358849b7a862604f446c06a6ceb8100e", v: new $Int64(0, 9943) }, { k: "143dfca42ae602868e76593349c82dad2157357944287c9328d1d6e7d36277bf", v: new $Int64(0, 1259) }, { k: "14421f12f13fa9eb1203ac0bd0ac451df3ca4c1162c9234a2281c629caa336e5", v: new $Int64(0, 1622) }, { k: "1449ecddb01b33bdfebd99c54667628108a4b3ac672051bdcf4028b4ae023a6b", v: new $Int64(0, 7116) }, { k: "144d97fc17c171e595c0e96cf9eefc3d2b814ed560e03fdf187b3ec11ef0cc6f", v: new $Int64(0, 3475) }, { k: "145062a5c5cde80d6c2d3dce1914c9818fe0bf08a2b5330709bcdf52a2631fd0", v: new $Int64(0, 245) }, { k: "1451372a4dd4490f6a8b6acd74daf96c35f5ebd3d59f7364e96e33d3f20468e3", v: new $Int64(0, 8437) }, { k: "145155b2f16e5c32305eeb79e5fb853844f8288651e1ff12b73eeaa07472c12d", v: new $Int64(0, 5460) }, { k: "1452d7fa2e4877b5343550558be89d78cc7ec2664cc74e1113e23f9ed71ca3e1", v: new $Int64(0, 7524) }, { k: "14675ef43604f5f02d1fa50105cff1a5aa292fa27fbcc6aa81af6ee8919e657c", v: new $Int64(0, 7424) }, { k: "14690d3baf4bf05b03caa329596c20fcedfdc379d27ed07e85b4f654466fbf76", v: new $Int64(0, 642) }, { k: "146b1ee679881ac216dba0d75a1fc70916a9ca49cef577f6a800cb762dc2641c", v: new $Int64(0, 8859) }, { k: "147e9ee97399a24c380b7335d4c41b753677f4438e3868310c181835304a3d3d", v: new $Int64(0, 944) }, { k: "14805e8e74b0316cbd0eb8e79ef4df520be78e31554be84ceb2cde1a49552849", v: new $Int64(0, 9910) }, { k: "149722a1a53ac205948bf904cc0d65573179023187cb4d85ff1bbaf2c7544425", v: new $Int64(0, 5209) }, { k: "149c65541d66346bb91990392054cd855c572f5b412705a0b54e689cb2b95f2c", v: new $Int64(0, 9243) }, { k: "149dd631ea410a9919555dac5112d6331094958ffb94f0126a0ee1ce7a249cd1", v: new $Int64(0, 8885) }, { k: "14a078f9d0f1d2700cf8ed45d20dba421a017cacdc9a5befc44266515caea35b", v: new $Int64(0, 5286) }, { k: "14a0d30b6642f048131f8fe2d062c750cf3f51c6826fffd1a72db1d420dd038a", v: new $Int64(0, 1092) }, { k: "14a91d44e97676c41cf6e86414c0b63d03840964c810650d47f5ae423c4c4727", v: new $Int64(0, 1359) }, { k: "14b41552bcf2dfd2555120dea175f47d9d22685dbf8084f4418c4f41ee2505dd", v: new $Int64(0, 6068) }, { k: "14b6728ba1d112a9d53e160718b6176bee450af27f81c5e3791dd972b4e96118", v: new $Int64(0, 302) }, { k: "14b7346d091b6380c9389179e64deb273446db5666420f16faa13ec7e5769b60", v: new $Int64(0, 5449) }, { k: "14c7ffca2a3c67ad589f4bbfb7831d06ee2a780ea353698efd190fdc3f62847c", v: new $Int64(0, 4259) }, { k: "14ce6861a6a99674035d751ac60911e23fec7ff66e459d39bb9e9bab50848ed3", v: new $Int64(0, 1788) }, { k: "14d172997dc4de9c0c631aafbb83b43ab9ffce38cbf83294266bcb33bf6c1e54", v: new $Int64(0, 4486) }, { k: "14d7c84cb487481779bda48fea35d2f0d230621224f8243d98221b565e9022bb", v: new $Int64(0, 1603) }, { k: "14e256c69a9164e3c0b1146bf3fa1e8501b60ca8c1b595b750e92ddfe57fee2c", v: new $Int64(0, 9044) }, { k: "14f056b23e7c849163e48b9b6e802381e5cb060ae1067aa7d85e3a1521a452aa", v: new $Int64(0, 5399) }, { k: "14f3401305a81718769744ee4fbff514505acc740be679cbf2f7398f9f2ea532", v: new $Int64(0, 3440) }, { k: "1502b9b3cfa20b133e32620b65765565b443b633ddcc8abb02f4c0e7cef87a14", v: new $Int64(0, 7118) }, { k: "15043fe9a4bbce509bc7f74cfb77a93f23613fdad9e4886a5df65e85d97a3011", v: new $Int64(0, 661) }, { k: "150c2469c998a812f64c184be9bb5ed09c5c52f3b8006293acce2d6f1a3bbecc", v: new $Int64(0, 8734) }, { k: "15101152f5171a67371892904274d65656625bc1c7995e9d4be2e2d5fef669ee", v: new $Int64(0, 5218) }, { k: "151246ee154194a671a8827f8f4e1f15c33d677b6a5897ba7e174426c6e4f775", v: new $Int64(0, 332) }, { k: "151dcd490e0fc4ed055681abc5de61a946a3d80ae82ac5bc2dba4202ef8cec88", v: new $Int64(0, 7140) }, { k: "15277ed8566e2a2b1c4d03e094693fdc582f90c906b88a4c73c1288dc7aec16b", v: new $Int64(0, 2723) }, { k: "1535cfa865c9c00f2ccd70e4cb0cec18026bf2b816f1c40a34c4816128388142", v: new $Int64(0, 2128) }, { k: "153bd8768937c06a598369ab5cb1a69ca732b8e9a4db3449ab09893b79a036cb", v: new $Int64(0, 4799) }, { k: "154783b63c769525d988ccf19177e5f22858eea6eed233b50f08cc726b2c278d", v: new $Int64(0, 813) }, { k: "1551143232780a2533fcf77b8c7e87642ab16767b35e6b003481ca903ccfe940", v: new $Int64(0, 8312) }, { k: "15513aa8f9bb3a6603a1329f7053475a0a86fb545d087f41eaad3a569a805b00", v: new $Int64(0, 9821) }, { k: "155434da53b3c40278c9834f723adb5e73738b3d9b8675539f0704a1f84fb0e6", v: new $Int64(0, 4215) }, { k: "1555be8f03b532355bb9e9bb3686e1f57b31c3c17754ec7f99a9d5f388f90c0b", v: new $Int64(0, 3501) }, { k: "15589f2e38216dbd6d7f8a97413f28a72cc3047b533c09c11fb4896883a09a41", v: new $Int64(0, 7663) }, { k: "155f589ea5c3c14f9c0260cb5480de90a5cf0eefd6c71cebc7e2139fcbb9fb19", v: new $Int64(0, 4287) }, { k: "15658e5733b57b88b4b903e6b9f90a4696d372f95af551231ae75e4f7894e7da", v: new $Int64(0, 4568) }, { k: "157b37b476a380e02d04aee1c579fc718d80dddc024c6fbfabc0349ae9e8fce8", v: new $Int64(0, 5785) }, { k: "15832307f0ec25aa967402be09220173734b986c49e6846b73eaa155fa53f085", v: new $Int64(0, 5926) }, { k: "1585876bb868da7585067a634d336a0857eb4eaf77042ef0b65d712bd77b44cc", v: new $Int64(0, 3263) }, { k: "1586804ecbd2871aac9e453bc758f2afb4190b83e2d24cb22ca2822528d4ec76", v: new $Int64(0, 7180) }, { k: "1589fa80bd737acf1b5dd01f99f527d4e936cf936ac2cdb32152442ffd4a83e0", v: new $Int64(0, 156) }, { k: "158b77c20d98c3f9a03d17f8d1be949e8ebd12198ad5c8e26581d1fc5c13572c", v: new $Int64(0, 780) }, { k: "158c827ec7d057fbcccc60c932e4421151abd7da4c8cd9622644055c575cdbb8", v: new $Int64(0, 9351) }, { k: "158cd545102935e3368848dd2d347e6bddd1f4f5d69058f43cf9d9f209de5bf7", v: new $Int64(0, 7520) }, { k: "1595a8a0b456047410831ae95b0e583be6db1d8a40c4a365c396f89e5a6b971d", v: new $Int64(0, 5891) }, { k: "15965ac8b17d27a02e7d1dd1458b31ba5a0ace9b65da2dde43ae48f52f54272f", v: new $Int64(0, 882) }, { k: "15a751b600a72277fdab4c238702cf320a36e3e362c4b6ec239890f7bfb1fd05", v: new $Int64(0, 8938) }, { k: "15a8275c34aa0aea821fe9fee0b94a0adc6873e3c842ea51df444ccb3e61c133", v: new $Int64(0, 307) }, { k: "15d01b2e36f6d77f25197e6748de8cab9538a78f1a8b9bc172a51c741e3bfe0f", v: new $Int64(0, 9386) }, { k: "15d3b9c814998179e1273557e18ca9d889ce84a4bbf6bec79263d774d9950762", v: new $Int64(0, 4331) }, { k: "15d4f665a881b3eab27545221ca153ea3429284dd3aa5ad14444a556cb3e22e4", v: new $Int64(0, 5901) }, { k: "15d540272789232689d1ebce591a47f3edb017b41d58db40e699abf34a01113d", v: new $Int64(0, 8133) }, { k: "15d7dbe0495b7c8394b19088abb97375413ddf5266924653e04e1285d76e55c0", v: new $Int64(0, 1296) }, { k: "15dce41efd3438e2f871b8f4d6d6f859e81c56f5566fea6b2df9623379dcbf22", v: new $Int64(0, 3199) }, { k: "15eb90c2379a1a38ba9bb6723c1ce398782459ddb2a93c316a13d9951a9256ef", v: new $Int64(0, 1059) }, { k: "15efe85e79fd941cb968277a907b84a2b326b906aac2974f3c09c6d4c96fb3dc", v: new $Int64(0, 4176) }, { k: "15fa9bfca83845750d5471386e1e336c17adb5cfd0b9daf067d66972b8e39602", v: new $Int64(0, 4206) }, { k: "160a131bde784d62e7b526bc151626c1ccc99af8597ee92c856f2e08fb010ddd", v: new $Int64(0, 3487) }, { k: "16160fac1aae21509077b8482c6383e9391ce4e1f0522ae4088e230b5fe7584f", v: new $Int64(0, 9076) }, { k: "1618d00d2b7a37f08ee46adc25036e7583b7ced7eef34edbbb9178235cde0e36", v: new $Int64(0, 408) }, { k: "161e3832094310cf92f03b084f7718590bb42dd1cc75e64afae2311f4a7ec535", v: new $Int64(0, 4750) }, { k: "162c92736a355b10c4567d0664d4440659cc6a8bc0a017b482119461574b4f48", v: new $Int64(0, 1396) }, { k: "1634830b2135622074689f169746db90096be1e8fc0986becf903a94c2b7e2f4", v: new $Int64(0, 7426) }, { k: "163a0a3f0d25887373acde31d318140b4c3b6bd71fa27c342c941edad9eb535b", v: new $Int64(0, 2601) }, { k: "163b3d564cd4119e8d976836833498724abfc294a8fe52fea58da561923c0a88", v: new $Int64(0, 2079) }, { k: "1641c855786ec81ac3c649708d5ce817e687a3c439c9cb5a3216e1f69cb58b24", v: new $Int64(0, 3352) }, { k: "1644f559a89180960e266b2d8bd229b4b1cf076dd4c22415cb56dd922750d559", v: new $Int64(0, 4557) }, { k: "1654dff231333bd2ec2dd7f5a3c47e133a92ae943421940cec68edf001eddeb8", v: new $Int64(0, 6546) }, { k: "1659ca719397edeee9f7484e98a298ef5122fb1166d28842e8d790c5022fccaa", v: new $Int64(0, 9655) }, { k: "166991f1aaf982c2cf1052cac688ab6371250e060da57e8070ece32e4bf8626e", v: new $Int64(0, 4116) }, { k: "166ad0e1d6f5802d91c20d8abdc5ab19ff2d2d46327049baed20349da8ebfe8f", v: new $Int64(0, 948) }, { k: "166b85603a0551acd1485a8080be09dd3dfab33be99f5292fe98fab8b189412a", v: new $Int64(0, 2783) }, { k: "166e162b1dcb9b2de09e6619d6b9bf0ab837643d7ec2b7942f124a4cc936f5b8", v: new $Int64(0, 1507) }, { k: "166ecb8b7fbfba79ecabe7ec89e5933fd836f959c90209ddd02478954115c87c", v: new $Int64(0, 1489) }, { k: "1671a050135d2b164a6e559e43900360c8b788edb5c8bf0f561602cda5e63ccc", v: new $Int64(0, 7737) }, { k: "167432eac4df89aa078fdc3026d78c1e7bd7373d2f2f4ad71b983e88346c6a16", v: new $Int64(0, 9992) }, { k: "16827eea5ac94eefaa5f0c3f24654ff38f02513299fb2ece5ee10e7b386c4dee", v: new $Int64(0, 1487) }, { k: "168cf1ebef9572b06be8c61a2267582e8b3654b5d9fdbbe04576fa0cf9771c22", v: new $Int64(0, 2728) }, { k: "169b1b3a0cbcda9f500b4902cf9e69d69b4d62a59f8be698c73bfa62a0e9a94a", v: new $Int64(0, 1277) }, { k: "169dbcc8f7622b55487be9d93d4b77ad4c437059e3185bd057aa2349640e8a6c", v: new $Int64(0, 6427) }, { k: "16a00d12ecbbc3dd7e3a3e1e4e9ca4cfcb2b2b8ddd4ad1eda8d0a7c2595740f1", v: new $Int64(0, 9452) }, { k: "16a73aa041c63e84efbee249932942d1b39077b84e77a3abfdca4f5f2d894ba6", v: new $Int64(0, 9633) }, { k: "16a778c2aee0cc93565e7e16bd9cf004930b37a4fa1caaa77e8efb013dd838b1", v: new $Int64(0, 8430) }, { k: "16a85b1d4e636da4d99e0c7c16956e0f480fd9deb5c70761ab967eb4f9f63035", v: new $Int64(0, 6487) }, { k: "16ab52677a00d555e48c91fb7bc17613ea290bd3811d73165e16b88b90556dc6", v: new $Int64(0, 7141) }, { k: "16c2798946e66bb2e427e7d0b28aecf24056adfac94d024682746d5029ef7e7c", v: new $Int64(0, 1332) }, { k: "16c75950761a81d763fb62e81b240888eadf0366577efb94df5247e5434e218a", v: new $Int64(0, 748) }, { k: "16d0c860a9d92f4c595fe9fbeca11d532c4829ad06f33eeb87184a96aa1eb44e", v: new $Int64(0, 2753) }, { k: "16f55cee17782010a2a063c84e80f0d39d66abe0e27d349a3baf7c718fe52994", v: new $Int64(0, 4476) }, { k: "16fc7da6dfd453adb3247ab4bd46da2bbb7400d24cea1f0a61cab93c64680b29", v: new $Int64(0, 8273) }, { k: "17008f76deb289c173167bd1bd4959fa36d6ff1e64d8b0ddbd6dadd7da5e7115", v: new $Int64(0, 8714) }, { k: "1701d7053331a230139f1129044cc1f398bf9704445462c6c3b422ebfc663a35", v: new $Int64(0, 4375) }, { k: "170aa27b7f66c959707875665e4e6a03288ce5682e283d2366704b183a9c4a43", v: new $Int64(0, 8147) }, { k: "170c3bacd66ac89fe3c0185c42b79c2b95d722a2e9d11ee84db73c48e1684fdf", v: new $Int64(0, 376) }, { k: "171005ac6a41093efdbf6bb8c046ea63ff69e51174fcd87cde6fc163cc700693", v: new $Int64(0, 1260) }, { k: "171e2b81da513bea472ceef7e19e45a408817693ef56ecdb6e7fe625adb9d5ac", v: new $Int64(0, 8866) }, { k: "172b3afd21b521c27a262903d679950662e1a762d99821671a46ed2d05465258", v: new $Int64(0, 1790) }, { k: "172e165888b263c729d1f581f05ce74b40ab2e85f21a9d550285405323287cce", v: new $Int64(0, 3816) }, { k: "172fea0a84a2cb0070eace93051a591223fd71873f7035bbb03f5e58fb2114a1", v: new $Int64(0, 1793) }, { k: "173327d5f04c28d445df16242803f90e00efe22d10b7313044e8dbeb00c80cfd", v: new $Int64(0, 9787) }, { k: "173a4b5d98ba3e221cd58001c791c94574d4514aed7f88017313be5d1c4e4a52", v: new $Int64(0, 851) }, { k: "173d20496d0bf70c3298a0654c0b1a6ee6b6b6586e4964a3276c846dd3e04238", v: new $Int64(0, 3730) }, { k: "173ecf6c58f59c20a3c2af74b0aaefa3d4771b5a1f35e4548bd3487d5b446307", v: new $Int64(0, 6928) }, { k: "1754ae605aee1358e63eaa6a2ac95e923ce7b12262a1b8c32c065f4b1f6e3ff2", v: new $Int64(0, 8308) }, { k: "17565db30c8976dfcb430543870c06437c5d0f6e45256fcc45e1ef23f3df0463", v: new $Int64(0, 4442) }, { k: "175e92702de779a4bf58f020f5fbea190dc95e01d814fe744fd93ab184a20ee1", v: new $Int64(0, 9085) }, { k: "175e985c49fc562f068e48e2ea3b60dc8825bec4f6f1489597c5b1df23bed52f", v: new $Int64(0, 4219) }, { k: "17667f9883b90cab912b4af9035cf459efb146a72269d1cfb2ed27a9659e8800", v: new $Int64(0, 1785) }, { k: "1768d85eab830a6076ebde9c5865434a7953dcc81e42b981955fe944cecdbdde", v: new $Int64(0, 9723) }, { k: "1776544938785bc79e6c2f113ed59f3e0906874595b99ac13880fbd0e354f5aa", v: new $Int64(0, 404) }, { k: "177e292cae78c1caae372179308e24bd787bef6b06e17a2104634625e7cbdb5a", v: new $Int64(0, 8088) }, { k: "178b1a716231339a1099688ce97730891b230e00ebae109e8a6fa2cdc9ec369b", v: new $Int64(0, 8709) }, { k: "178ff38467d46126bc8bfc376b2d0ca7c126e3ddb0f42bcd1eabb507df021267", v: new $Int64(0, 6889) }, { k: "1791ecc534fe5c37a90cfdb517693493cfa21e58b30d530457d0c1c016c44205", v: new $Int64(0, 6873) }, { k: "17945cd327d87b9800f27dd8665c0d67010ff0c19a1cedcaf9d4f1f9d8a65be5", v: new $Int64(0, 3426) }, { k: "179905fc1728f3e416378c213026abd3816ceba72f959b390a1c5b6ffeb9ee77", v: new $Int64(0, 2402) }, { k: "1799d017fed71ad28bc1bac04c3146cd31fd760032dc6e38fe0318268761024a", v: new $Int64(0, 4387) }, { k: "17a5dae008c852523dbd9d1b038e8133529590c39e7e6ff099e1907ecf17ee77", v: new $Int64(0, 4373) }, { k: "17a932aa213cc0ccec13eeee9f747135a94e38340f326944bdc127a1edbb65c5", v: new $Int64(0, 5376) }, { k: "17addb616c3ad588a4de0d57a15f158766e616ce744828f943d20957ea79c614", v: new $Int64(0, 8226) }, { k: "17b197e34950259421f2f346d606fd05dfa545dfb0c815b5ddcbfb83354047fd", v: new $Int64(0, 2652) }, { k: "17b20920c752cbdcaa0ab37a002631396ad0ca482a172a8e788a722ffacb31ed", v: new $Int64(0, 9744) }, { k: "17cb63aa0d508b9c34715afe1394ea049c857c99ffebc11a99cbe5f731e20301", v: new $Int64(0, 7239) }, { k: "17cbe79204f0d2e0fe7ce35e75ef7dd4ccf6d5abcdac50d1a60f91eb54e70a2c", v: new $Int64(0, 7914) }, { k: "17cefa5cb428f5f931c905ad0a3c54f2c0c76c904702911652cace926d45c6c3", v: new $Int64(0, 4107) }, { k: "17d00f0dbdbe23755f5a14447597816543f23cf8e8da79815e1a3343cc876e02", v: new $Int64(0, 8367) }, { k: "17ddf9d1077fa59bbf504a3275b8c7a0235eacdbd1bad5cbf1f651aba5bca3ee", v: new $Int64(0, 200) }, { k: "17dfffb0d8fde6648094c7b4f3b5383bed7b7d1b331eb9e5aff877b118973c93", v: new $Int64(0, 9971) }, { k: "17e35c33e8472bf216d4ef4ab731289a16883a6e1c5081c78718af928df8a652", v: new $Int64(0, 227) }, { k: "17f2302b220d2e19c64867004b972fbeb07d445f9d0e093ac533e788f34bed97", v: new $Int64(0, 9734) }, { k: "17f402ffd531d8ddcfe1eb050feaf98539fb1e04f40e01cb53d27426a03f781f", v: new $Int64(0, 5420) }, { k: "17f9d63788bd684f38f23640de1e1a49c39881891ca21c670510a49b7b8ebeba", v: new $Int64(0, 1654) }, { k: "17fbfbdb210034f7adee0dd6aea2336b606c3ac0d4861b70be837c52477bd61d", v: new $Int64(0, 979) }, { k: "1802d4f658a7328db8dc488a51fba3ba1cb73c9cca33e973b3acb2adab29a0e2", v: new $Int64(0, 4699) }, { k: "1803c4713a4ddc8461728241fb683d16cea11b820e63232ee79499a18d36bea9", v: new $Int64(0, 8761) }, { k: "1806e7ee394d86a87c081ee86073807c8ad8afd2666cfa6c2837e57dc7b259e5", v: new $Int64(0, 6320) }, { k: "1807dbbe35e03cb93a19ec78305d572439179bd1e08d0b49292a196ce2f445fc", v: new $Int64(0, 1637) }, { k: "1812e452def709de7e69066105f50a4cfed66e69b0c82595e8f01c98765ce753", v: new $Int64(0, 3364) }, { k: "18130c57dd41d39d7f963db2377aea47fdd7222c6d678d4c3f27a4d2517b31ce", v: new $Int64(0, 6986) }, { k: "1814dfc951e84de93edb80245008c20d43a43ed298d0f87c887a70e9c9cc4879", v: new $Int64(0, 6606) }, { k: "181c377d3781a1da1576897eefc683143f569ec53279256175ab061c1bb72918", v: new $Int64(0, 6204) }, { k: "1821934e8938616200b335b3d1f055522c3c6fedffddf4a93413e0e062ecd0bf", v: new $Int64(0, 3153) }, { k: "182d6d6c403ca81cd12e4242e78b7c67dc9fb40c3d2122325f4593e7da55b955", v: new $Int64(0, 4049) }, { k: "18333d04e6b22a07ff37dcdf4b22d9ff0f41bd0add078c1b481300789005e322", v: new $Int64(0, 3747) }, { k: "1835408e16ea9bb028fc107b3119a010b113939dd1fe5e2e8c4d4b28f60e1c86", v: new $Int64(0, 4951) }, { k: "183ea939f8c9f336bcaff22529acf243d10ac49602a995730576380b6478b997", v: new $Int64(0, 9951) }, { k: "18577717da4f3e42b758b46abc79c3ce5c188949755a2244fa6b21d3da6b4a26", v: new $Int64(0, 711) }, { k: "185c92fa2d940cd49ad5e46b1b7354370416535cfcc34c4ced624369e2203b5b", v: new $Int64(0, 870) }, { k: "1864ce672f22d8dbc3472d1d77fcec0b73e8569f07102368755f92fe32f86142", v: new $Int64(0, 1687) }, { k: "186e122ca6c25a4995396431f686000228f1dd025a8d2cc1ad31db835a1a07fa", v: new $Int64(0, 2225) }, { k: "186ec9f8e83fcb0c44e786467c30a682e5ec5ce115b885d44400eb5145ff535d", v: new $Int64(0, 1739) }, { k: "1886d39c6a0fa99b25f051eeaefc44c0b999a5d3d5d2df05ad9f0e7d1929d25b", v: new $Int64(0, 823) }, { k: "188b9935ea906476931266d5f6d9c0f383a8c5560b02b9ca5da255f8220d9964", v: new $Int64(0, 6983) }, { k: "189a9e6390aae7ceccff6f2bc641f552cf04a32c86d6c164f19741c4f47c0507", v: new $Int64(0, 2350) }, { k: "189b95a611bdcd0287ca8e881425ee2749a0428d7db553eada30b06e636eb8bb", v: new $Int64(0, 8967) }, { k: "18ab21fd8c4f8806bfed6009922d4f445823e1c87051896a798bd09f35cfc29e", v: new $Int64(0, 2966) }, { k: "18ab29bc4e4061971ad360df12d17217e4e720bbfed07bf7f1322d389646c381", v: new $Int64(0, 2517) }, { k: "18ca4cf4ea639f981eed6ee85b8418e1a48010783395b3a7b25d97fd9656568f", v: new $Int64(0, 2790) }, { k: "18dd4500f2404e4626e6f21de2c777ffe3a4fe8dde1240085409cf0e619952c2", v: new $Int64(0, 1220) }, { k: "18df434f79a2d6d827c9621b389ad1420466c03658d2cf79c40e6a66e6219329", v: new $Int64(0, 4246) }, { k: "18ebcda37cd59d947e3a0c977745331d53c4d0a7256afc5306f76a134d8b0b37", v: new $Int64(0, 4576) }, { k: "18f2bfff9abda1ebef53b94ecb5f83a7a661012fd29ed21e82fa226803259616", v: new $Int64(0, 4161) }, { k: "19198ff379a2f6942f1e2a4a823e9e12e6cc5ab689be7ff5c7ec51b186877d18", v: new $Int64(0, 9449) }, { k: "191e910ac48c50ef27e3cfa057f63d548cd391de52aba852dbaff139ffe2b669", v: new $Int64(0, 8103) }, { k: "1920319cca5f62ff1cafeb3621a1962187e9f6029f11efba6eb44c4a69ad575e", v: new $Int64(0, 6483) }, { k: "1926809d57129ad492a247810b30e2b8ab3ad621ade97b190ed4477a8e8414e1", v: new $Int64(0, 5544) }, { k: "19283c72778073a405f37ebfef744a4f39a72c66a12e88f5e5742dbfc4d0677c", v: new $Int64(0, 7409) }, { k: "192d0ba42b6529b028ed42a0bd6204a3308215f7f1e79c86802eadc9b6032093", v: new $Int64(0, 9716) }, { k: "192da3c758d20a03e6934979580a4863f467a0fa5636f949cd012d747dbdbcce", v: new $Int64(0, 3503) }, { k: "192fd501b64a9a9bea9c5ee7e4475f7fa654f419aee8d22425457b387147decc", v: new $Int64(0, 8490) }, { k: "1937f8fd4883765e01efb44897e1855931ee4b86e27b832cee9ec7da619cd64e", v: new $Int64(0, 275) }, { k: "193af4d956058e593f342b4568677de0f6386d7f1629592295fd875c00f71839", v: new $Int64(0, 1884) }, { k: "193e845ba9faa5ad000402e5012f141d99e57aa768dcd4685970f3d55114df66", v: new $Int64(0, 3000) }, { k: "1943f488ef79f4ee9c8b1a2a82025239bb6e49c5cb56831dbec10df1f2f31c6e", v: new $Int64(0, 7882) }, { k: "19453dec8a43b4717860d01ef5a6293d7199dd9a805658ed28c46430b3820dbe", v: new $Int64(0, 3145) }, { k: "194c4e2334f6535eb21875893e6496e6025155d77db26e2eaabf4fdb60c54838", v: new $Int64(0, 3839) }, { k: "19575f3ec1ffbfcc2d3f10b7b3ad7cf317788d45ed3161e883eb72abc446af86", v: new $Int64(0, 9327) }, { k: "195c913e027b0c678f3b50d9a82b6a8a13cd2fdbec38026f87684e6f062f2414", v: new $Int64(0, 9331) }, { k: "19630877e1c177855d15a5861e469713cf38653da5a004cc6ac1af0125878f33", v: new $Int64(0, 693) }, { k: "1970207fe24a76d80e7ab85948bd1cccbe6a0c69a470aa9f36a92fbf9a139b57", v: new $Int64(0, 6266) }, { k: "19736f119d6c7c366051c725f38222f560ae97a34242bade4646095ab5bfafa9", v: new $Int64(0, 4630) }, { k: "197382a72ace713ab6a50f7300b6f19937fd7288236ad7f0f10a8f8966331aac", v: new $Int64(0, 1019) }, { k: "1977c484aeda4a0c20bf5588ef28ff198f19f5a05150ea9f26252cbc4a2d3f7b", v: new $Int64(0, 9794) }, { k: "19797e2a8065fe05f03bfe008805c12804b23ec5a3c3ab153de5ffb655440715", v: new $Int64(0, 7953) }, { k: "1983076ec8e3f5cc723417d60ef1a384d797b0e812a3674b73d010dbb8d9c962", v: new $Int64(0, 2413) }, { k: "1983853cdadab467f767938209d3f31633e3f6f9e724d6db79b10c7faceef431", v: new $Int64(0, 6154) }, { k: "199ab088f99a6714f44e40033bd770f5c47411d1be032b5b36a28c37bbe308b2", v: new $Int64(0, 1644) }, { k: "19b355dba4c91c31a2ea1999762fbd39c57eaaf850d837992d90200e4e65a0c2", v: new $Int64(0, 8221) }, { k: "19b4b8b688b48a31af67b1f87de23d5700bfce50ce7143f609d9cb990d33377b", v: new $Int64(0, 5626) }, { k: "19bb009c4b412f520983fe84d4cf6ae8084223f0186264e0f7fe9dbd908dbfc4", v: new $Int64(0, 2327) }, { k: "19bc642fb37297e9555eacf745774a59503ab09eedcb063f0bbaeae00e6626fd", v: new $Int64(0, 3712) }, { k: "19ca3a715f6922a226be120f4998ce4e77bb721093ed6749ceb8c703a3af2889", v: new $Int64(0, 2988) }, { k: "19f5dea0321621b8e66d3cbb2655a95a42ea42c140af01c73bdb55316f6215e8", v: new $Int64(0, 3630) }, { k: "19fa33497f742f7de4fc9ab5343c4a52f7aa055f1c0e2d07ed0f708e2ffe9ea6", v: new $Int64(0, 515) }, { k: "1a0051a24eaf893e1b11f326ab100f3d10e7d09f1e6539da01e52dd0fff6e96b", v: new $Int64(0, 2253) }, { k: "1a06c9e14f56c22cbe492944f6eff1c74a5a32bfafe0fa1ebd7272a983fa48e5", v: new $Int64(0, 1355) }, { k: "1a0bbc47d42ade95b05e7377b58a47ab24d11cf57e56ab9205c7024171d361bc", v: new $Int64(0, 1388) }, { k: "1a195e2f8ca52db77fcaa75bbe419690f2f03bb476818fc91c96655b661d122d", v: new $Int64(0, 7771) }, { k: "1a1ed96a91fb85a7b1fa8000ea43a8cbe1b7f6cf976a13e04d75afb4fc12f4dd", v: new $Int64(0, 1825) }, { k: "1a20046e2868db92513ad004cbaa681a543e7697f835d24380103eba59ebed13", v: new $Int64(0, 3800) }, { k: "1a257696b046828c3860af75e97accd3a4945319d4a783e16f09e9646cb8509d", v: new $Int64(0, 1669) }, { k: "1a2b85eaa79d81e8cb115246c35ad5f2201f49dfca742b937b2d7a57e73cc93d", v: new $Int64(0, 3115) }, { k: "1a309ee406c126772e0ff9ad5f176284e6a6d7b2b48b57a93cde4dd91f87221c", v: new $Int64(0, 783) }, { k: "1a38b3198f7d7745b98cad9aa94d7913fb0ba8926f231f0d18242589a11ebe21", v: new $Int64(0, 7722) }, { k: "1a3d47c10ceab22d5d75c7d146da43ff0d6b2e474815698cba8fe5370baf36f8", v: new $Int64(0, 7019) }, { k: "1a4ad2d17a05ec0cbe8ec60edec86fbce777e5fb75302530c673b04b4c6f56b5", v: new $Int64(0, 1805) }, { k: "1a55c3a06ee09255ce31adf58878ff9e09f0321130652ff49fd5ba5a22d26155", v: new $Int64(0, 5826) }, { k: "1a576de226533239b57897f85b2fc22e061102b15798f0f6e9d3b59913be3965", v: new $Int64(0, 4978) }, { k: "1a5b4c3a8a6b3009e966e2c5dde31d5c2fd7ad60925aa7c97b1dc6207fae947e", v: new $Int64(0, 6692) }, { k: "1a6048fd2b5949f9ef4a7a9620ea75833a8c36292a3daabfaf0ad8c679f951cb", v: new $Int64(0, 9897) }, { k: "1a6c8f71aa8b0e700a6f5e139bf8dcbbc071b92fc83ff7b2e7c94a7fbf0bd918", v: new $Int64(0, 845) }, { k: "1a71e3875413e5c086e6ceafc96ce30bc81d5e59bbfcd5be1ee57ccab4e23fc6", v: new $Int64(0, 1681) }, { k: "1a73762eda45416c075f0f82c7cd3609e310e04a81948a98053ddfc0b2bf75ce", v: new $Int64(0, 982) }, { k: "1a8be5bfe173ba67ee50eec902acbcf0e054bae76b97ed9529a02c82059cdf6f", v: new $Int64(0, 6237) }, { k: "1a99c30bf25296e809de4a1bd4453ce3c22e9ff1fe0e2d80e04ccda1a5d842d8", v: new $Int64(0, 2964) }, { k: "1a9c6db4309a61d8338bedc3de5f580d68f891f67660f6bfaaa3eee262423b2e", v: new $Int64(0, 509) }, { k: "1ab000ebe9807530da286eaf73a62cc54853c34438cd7c897d807286049ef4c9", v: new $Int64(0, 1947) }, { k: "1ab0e520834a3c1790e25614fe6f97ed44f627737a5547198b52d32fb31d9a3b", v: new $Int64(0, 7458) }, { k: "1ab4bb144e961f5d8e6d87e598a9a205774e641ea334c3f0dca236a3d0bc144d", v: new $Int64(0, 374) }, { k: "1aba23c43d933506b4667a0ddc291bf2ec8da12403d1570c6a7b090ee9e87ebd", v: new $Int64(0, 4368) }, { k: "1acdb4e854768af5af2b563dc7dca85b302c94d6c114629861458daade317712", v: new $Int64(0, 8910) }, { k: "1ad251c822e96e039f601376694a6ad900c074ac15d02496c6883b8e402f6074", v: new $Int64(0, 1541) }, { k: "1ad79b04f2a116ae59f703dd7e1cf1dbdf50c2b1f64f3db0e9d2375a57ed43db", v: new $Int64(0, 4475) }, { k: "1ad7a6bc7c9b2d8f15f10fa415715547e3c90b81b25591ead0e67dd2895e5be1", v: new $Int64(0, 7629) }, { k: "1adb3d88dd387b96a837ea1226ae320c8b959c5bbd44e6676901ecd26d214867", v: new $Int64(0, 466) }, { k: "1add7d6640613fe96c445fad56f35abb89e22b315375ff34d18004db7d6e94ed", v: new $Int64(0, 5110) }, { k: "1adee6fa204cab11c99ca5de6bf7158140cfaa5f3cf86307bf1d50a98baf0fb6", v: new $Int64(0, 1485) }, { k: "1aeed76daf2d86fa5e03cc8eadd8dd12c7e79edaffca3e06c4876a1667478441", v: new $Int64(0, 8234) }, { k: "1af4894e287fb55afc033ae4ff611f91706b2ba832b9e3a0ec80adc2b35788ed", v: new $Int64(0, 6143) }, { k: "1b0546b72cbb400cf474650f14edb2b45152c0d3e5894ea788931351f3fc1eb2", v: new $Int64(0, 3964) }, { k: "1b05979cb81bf50fb0fd9ea9af5a96300d2ac5dcf1c056aa7d68c1eec5431fca", v: new $Int64(0, 4877) }, { k: "1b1ad11de786f8900b62c9105cef447860dcea81eb443b9adec79b78850c34cf", v: new $Int64(0, 5952) }, { k: "1b3f30cde9b2bbda84ef91be75b121b0d76db61a2efc19d90456d7c5b1c28e67", v: new $Int64(0, 6553) }, { k: "1b44de906a5768cf1875029f2c6029b72b9440ca098c337401f619209acea789", v: new $Int64(0, 7910) }, { k: "1b45b75e59c545475fd69f81a3e14013d0983f27e0fd0698c9f27dd4c30950de", v: new $Int64(0, 9215) }, { k: "1b514ac8a345d2174588d9e7d9f2fd01c977896e85deea5288cf391ea2892d65", v: new $Int64(0, 1828) }, { k: "1b5f070eb609e3ed64868680077496b4cf167e2a18284819ec5f713d56d933ab", v: new $Int64(0, 1869) }, { k: "1b628a7d645be998a30409d9c7121623a3f18092a40456a8d1cf0f8c6c882374", v: new $Int64(0, 6259) }, { k: "1b658155d79b14aebc85ce9891b4a86a86914aa8db037a6d8090c7761c4f5434", v: new $Int64(0, 6064) }, { k: "1b79bd3d783ea06d45296a7592e97a8a86ae5c05db211484d19ce0441344e22f", v: new $Int64(0, 2260) }, { k: "1b7a8d12102d8fb5afc9026b242b6020da8878ef8aec80695a691496267b4092", v: new $Int64(0, 5577) }, { k: "1b7dc045b3c3cf42c52596619085b629715e4c0e9f9c0e8756222599d6eeb8e0", v: new $Int64(0, 5154) }, { k: "1b80aed2998e30b7da801e86c225c601e4479d60cd1434e0f049fc34e6379c15", v: new $Int64(0, 2762) }, { k: "1b87cf290088fa7e89b620c932738172039a56327ae705f75426c571f713b35d", v: new $Int64(0, 1885) }, { k: "1b8b9343733a49ba47720e41300d0064923ee00ce072f17154d38bede48235b2", v: new $Int64(0, 5298) }, { k: "1b8f2c6de96a210e8475e690821b8e572cc2f86a5ff40cb795a996d1db7e0113", v: new $Int64(0, 5548) }, { k: "1b9afa25011fed579f88dca7c3887b31e31329aa8ad778c5d93b993f6efff4a0", v: new $Int64(0, 6977) }, { k: "1b9d90eac0f82e1315f3c3d8c96af0f1df06e6f065156d4bd4b077e343ce1119", v: new $Int64(0, 2801) }, { k: "1ba1fe3cfc6f7072842db6ccaa50e80051922c0eb82d1796711db82ef29c395a", v: new $Int64(0, 5388) }, { k: "1ba6c9b43086f673e237cba3458db9d4950d800045357a57477a8f78b1b1cba9", v: new $Int64(0, 8660) }, { k: "1bb06744cf9eac554fa81517c8cb25898728d84503c578370f6ba20fc6abf8ec", v: new $Int64(0, 3081) }, { k: "1bb1652f024d672fe0d718308699f61222f9461ed6ded37dc223a6933c3674d5", v: new $Int64(0, 6236) }, { k: "1bbbafb8264c472cbf51c048958fe7c4fa562fa9b6d753e5bcdc1aea0a1bd55e", v: new $Int64(0, 1243) }, { k: "1bc236bf01540f414fd314c441ee4e86c450200b4a791e8db914c761886a3941", v: new $Int64(0, 6394) }, { k: "1bcf17b5631d60776abf02c81a13e5d7c1b39626ce41059a018be93fbe1cea63", v: new $Int64(0, 1299) }, { k: "1bd030fceecadaed552225726f38832ca67ab444924ee94066cb5ac1770e96c4", v: new $Int64(0, 3615) }, { k: "1bd3818543334398d585e8415fb98ebd197eb346655434ccc2f59dd9fb9f754b", v: new $Int64(0, 4210) }, { k: "1be0f4663ddb121b9dfaa077d84bc4062579cd565be979b065e6fe62309381b0", v: new $Int64(0, 1593) }, { k: "1be459c843e121e850a88872e94722d5d33b6feda5ac6b2a777e718ad7f6a2a4", v: new $Int64(0, 3425) }, { k: "1bef6d22e3588c2402829be16c04303b026a026f5041e978b67108b8f61d6526", v: new $Int64(0, 3826) }, { k: "1c00af48ee2d229ad1fee41288880f5e9e3ddf12bbc3fcd2da38ab6ca33c336e", v: new $Int64(0, 5735) }, { k: "1c0a9ae0e89aa7b017d972a57796d6d40da806835bcbda87dd670d821a1a884f", v: new $Int64(0, 647) }, { k: "1c0e52ea2c6ee8c5dab8d17188ace2eba77d381528cdd26fd4b7e88d6371439c", v: new $Int64(0, 8954) }, { k: "1c13fc39ac75c50f444f00d3fb332b32082f7f6b7f429cfb8e59671efffface3", v: new $Int64(0, 6082) }, { k: "1c176a7038c23c9d72453051ec49d08e11cc643e51e946ba59f99d2a6ba73643", v: new $Int64(0, 6710) }, { k: "1c1e0f7033d83d919c662332e96bd1a41ac3300e91fc586141b2e491f1a9e9b2", v: new $Int64(0, 314) }, { k: "1c2274055e9a16b691de5cb2550d99486febb48460b60c45f8d49f617fa2fa46", v: new $Int64(0, 4539) }, { k: "1c2416d8cfa03105282d8e70fa0aae24cf28ccfd2badbfb474ace596e73daf65", v: new $Int64(0, 6709) }, { k: "1c26400aa3d0dcaf6fbcd8011c77fc14d69af76dd6f4395c761b2d2214ea1489", v: new $Int64(0, 5751) }, { k: "1c2f80f60dafbac31bf8d3f94e3c4c09412548a1b97d451ea0089fb3033083fe", v: new $Int64(0, 2461) }, { k: "1c3545e6b792baa75d84d6c5c58ba2aef0d54d4e558a4d8a9f0765c61b1b78ef", v: new $Int64(0, 8606) }, { k: "1c51ead678085974b73ff32b2e5534aaf1c4a3ef18d31ec7561402d69df0135d", v: new $Int64(0, 9235) }, { k: "1c591c655d34a409cd139c707db12ac588af0b60c79f348dd6b77fea78658df7", v: new $Int64(0, 192) }, { k: "1c6683967f2c39268bc5c14579040b0eee297cfd0dd84e4a068ffd200d9ece34", v: new $Int64(0, 7591) }, { k: "1c6e4c739d6f91b83303721f5a2d9b96139ee03d20917b9086d007d9634ccb3b", v: new $Int64(0, 5233) }, { k: "1c6e70374b6aeb16923a10610010cc8beef7c92f4e551bc2dfe5c271017235d8", v: new $Int64(0, 3278) }, { k: "1c8733367acecfda471122e366e0ab80cc5834c636f11e62bbb2d1d5b333fd8b", v: new $Int64(0, 9626) }, { k: "1c90a37e60d37d005c1968c5aefe00531cd2afb438fb5cdd4904cd28f498a3a6", v: new $Int64(0, 3518) }, { k: "1c9acfef2e54a2290c20c3bbf638ae52b51d0dfd472ea67e66e132ac353658e2", v: new $Int64(0, 4241) }, { k: "1ca1dca58d638e86b69d03cee1f8a9f6db2cfd757eee46267d5d4acc94e90d58", v: new $Int64(0, 419) }, { k: "1ca7e037ed7bc881653a3969c24277622dbeb4570f08959447771e56219b9f88", v: new $Int64(0, 6519) }, { k: "1caa262f7032129c545268f381b362ebe0691ce9a562f0bbef8c898d2289d3e7", v: new $Int64(0, 3105) }, { k: "1cada4cd7bb73407e45090628dfe47feb6f45f4bf5c165b2c96a1a276612ab04", v: new $Int64(0, 6790) }, { k: "1cb2710599841222daa14acfe0243cb238ee12fc3201fba1865c64ba076938a2", v: new $Int64(0, 4629) }, { k: "1cb8e4ca76a9c0307f91de874c160c0c46998b5185a1c5d0ef6ab3cefae44646", v: new $Int64(0, 2892) }, { k: "1cba757e7ae84fbcbe8b845a146adc23998a41ba2d65b237e9735122dd3bf115", v: new $Int64(0, 4774) }, { k: "1cc0bed908698781b63cd0d1eccb773eee1b88ae2813351d12f4252377775623", v: new $Int64(0, 2478) }, { k: "1cc57e7a7964a560665dcd777e0ecf1dd2bcdb16ae34f56f9e51c0c3fa624a54", v: new $Int64(0, 9018) }, { k: "1ccfb5d5a6e0021f6fa186a019375f14771245fe388229360ac5b87ed5fbc3dc", v: new $Int64(0, 2661) }, { k: "1cdb6c78c032112d5d128136f15b8762272d743555f7a31cd5b26e562b4fff52", v: new $Int64(0, 3894) }, { k: "1ce4242e19372fcd07435f9357f3329342099a8eec43a2a31edf74ebf11c110c", v: new $Int64(0, 8858) }, { k: "1cf09390c9c907dafcf3923d21c00881efaa24b431d2955faa574b333db0e184", v: new $Int64(0, 8005) }, { k: "1cfb51237d65ff12b0cccd168021a6fb67d5c458aa4632c5948459bf48654c1c", v: new $Int64(0, 5372) }, { k: "1d0aad3ea397e5cd8da05b059a78287efed123432df2a7ae46b3153f79dbf033", v: new $Int64(0, 4172) }, { k: "1d0bb05ebbe33bfe9ff63304feecf6da44b09109b6115f14d5a49d290e5d1a14", v: new $Int64(0, 2468) }, { k: "1d0e8247d47196e7d249a2a74f97ace1b4f10437524b54a80a774b71c9dde93b", v: new $Int64(0, 9080) }, { k: "1d13480d25ee0e6b8ae566a304f500b088c8257de050d4891a6ea1eaecb46692", v: new $Int64(0, 9919) }, { k: "1d14836077b04df4c17475485bccc8f08a20df9122487ce8e7fd1d8cd405eb63", v: new $Int64(0, 2556) }, { k: "1d1905db90aa62f08efd848e422ade271e5b42bc7634cf9d698f5d30d0e123ea", v: new $Int64(0, 9064) }, { k: "1d35f48b90c97fc0d91f2749200db73ac7cf5a49ff0240194498e2b13ad70bf3", v: new $Int64(0, 7045) }, { k: "1d375c9e48494e893a5b7d869f456a4a86265a81a79acd40e5ee0fe042dd4af9", v: new $Int64(0, 5016) }, { k: "1d42de16a2bb0b066ee8fe57150a034efa8f71ddc8adc35468cfa49511a96dde", v: new $Int64(0, 587) }, { k: "1d430ceee9e342482397815ed68c3d40a538b7561feb65e2c5793ccf989b95df", v: new $Int64(0, 6287) }, { k: "1d4dcd94d05d2a8f70efef21c38e60607a4266d8c012b115da8962c9b4b9204f", v: new $Int64(0, 303) }, { k: "1d580540fddd6711afea5741a291443bbdf240f575b32562bc50fb427c3be59a", v: new $Int64(0, 393) }, { k: "1d5bb5fc0efbafe79157b49dd82b10bb86ea310e1482bdaf77db09bd3d557969", v: new $Int64(0, 1266) }, { k: "1d5cb04b89eab8f1d9b641d3a5f9b1689d566d5b7e0559537f5c612768bff2e3", v: new $Int64(0, 2696) }, { k: "1d6f176147e4be8c41c4c3cedeeb9a258b54177cd8862775391df4e16a966913", v: new $Int64(0, 6397) }, { k: "1d71ee6ab8b3e700808e7d0348ac1f0ddc32ec8a2f906c947cfb9c56c10bc1f1", v: new $Int64(0, 9673) }, { k: "1d72639b57252b85c8d31b2a2155022eab8c0acf255a91a25e849fa7f505d863", v: new $Int64(0, 119) }, { k: "1d74ee7ae5ed6ad58ddefd1f22df00cfadda5e483846e4c5fb1176dbcb10dd8f", v: new $Int64(0, 9075) }, { k: "1d7e3454555592fcadd5bb0ca67cdc34be44f39fceae618c424c807ed29979c5", v: new $Int64(0, 695) }, { k: "1d7e7c72301c41761dacc045fae877b6539c6ae28f0056045f1516da147e3b70", v: new $Int64(0, 8033) }, { k: "1d81633432d2af1ac8bfd2bcda7ebc234a6597062644cb79de52cd43602b103d", v: new $Int64(0, 9770) }, { k: "1d844ffe48f66a2cd648883de26eeebd892b0acce6f939e3bc021111da357038", v: new $Int64(0, 258) }, { k: "1d84c09c915b1e355f4130b3950f6754270b37696f36f1b6ca5d4a9b4cf48860", v: new $Int64(0, 777) }, { k: "1d87d1622123ecb82a5a6f1d6a81b1eefb405c74e72eecb7331c50a218d8d654", v: new $Int64(0, 1369) }, { k: "1d993b6b5a2b417499a7100a5c5e1085af927f4de11d856164f0c1159593efb9", v: new $Int64(0, 1746) }, { k: "1d996ffcbec31be93efb0b9840fd7afc8788eee79ff728d7ce0023f63184087a", v: new $Int64(0, 1719) }, { k: "1d9a7c7b308315e24ef34d455057bd6cfa53b477582ef259befc2a2a5b1d278b", v: new $Int64(0, 3905) }, { k: "1d9c2e8b95b149d02399148d190ec842601521c67e25e133e0e0c14410fa5dc4", v: new $Int64(0, 1061) }, { k: "1d9d5d2b5e1d07bdfcfd07cdf0fe3c654c062123ee711a0b92cfb3a94e573ccb", v: new $Int64(0, 9702) }, { k: "1da9975ef9035de2af3fe151ffdd150249e4719519bf761ca1d4c5f133937d36", v: new $Int64(0, 6165) }, { k: "1daaa236c286af580d18a50308dccf171e0ac5da036b33af4cc33cfe058fb429", v: new $Int64(0, 5118) }, { k: "1db2edd8d47324602bd4a59fdcd70222afe37d1c60517ac5fce2e47201739dcc", v: new $Int64(0, 4100) }, { k: "1dbecbad494929c84c8ab8f31e4ea877c4b1e8d945dc2d371be8ef074a9ea690", v: new $Int64(0, 8327) }, { k: "1dd785925f037eec61b9eefb2c080684c68e05a23dae8353c522e7d22ab7babd", v: new $Int64(0, 8349) }, { k: "1ddc0e7eaad7e580eb36ef5974ce6a03a4ca99973a36bfdbe9a550a11f247ae6", v: new $Int64(0, 4896) }, { k: "1ddddae81e4313e0948372c80a5e2ebcb8496ec3ac7fec5b270a171037ddc2a3", v: new $Int64(0, 8671) }, { k: "1ddedba7a0d39f68831c4e23d62e857603fd7f4367e3cae7ecdb7b03c3942160", v: new $Int64(0, 7523) }, { k: "1ddf40a8db89b2d5e86ec3cbd39d69bd4a8688edd89c7fd920bd49e4eaee828c", v: new $Int64(0, 8379) }, { k: "1de030bb55a888f8557b99360ac11303989cc1976d20de5a6c4b6b0e9753697f", v: new $Int64(0, 2631) }, { k: "1de273af9d374bdccd5c9cad416abd93506cc4ae09c1140e0687de8a8759779f", v: new $Int64(0, 1275) }, { k: "1de5e61f1e4231f8f6565b30541fcd65ecd7602f4371bb414ab22ee5d5acc439", v: new $Int64(0, 1267) }, { k: "1deb5f911ce67d3faf98bfb10a63e8b03b034b6f06c9c0697c15d3cea719fb04", v: new $Int64(0, 9283) }, { k: "1ded0460a570514435e7a80a4b73e13e5761a5aa3351ae817f5a331ba2a1feb8", v: new $Int64(0, 594) }, { k: "1df11c5e9d3cb8448722151ef4399d46040eaea0269a3e320739612d88ceee63", v: new $Int64(0, 3495) }, { k: "1df504fdb5b4b1eade34336d07513c1fc123ce83eda7394d4fb30c41426424cc", v: new $Int64(0, 7919) }, { k: "1dfce678f3285c8860b86bd557753b790a4372ce8c294bcbd720ab980c9ea2c7", v: new $Int64(0, 929) }, { k: "1dfd577f0c827a9af5b37283aefa3e2341ec975c7c65b1d95ca868122ec11760", v: new $Int64(0, 9804) }, { k: "1dfe7a81f19b02c3d4429a0a24948fe6c8fbcc4f6d976b97b9b89245485bfdb1", v: new $Int64(0, 8432) }, { k: "1e018d93af624f22ee241e133b41a8e29452505901999da444106414ae8e8d44", v: new $Int64(0, 4703) }, { k: "1e02000ca5a08e51b2294efaf7cc5b0bbbb8722c907f1acd714f1353c4059bc5", v: new $Int64(0, 8019) }, { k: "1e03a19665cdd2dcce13621258ffd053cdb4cc701330baa8fdc77ed238284420", v: new $Int64(0, 8237) }, { k: "1e0e7a23f416c2e8f8b4d7d5b526e05510d7cc5543a0a4cb0ea1966c61eb50f2", v: new $Int64(0, 3882) }, { k: "1e114918993ef4d4278773aaf3078fb8f6563c41f61d2d994f51c64c598fffae", v: new $Int64(0, 5962) }, { k: "1e1bdaba9304204baf867786f73f77ae409ec0635c4f7247b48b9b741bc45b0a", v: new $Int64(0, 3149) }, { k: "1e1c0d628efc60dd5777198e1c8ed043e82ff41f48041d352cc97793e526bac4", v: new $Int64(0, 6228) }, { k: "1e222172b7a45bfa033aef1fa8b41418c54a0662d0b1484ce2c7be5d453c75d8", v: new $Int64(0, 739) }, { k: "1e23cd355cf17157883c356ce0b9c5a12a40bd5f4dd650a26a88a2a8273c11b3", v: new $Int64(0, 9662) }, { k: "1e34b11b45baac27cc94a6d1fdb4db8943097d2d65b3a3c9a8769d5d25ffa5b8", v: new $Int64(0, 7471) }, { k: "1e3b5eecf42ced0dea8231df5085feb92fbc9085b2ef286677380c971159de9c", v: new $Int64(0, 4398) }, { k: "1e3d24fcba9f449313c81be4dabded6a7384d968976348137cb5ac466800d91b", v: new $Int64(0, 96) }, { k: "1e3dbf15bd8bd06da3bdc29956dc7670c19cf650e9714f047770335eacc7068d", v: new $Int64(0, 8706) }, { k: "1e4a942896b42b9eaaf81485b13528578b0f3800eb17d78bafaa40911857d670", v: new $Int64(0, 3324) }, { k: "1e4f4d9ec8dcd3635dbe68d33adc583286cd84248a646ccd3eafca8d53c63ea3", v: new $Int64(0, 6508) }, { k: "1e50f8dcaacee23298ebf82e0479c768713fa72bb9a4feb308c64bc2f26330dc", v: new $Int64(0, 1413) }, { k: "1e6a07be06e729e5eb063e132e67e898d66adfd7cc2ca93c774667cacc04727d", v: new $Int64(0, 6232) }, { k: "1e6d96857f649a820c1b6db1ef1a1448db0b83219a7a09611d2c3665d38898c9", v: new $Int64(0, 1289) }, { k: "1e773a53e936849fdb5205a3905b35b4882f36bcd39840988dea237737b188f4", v: new $Int64(0, 3357) }, { k: "1e97474fe23bc8e8455b9303b7fca5230a936ecfdeaddd4e06bb205e656e2c31", v: new $Int64(0, 7562) }, { k: "1ea9202d725789684b9dc329f4b912cf61f6bcad1d60e0b5a9dbfbd3278ed690", v: new $Int64(0, 7546) }, { k: "1eaa67d7add381fb4d158acbf64506636799c6df024aa1ad3ded194d0b5c1fb2", v: new $Int64(0, 9421) }, { k: "1eaacd579085297e10afc0e00bfc08d234a3262d044c07037c54dc7ea2be9fdd", v: new $Int64(0, 6281) }, { k: "1eb064e72a4d084d68a937dc490648c2b89494fac07e8ff69868df35a9c0fc6c", v: new $Int64(0, 7982) }, { k: "1eb0e3db58e142cf4add0062479aa32f643e9952938eccfb0f95a841c1539129", v: new $Int64(0, 47) }, { k: "1eb53a964b5fc1446d768ca927e1710d27c975d2eba7a085fd80569c106b7073", v: new $Int64(0, 8315) }, { k: "1eba3fc834a7d0df4c06adbda8cb23ee616d9702e3877420ec29481d98b770c4", v: new $Int64(0, 4379) }, { k: "1ebb716b34d13f051f3981360778f0a174ca90197c291c4462113af1fcd4ad52", v: new $Int64(0, 6396) }, { k: "1ebeb8e98136158f847e4786216d730ebc20c50b22fbf7ba8239d570f967e492", v: new $Int64(0, 9212) }, { k: "1ec02e39a4b23e7c923adf209ac25b4a5186257d0b1af40731fec2035afa78a9", v: new $Int64(0, 5400) }, { k: "1ec07fcca71b0a540e4392d146dfe1394533f3790ddd65273748434212f4d71e", v: new $Int64(0, 4830) }, { k: "1ec130f43e51cfd4806e0f176e9c8660ea2a7ae38008d50afae84029a7a6843a", v: new $Int64(0, 1763) }, { k: "1ec19e86fd31b779fd7cc521e1f4e6631833fdf10a331810d12f4cab8df2937e", v: new $Int64(0, 6871) }, { k: "1ec3923c5dae4edf17adc28450b2f8e871c17bba1c3987cba7b22de528d5399d", v: new $Int64(0, 3474) }, { k: "1ec765cd9cbc51c32fda7878bed2444226c1ad60eb746252ceef8e16f80da244", v: new $Int64(0, 1880) }, { k: "1ec9169215258d4a1b61f0779ec797b73606ca752ad793f5872109e0271a96d9", v: new $Int64(0, 5816) }, { k: "1ecb21884381aadae9aa8d021ab7e9cfe3c8498b69aa1317a8a21c32bbd76a75", v: new $Int64(0, 1663) }, { k: "1ecc2aee08d322d0ec68091cabc17efb03b9e8a2adbf1536ef97b3969a1c0741", v: new $Int64(0, 6455) }, { k: "1ed175f9db2cb1955453dd81e8b4f7ad0274e59f767ab24e3e6ca3aa01ff5da7", v: new $Int64(0, 4725) }, { k: "1ede3fe08a8e1b45f256bd6e25b7a9c737f88dbdfc8be921402750d317caa131", v: new $Int64(0, 8475) }, { k: "1ee67c496d1999544c0322fafeb4edab3cc40307b9cdec13bcea52924d690490", v: new $Int64(0, 3310) }, { k: "1ee935f798698c1334595ebb76da8ac20e1f4d035b137fd8701ccdc867899903", v: new $Int64(0, 8495) }, { k: "1ee984ac9f3b4e3cc5a0374c9f007b9a860a582a9e5d3add41ec4ada43625014", v: new $Int64(0, 4940) }, { k: "1ef72993032556564662135a05cf3168b6648bd132f5895601f765dc6caca209", v: new $Int64(0, 6085) }, { k: "1efd5c8483ef81e9ed049592eb05a211ff4614507572727ca699f4f8207c6a97", v: new $Int64(0, 9425) }, { k: "1f0f62b1e8360b9199096833aa1458d49de26d2346f2cfe8ac76cce32328629c", v: new $Int64(0, 356) }, { k: "1f14c54a0d573fc7cc8405b2ee18d2cc556cd47c48dd19451ac402c0ad1bb77f", v: new $Int64(0, 3660) }, { k: "1f14e5be43a5a4155038591076ae2f0ab18eb44ae6e25480d6c1fe86dffa9f7c", v: new $Int64(0, 809) }, { k: "1f16fad36a31249d00e93156d205eaee1536d894a91500b1c622702960813b95", v: new $Int64(0, 1138) }, { k: "1f1c2ee4a7ec2032b2ade968b9c204242a589365190e415060aea9b892ca69e4", v: new $Int64(0, 7377) }, { k: "1f1ce37f9fcf5ad0d2206baf081c0f4f81618359034d1d56d73ca41e5b27a37b", v: new $Int64(0, 7978) }, { k: "1f2158124fa738ac023cba92b2c37617e54a17074499608cc60a45aa9b3b4752", v: new $Int64(0, 1583) }, { k: "1f326cd74ad04fb59d525fce7f2c2d83b902a09f136ba9d213e09ba8ac09a593", v: new $Int64(0, 1627) }, { k: "1f32cb721b1696025ad6ecea8e0d81b42c1c71bfc90e355d9a7474efc3282d04", v: new $Int64(0, 3537) }, { k: "1f338c72cdaaacdcf66aa2fa9d0b947a8bf17c40954ce7a89eafa865c14ab6ca", v: new $Int64(0, 7810) }, { k: "1f3d38e5d368650e92b38b4e7a859d496fdbb1223a6b0dd2dbbc24df45ecc512", v: new $Int64(0, 2767) }, { k: "1f3dac02a31fbf803c9bee21051a21eb377ca16d998081bdec6844e5fe01b43f", v: new $Int64(0, 1179) }, { k: "1f3f3ac3d06b4b390c0dea14a6e54c676ca85ba5ca23077907985a090d5d7374", v: new $Int64(0, 3900) }, { k: "1f44a31fb34cf0a417879ca46c7da9ce710eeede7fe3f15a823fe596bc3863d9", v: new $Int64(0, 4668) }, { k: "1f4f6d6220164e3b9c708a30be6d9d749dbeeed1c27a81e25b42bedf308ffe25", v: new $Int64(0, 3669) }, { k: "1f515eedc733ecd0d841b10e5d37e926aa3b8df556dbb732555c4dd03ab7616f", v: new $Int64(0, 5895) }, { k: "1f5664641b30f0d62d79898d18ad05a51505be4fa180a1909aae038d35098e5d", v: new $Int64(0, 9069) }, { k: "1f5d4a5b95fe3d20c2f889eec6e845c6aa058495552f6dec07da413e64372031", v: new $Int64(0, 7550) }, { k: "1f5e4a6d9ce113a40e711d5ba59c3eb97ed80055be0b31052ce8448672ff21f0", v: new $Int64(0, 8098) }, { k: "1f788fe96665c2f8436f517f1dca9c590f703a43ec98d80d7f7d88910ad433b6", v: new $Int64(0, 8561) }, { k: "1f78fa82684bd869380db8a1ac7b628ad27aaed89427680dfc31f361a6cf1a66", v: new $Int64(0, 5899) }, { k: "1f871babc126729ae314b8280fc9339280d7e7bd0cbdb6513e09f9d42f26a53e", v: new $Int64(0, 9210) }, { k: "1f8a35efad20a7bb970188b2643f5d6f1fe327bb315a29c80067f3c96480fbf6", v: new $Int64(0, 7156) }, { k: "1f903bc314bd4ba5e16a7ea59c1aeae6c7929daf8daefb7747b02315f271c7dd", v: new $Int64(0, 5567) }, { k: "1f90bf2c2a8b13088dfaceea7cdfecdd0c5e8d33625ea5e209a99b1febd52d9c", v: new $Int64(0, 5587) }, { k: "1fa0daf0228ace584e349be00f7cfef4c9dc9e95df88e9d8287376b49d2888b8", v: new $Int64(0, 6780) }, { k: "1fa396cd23bf68b0fa3dbf97109b45efa69ac221be6a00e7b732d9ade8351618", v: new $Int64(0, 1141) }, { k: "1fafd627b91bec4df46cb627857c8b26756d1fbe27e4916649a7d7be06dc74dd", v: new $Int64(0, 8695) }, { k: "1fbb87c6d568ced9b5313ece2886bfdf8380af3427d8213029e44a2fe8fd5298", v: new $Int64(0, 8063) }, { k: "1fd1731a135b822dc6e3d3b351298d06ce4d6c57b0df486c5379c7dad3904c64", v: new $Int64(0, 7707) }, { k: "1fd73f97c91a16466f32bcac7e9c47d19091f89afc4282229b57ba311b3bde02", v: new $Int64(0, 1406) }, { k: "1ff6e4aa53c7fad92912cb1f3245472ae70597f6ae30a4804fc2607cb8e28ba4", v: new $Int64(0, 4561) }, { k: "1ffb3ce6f50f0f39a9dad6c1bb3172e50cad41915f4cf0289603fb1a2e556063", v: new $Int64(0, 8164) }, { k: "200565be4c3564b79f8fd779e1178a782499474e22559be40b1e66f1b333aa4c", v: new $Int64(0, 8069) }, { k: "200be07ca8bc5c35c405dd345ec52527cfdc13432150f17ee6fc89af7c69e380", v: new $Int64(0, 316) }, { k: "2014a00193f55b4745d7d1a5c5bbc780e3e6f917375145a17d36cdbe5c70d3c3", v: new $Int64(0, 1037) }, { k: "2014ae428eeef151d9d63787075c6eb6c5388a1104981ecc468a2d7bbb6d718f", v: new $Int64(0, 5481) }, { k: "20220e925eded21bea109632d7e49d77863b184ea2cab6571f69ed21bcd8f43c", v: new $Int64(0, 5870) }, { k: "20243d04c876a640f72c04de951c222558b8153b53b8186053a4db71d6c825b3", v: new $Int64(0, 8381) }, { k: "202db2917578ff90549f1582dfcf18e65a797b7b663d11ced840572bf4ba7eed", v: new $Int64(0, 5639) }, { k: "203f62556ad121113b341f9bd823525379f66b9ad539240a03bf98a384f75245", v: new $Int64(0, 3284) }, { k: "203fb28153d886c37bfc0a24de217562711054da7613c7ef78d5384165a13f8d", v: new $Int64(0, 3879) }, { k: "2043f48e0ee3cbf07b1c48a0655e948b9cf6fa988aa73e8738dab487da272349", v: new $Int64(0, 1611) }, { k: "204e01b3b2bc0e1e0623bdfcabc8250a1e5220eace1c85732b1d00b3e6a5e308", v: new $Int64(0, 2518) }, { k: "205100e01a6ffc6e9925cc9e637e4b8fa84fffb9f199a57dbb0bc081ef13e010", v: new $Int64(0, 1042) }, { k: "205b0f537994e4754a69d556e021685ffabc6150ec47b726dbce0a7f6ee57dbd", v: new $Int64(0, 999) }, { k: "205dab2b1a2893328c4d2f26c67a4f752561eb11ee94d81a2c66580515adc0da", v: new $Int64(0, 6893) }, { k: "205ea274c3baf9147080164169c66ddcd7ebfef7129f5a41e653e9b26c889510", v: new $Int64(0, 5196) }, { k: "205f3a93b102f5a20ba915a7717f47b600a807eb3b642ad4d8197371bd4f5030", v: new $Int64(0, 8582) }, { k: "2063696c55aa2cecc992055c859fb5028df33375dbdc8b96be0a181c085f21f5", v: new $Int64(0, 222) }, { k: "20660e6957ac307c0e5e2aac148b61c80cdb5044d6e5e7bb7dfabb986fbacdc7", v: new $Int64(0, 9065) }, { k: "2069b9535e661479c298e5c3ca10525087195e0d5d6c2062c307286b0930f660", v: new $Int64(0, 2232) }, { k: "206d484530d34b0a58626a6039d9b100712db0e14401906614714c8bd0212b46", v: new $Int64(0, 346) }, { k: "2074b994b88db0dcec355ed7cceec5ff72464ae0d7150b0ee03fb5ca84287782", v: new $Int64(0, 1473) }, { k: "2077406bf09a3ace4bcbd17427628852c0012f46f4ceea6e19b8aec4da643443", v: new $Int64(0, 8253) }, { k: "20851ecfa346609bfbd243bde2589daf709d294d7996d7d93dff98260a594027", v: new $Int64(0, 5715) }, { k: "209dd427d694844d4e8410e1a5783e148920398ab3fb21ddc17b406b5c884194", v: new $Int64(0, 9647) }, { k: "209e7571d886388af541949b51dd56cfe4ee79daef1d401e53034b64821dc43b", v: new $Int64(0, 5363) }, { k: "20bd0d53bc20595998a8cf1c7ca741c9b55c06a1e3be81f93b18041a5331f38a", v: new $Int64(0, 9285) }, { k: "20be6649978b33e77b9603c40292ca206fa736d9105dfbc505eba7737a7ea0ca", v: new $Int64(0, 5534) }, { k: "20be747e744c6db83a078a312aca4a2aff3b3163fe92993c99d934b6cfeb8628", v: new $Int64(0, 6542) }, { k: "20c59b3c892d621dde4956265f11a43c2e57fa88b478c475017909612f1d79ca", v: new $Int64(0, 428) }, { k: "20d3ce3b22349881042177f15a4cc693ad3c96e4c80c8b284a354fdb1bf7c99e", v: new $Int64(0, 5255) }, { k: "20d740dd956b4ebd98f474b0e7dc4786a56ce12a4e6f9f21c27d9bcf670443f6", v: new $Int64(0, 8334) }, { k: "20d8b886f58aa1826f61e44bf7c80e2feddd1b31398cef73a88f711aefbab1fa", v: new $Int64(0, 7032) }, { k: "20dda7de5f3c58902bcc5e0d371adaada6ae4bf40d500c0412b7f8a142ea3151", v: new $Int64(0, 5908) }, { k: "20ed86f470043156fc37c5d59303aa3782b03a8bfbd6b2a36faa0807a834af12", v: new $Int64(0, 7009) }, { k: "20f1a1152103d0f5c00d5e7f4fb8abf6504c76fd00de6f5ece7d3e2bb9f7b6a3", v: new $Int64(0, 427) }, { k: "21003267c8f81a2c8b9fbc4bddcf53a51b0c184ca41580c04a26edfca1056a27", v: new $Int64(0, 3940) }, { k: "21011bbef73082c2550304409d4d5305c17e7cade421a11b7dd2b196f88022bc", v: new $Int64(0, 2778) }, { k: "2105a1f71a8cdc4820408ce713bb878f95721f831dafe25d3fd3d706da798dc5", v: new $Int64(0, 4334) }, { k: "211a0a4db96edaaeaa4c3eb8936b1e4f38004165f0dd183a9d0b2e3e4eb99453", v: new $Int64(0, 4731) }, { k: "211be4565b5295886f2ff7e4916b1ef4c8b3f46a71d18d072b2b7011d7e1ca81", v: new $Int64(0, 5854) }, { k: "211fef4ed3c65406c4360724581cb3ecde904dcf76683dc01ee69fc6422e226c", v: new $Int64(0, 3114) }, { k: "213a8be3043feb10f892f413ad96bc363fcfdd7e3760ead706e0da404aa18172", v: new $Int64(0, 4884) }, { k: "214ae38b6898b7582e3c34f234140a9a685ddaecef671f35c2422894f142bafe", v: new $Int64(0, 4666) }, { k: "2152828e4b9dda1371ce411ddd085baf4d51e5aa1f7f83b63bbd6a76b0eeebd0", v: new $Int64(0, 7796) }, { k: "21561c80bca51858bba5be2f954646dfacb28aaf8b73e87a9fab04f2c76f9942", v: new $Int64(0, 9109) }, { k: "2159b7d16dccd483a87368dcdd0c3f20a61b44875b618544c705df591f1f9eb7", v: new $Int64(0, 171) }, { k: "215fbc0790d7ac94db131ee8962823f2ddef7310592dc7c34fdb631ffac02d3c", v: new $Int64(0, 1771) }, { k: "2173f0f0053e46b4e3f08d7bc2ca04ea96160ac3c795621f018acf55173f7f3c", v: new $Int64(0, 7684) }, { k: "2175ae0420f6e4030ce8fe45e793d971d0005600b8df76dae4eb2b91fbd4d974", v: new $Int64(0, 1832) }, { k: "217eec566c0c712152cf32c5c1d64f657a2206d571b601ee371944bc4fbb85b3", v: new $Int64(0, 201) }, { k: "217fe88eaf42d1b8f95f90758906ed3ee7bb280f957458853787c43826d32f38", v: new $Int64(0, 7905) }, { k: "21801924021662f40efc1dfc88e6ddf2aa0e4cad668ba20ff461814d5a7354d0", v: new $Int64(0, 9825) }, { k: "21898cc342398cac1667a2e0591f54e3447ec7e01f2af64dd9f071cb95e407f6", v: new $Int64(0, 1951) }, { k: "218e5d657a38f2c7ae471c9cd1f08dca54e11b8a21d48ea16cc304f2016f60b7", v: new $Int64(0, 9097) }, { k: "218f66a07beb83f1b784219b5884bf025722c8a207ad5bf57e5e420b03124521", v: new $Int64(0, 3596) }, { k: "219321ce1aa9f054bb95b513c3ccb2bbd57c2a6121031da4775e494ee400c192", v: new $Int64(0, 7257) }, { k: "2197964f305c1dc4eeb47da4427b2fd785a97fb7ea19b863789fef85d858bb30", v: new $Int64(0, 2568) }, { k: "219c0f1af96aecd08711de60701c32045b4f9c509b57cacfa9c8d9b57018970b", v: new $Int64(0, 4262) }, { k: "219e70d5df2cdf68c6e8c4e497f44d43b9dc47fc54db394a92be372d0510bc09", v: new $Int64(0, 2901) }, { k: "21a21a265e835f54adec0339a5b5b3725aa13930fbe1b98facdfadc9ab49b68f", v: new $Int64(0, 4258) }, { k: "21a3bdca7dee5ce7db322dbf4022caa4fdc38de1c464ff52c7538d5924d69610", v: new $Int64(0, 3013) }, { k: "21ab2c85acade41d44207c0ad4cff73f546ab6587ddbcddd4b6b17b51d337e6d", v: new $Int64(0, 1208) }, { k: "21b3c82b185864cf52b32f69d633967b8ff0e587b098e8d3d48cc788478e8add", v: new $Int64(0, 5326) }, { k: "21bb0971bfe42e007572f6759046c3a33fa4ac7e2f9322a9732578fa6cebebd3", v: new $Int64(0, 6471) }, { k: "21bcdcb6c8da25b69ae76832d1515013c5d379d95fa400b6d3e6817a256464e5", v: new $Int64(0, 3049) }, { k: "21c7203354aef756038de7c2f6c47258256f2cf0cac369cfc59b1d15998eda50", v: new $Int64(0, 6609) }, { k: "21d2d09cf58a117ab18e7572c100e27f9fcfb135bb85d9f86652d3088a071207", v: new $Int64(0, 2741) }, { k: "21da66d3362a241b7b4d6ad8902a96e3c997ef30777e41fc87cf77a5a4b2db0c", v: new $Int64(0, 2520) }, { k: "21e7131294900f424377b14f768c34192ae56f6fd32d809d3d3e6b399ab9eb0b", v: new $Int64(0, 5802) }, { k: "21fdb860a836d82c0aea192ffac600333962381604806c31b80c78ea4ec114ae", v: new $Int64(0, 1115) }, { k: "22109d02505e91f39a35be44a13c45cefbe6cfe8ddb921d38710053daa49bd3d", v: new $Int64(0, 483) }, { k: "221ca9d8e2b24684580b70cdb4eacf9f31202a9915c6c99979804883c7543f56", v: new $Int64(0, 168) }, { k: "22205d339e6aef11258e9506fda56df23aec6de175a34d4011a9b3066ba9b0f0", v: new $Int64(0, 9698) }, { k: "222f3c71aa324e1cca8fac19ebbf73b219daab929ff5254766cb2be38dd8ccd9", v: new $Int64(0, 7675) }, { k: "223bc60c3e1fdead313261d9ff66be25cebf788743e579ef418e994373a50d8d", v: new $Int64(0, 5529) }, { k: "223eb481b2ae78868dbef7ee5ad8a4219df5736256b530bd84d330c236eece5e", v: new $Int64(0, 8958) }, { k: "224be2682382e79ef67ff08d5d61b37015a876e178ac5b8b420babb91d16febb", v: new $Int64(0, 6073) }, { k: "225055f2eecf6e06fd4c6a0590fdea942d10dee27dc46769abcc0c10bd8d7cc8", v: new $Int64(0, 9336) }, { k: "225497db34e6f5b25aa7a5f61b765ced23e0483a39fcc290437670dc8b3ee366", v: new $Int64(0, 9763) }, { k: "2266ba4a280b92e26ba385d542e120782d13e3a36455eb145e66a5285d711666", v: new $Int64(0, 7987) }, { k: "226d3e00417aafa00886a7d95079f446092d0d7912b94866e70f52c2d4a0a90b", v: new $Int64(0, 5273) }, { k: "2287e9e1cc11f5ccb05efcfd754b1f944d87a688fe1b12577f650897c959997d", v: new $Int64(0, 837) }, { k: "2292c0c39fca94d4d38203be0ebbded9d8028035baa397eb61145ea685630287", v: new $Int64(0, 8391) }, { k: "22b0258fd7f4aa57134a2e97bf2b8e083aafb24e1f87cccea9c2cdece87cf593", v: new $Int64(0, 5438) }, { k: "22ba4b273218f24358dca6ea6e6d0fb2cd4ab333f34c7f2acf418fe0a0c8f982", v: new $Int64(0, 4026) }, { k: "22be000814c70c19d79ff0819c94aab8b242d3e99e44dc9e486804ce81ad250b", v: new $Int64(0, 9191) }, { k: "22be12fcc4161b9a90785478cc83a3eec02cd50fc00be2963454ae68d2072bbd", v: new $Int64(0, 74) }, { k: "22c91dadca0c484cf330012ceb3165c83ddc509072aebd0f224ffd0c50c66c25", v: new $Int64(0, 8554) }, { k: "22d1513af51e4db89ca9c6c83a90955d480198a4bd0c05529722a78e8512f4b6", v: new $Int64(0, 4553) }, { k: "22d274343dc85e591b6c1282dd5e77aa60a25a3fabaf5d73697cc3d2e801e07f", v: new $Int64(0, 1233) }, { k: "22d7371572288636216b390bcc89f57284f624e5f7515d4af7d1c8afc4977ad4", v: new $Int64(0, 237) }, { k: "22d76eb6a8581c6fb5e53ba30cc701c4c0eb61eb9276e85053dd95db64087979", v: new $Int64(0, 335) }, { k: "22dbb59691d11f3d69e7fc22fc014907fb06b31988c4e24379999f157fadf536", v: new $Int64(0, 6008) }, { k: "22de8c376f78628ac3c8a1851299aeeff4bafb77252cb77be08d18cf94b165e1", v: new $Int64(0, 8628) }, { k: "22f25af52b05cceadc37fddbb383539bc8f4c418415f07cc5f0b2a892d597ab6", v: new $Int64(0, 6305) }, { k: "22f70a66d311053f859776d95d775098ce0056c3d12ed6dc5c143f5298ea8b65", v: new $Int64(0, 4966) }, { k: "22f9649644c981ccf68ebd3757a24c57bda6f2d70e7e7b764e63c42d76de3092", v: new $Int64(0, 9661) }, { k: "22fa7aa5b4bcd37fe635583ed114736e8133bf223d8bd6e19d765b9435c2dd3b", v: new $Int64(0, 2394) }, { k: "2304c834f17948532b5277580b27e671a6907b6ad9fae89a7aa633959062c466", v: new $Int64(0, 4084) }, { k: "230ac174ad72553b5b9c94bd9dfa5cbd31262456d43bef8f0d1d1b8ca9f64290", v: new $Int64(0, 928) }, { k: "23107e1bb9fad0ff32d45185ce4e244add297b0247b94c68ef5363d54d5766da", v: new $Int64(0, 6666) }, { k: "231261eca7424304fa39c6c9ab705294d48c893c02db7a0e4cac7186024e8058", v: new $Int64(0, 881) }, { k: "23136c7fa4faa5e5459e00b2ae80c4ae4372e754a50a5611284e257a751995d5", v: new $Int64(0, 8318) }, { k: "2314bca550b14d94e85a661b7da06b73af554843c6cf23f90c7ac12c47729fb4", v: new $Int64(0, 7682) }, { k: "231822e46984a6345860221809cdbbcc153821c94be669d3086ed366842bb9c6", v: new $Int64(0, 9384) }, { k: "231ab7e3ad2a575b665ff55ad14f83a077a01839f2f2636ff54cb52edff11c26", v: new $Int64(0, 6676) }, { k: "232e32a62f6426754af0a4df1c018dc26d0cd936bd74347dc0e2bd405b9cebcf", v: new $Int64(0, 3255) }, { k: "232faf67e51f275e47d449ac990d90b499cd6d168b50d4f79a72aa57499fdc79", v: new $Int64(0, 7584) }, { k: "2337825f7cd5ba84f74693109f8e7ee061c3b74514c4c0e95ca8391f09e4d093", v: new $Int64(0, 3754) }, { k: "23381138dbda3f245a5e40a1d95864b319487f17a22da2c4de4c5cc180521e1a", v: new $Int64(0, 6463) }, { k: "23387523dd2bda20d161dc397c5e53beacc86fd46a54fa607dac69410331de2b", v: new $Int64(0, 688) }, { k: "234e54b2109441b6a2c8f9f4a45e830be4a341beb136d6ba63e57fcb2b8c3d6d", v: new $Int64(0, 9783) }, { k: "234ea80f63038fb1256b6f7508393681354bdeef87589f3c39f9c259d7fbd066", v: new $Int64(0, 7363) }, { k: "2351706132ddf9fb3f8241c3e8f28da3aa35c282841df28288f4483bbf2f3a35", v: new $Int64(0, 2813) }, { k: "23578e7df0477c825060fcfd0046914645803286608fcf0c8fb855bd8d74ab95", v: new $Int64(0, 5193) }, { k: "235c2bde63fe622eb919f8ec781f31c8ce6f0243455b0f5232a2fba7d99de63f", v: new $Int64(0, 3102) }, { k: "235c4c1576f8e3a498315461d3742b3acb8148d5160d05722aacd7850bb7e1cb", v: new $Int64(0, 7966) }, { k: "235d9d7338ae8a9abfdf7e3cbea56fe48076a286ce1e3a9c696afdc0dd87ed3f", v: new $Int64(0, 6900) }, { k: "23608583266b7f8e5938857ef1aa0da3284d4e363d2a51e6caf1c3ed77fb7894", v: new $Int64(0, 8352) }, { k: "2365586923469c12260a4f0f69b402656dd857aba49c1a4b53b558c6892f5a0b", v: new $Int64(0, 1605) }, { k: "2365c4c92378f398490d24482874e645663de04825284932f04a4d9bb22a9d0d", v: new $Int64(0, 2391) }, { k: "236d7c7954b5b2d41a6cf872a7db716c54650a473e19611acf05a57a63f15f71", v: new $Int64(0, 3881) }, { k: "2370b6918bbe4e6dd66ca424add0b004757e87a0c53469dd9d17e15a4ca535a8", v: new $Int64(0, 607) }, { k: "2373c62321a4fb0f5e70ca4c7c732ec7e65f29fdb35479fe3097a8579b2b19ec", v: new $Int64(0, 3450) }, { k: "237670df958d3a734b8d4155d475734dc49d2ec6b17f48d31e92f9911fc57c97", v: new $Int64(0, 5713) }, { k: "237d14db1cb46082a9762dadc0ad2865d00d2dbe72d4fcd8f6df1c5b7cd32105", v: new $Int64(0, 1759) }, { k: "2383198ae697819075eac5b5498465e787cdf972e04e6d14fbb7b7502f2c2de7", v: new $Int64(0, 8263) }, { k: "238986bbce413de938200ee40255983d3028df114bcf993973a4eba04c337547", v: new $Int64(0, 1833) }, { k: "238b74d7d2f451b684320ad56f5901f8c95a47e771608c1cd3dff144a646dacf", v: new $Int64(0, 8329) }, { k: "238cefd437a14f1d7a3a39ebcb4124df96f2d028e3dbba07eabc165ba844a9dd", v: new $Int64(0, 1403) }, { k: "2398157f13336f7feb9f31630310a09fd976954565f254da2ddd8d3c538e3a58", v: new $Int64(0, 3380) }, { k: "239da605dbbf429f526ad0e84c132bb01969df739cf16f4d64c6565a80d79167", v: new $Int64(0, 9958) }, { k: "23a1688aa6e950e3a1a230c501ad67e2ba5186adbb603f5ad884993d2f4c4e67", v: new $Int64(0, 7526) }, { k: "23a1c54187d4c90e8fad9be98352d23dbb2e3ed9c3e1aa334a303f8a6b9bef4a", v: new $Int64(0, 3406) }, { k: "23a8313678b4e3fd3dea8c7f95b1a80402714e0a2ab77299c5a56ae1ebf4b7c1", v: new $Int64(0, 1803) }, { k: "23b3d86e7dd3ae1536836563899b946a7ff19fb671b82e3d001044597e7bce63", v: new $Int64(0, 9434) }, { k: "23b536f5f246184e9758db700c19421743a0127400cf8c890b1475befb49274a", v: new $Int64(0, 889) }, { k: "23c2735d381a51734b9f055712861eff77f39d6d02b572f0661853085aad39b4", v: new $Int64(0, 8232) }, { k: "23c75f4474eb1cd2a9915af28ca16245ce6cfaee27721af35438010430604f11", v: new $Int64(0, 980) }, { k: "23d62c0fa77c5825b10d1a81dd4ab860773e2c4fbfb90765a6f147f4b4dfee4d", v: new $Int64(0, 8689) }, { k: "23dd3d7ee5dc01b55f5fc978d68bce92fb88b667fcc5fe16a4310c5750d5eb1c", v: new $Int64(0, 3959) }, { k: "23df0f290277686f81c7cafe06eced19a1efe80c3f5143ffef8102c9f7025fa6", v: new $Int64(0, 3028) }, { k: "23e3f2c120a2f6c1fb72926455dce9e31aa27172bb7d2145d32b5115bd526d1e", v: new $Int64(0, 6745) }, { k: "23e86882cdc0d6df53d79c12fe281863b43d9f1781b3573f42f9ba449227eaea", v: new $Int64(0, 7679) }, { k: "23ef24e12cc3772b783690263f81ea3f1570484f275ef04b6e7444272525eece", v: new $Int64(0, 1456) }, { k: "23efd818dfacdf49c29d55c491f3caf553a33a48e77d9377a8202692527aa394", v: new $Int64(0, 4093) }, { k: "23f7d09cd50312741233262d2f06ab0ecf72462ec4898b4e84de1b804d015795", v: new $Int64(0, 6095) }, { k: "23f7ea4465a11fbdc34cca9bdaecec18d7ea3e94ba49f116e058adeb6c9d360b", v: new $Int64(0, 7235) }, { k: "2400e80f75c30d311999db0543e4093eaceb5382128c21932979fd56d9e26621", v: new $Int64(0, 582) }, { k: "240102041ea4bbd00e63bc871e550f440b53c2d901b30546517ba9d523aae823", v: new $Int64(0, 7844) }, { k: "2406cd811aca4afe03bb33f15c173d9f7aa5824658bc61e3e16a61c1c4b7587a", v: new $Int64(0, 8262) }, { k: "240be3bdae227e3f6c596114f5f351fafe6cacc0b017d720a2c7415dad4f73a4", v: new $Int64(0, 2065) }, { k: "2414747963d5a25a9b9356ffdcc07a59244971845fd07459054093775c0dcdcb", v: new $Int64(0, 9294) }, { k: "241e5fa9c46b6c22f3008da673a4880573a0f5a7d0f4bfa31dbd38d25b23174f", v: new $Int64(0, 2085) }, { k: "24201ff726508bee2e9423840c6a755858188bdef484507f9e29a71d8385a576", v: new $Int64(0, 5786) }, { k: "2422fca2bcf36914d43acd9421285b23b936069b83523d16b4c6bb07c7ccf14b", v: new $Int64(0, 9190) }, { k: "242461e6f6efbfb4f352bd43582bc3474c1dbf2efcf076fb5791645812043b92", v: new $Int64(0, 7478) }, { k: "242bb18d43f66dd14a63c6f457be72eb1ca4bb0bfd28c7d19b99410261cb9957", v: new $Int64(0, 1399) }, { k: "2431b8a124f6d63e12ea1ba69883ad2ecf887ff7fce26cbd4f80a23f96f38477", v: new $Int64(0, 9123) }, { k: "24375888886198dafff85f90c923902394a8c5e3714c880bfef88f76be9e75a1", v: new $Int64(0, 282) }, { k: "2439991a56683453ea4a27d22786b54256b8e4675df8d42f4023f7d79884defc", v: new $Int64(0, 9002) }, { k: "243a4fedaf2f6f4dcc3a30f67e9264042bf5bb2322e789b1a3200f085d015740", v: new $Int64(0, 2633) }, { k: "24416b927027081ca421ecdd6a557f3259239854ef49d0baed430fe5a64ecbde", v: new $Int64(0, 5967) }, { k: "244606eca212d97fccb42a71938725e98cec7b177071679ef710e476d7de7f33", v: new $Int64(0, 1172) }, { k: "24474407fc4fbc4e133e5d2e5dee4e9d3cc11a18d5e36d065f4223a42a63be2c", v: new $Int64(0, 7615) }, { k: "244efc138ab265be935c344969f64d36d880472164f9e7fb71c71fa0bbec74cb", v: new $Int64(0, 4054) }, { k: "245a108ac5d8824cd19497db1d2511e435a6fff3f0b9ddb9302450ec67457dac", v: new $Int64(0, 5433) }, { k: "245f97b8446a5aa8e5ce5d536665cecdb3d2e0523fc04a7c4296de2c47c9bf06", v: new $Int64(0, 22) }, { k: "2469477b8d8b669da3e0bca9c0138d773693b210b6e2002292117e1ed70a272b", v: new $Int64(0, 3535) }, { k: "24711a44b1ec61890a84ccd5ab73db60b8dba7ce3a7de47f74499d76c8e5a87a", v: new $Int64(0, 4786) }, { k: "2474fae5f712cfad4d9f0910b22020c58da9a423c49853daa68176f909ad91a3", v: new $Int64(0, 7054) }, { k: "247547b5469c80f9a2b7b708a1a7b96a660620bc04152d3d1437b01b5b6b9659", v: new $Int64(0, 2799) }, { k: "2476d0504d524ba9b6ef7deb698b62c38420e1c4cf9e76d95f3e784cdab7f27c", v: new $Int64(0, 4753) }, { k: "2477cb066c8dca7868a6b7d5af849ee89c0748bcf52cff9bdfd8968a296cf041", v: new $Int64(0, 8366) }, { k: "247f67701eb56946039f2226d0828613c235d0ec698f02c5f754c43ef5cc7105", v: new $Int64(0, 9909) }, { k: "248d05f15b623bf07bd86a024eccd66f17c75c1ee0e82f46f4395face925fc8d", v: new $Int64(0, 5018) }, { k: "2494155fd760ae98abd408f98ad5e36158137cfb489a6e65569a674a21af0e2c", v: new $Int64(0, 9529) }, { k: "24a6d57158a8ebe2fa7da8cb04b8c44cb619fb8c73b7c5d671be3177e5880806", v: new $Int64(0, 3489) }, { k: "24b33873219338d707dfebd9e07accdf81f8d7ce0b3b9902a746e07c93a58773", v: new $Int64(0, 4470) }, { k: "24b5e3609931dc3b0245df49cd560ae8f4fb2f61b5848d638c6583b85fa95d48", v: new $Int64(0, 5774) }, { k: "24bb7ad0586edc3c2b212f74a24257faf2f0c14445e7435eba44c2b11373fe78", v: new $Int64(0, 9929) }, { k: "24d27334760c7177dce410cc81ccec3c49676eb241a2b0d8e5b39d2d74c8503c", v: new $Int64(0, 738) }, { k: "24d6711c2ab8b552da4b54d2d31fb43438c9826b678a5a95c35fca19bfa72d21", v: new $Int64(0, 3789) }, { k: "24d68e7ab5180413007fba81a758b2e636e4929e1ae6ed850d9f9008bfa4fcb7", v: new $Int64(0, 1294) }, { k: "24e79c0ad819389a742df4f88c9f38ddeb449114bd6b0396c16f472ff3c5657b", v: new $Int64(0, 6288) }, { k: "24f1250b6158264ec696ccf02619682d73372cdf47c6c19d71ae3da7548aa3f7", v: new $Int64(0, 3707) }, { k: "24fba03ed6006dfbae1625015b90e6d7646efbf00ce7f5302905ee1561477578", v: new $Int64(0, 9487) }, { k: "250d735e395d2ba19552fae0552db9f6eacad1fb08efe32235e112d86bcdfa70", v: new $Int64(0, 3427) }, { k: "250e4efdf9108d5c5a393f33c6c897ba255ab43a159b937c3dccb2a91a8bac75", v: new $Int64(0, 3288) }, { k: "2510c0b4f4390a226503eb484014fde37295ce3104c1f444ed285a9b2b9a14fa", v: new $Int64(0, 8331) }, { k: "25119f354c104a6fb0028aaa72aa577e556a2717b8c534664aba274c5c5ae559", v: new $Int64(0, 4409) }, { k: "251431ac0c6263545ad807535618b44a0591e818eb21f36c449fc12ce0a49be2", v: new $Int64(0, 3488) }, { k: "251717bc55e8eb6339b7edad983a7e0f8694f30dd395182feb202ac1dbb1e1af", v: new $Int64(0, 1066) }, { k: "251c21f6b512b67a60257a53d9e78fab936b1e43b7624d40dc3f3f01d7ef9352", v: new $Int64(0, 5074) }, { k: "252bf6270d2bf81285e28e2cd89b9ee517a719c1798897458f93f306f5ce92ed", v: new $Int64(0, 9727) }, { k: "252f211780ec66fd90bfa952c3f6f3857a5b312cda62a445720a47a22fdf2eb7", v: new $Int64(0, 6466) }, { k: "2530437569c061c00c6d4dc8839c1756ce5770c8637c7a366b23e9091ecf1f19", v: new $Int64(0, 386) }, { k: "253a79394546b95bb9ed18acd1ae1976ca495b2eafce43febed493f4baac3caf", v: new $Int64(0, 3313) }, { k: "253aff8e37c559bf3ca899b8844475f44c503a72718de566898825ac4a81a8c2", v: new $Int64(0, 6106) }, { k: "253d973307b416361a2af11ae5190c9cfe32056cc9ae2b24a94070096b73841b", v: new $Int64(0, 7304) }, { k: "254d516a167c05b03b1b41304d76f6bb06639ceb337b6955cedf687cebc0ceb2", v: new $Int64(0, 7902) }, { k: "254d58576f666a7f32746bf7da2b30ba3dfc1efca9e39c0194d37c20478d1063", v: new $Int64(0, 6621) }, { k: "2563c796dc914a24615b3c3e69775201f0667b04694bf9dc1f1d2744930db9b4", v: new $Int64(0, 978) }, { k: "25662717867db3dd7100ef9a6932c99100b88c68bf28c0c2bffd06d828b75d06", v: new $Int64(0, 4825) }, { k: "256852d1e38ca4141ccfa1744dd60b5fe29c9496f270e71ce961db107032d162", v: new $Int64(0, 5390) }, { k: "256ac16549af058b27b854be76cf0a3a4d2c2c68fc6281693226260c1488e184", v: new $Int64(0, 9624) }, { k: "256e58a03849ba4fb72188f8047d001516b4f66155e83ee32c463774a35fe675", v: new $Int64(0, 5259) }, { k: "256f4c5f319d158cc6eadbd6c8e3be04f909b0e7ffec8b77547f9d194ad6c3ae", v: new $Int64(0, 7856) }, { k: "257271288eea9e50cade72d5b12c6c60c6ae5fbcdb4dfbe14147daf5a8c115ee", v: new $Int64(0, 4821) }, { k: "257953ff945f95119dcc2c140caf604427d9c22078e83b4eed52c4ee00421a73", v: new $Int64(0, 6618) }, { k: "257bc0e70ef5b5463c21e9d05b0c230189ec769c9da1f05d3fbbef06caa4c4e7", v: new $Int64(0, 9330) }, { k: "257c84bef939967e37991c7941c8e7e150540482d5856f384156b56c762a5299", v: new $Int64(0, 588) }, { k: "257ecf303ee2604dc5a6bbf26dea6e6536c8d0cf4d2bc10040ade905ffd35698", v: new $Int64(0, 8948) }, { k: "25800ec1d13d23ba57d46d4bffa857199666498937cbdedaa1a922cfbec495b3", v: new $Int64(0, 4626) }, { k: "2585212d1c61a3dd5b00d241b3b7c838509cc8aadeb1beeb5cb7d69e697c1d4a", v: new $Int64(0, 798) }, { k: "258be642a6bdd79e7af753a24e95304cf40f42d6b2468fe4f1030fd695cc6305", v: new $Int64(0, 292) }, { k: "258efe3fa0270d94430363f83048bf52e1a7f5e5582af23eeb9e2ae75391b24b", v: new $Int64(0, 8738) }, { k: "25922e93fb07c84fc6e2f7fdd1209d455140877007d44458a6b6c7e793553f9f", v: new $Int64(0, 6571) }, { k: "25941128736475f070794ac4b8722a9ee35a68a543b4510a919c1f96616920d0", v: new $Int64(0, 9857) }, { k: "2597b53bbcbb6dd34cb1f90aa6585a624c5ef1dd06b34878221c312c9af7dba9", v: new $Int64(0, 6218) }, { k: "259924eab62a4b10f2586d51e369137e0eb1f8204a22c50940b49efb7d4e8113", v: new $Int64(0, 5515) }, { k: "259b06516a412029f7b8ff2d653a7ae40829f3b80aff063bb3d254e11746b7e7", v: new $Int64(0, 2368) }, { k: "25a3fad506dc1f43c822a4040dc7daa1dff46d24a29c72fe26d73d381aa1bfcc", v: new $Int64(0, 3938) }, { k: "25af2e79c024c0784c2331f38b659b15db500de58941327c56141b726a3eadc6", v: new $Int64(0, 5073) }, { k: "25b0ba83b45e23c468837cda743e3bd80da6150c48a8a226154b9f5166122954", v: new $Int64(0, 9853) }, { k: "25b50fbfb0b0efb70c2cfea6843709fedb1c97914a245fccc12ab1d39eb041ad", v: new $Int64(0, 3320) }, { k: "25b529dd2686208d74e655cbdfb46146b0d4e39b9bc13991870a871a265a4e8c", v: new $Int64(0, 7509) }, { k: "25b8bde350c924d7a5dc47cfd0f21583b05297ff2f3dd338fda428ac9d34979d", v: new $Int64(0, 9195) }, { k: "25bb52e3cb761bc621bf0a6668ad782f07ebfae5fcd4253bc35ce5d7e0a7a784", v: new $Int64(0, 5275) }, { k: "25c70dfe858116a0489cc00e81c5e005e91318b3645d807b1217fd89f187e19c", v: new $Int64(0, 6592) }, { k: "25c94fb3f89181c1eccab23c56c78eafe579e9d8d011259d0a2cef1ce7860f3a", v: new $Int64(0, 3827) }, { k: "25d5817dbfb3259d714d7c0b496c960f64430a2bef4c320fc237a47347fbb360", v: new $Int64(0, 5616) }, { k: "25dac55e334807b5df2b1f42d088f69a6145dfc37dbb0a591cb4b2cf6712dc22", v: new $Int64(0, 89) }, { k: "25e82a153163e9484ed85a84101a23c1ad71cca738e7d9560553427dfc00546a", v: new $Int64(0, 3353) }, { k: "25ea0ef5d41f4b297c442c24863f64f94a70b75e9f47a974284c9474c4098279", v: new $Int64(0, 9687) }, { k: "25eb706503f53c526c44c631c2e8a175fbe3f6ce17d301c12bece730a5e9d53b", v: new $Int64(0, 1634) }, { k: "25ec4469bd5d7c470efd9255449a63f456342d52960c04ea6e02ca9d517d7c9f", v: new $Int64(0, 7963) }, { k: "25ed4d4ab95190747fdea3c1ec3b5382bf51a40b10bfddb8c43e6b7a2650a3c4", v: new $Int64(0, 5771) }, { k: "25ed5dfc2c0f574873a6f4f0c2d6e70acf7b5734938274a37f31d28c645bfaa6", v: new $Int64(0, 8144) }, { k: "25ef4a061b7e383576f0b386eab9199fb049e8a1737881d1923423093c8950af", v: new $Int64(0, 6200) }, { k: "2607b8f8bced4ee020ee64ddfca489d5ff388691bae9c58eb5f9cd5ba950a075", v: new $Int64(0, 1100) }, { k: "2609da17af95d6fb6a190d6e5e12f1994caaa86f7986f472280026f9ea9e19bd", v: new $Int64(0, 64) }, { k: "260ac78a4abd43e8ac8e563c2c05cb3be64699ab655c4b3a59ba9ac713cb425f", v: new $Int64(0, 1961) }, { k: "260d30cdca20696a67694632f7d8f0f9c5907ac8fa2a23c2127501fb75135dc8", v: new $Int64(0, 3755) }, { k: "261b97f2751ac0e869f4fd819f0ac416fbe7c6f8dfb3b5b045e516da58065056", v: new $Int64(0, 9553) }, { k: "261c71ca3c193df7021af0c2156b058901e0db78716cb6c8f1f07887870fdb00", v: new $Int64(0, 6485) }, { k: "261d6950156190b24edfcb696522a3ce8e82eecde9e3d4c67eaea6d037935e10", v: new $Int64(0, 8686) }, { k: "2623116904902052f01106a324519c34104a25d399ed1632046d73c3d0ff7aba", v: new $Int64(0, 2119) }, { k: "262348ffe815321e634056d37397afed42472fd440a61ea2ed670af01c10865c", v: new $Int64(0, 5476) }, { k: "26423643d6c7c9881a598773795618f4b31bb63e562ba490caf44fbd43782a96", v: new $Int64(0, 6027) }, { k: "2647a027dad29d165755c4e55f7f41c3b39b574b381740ae4a1426a3dcdcff85", v: new $Int64(0, 148) }, { k: "2648ddb5abf6f4d618b3a79d65c2e0468f96ec5f00951957f27214f6bb739853", v: new $Int64(0, 5960) }, { k: "26517efd96835cf01361c000e450bfcbdff24f47e0b52c0d5b60dcc2226e0f57", v: new $Int64(0, 1561) }, { k: "265ac5372f75c0f8ce8ffe0be8d478bd8ae9b87d3ad4234767cc206db1233c1a", v: new $Int64(0, 8800) }, { k: "26658c44501d0ed109581f5488a2f75d2770c48c88f31b2321cbeb722032e123", v: new $Int64(0, 3584) }, { k: "266a2a1ef432ab01dfaf91c0e747467b08d6a461e24b3571291cde2393c7025f", v: new $Int64(0, 8348) }, { k: "2672d6ba687c8a8ccc9a4b9b1284a3c89684b3d8684bc0ec0f6d8aecf9ededcd", v: new $Int64(0, 2115) }, { k: "2674bc956b5a7b95127e9c44b2b99df57fc7644ef071c4280fb0f3ab6e730aea", v: new $Int64(0, 6464) }, { k: "26789b7e7a040726a3daf8cab91d487196549b1efa8c28dedcd235503625875b", v: new $Int64(0, 2574) }, { k: "26838112b6b80d20afc9d5d7bdecea1c8ed87bd59a4710ad09f0dbce8bb63acd", v: new $Int64(0, 3216) }, { k: "2686aede73774937565face83c81f6f49fc3e26aa468c5e89c44e789c71b4935", v: new $Int64(0, 1545) }, { k: "269f4986d77990e72843695d741414526b868587d5e1d3ec91578501e956b3f8", v: new $Int64(0, 5187) }, { k: "26a3652e8978758cff0eb582297920ba1bef50686207f243ef9e37fe6c920016", v: new $Int64(0, 6321) }, { k: "26a85a948ddfd534d4bcb8baa56d1a939cb16ce8440f24edfd85893e3bd9e831", v: new $Int64(0, 5648) }, { k: "26ac991553198654d3ee2b6ea24b36735a829cc73705df0b0d943ceea8aa5ef6", v: new $Int64(0, 9118) }, { k: "26b96eff72c1ef09cef0d391d96d18919eac548ed34c72207b7f10f9e6082634", v: new $Int64(0, 2442) }, { k: "26be422d5b6048a88077b982a296626dd15a62cec5cb5b13e2d1d631a60c4318", v: new $Int64(0, 2006) }, { k: "26c782bb87ecf88f842f29fd422ccf4d127d9d423d7c90b7a187dfbb3553bacc", v: new $Int64(0, 6687) }, { k: "26c884b6ed882a461aa31bf38f25646822dfc716d4352ee21803a112ba467837", v: new $Int64(0, 658) }, { k: "26cedf5b3ef58ee2dd317bcbb89cc0a6fcb431f6015249c3af7e7c412f30cd3c", v: new $Int64(0, 9484) }, { k: "26cf0afb2e7230fd90e19ca6c1d02a77fac1aebfc0e1eb3cd9c4597b8bcec20e", v: new $Int64(0, 6649) }, { k: "26d5a06c95a6105ac6998731fd143f612c75f309c2d63fc13c7a1ddfe888578f", v: new $Int64(0, 2037) }, { k: "26d762b741a4622f44d1b8e9cb9e73447adf65db48e6cc01a6f5b3af01798f1b", v: new $Int64(0, 6458) }, { k: "26d9a200438e545c4398f0e3019f78b0f28699d700e3735308bf2e23785f5446", v: new $Int64(0, 1086) }, { k: "26de7a9f423d67e7d8956300ebf3fe128c0c17e24fb1bba119924e58b33f4bbe", v: new $Int64(0, 8001) }, { k: "26df48e336fea2a2031b100540543c31c661c50697fa4850c037ddcb542c357e", v: new $Int64(0, 8631) }, { k: "26e4113be48acc1f24fbc63f4988f84666a6e02460d97f0ad108edb72ceb594d", v: new $Int64(0, 1118) }, { k: "26e4f9935491bd6d51eba6c9909d563f9840c27780245451b29c50ab95dd7a85", v: new $Int64(0, 2426) }, { k: "26f1d137114bb5a00499e6542d91aec371fbeb00c526e9c00764338edce5b40e", v: new $Int64(0, 462) }, { k: "26fc15fdbec3c41c3d114d05d7976d139924b73c732c42c4856681ba9038a744", v: new $Int64(0, 2193) }, { k: "26ff91f96eb43d3f2e678118511612225d6149a8c450f3c4e23b8db7d127df63", v: new $Int64(0, 763) }, { k: "2701b4352692606d09888382d547b87da5939024a08d8c462b24f5eee464497b", v: new $Int64(0, 3767) }, { k: "27031f17e86f794b71396dd706d0aac3d50cbf5bf4223cd2485ca381ef4882c2", v: new $Int64(0, 8950) }, { k: "27067bfe955338ed12ee38290950de1d455b3bab45a6edccd39d9b721257e4ed", v: new $Int64(0, 7027) }, { k: "2708c260a4e09a991f310b6e272f699c28d98ec9d812fb00c4803c590aa49c7d", v: new $Int64(0, 344) }, { k: "2714a8db24d4a29d30bab7a38ca7a02b89e8f224c4bb4a4210bae2fb2e3b3aab", v: new $Int64(0, 2431) }, { k: "271ca41f7c64ec2da46abf4e4dbfdb442de838907bf5022143716f4320ec7c13", v: new $Int64(0, 6839) }, { k: "2729a5937b72238c5278dc97160dfc5c18839f87408d75558fc38ee3c9473d50", v: new $Int64(0, 6870) }, { k: "272f4a6c6602d63f1c5c303eb0d0aec30fc01f2300712b7e34b52249ca833f54", v: new $Int64(0, 8750) }, { k: "2732797adcb4b08538709ce47411a321178556b62f2e640d2ebfa789da3d8787", v: new $Int64(0, 8229) }, { k: "2739b8a92fb1583141bcf8254fd5a78a23925a3b33d5911306592d6be766372e", v: new $Int64(0, 5691) }, { k: "273e22f4838c6458b403296bf1ae5e2b686350e38a90822e0a595c8ac940ce34", v: new $Int64(0, 1213) }, { k: "273e56cdee6cd8c3fbcb19cc412ae8b88b39568ebeff9f8154a65479723b1362", v: new $Int64(0, 1344) }, { k: "274121ec8ebaeff15b46064162bfbf3e84928070ddffe5413d28bc4a8117ac26", v: new $Int64(0, 2183) }, { k: "274170804c1e01cabea4a43a8366f07dac9d1071fb850c4203d085bc185c2701", v: new $Int64(0, 8877) }, { k: "274205b6b2eea5012b0957a0bccb3e715622c661b6261df7029bb776d13de226", v: new $Int64(0, 9269) }, { k: "27496914341ed90efd2575e5b961264bcd7f26da52bc86c8a0cd317e1ced4702", v: new $Int64(0, 1758) }, { k: "2752fdfc4b7d6b7c8844e2de43dcbc387c1255c7fd65b786e4903e16c255cfd8", v: new $Int64(0, 4781) }, { k: "2757d0ad81ea883d4e4021caddc99e83dd0cedd1edb92089cc10d18b48d5d68c", v: new $Int64(0, 1931) }, { k: "275801758f993b52573ed83580fef357302f4bdaddbf9baa8d94bbea789abd32", v: new $Int64(0, 4929) }, { k: "27586ca70843e4ec0e7e2611adc4f655253f74426936a28eec4b3f00c22ea942", v: new $Int64(0, 2902) }, { k: "275e098ed5fe70e4d44a725999dbd5dd516f63e767d91040c323476b376101f4", v: new $Int64(0, 1419) }, { k: "276c3a29f45e7228a61681afdf8e6d0b72134dfa381ae0cb2223db33eb6221b8", v: new $Int64(0, 139) }, { k: "276ce4cbfbb35772b04572da349d5dc548a34e5fb49ad98cf82bfa5f20f76b1f", v: new $Int64(0, 5083) }, { k: "27819825abaae71f3c45fa56b12bd0ab47d69ba91262d7a9b8ad66a7499e1c25", v: new $Int64(0, 3189) }, { k: "2782095462abb47314dcaaea288dd11200760ffd2f8b89d72ec17faf6acb34c1", v: new $Int64(0, 3093) }, { k: "2786c3f64fee8f18cc37426b59460f1219126ae0ed82091ce5b2580bb05e645f", v: new $Int64(0, 5750) }, { k: "27920fb4f5dd7c82965b9b9db8dcb39d03dae5285c228fa997759d62fa3c6e51", v: new $Int64(0, 6296) }, { k: "27a454be648192ca77bc186312263b2b1a49e370b64c1aa1cd0f097bb872d828", v: new $Int64(0, 8687) }, { k: "27a8837d491761205bf27926b14648a4eacabe5d20a5707c2fd1e47205caaf3b", v: new $Int64(0, 6470) }, { k: "27b6d2940a1c81722d8bff612351cff2bd15df32d1c2aad9ccfee8852d92f80d", v: new $Int64(0, 3980) }, { k: "27b85d4b6b11d55ad1c7cb9ecdc4e48d9bad2e435832a0ef94ec5ea8d36f7138", v: new $Int64(0, 4432) }, { k: "27bd354e6b35f4a7f5b44ec83c24f6184e81a7e170cac0e75aa86bde1553fca4", v: new $Int64(0, 5571) }, { k: "27c97a5fbe09f725fdded1c8ca7b2a9e8739a34396c7a46a6086ee79aefe331b", v: new $Int64(0, 5191) }, { k: "27cf5a4ab6a9ed5c6fbfd00b51cb4a5c8bec1b9968da19b75cb437c1750777b5", v: new $Int64(0, 8378) }, { k: "27d3a227ff89e98dc6b43416b4ef7627810b0282dbbc9ffbc146cc92644e0bb5", v: new $Int64(0, 2512) }, { k: "27d82197d978fa84ff902ed3635d4df2559c0d130c4b0383a8e303098326c297", v: new $Int64(0, 6760) }, { k: "27d92fc7c1ef29791f16b88df387777b0663d912b502f3c0c97b7330fbddfb6e", v: new $Int64(0, 3062) }, { k: "27da9ede7126ddf3f3801e5604f1f0ac84f71bd64da0fcbe5d07d38dda094267", v: new $Int64(0, 8959) }, { k: "27dedec4aa738bc1aae1663acdaa93a5538ce482f1969e4753ee191d6b78fed6", v: new $Int64(0, 2042) }, { k: "27e3bb4a0313de572e4b101c1645340897bb610974faba6d0c9cb9f91229b40f", v: new $Int64(0, 6019) }, { k: "27f69d0b52e6a3681401eb0db541a0cab4af20aa8c0c4a2421fde29c711fb359", v: new $Int64(0, 3181) }, { k: "27fbc314c3825830f397af8132f5501e114c30679c348742459771c435b381cb", v: new $Int64(0, 6648) }, { k: "27fc1a91035d2f85b84bcaa1392fb353313da011a81867b45b909e77394c35b5", v: new $Int64(0, 2500) }, { k: "280176e2f55288e65039cc9fb53d18d2363861a7cf5c949724ca7fc7a1a40c40", v: new $Int64(0, 4201) }, { k: "28030b9413e23f761579281c984f07354b662b2b9cd188a0aa431aa2051dcfed", v: new $Int64(0, 4155) }, { k: "28032bc788d6dee32c4c98feebff1a8ab8ed88197c14506a2bc8795f09d821e5", v: new $Int64(0, 8835) }, { k: "28033a1b1df520fbe507a84b893e5229d68deef83712c5fafceb81eec148770c", v: new $Int64(0, 3802) }, { k: "280a7db7e1c02ffa93f3d3b14695b300b8940996e9c84d9d1f78f9f5dfbfa504", v: new $Int64(0, 9488) }, { k: "282ac96039f2db9358dc83c9489eb65c06ebe62d5917b93884c91fe48830d212", v: new $Int64(0, 757) }, { k: "282b8643a505d4093a6b71bc96512ae744560f87b9909989e6db76004abbfc9a", v: new $Int64(0, 5466) }, { k: "282d939d2f9870ad2464ca15f4aec22263c49a024973ad0203bbb08ba6f9fdd3", v: new $Int64(0, 7192) }, { k: "282ff349f0e24288196dd6281f82f5f8c52a442f73f8996f262730bdf7f6ee47", v: new $Int64(0, 5990) }, { k: "2834f8f2575437bb347cede6a5e38a1b5927fb59210270f8689b72a1265baf1f", v: new $Int64(0, 5337) }, { k: "2840c72644c87d452b10639f55d5a245df2236fcd15808820709fbe1962a1cbd", v: new $Int64(0, 1537) }, { k: "2846c9ae27672e6dbe7a65dea13da86dd0a9edfa418df1310acdee7dfea0ad14", v: new $Int64(0, 6594) }, { k: "284ce0c9484a8b911c1fc8c0270a228debbf4a26314eb92083cd16e4f401e5da", v: new $Int64(0, 2742) }, { k: "2851f3bdf9e90cec1d01e6f0629d321ad0321619a5df7aad16c4b88554dad655", v: new $Int64(0, 5770) }, { k: "28537900d6ecc89a9260746913cbdcf03843e55b70d527a83ea677ab62142c38", v: new $Int64(0, 2526) }, { k: "2855b13be781dd41c8986e5c943602d814a19964077bc0db136965ca5ec416ec", v: new $Int64(0, 336) }, { k: "286663adc6567056fe26cb946682dda1ebe38cad15f94f3773c59779c40d9aad", v: new $Int64(0, 6919) }, { k: "286830c239d01c9905afedc97e05afd96fcbadafbd91ca2a99ea1961edafad3b", v: new $Int64(0, 477) }, { k: "28711ba973c2d25415ab1bf5d68099e99c97afac03ec628cc4cf498d6ee8409e", v: new $Int64(0, 216) }, { k: "28774b0e34da9868efe673554749968d38974561ab38a95324db77e28194e620", v: new $Int64(0, 874) }, { k: "287b5c4296c34e73f15c9b780891dc74ad4ba0dcb149f93a70e143f5e5902b3d", v: new $Int64(0, 3574) }, { k: "2880aeb77941e8be3d0ebc676bd4303a5dc844779f72294af49a5d882e88c67d", v: new $Int64(0, 8099) }, { k: "28864bb7eb77b26478a217429e1a026884c7aceaa6e8df64f105c0a2b16f5640", v: new $Int64(0, 296) }, { k: "28875f569760f16fb7cd71af9d3cf4356a9e74fe024d5a92e3cfde2f12e5447a", v: new $Int64(0, 7885) }, { k: "28877b7d6d088ec6311ebd3ace897a09f44ef723973d3dedacbe5f21e2bd71b2", v: new $Int64(0, 8608) }, { k: "28882a517dd5e08eb916c9019aca5197e8d59012cd88a39b1628518031ed13f1", v: new $Int64(0, 6230) }, { k: "288cbbfcba27a9830f5370a37f365ba469dbc145aadfbdcd374a36a293afdb25", v: new $Int64(0, 4994) }, { k: "289536c336e92b05b6a89ba6ff6072bdaf645f38dfa88a3da088c6e96dd21847", v: new $Int64(0, 5446) }, { k: "28960fd4808456b6e3e7614f6824ff451ec0571713432e504f4e9f4801a50ac8", v: new $Int64(0, 6041) }, { k: "289d5b5998aa8c0d92851b73339ca9e3fd2b08845591830ce7eebc1959afabc9", v: new $Int64(0, 5773) }, { k: "289fdd9a1bf4f60d14d605ecc76d772f23679ef4246a3ba6b78faf16e8f69711", v: new $Int64(0, 1218) }, { k: "28a2cb2ada7f78d2a585e4e8c916d0e3105642fa0fbf415b736e06d2857c6a36", v: new $Int64(0, 3422) }, { k: "28a415230571e2ad509c58794b74a92ab80486e6a55cf2ab0f8f4b4954bb57ba", v: new $Int64(0, 9006) }, { k: "28acfb4bda6380932606229919f1fe694795d9840fd909d5c4047776ecb39364", v: new $Int64(0, 9481) }, { k: "28bce429dcb57842d9700527fbca6f57ff14424d760bff3c2b4ecc13ba33b54a", v: new $Int64(0, 6675) }, { k: "28c6642fdf8feadc7795cc861c8f5e9903950fc0071104b2eaaed1b6ea85e111", v: new $Int64(0, 7241) }, { k: "28cab3623d1dcafa6a37dd6fef802d69542f1aab6a6e49780d8864150254b54d", v: new $Int64(0, 4778) }, { k: "28d6e181cefc4d3c8ff6bdcedbd8251ac667a1470b2699aeb9abe4c6e0a9ceb9", v: new $Int64(0, 1129) }, { k: "28d849392f8ac9b479368b558bf7df1beb451507a482e47d1c87addec4cf3a64", v: new $Int64(0, 6038) }, { k: "28de55e3cce3e82387e9402187b121ea4ee259810c1a7a2a2d214c11b6e2afe6", v: new $Int64(0, 4171) }, { k: "28e71aa6bc592039c947096303b7be6a0c8cdb679b3a0141bc93f618fa98ac62", v: new $Int64(0, 7785) }, { k: "28e9a86a27c5624f341d293a79531e2df68108d967df55ed5954065356a7abc7", v: new $Int64(0, 849) }, { k: "28ee21881eb7d31239f4a12e749193b0dc6da189166bf83636c0785d0918656d", v: new $Int64(0, 811) }, { k: "2901b1042d45b5c3f655e5dd2fc0ad32dcfc6e3cd073091db912442aa3050eab", v: new $Int64(0, 7603) }, { k: "290386fb2392d4cdbadcc89d4bf0dc370c2ce8fd13e90a56c5faa934daa8ff25", v: new $Int64(0, 6293) }, { k: "2909e08c3cb49a6275f13737b5c5b50c41626bca2db829e129d0201441a28507", v: new $Int64(0, 4524) }, { k: "290d85fe330d219564c2f46ab73ec2ced31b787053d734f407a9ba5ea10ef683", v: new $Int64(0, 1272) }, { k: "2910f1a4268ee90813cbc7f3c041a2a6e131579627a80ec73c471628e8dfd43b", v: new $Int64(0, 1856) }, { k: "29113d2f078ce2e5d0c9949786fa94411e6a969276a329a5223a8fac7f877b5d", v: new $Int64(0, 2917) }, { k: "2911b584acd5e5567ff32928ad40e6f241e4519f831fdbda08bf4ce42ef8fb70", v: new $Int64(0, 900) }, { k: "2919c6716c1d5969339a056d4c542c392ea4a16eb759ddc9efda2a9128222771", v: new $Int64(0, 9142) }, { k: "29204408055c1b070c615bedaadf5180ef6edff8afca928aad8f08ad1baf8b36", v: new $Int64(0, 3867) }, { k: "292523b9f53ea59e83e157736a018771b016d312629fdb8319f5b273fec118ad", v: new $Int64(0, 1434) }, { k: "292be272c9528159750a74a292fbbb1e8b3da91095e2fd7625b0891a90a11ca6", v: new $Int64(0, 4046) }, { k: "292d7c193cacab238a90688419602cdcca829a92f0c6177be9dce8a5865f5dc2", v: new $Int64(0, 762) }, { k: "2939cf96a21fcf763adfc8831cd49bf49136f200e8e7439314152eeb770d257d", v: new $Int64(0, 5414) }, { k: "293a508a632e3370b5bc0ccd1e84d63c220123c52802cc608943ea7c66623537", v: new $Int64(0, 9165) }, { k: "29401c78df7170420ebbe31ece840b5deb5cc8d4c55b63e8465aa1b2cbe79c75", v: new $Int64(0, 8400) }, { k: "29459633e35da30773ae0788cf8c46e4f5fafbfb06c9a07b187ad37f1d741215", v: new $Int64(0, 6260) }, { k: "294d9eeaa273b542b6866007fccad90cf8f95e59d7bb82aa2242c720af491788", v: new $Int64(0, 5007) }, { k: "294ef248659a45dcc1d7e3f8c6922e798b535ec4b32c8c3d345557555ccd9e70", v: new $Int64(0, 4837) }, { k: "2952f9beaf403accb83d73b69cca9325a0f96e4e936c80bbb688a79af95a7a4f", v: new $Int64(0, 9218) }, { k: "295e60270104fc8e13e3ec89b14eeedb20f1ae85569ea5af7f32ce41890f1e7b", v: new $Int64(0, 1370) }, { k: "296f1030cf8c1ee5977ef4abb50177e25cae478577678609d81fbaa6e5b405ff", v: new $Int64(0, 2236) }, { k: "29774f57b3a8c86b3319f39c9fcfad1dc78f9110d05d7a79091628aa8b0c4c21", v: new $Int64(0, 5536) }, { k: "29786a2d84daa13e416863325e9a5ee73f65e3285537389175e26cf36f606829", v: new $Int64(0, 6316) }, { k: "297a25617845bbc64defd71b3186d0d54ca2ac3d5611eb99987db9b3428657c6", v: new $Int64(0, 7529) }, { k: "297a4acb5efccd4de20a9c2d1a8a59977194be1eb7be04c0c1371bf863e8910f", v: new $Int64(0, 2558) }, { k: "2988ce0f22db6cb42162969cb53161e53091a35cef8bdb8e79a9121c81e30a1d", v: new $Int64(0, 8272) }, { k: "298e63dee7a6af88fcf8b0ac3b6f23c3e526bf7a11daa7192b53d14a0234c5b4", v: new $Int64(0, 9083) }, { k: "298fcde215aa08ace83c67e5651abce5f4f94283e02ea7d66e2e0f9b48de8289", v: new $Int64(0, 1954) }, { k: "298fdf3c7a3456d6938ba3ebcb7ba53073f3b7200a595acd06b0df7dbe5ace84", v: new $Int64(0, 3441) }, { k: "2994d0e3797544522c57f937f664ba068702a8d78d12b1608983261961c348a7", v: new $Int64(0, 2541) }, { k: "299969b555d4027369678603183ad51cabf429a75fa9f52d94ab4546c15b1d64", v: new $Int64(0, 7840) }, { k: "29a1b7cc40d616f3eaaae4c427111c7480fdd04bb5d9a504c78ed79c58437d81", v: new $Int64(0, 869) }, { k: "29ac7e7c09d5f41332cd4469adcf882fd413f4fe61019d1afa6d0e9e8417c979", v: new $Int64(0, 313) }, { k: "29afd10f21e95e7854e85c9c2458b81b112b909318b6316b26c02d87bb32d629", v: new $Int64(0, 6630) }, { k: "29ba6b9d0b3c90cad0d6416fdb7a4f87122be886e122eae80964cf01c513ecb4", v: new $Int64(0, 2185) }, { k: "29bfce17c4bd26fccdace5ffac2def73f2c009ae21bddd5947c48a6771e4194c", v: new $Int64(0, 5435) }, { k: "29cb2f5a2a00b01ba742476db6f307e7e721a805fa91708a4648490e7a6fb6d9", v: new $Int64(0, 4705) }, { k: "29d4d5dd21ecf8c3819d680a5bfc096005a6c57c8355c8f04e6e8d064f326072", v: new $Int64(0, 2469) }, { k: "29d813c916898534b16f4853bcd0f007ee830516e59f3340dd88d06a01269b89", v: new $Int64(0, 1939) }, { k: "29d946febfdd0744610b072f1cd221ef8e0127ced890e9200d288331ac74336a", v: new $Int64(0, 9020) }, { k: "29daa28e4e13feb1f56e570518733ebc19369bbbf7d99fb0edce815d37d30e07", v: new $Int64(0, 5317) }, { k: "29ea984648733226e306ef84e5b5a57ec13dece0bcab0bdd8813761cf6fefeb7", v: new $Int64(0, 556) }, { k: "29f3614485afcfb12db30d3969da529bdd2b998ec9afba79127c3cd7208a32db", v: new $Int64(0, 2798) }, { k: "29f992a3878c657243484bd977f3f57d4fb2d8f1b11c4b2ac0b95ecec53e96a1", v: new $Int64(0, 3331) }, { k: "29ff42f471812e763e35b08e51e97d7fd28144ff8b89fbd329d08b5525c6083f", v: new $Int64(0, 9408) }, { k: "2a0d6fad67ba2d316756d74622f2d3fac7595daa5a87dd19531692b98c10cd53", v: new $Int64(0, 3123) }, { k: "2a0de6dbe9a680a6ca7fc647ef238603eed4e96d42129090cb4e90cc126888a6", v: new $Int64(0, 8673) }, { k: "2a0f5aa3b9f5e9cf0d24638a0b93934ce961cba4dd8c22f5f7aebe9803eb3667", v: new $Int64(0, 3468) }, { k: "2a103a32e3c8d7dd8a1a5fb056556d3882f5614da5d0ee26a605f7a781770462", v: new $Int64(0, 855) }, { k: "2a1bbb036196a77de116e415d4ac1458bc4b0b6404debc6b00c370e0f708f076", v: new $Int64(0, 4203) }, { k: "2a1d32432dba6e87e389e4390d54e4a33e441b69dd5ea1ba0d07ef0312cfaa45", v: new $Int64(0, 4606) }, { k: "2a218e4eb7fae0d15d5286feb25d081fe79b98b95e6c01df8cbc912d90b9c19d", v: new $Int64(0, 2235) }, { k: "2a2817d80af8f644a0914dd75539eb7fe96cffd3d3a1ba817e1b0e9f4822e98e", v: new $Int64(0, 1596) }, { k: "2a31c99861acfb0074b9b30f04aa5005316fd4b8935bc029474449ac806fe280", v: new $Int64(0, 6838) }, { k: "2a4d3ef420f97d76a7a3334c2387718337867f56feb76d457eee83a1db9c420a", v: new $Int64(0, 1206) }, { k: "2a514554614c54995cf4007fbb19d9f151d27b49c53cdcb68db1c985574e317a", v: new $Int64(0, 3292) }, { k: "2a60e373076952123d8a5f94727d1707832d6504c4f5ec65021a75f72edcf4ec", v: new $Int64(0, 6853) }, { k: "2a6605752a297fd76510ebebbb9ac2e3af865bf11703ac7c0b2ca45840e090f8", v: new $Int64(0, 3078) }, { k: "2a695a9763c4fa074b555dba6c230b41e92793609697c792b0ed8ce6f67a6198", v: new $Int64(0, 5378) }, { k: "2a701416b48b7e75ad48d96e2e7dc67d3833583a031162083ee7df1fd2ec8236", v: new $Int64(0, 7132) }, { k: "2a74850e27ae10ddf08554a59d56dcacbb8ceaabbe2b092e1080a15d3ecf76dd", v: new $Int64(0, 7827) }, { k: "2a76ceec4ff85cd43414e61f07773c9c79f97125b43f918b5341b8907d81000d", v: new $Int64(0, 8090) }, { k: "2a7f7625f38c5a0e55c49f5ac99a6d4219724c0f91b91251de35d6ae6b2a7786", v: new $Int64(0, 7948) }, { k: "2a822ed755ddc6319c79220356f22e16255b413ccffb7692479d9369acd3a361", v: new $Int64(0, 514) }, { k: "2a897dd838997608b98d0eed23ac73b86ff20cc39be2ed3d28f62bb376fee6c2", v: new $Int64(0, 1646) }, { k: "2a8ea115c09203e9e5aacb86be4ed0cd0a035a1d294391c4e12b01efef900ce0", v: new $Int64(0, 3548) }, { k: "2aa753c84549dad37676d4946bb1a2e27d5cdb866d3f63bd2214c55c00597d18", v: new $Int64(0, 9290) }, { k: "2aa76696245263b33ac46bf39cf9b7efb5882e63874f524fbbc048ebbce5469b", v: new $Int64(0, 5649) }, { k: "2aaad65612af95262b2f265493156bb9357011a0adbf5d03061e6e987493fd05", v: new $Int64(0, 165) }, { k: "2ababa334924207716dd57c0a14c24591e04a374d6acd4330dfa8efaf168fb31", v: new $Int64(0, 5875) }, { k: "2ac4a9206c453e9147727b1f27c4879aedadb2886bd1bc1ae97161cf5b4a02d1", v: new $Int64(0, 9552) }, { k: "2acc23648cf1756b85bb011d25565f63749507010137662774164cb1508bca0a", v: new $Int64(0, 1821) }, { k: "2acf9fc58bd1641a3b226d99c09b6f431e094138eb6818a08bc942e3a7f04b73", v: new $Int64(0, 2342) }, { k: "2ada3fe602db8f6b114259930c340667680211859355b5acd70c6d11c051402c", v: new $Int64(0, 8599) }, { k: "2adae0c83c3870cbbedf013a24902226121ca28bc7d6d14a8f8562bdcc5b5fcb", v: new $Int64(0, 2984) }, { k: "2ae2d3bca5dc482bbb12fc0193727ecf16f07675b9753a9aa72251c57ae235ac", v: new $Int64(0, 6985) }, { k: "2ae6194a9431cc5519d99e666046e2301bc2fab74ae334569bf429a8018091c2", v: new $Int64(0, 31) }, { k: "2af39c94a37c6e82471ba3bd4ddde6d8562965e20d0743fef83387729d90e97b", v: new $Int64(0, 3138) }, { k: "2af9ceb705d2ebb55fbeb39610c34c57578d519384695fea8ef3998944dba85a", v: new $Int64(0, 6852) }, { k: "2af9d67199004dd73460b405f3532a41445347907ae8871d2e4d8d35908b2495", v: new $Int64(0, 1635) }, { k: "2b02a7320f58ebf0764e19fc2fceefde27171002918a30562958e5c2917ce0ff", v: new $Int64(0, 2217) }, { k: "2b11370a7607d84936174ab897f56c179806b6574be65224202530e75c406c66", v: new $Int64(0, 835) }, { k: "2b1b7381ca2918602b190182835879d1536cf3daba3b92d0c6329be4c47664f7", v: new $Int64(0, 2987) }, { k: "2b20a9ac2b0f0f3d4820af00e7e54189cb2a6be34eeed95e5667a20904ac85ed", v: new $Int64(0, 7573) }, { k: "2b28fdf3388a90551efb97cf77cb65867b0267dac8ea3f291e6bf74f5fe840bf", v: new $Int64(0, 678) }, { k: "2b2972169fae17d4092daef9af9de81fab7fca4ae586575886afbf816bd62771", v: new $Int64(0, 8371) }, { k: "2b2da996d536eba70c2bdfc1503090d3839c5c9d7f2c4defe3948e46bcdb6910", v: new $Int64(0, 1923) }, { k: "2b38cfc4a33518d2342241aa22bb00e149a0ee0f0ad84487e1df110b05a493bd", v: new $Int64(0, 7113) }, { k: "2b3b7e22e3a860a8fd80ab1940b7c3d3f077ac7a8c9a12df3560e76d1d3617d8", v: new $Int64(0, 4612) }, { k: "2b3b9704c497a997184f3c82864c3e4d8a3ac816380521e90cdc536e3bc99798", v: new $Int64(0, 4603) }, { k: "2b48e341faaa4a8e31feff2ed118f8d8df3feac19ca6baf9941c4094c61643d5", v: new $Int64(0, 5738) }, { k: "2b4f9a9d283802fd2db66b929bfacd7c0f7bf8f77287234f5eb297cc6891171f", v: new $Int64(0, 7932) }, { k: "2b6becd40adad10f2916d6dddfca7761a1d4e43fac13ab062abca19de36bcc22", v: new $Int64(0, 1762) }, { k: "2b72ee4ffd261991ccc752b47d4c42c61b22918d6362f457e526853a1c78e66a", v: new $Int64(0, 1173) }, { k: "2b73a4f6b60c35be7148c11f61a1065b9800c4527c7e94ab0fe6aa6112b6ba50", v: new $Int64(0, 8806) }, { k: "2b76f9920d978e1d006d4f0511dc1e7494bdb41a061e286dac93b3d870a43f74", v: new $Int64(0, 5395) }, { k: "2b7a42eb9f87e6c87f653a501de441b18afafdf3abd5ae7944192fcd9084e37d", v: new $Int64(0, 506) }, { k: "2b7e029ee111e37d7ffe6f75a988d153c220dc907fd25a09f6d00d48cf1a518a", v: new $Int64(0, 5232) }, { k: "2b80ead20edd3742948133f68d94d3d82fdc2cdacde816138245d9189bdd4e4a", v: new $Int64(0, 2162) }, { k: "2b88175ba1ecc376597c9864922fce50c66c4707fb7a40dda0aeb88d84ea03d4", v: new $Int64(0, 9405) }, { k: "2b88a019c9eb2e283a9b7765605a767062326753086c61cbfcff56c645271d84", v: new $Int64(0, 4972) }, { k: "2b93fca88b36c91d402002417fe61cb7a3b42599648f2528cb813bd19b8d8072", v: new $Int64(0, 9445) }, { k: "2b973ebe46b1b7bd00a663d6df308680a80f0078a2a8388a9712f86b148206db", v: new $Int64(0, 7185) }, { k: "2b978461c4e8b1c61b963a903a19765cb75451a7138e9cbcc9702313ed49a42e", v: new $Int64(0, 8640) }, { k: "2b991b0e9dd5e92ab2613e148c3610c70fa36a9b1ab67f2daea44f96b1b15f5f", v: new $Int64(0, 7198) }, { k: "2b9a6dccc4b524e459871006901185da7fb47d518f03e2e62d3605c103e840bc", v: new $Int64(0, 2028) }, { k: "2ba68abd06f4a8c986fb64db66f7b643fc1b68abb04b4fe3accfc209763ea0ba", v: new $Int64(0, 3675) }, { k: "2babdd74acff7900cf2b726f96e9612dc87fd6cbe6cf3f9a572914df0bc949f2", v: new $Int64(0, 4760) }, { k: "2bb999d06a23cc838e207ba230ae9f43d1754b8dac08f7cd6df5652a0ca4eb49", v: new $Int64(0, 5964) }, { k: "2bcfb28b8a313e49155bcc63cc708de56f61cc93311859cca8996da8295ba3b9", v: new $Int64(0, 7811) }, { k: "2be13fa0b33d6e7fa8fcbe3f30593371a15ec8dba3b212879a8c06dcf01ab206", v: new $Int64(0, 502) }, { k: "2bf1a3d6a04b7635b2c10a5d1ffa26ffa9594bfc2936627557a88688eb33ac24", v: new $Int64(0, 1438) }, { k: "2bfb41b404f14a455d7ac50893b49a0cedb7da95c59e15e639b705be554272a6", v: new $Int64(0, 9430) }, { k: "2c0289fad4930b4222b62f316f502870e407fc90405a909dd7961f8f28b9cfb8", v: new $Int64(0, 6191) }, { k: "2c090b8c3265dc3acdbbc579b2c93c119e8a2ecdb331b72a94686e57d4158b26", v: new $Int64(0, 3720) }, { k: "2c0bd7b182dd57b5d943464546a43be8c3fd2685386fb2853bbd4c146ef8c273", v: new $Int64(0, 1684) }, { k: "2c0ef5da65d570e3ea1b2fdd11457f3a655ef9f01073421a361d5089d496eeb3", v: new $Int64(0, 5023) }, { k: "2c16902e248b581880d91ee7fd68881feb18559f55ee641f5649b2a58bd9eec9", v: new $Int64(0, 4970) }, { k: "2c190c5d08a8ab85d9df0cf201c116b5ee69efc28c486e011710570de9057fcf", v: new $Int64(0, 7462) }, { k: "2c1ffc25619aecb64b4b090e4569cf80b64d5d30b952167aa8ac91c687762ab2", v: new $Int64(0, 9003) }, { k: "2c264235fc268ce2ce79366e7481e9f45e44e88f5b36e027d7794586e43e6058", v: new $Int64(0, 8064) }, { k: "2c279f6c4aed867b275e9246be6beb8af30ec3d8f920f21b2fbc8846bb1d3ba1", v: new $Int64(0, 449) }, { k: "2c2fd6e0bb77f5f1480931f67ff0be828bb7ed17e912c6c8b8adb3d470170fe4", v: new $Int64(0, 1350) }, { k: "2c3443e3e1bd5c0382ae89ad9efaf291708a501be2f15c89a7216918a3c36ba2", v: new $Int64(0, 2756) }, { k: "2c348e0913bcc27a9b22e950aaa25c148404abd0bdd1831db9d73f7186b86c9d", v: new $Int64(0, 4074) }, { k: "2c39e70ae2932288199d5ae7e2c799723434456c25da7a2c1b95164bcda91df6", v: new $Int64(0, 2522) }, { k: "2c3de168427efa09eec6a9b2bf7588a9e217333323c389697e3974067e3afa0c", v: new $Int64(0, 3977) }, { k: "2c45baeae4c8abccb2f0bef09fe481fb25162fa2b00c0a7a85680c3c5965ab20", v: new $Int64(0, 257) }, { k: "2c48e3a51cf285b37cb7bb20bb1bbd54134167149f951ea9d1b588b2d9a2fb96", v: new $Int64(0, 7114) }, { k: "2c5c4de1a54696fb681f6b84e90c24a70e8ba58e837a9a19c62147bf69ca90f1", v: new $Int64(0, 3908) }, { k: "2c5da6ca498f4319740200faa78fbf32c85d3b389cbff9a78ba4496e5c1da5ca", v: new $Int64(0, 9475) }, { k: "2c5ec280973f8deb3f5c4b78f61dbe95ab901589a66054b094462ef918aca2f2", v: new $Int64(0, 2248) }, { k: "2c65aa680b62dabf8b365c8bdc469cd5e989822b37728a29e50558c01115d2d4", v: new $Int64(0, 209) }, { k: "2c6ce17e1c2e5794efc319ef09e5a8e9620d73182930c51843ce241671f53020", v: new $Int64(0, 2312) }, { k: "2c7be86ab07488ba43e8e03d85a67625cfbf98c8544de4c877241b7aaafc7fe3", v: new $Int64(0, 10) }, { k: "2c893d6ce70d403b9cc174375127562fbbed159bd411360b16938b3560cf77da", v: new $Int64(0, 4590) }, { k: "2c92a944e4b86268ff59ffd196a802b106bc90753c6abaed8518b1527f89b502", v: new $Int64(0, 8341) }, { k: "2c9e7fc5a74bb39a36e2cbb8a2a662430d631418865acd25375e96b9ef77aecf", v: new $Int64(0, 122) }, { k: "2c9fd842c6538ed6f85a775544ce46e7824d30803b227452b98fb4299bc4dbc3", v: new $Int64(0, 4842) }, { k: "2ca608bd55fe87e4e4cb855b597f9a162d4cf640ad7932f56b5c98dd6c961eef", v: new $Int64(0, 9667) }, { k: "2cb1c51c04fd0d198e9b0bd9ef400dbc2f6921c379a0f61d96e98af5d5bd6bcb", v: new $Int64(0, 8922) }, { k: "2cb361783052dd173fc107be83dcbd0faa6410e8cac901f92045a48fa24c4ff0", v: new $Int64(0, 9399) }, { k: "2cb404ca05ae323e1952c41f4d5e0aa2836101c1bab2139007b96064b2eaea81", v: new $Int64(0, 259) }, { k: "2cb621ff715e70f0c2e1fc62c277234785e7604550b56e0c67ca9dfc3e3904fe", v: new $Int64(0, 6123) }, { k: "2cc1d8e8016fdc17cf9723b6bf9bfa6ae00bc06604598732cea539de871bcb8c", v: new $Int64(0, 1838) }, { k: "2cc9ed799c4a8049fa68ff88d522686973529167ad16578298f2670e0c805dc6", v: new $Int64(0, 3844) }, { k: "2ccad385631e5a506238f786027653e3998539d07de2f72a713256265a426331", v: new $Int64(0, 7633) }, { k: "2ccbce62b5bab05921518a0954e7369bb88fd583dfd5b7bf7082499a6900df91", v: new $Int64(0, 6071) }, { k: "2cce2b1abc87d277d7f71df10ac130eca59c851059b6fc3624baa73ceeaa4ab8", v: new $Int64(0, 127) }, { k: "2cd76382bbdac86f15f58c52ea37f023a86070c18c0ee612b0b6cec92ba5b2e2", v: new $Int64(0, 3014) }, { k: "2cd80edcc420b69a31ee892ce0874d1ab8d098134d68ae3ac1b5d62a8a826d75", v: new $Int64(0, 3234) }, { k: "2cdbe8df68bf663cc5bf0ddc7a8d002715a9dc37c1ccd3da3b876c5f4a0a8c7d", v: new $Int64(0, 4538) }, { k: "2ce36731473dd6db2e434ea2edaa2158d4e2638be82796fa26dfc55ee8a02e50", v: new $Int64(0, 5229) }, { k: "2ce627b1f9e9acb1d089f5d4b9454a32613ef194d9604e0688240ef89ae4c33c", v: new $Int64(0, 9227) }, { k: "2cee616a0b2ab904dd5b3446bf7780f74ef2873dd8996f7276c0c4234d337e2b", v: new $Int64(0, 6956) }, { k: "2cee70ea125549f9e0c5b7733252b0f1f0a13a42b9a53afab4244b7bb299deac", v: new $Int64(0, 2110) }, { k: "2d0005b1718b41eca3b59aefd2ee212500e501ca2e48778e6cec864a54406c98", v: new $Int64(0, 1678) }, { k: "2d0262e9e72249d4e66ba6b02cb0be298b194c34bc1f7f0c4f1dbe3b4362ac0d", v: new $Int64(0, 9994) }, { k: "2d03cf3672b413447d5b932c50a52ae16c9b5d6fa8eaa0e86eae25223fde0b65", v: new $Int64(0, 6173) }, { k: "2d03de33ed4724ab87e90095b693e7718a330737d5363646941abecc928066d3", v: new $Int64(0, 7893) }, { k: "2d08419eab4332630ecdd9b5d1b473a9eb424d9fc7d6f97b462abea64b83a701", v: new $Int64(0, 7108) }, { k: "2d100d95502e636be8080d69b82f9419da61dd5c9726b5f258b4ddf9a50b6f67", v: new $Int64(0, 6363) }, { k: "2d1401156a1de1a09dfa808782b7e08a9fae63a652ab464e6249d7041e2156e9", v: new $Int64(0, 3522) }, { k: "2d1af7e6dfb3e23a20626e2c86e061bb64d661832cfd30cbe2784fd653fee902", v: new $Int64(0, 1523) }, { k: "2d1bd56cf11211afa35bad043676e7202518b9f04fb515c55852dcc6ecf63e65", v: new $Int64(0, 9509) }, { k: "2d1c861f6f09b1940a7ed35ca7fb9482b332c8fe2ea7143d239aff39880a9fb5", v: new $Int64(0, 2376) }, { k: "2d1cb995cb67a21f4b843ffb1b7945b231f9da07bcbef4f945a5356beb16ea57", v: new $Int64(0, 7904) }, { k: "2d20e077bc954c8b0c9650749c3f710376f48ac22188d428ff8fa985c113da8b", v: new $Int64(0, 9690) }, { k: "2d237e8d0a7a1b43ce3434b672ff0e03b4c2ebe0732df0e3811187f236c57c34", v: new $Int64(0, 3599) }, { k: "2d276e8dce9011c23d90da227595f9d3d6b13e33d7ed1c1529fc4430515db89d", v: new $Int64(0, 1082) }, { k: "2d36d91dffd927a69b6d7267bb335d225b9a8a61d146e3d810a5f804fb48b01e", v: new $Int64(0, 3721) }, { k: "2d381cb567efbe8f36bf63b6bbc1a593e4306144c5640eacebdffa5700362cb1", v: new $Int64(0, 7635) }, { k: "2d3dce7995b2c6a6333fa5aed7857492406e6c86a0612eeb3c453efcb1ebe98a", v: new $Int64(0, 1183) }, { k: "2d436582128bf0046b536c1d41cfa58b37f8ad2688fcda320320fc449044ef82", v: new $Int64(0, 5268) }, { k: "2d51eaf1b19ebb1388d7a92a42909dccf3e56206ea285baca1def40a27ea57a8", v: new $Int64(0, 6973) }, { k: "2d59228129275743824a5e9ec0d9595becf98770deeb646b60911d4387a9a857", v: new $Int64(0, 1840) }, { k: "2d5bc4bcaabf012129a2a1b123aa1b99fbbddb9131922a4f449194a72cccf28a", v: new $Int64(0, 7287) }, { k: "2d5c7e91cd0a1d562161cda3ab80dadece40dc32555859ce296a52366879af06", v: new $Int64(0, 992) }, { k: "2d5cbc2f22db8a89037c8ab0d1fe353bc64e1f58c9740d4ebc96cfd4ce15314b", v: new $Int64(0, 1075) }, { k: "2d5d86d963105cbb7bc220d2ba4ce2e0a595eea4031ec97f3084160c41dfb9b3", v: new $Int64(0, 9715) }, { k: "2d66adff7d691b68406b267c5873720f661f497a9796c3b331054bcff40bc3d5", v: new $Int64(0, 6367) }, { k: "2d6d90d97c73e121f1d42226e5127b1cd84849ae98c4cf098bb1ca88cd00f793", v: new $Int64(0, 8053) }, { k: "2d73c41fb82c4d53a016ed1832fd3f0040cbc9d3c34c66c8ae630f168ae147d4", v: new $Int64(0, 3914) }, { k: "2d78a1efc342f96602f82491a263496f99af858466c3e0abbc83c90e79fa8c23", v: new $Int64(0, 527) }, { k: "2d7de5ac44a9096aa1735ce503187c27743de5dd9ff8a69925400e1bea7a3180", v: new $Int64(0, 5521) }, { k: "2d7ef7f67428fc4c7b8cf7486e2b75158a173ceaf5f9e558b1a446605ab75156", v: new $Int64(0, 8770) }, { k: "2d82b0400bdcd2962485015e326695caa730b919225b9a1004d5a2fcc9da1a6a", v: new $Int64(0, 4623) }, { k: "2d8675feb4e53e93377bd10654ba70dfed563f80f1fba88bd0f03a1db761705f", v: new $Int64(0, 3067) }, { k: "2d86771c3c409d9569dc39ae46b7b37310b6e349de50ea4006bbbe0acf467745", v: new $Int64(0, 1244) }, { k: "2d873cbc7ee4d19d2b51ab1f8f1f900876ad2097dd08b941db6a23305d70498f", v: new $Int64(0, 797) }, { k: "2d91af4cfc160d94b72a41cf7f515cea5847af26b3cfe62f518db2aabb1c7d6c", v: new $Int64(0, 4193) }, { k: "2d97693c72f31ad08347392b0b6dd771e46bc8f4ebb8df7c87fee35eb0ee05f5", v: new $Int64(0, 3279) }, { k: "2d98c1ea7216e810c9d81a1fb0fd29fc44fa1c84c4faa7d1e5755719f38709df", v: new $Int64(0, 4098) }, { k: "2d9acbbdcf4332ef68c9139005a58d86188f15055b49180bda9aff45a3484753", v: new $Int64(0, 4985) }, { k: "2d9b1b61a44b466431a905ad5eed173417ec2ac61e4a2f8b97c07393a2687c20", v: new $Int64(0, 6121) }, { k: "2d9f0139ea6dd47e45d072c6861653a3fd6b494577a7834ae6b091ba746fdbbd", v: new $Int64(0, 7802) }, { k: "2da166f238c4afc760a8b30b43a4a162bd8c035825c35316374c1cbfede827cc", v: new $Int64(0, 8070) }, { k: "2dadd8aed160c43639d59336f4ff43ba66f575f89847e436f4408e99bb6fb6c2", v: new $Int64(0, 8759) }, { k: "2db0edab25bc2cc0066bdac3d2ab08b3bf15992631a37b598b0246dff49f153c", v: new $Int64(0, 1372) }, { k: "2db703cd4b0cefb9474646e38ac67e2ec3669406d36dc498c1ba09ed1745ba4d", v: new $Int64(0, 7838) }, { k: "2dbb2df4220cf08765937c5329c1e144ac8404cbcf6fb871467d25040f650367", v: new $Int64(0, 2830) }, { k: "2dbcf09a8bf6c266fea2eaeca65579950d1487605b7aaf5167b4da551908544a", v: new $Int64(0, 7176) }, { k: "2dc059d3e33ba79d15315ca4612a083a8afd73cc40ce742f1456a7a5e51787eb", v: new $Int64(0, 9741) }, { k: "2dc1a46b6023de0a342f737e685156d5e098fa951de40485225a157d8d085221", v: new $Int64(0, 840) }, { k: "2dc9c3164af35e6636179fe202e126fee18a9c18ffe58239d6f99173767b1a68", v: new $Int64(0, 7043) }, { k: "2dcc199290ac16d45f903e3b9eef1d2bc2da9945689e9d2a37ae240a9fb83618", v: new $Int64(0, 2472) }, { k: "2dcddd84d83cc0cd5443aaf781618808e6dab7cfadf20f4e507d35c00676a238", v: new $Int64(0, 3174) }, { k: "2de692a520134d5b0813f75f461888977a7af9f397a69401c263e3833ccb1329", v: new $Int64(0, 1768) }, { k: "2dfadcb9dfd88379e5d0cdd68cb773e756ca9ce18d287647519b7a00bf0f3ae9", v: new $Int64(0, 8937) }, { k: "2e050a8dbe083408c3e042f38c8cee4300f59b4de5c1d87f0f0b89d394f9309a", v: new $Int64(0, 3099) }, { k: "2e0ce934d6147629320f25edcbcbfa06f36c172a58012a16b88738f7481cfd9e", v: new $Int64(0, 9173) }, { k: "2e133936c8d89757f28979372df31020d5d1a24f90436a7511335147a2b7d7aa", v: new $Int64(0, 5262) }, { k: "2e15db7029c09de8911bc20ae7687ddae1bde2872b3ad448cd7f00d8924d6b4e", v: new $Int64(0, 1058) }, { k: "2e18c717e6b86274c5701f7db80d01c6094a965851f9b9a2a5eb497557227988", v: new $Int64(0, 8816) }, { k: "2e1a810383cdea7ee43dfed9db7cffcad88d03a47ee9252f42490fa6c2e579e0", v: new $Int64(0, 7958) }, { k: "2e1ac7936ac5215df8f8c003b76566f0b8e4a7a6cf2fa87b0e3e1eeff747822f", v: new $Int64(0, 672) }, { k: "2e259d35817c27193693426f48b31b0a6051d9c60cbfeeab0e9cbf2280db73da", v: new $Int64(0, 4394) }, { k: "2e2d33e61c926ae55fef87157699b91dabf2588027785411090142f327ea004b", v: new $Int64(0, 8055) }, { k: "2e3264f5a909b327d7d2a126289c4644748c49a9c423b198c2be3516898f2621", v: new $Int64(0, 6353) }, { k: "2e380f21250066ac2c2f7dadc5de247ea9ef23cb91144bb68215d4ff3f4138ae", v: new $Int64(0, 1084) }, { k: "2e3aab19eef16cf6e79e9f539389f215379e4999ce4451c14baf9ee014c9eb72", v: new $Int64(0, 1343) }, { k: "2e5e0d4610206ec57441c33c7c781116167438e5b6a0b3af8ae66d37022456cf", v: new $Int64(0, 9395) }, { k: "2e7eb31ce9627d42b35619a3f744abeb68c15450956da66a53e84e290440573d", v: new $Int64(0, 2064) }, { k: "2e83b9ba0da0e9d5876ab509f9ea6e561adc9e01e9f1239a7f28f821ea515854", v: new $Int64(0, 8289) }, { k: "2e842fe566f3d037509abc9a989ffa4e4ab381691bf8439b686a1c4f3d3b3a80", v: new $Int64(0, 8569) }, { k: "2e8592cc48b7739b8728cd91885e43deb90ba72ed91c9043d30af841dd3f0153", v: new $Int64(0, 1128) }, { k: "2e861b9aa538792644bd7bb53d6935d8d52346616554af6782b51a52ba2954e0", v: new $Int64(0, 2634) }, { k: "2e8cccdd31713ca1d55ed8a611e0236f021a81a3d15c4c8a20e8dcef667caa41", v: new $Int64(0, 1745) }, { k: "2e96c4602f84ec29a4e0e88bf69c55b6ed6d5f67af1b45715d02c288dd4bb0cf", v: new $Int64(0, 8029) }, { k: "2ea1ec2b883061bbdcf0d9fdaadb9dfdfe0b97c59d302def8f399996c05c75f3", v: new $Int64(0, 5465) }, { k: "2ea2db5df6ee2c0aa4ade12681c9201e9898687acdf96a13de89a2e16998d60d", v: new $Int64(0, 8792) }, { k: "2eb77fcb90e79977f3538742d8157a985f777614f72c24aa2930dfa188429e32", v: new $Int64(0, 5248) }, { k: "2edc56ddcaceca76c5182f66dbe444272942f00a9bad0a73664fd5a4821916a8", v: new $Int64(0, 5554) }, { k: "2edfd5166dd341d2547aeab9446d530a9f3c0b9eb8e6ca7f0eabddd32777617d", v: new $Int64(0, 7443) }, { k: "2ee0c48834df13daab562b91f513b63f88e9f3f3228cfe221d2b3d45ba264175", v: new $Int64(0, 3011) }, { k: "2ee4637d6168f274b226739cb367887521ee2de786c15a2e70db9e4e1f228353", v: new $Int64(0, 3291) }, { k: "2eec10a9ceacc35953a91a2c999946cc255e5dfa2a68646f28a55516838070c3", v: new $Int64(0, 6881) }, { k: "2eeda30c38494885dce361c7a10021772672e729f3a00e6cb79d63b0f44d2f6c", v: new $Int64(0, 2309) }, { k: "2eedb319a5c6a61e97d2c3c63e33eb387c601dcdce4e309f93ef00ab0823341f", v: new $Int64(0, 7954) }, { k: "2eedbbacaaeaae4ea085baf27f261bdd8d53e83f8240d23a5e256b0cd315047c", v: new $Int64(0, 2362) }, { k: "2f05810ff793c59c04bb5a490e0149a4e1f8712e28ea87359f32458a7406dc67", v: new $Int64(0, 7095) }, { k: "2f1132ca61ab38dff00f2fea3228f24c6c71d58085b80e47e19515cb27e8d047", v: new $Int64(0, 4) }, { k: "2f1f266bac103ab866dd9c2a5c9e1a543ff00353287a9add8b6b6555c6696f2c", v: new $Int64(0, 5689) }, { k: "2f2676a37f15a58100be310671f32c85235f80f3c5faf4ea79912d30fa9e4467", v: new $Int64(0, 3871) }, { k: "2f278acc0f960348d220a4463e660cddde34d06f6071e16c9bb0ca7cde309d2d", v: new $Int64(0, 1474) }, { k: "2f29393be316c32e344b5b37a4b75c8fa4186010480cd7e66a6d9657ca5d651d", v: new $Int64(0, 1197) }, { k: "2f314ff9ab5809e838f46219ca3f8ba8dfdb06397fe109b2647f555ce9227292", v: new $Int64(0, 3527) }, { k: "2f3616d575a1efc871e6ea4156664e7be560f76fb70ed3da4c7868e6d1b8caf8", v: new $Int64(0, 5722) }, { k: "2f3f2a9210c6776821de9152723001f6da6defe0483900a2976a784e8d75f21e", v: new $Int64(0, 3502) }, { k: "2f402c7a857beca06a3b47f272a8dd797e4732b51bf8ce80e61a7347ef7716df", v: new $Int64(0, 242) }, { k: "2f412add82f143da7c2a28e14ebf9aa321b2696eb16225400b78a4ad584628ce", v: new $Int64(0, 6626) }, { k: "2f441bb597fb85e17612aec83c32215b0502c176b714807159a8dfbb50ac3669", v: new $Int64(0, 6528) }, { k: "2f48d26e1076a9b6612ee95b58a47bffcf1977ddc2354e9bcfbc3ae73c5029a1", v: new $Int64(0, 8522) }, { k: "2f48f438241ee7321b5441efcb7c0eca4cac023d6627973391dc812a6d591f1c", v: new $Int64(0, 9152) }, { k: "2f4e79f2c0e988f5ce6c93c45bfb44dc894a8e705dd03305195439103f269196", v: new $Int64(0, 4684) }, { k: "2f5047e6df9ae5b4802472cacd7227dea4f20f793a0ab0a63347d9f710f2188c", v: new $Int64(0, 5137) }, { k: "2f50cc18ea0ed04aac4bdfc1de2c9e18db7276c951b047f0530ea145c44b83b8", v: new $Int64(0, 9756) }, { k: "2f53733083de64b82ea4e4f4ebe6c25c9fc2dc40a655c6271edb2c86d451f923", v: new $Int64(0, 5525) }, { k: "2f5620d74e53a5ca16872d6dec1a77c8a28fb7202794421b0e996f1d5f4bad0e", v: new $Int64(0, 7023) }, { k: "2f62d253c072bb860daf39e0e938cba404268b01cc4302d78a88a712f361ce36", v: new $Int64(0, 3200) }, { k: "2f655a391c11df0bbcc80fbcce78a7a490893ec4df6d974527ffc967005990e7", v: new $Int64(0, 4008) }, { k: "2f65c10651880e43a8fb609c68b3c3cd165829fbf4770e3bf306f78b01341c80", v: new $Int64(0, 4804) }, { k: "2f683cb4c3a936e7c1a90f83567bea1c3445ec8845a8cf3bbb9e793c73065414", v: new $Int64(0, 721) }, { k: "2f7398d239442b70d377b1d90c8ac0304b0395159470b603ea2c78aa308b0850", v: new $Int64(0, 6558) }, { k: "2f7993e597ef5b514b14742943e5cc320d960017cd5a3c013f681e32850ffe3d", v: new $Int64(0, 6885) }, { k: "2f84d1c84c02001dcdf1c820aa773be6405f351267085d3ccdb6f7dbf2f70684", v: new $Int64(0, 1766) }, { k: "2f88c1bc5d8197ef378bb4ee01c3ec1d89f68a9db68e85b1664c88a84453d4fb", v: new $Int64(0, 8934) }, { k: "2f98d413f38350c1ed12399dc7dd84620a856a1ec416dafc587df8a2f230f2f6", v: new $Int64(0, 1229) }, { k: "2f9c3370e6f103895515c59ea22cb2a264c798daeba60a1816d33fed0c544df6", v: new $Int64(0, 1150) }, { k: "2f9f211675ca60941bc8a803096286805c5e7df71cb061186f1c1aa788ebf493", v: new $Int64(0, 2838) }, { k: "2fa1c027ca907090c343475b4268cf8acedd56df1821f4190c8e0dbb99ff2832", v: new $Int64(0, 5043) }, { k: "2fa649f5f1e38e3d0da5d3abbc4b91ab71aec44cf93fc88660ea4a2ed6b46ecd", v: new $Int64(0, 914) }, { k: "2faf18094e0653540b376564adfef189fe2fa77e51e02ac84b31a5a54325074a", v: new $Int64(0, 6256) }, { k: "2fb97dad306e9ac50d9a99f59469b3f8858f145ead9bc6f0890d4b0fe11aba69", v: new $Int64(0, 1477) }, { k: "2fd2c65f5f1d8476951b39335882c114b4a028fa09d096340a50511037472bee", v: new $Int64(0, 7445) }, { k: "2fd464edd508e088c94cee9c7945d3b8ad586fcd891d697d51caf3f4ceaa19da", v: new $Int64(0, 9823) }, { k: "2fe100b110377b6ced356fa5d6ef2f94d73fbd47d8a9e8d371d1938fec8d2d2a", v: new $Int64(0, 5563) }, { k: "2fe482732662caadfd20e820a5fe934082a7900fdf01d0432aa58009b1cebac0", v: new $Int64(0, 1436) }, { k: "2fea45c57e16e8b754dbf675ba9826a19f97a2b81c5175998db03c1e08ca1263", v: new $Int64(0, 3583) }, { k: "2ffb58d2d1a033a469a6e005ca5a9aca5667a550d264237093b3f517d791c526", v: new $Int64(0, 7375) }, { k: "2ffc4f4762e3d7ec21ef7f27159f3fa335c4b4808e7fcc2790bd3a910a3ea97f", v: new $Int64(0, 4536) }, { k: "2fff9c29ddd66cc686f05b73eca8f2e3c42510c0762d50255022c49c14f16ad3", v: new $Int64(0, 1400) }, { k: "3000886796405815348894010e29f9997881af29bdfb37ed1d8a7117170ed822", v: new $Int64(0, 6275) }, { k: "3002ab268f28e59c8eb910694c91f42de912df70e3b775c03c9838b69c3b1e19", v: new $Int64(0, 3127) }, { k: "3002be4b3f084c972b825e85048d9cb06743b0564446138407d6c27b87773b7a", v: new $Int64(0, 4943) }, { k: "300527285c4451912ea412e53cb6343f17cd4f39d1c62a6d0a5ec67ae7a96563", v: new $Int64(0, 6132) }, { k: "3017cb0814ddb58fd7db75b66d531f6805856ca814f5e8ac4b671d9ec62f2ebe", v: new $Int64(0, 6189) }, { k: "301ce15a99604bbe2b3fa7120079da1f7e771f1fc2aacf92aa689e870c5dea0c", v: new $Int64(0, 6254) }, { k: "3026b79affa4d6e528fde829f144961eabfe57d9fcdd7ca2fba6e45d71fe92cf", v: new $Int64(0, 530) }, { k: "3027643d1594ae285677bdec0eb76ef93a72323d8ba314c1a179ca3189518aa6", v: new $Int64(0, 3727) }, { k: "3037d373fa6161d65400e475cb92e7cc9d3f9ee45287e4c0d7a96893c1fbeeda", v: new $Int64(0, 3303) }, { k: "303d6679cb9f2f8564e5d9b2466f1a1949e647fb1a44b9f1555f2537d280edd7", v: new $Int64(0, 9766) }, { k: "3042e05c971afa5e010b552ea8bd75df70caf647dd30acdd82c4a84cb4a47178", v: new $Int64(0, 186) }, { k: "3045920e46e8f964242b9a0e9ee8d5dc26ee9845a6fed10efd9720acb4ffc3c6", v: new $Int64(0, 8854) }, { k: "30464f29510a106e7afec3a601ca3790803add632cc748ce6f5956b5eaa08637", v: new $Int64(0, 6593) }, { k: "304a1a1d7bd71ab303be27e37df0e73b62c12ba3efcc9657b076b85ac2fc63d5", v: new $Int64(0, 8780) }, { k: "30525b216c19a9fefbef7a6b39c2e128173c31d6ef0b7d8f8b0b56e9fd4e6ae5", v: new $Int64(0, 9670) }, { k: "305515f1043585a4102374dee024330db32c7700318a3fb0c7658d004d21f4c3", v: new $Int64(0, 2827) }, { k: "30643954b18b94e0a3dcc43f91808415cab096b35fc527360f9b26673dd62ec2", v: new $Int64(0, 5049) }, { k: "306de36134436c7d28240c7545c6e8e14e889cd07cef1cadabe70b95a4a5b724", v: new $Int64(0, 3387) }, { k: "308b5c101969573d77befd7f4b2869cafbc77685762097ed357011c0fca49b5c", v: new $Int64(0, 7676) }, { k: "3092ecaa3b362dad8880fdf9b92e44a779fd2c6b2d08be04e703217163f1651a", v: new $Int64(0, 3101) }, { k: "3095a7a64359bf21093af4bd10d4e6cdffc2b545b13a7fe01a53bb492792c8d7", v: new $Int64(0, 6717) }, { k: "309a3c92355f79b7f1ec55eb034ab92f57ed7e54a71dbac746fa2f95c8625f8e", v: new $Int64(0, 5437) }, { k: "309a59d86e048f9222b3ffe0ca8fdeef7baebb51b926f39ab00360a2696785ba", v: new $Int64(0, 4033) }, { k: "30a5edef25660c6ecbd600bd7a7ffc634e42442bff9f8e6eb8f5fd7f9f474644", v: new $Int64(0, 6301) }, { k: "30ae2043037beb39b668ae3044b0b97a8dbc66d2ec0bf1ec2bb87c335a4075a3", v: new $Int64(0, 6670) }, { k: "30b02eec835ed94c66e7561c95078763ea3a6d92f502258533d473ca6dbfed70", v: new $Int64(0, 4677) }, { k: "30b2422598be5c4e88342747a77a5a611c5ad208f01eb86b3030d7e180d62376", v: new $Int64(0, 8931) }, { k: "30b6fcec9fbc1ea4d6a0c784cb1e7bb9f0f512e3eea2e53c796cc9e698b8c648", v: new $Int64(0, 9095) }, { k: "30b727bd177dd7f6622b71f0330c0be50a6df8092ca815d5378929363096bc0f", v: new $Int64(0, 489) }, { k: "30b8500947312c3a37932be4b5ab8b20d712629beca189da2941c53521051e19", v: new $Int64(0, 2340) }, { k: "30c164c8e25a4ad62ce032c7a180b1ef6c0ad36c17d6bf98aa522c0fabe36fad", v: new $Int64(0, 6375) }, { k: "30c405b38351df239db96b9a28adb7f42cdb4b6ecd2bf7b8d0e655e4fb51b05b", v: new $Int64(0, 2646) }, { k: "30c59379381aa0397ba617c20a2c822a54fbacf850574ebefc418dc1eb80497d", v: new $Int64(0, 5064) }, { k: "30ced768f0ab2ed438e4d747d0a8e32dd1398ed72d0b1d4ed8060e90b7db1187", v: new $Int64(0, 4730) }, { k: "30d32b05517831ae2dae44e3f198e3c7f04ac119829bfd3370ca1a68faedda2d", v: new $Int64(0, 5096) }, { k: "30d58ea55e2f14ec69662c6a3e4b23701535b6dfb9b312503e1fd67fa13e9c58", v: new $Int64(0, 6811) }, { k: "30d70447ddacf2f6c9e7d56d75eb051b0ac39a5150c657af602b8993853588fb", v: new $Int64(0, 3297) }, { k: "30d9e4bf176765d1d4168f32d6534be557e16492f2fbb4875292c2103e10585e", v: new $Int64(0, 8299) }, { k: "30dd0953bd5f1ee389ecc1b63a6e85214f8f10224eee033cd8548788f938ba80", v: new $Int64(0, 3753) }, { k: "30e8c428f84937647363d9689d95f3c6adc339ca5d7bae7f35fdbe69f08c3690", v: new $Int64(0, 4177) }, { k: "30f110c46e01fb69eabc8577b19a4cd764bd33953ae4412df1db51b046bebf37", v: new $Int64(0, 1219) }, { k: "3100edf75cb42215f09790b750beac41cb9c08d2b6d60d717b11d4b1b6d4bf35", v: new $Int64(0, 5919) }, { k: "3108ccbafba01ae7abe3c7736e8a2ebf922b7f9d3c01c2fe4e259b3b6bc33a31", v: new $Int64(0, 6515) }, { k: "310de58485fe4706a538f98b1f9e431a661abbacc627c3c4f961df1ffdb70805", v: new $Int64(0, 9364) }, { k: "310ecc164f2dfe47dab75d5f57edd1a8528fdd2a5be1d05c3dedc0ca242a4b55", v: new $Int64(0, 9869) }, { k: "3110c03f14cd83c06c6e08bc5df9b3041f72430dd9abe64badf96596e3cdf080", v: new $Int64(0, 5900) }, { k: "311521b82ec67e75299eb077b80dc9c36e31f60521c021dc14e435f1364182f8", v: new $Int64(0, 3066) }, { k: "311d3f98b3010621b3fc26bef9a38fedaf6e1eabef4c26a3a5691b2abb3dee10", v: new $Int64(0, 9126) }, { k: "311fbbcfd9e57f587d79e013b10589fa7d4a016fd3bb09c0868490dc5461881c", v: new $Int64(0, 2619) }, { k: "312a5b638f4eb97d46806f50694faa48bf0e5e4a320b535d5c2137ce6b01eb61", v: new $Int64(0, 2689) }, { k: "312db6e9717b0bf08409d9e57e26414cec3f92a3bdf4c2c8636c6e5cf90aab71", v: new $Int64(0, 9557) }, { k: "31319e7d41954235118be731dc3b2bedca7d60a35eb63fc9ea70d30d49f0ca42", v: new $Int64(0, 4231) }, { k: "3134b8a76931257bb93e68c7377be18cc2d5fcae86488c14176cf27b889115df", v: new $Int64(0, 5293) }, { k: "31362a51b709ab0bd3b62d628aa4d858382106d1843c6b9d687dec87e7b21965", v: new $Int64(0, 8107) }, { k: "315e32ecefb9174b9b54f0686fad1bae1d6176e699327b7b0e844d9bf17cc8f3", v: new $Int64(0, 8035) }, { k: "3163ca7f74920ae4e3e9b6b88dc6de022d84c7db8db21f1bd1e3fc9b3d66b1e4", v: new $Int64(0, 1442) }, { k: "317bfa56f44f523367f1fee0c87d2646396912019df15fc3823e507358114ce4", v: new $Int64(0, 5865) }, { k: "3181ec8486d986cff59e3110e7ee5b41f588432cccad7eb4563346d33b289752", v: new $Int64(0, 8749) }, { k: "3183d3ba2478f5c49388dab6e824dc0265e627971ccb54683fcc748c26a7bc03", v: new $Int64(0, 2596) }, { k: "3185abaf7801a3761934967b6848e025c88bd6cb25232e7e4355d3b3eeb7a7fe", v: new $Int64(0, 8798) }, { k: "3192323b281b8234ffd228566f52a05f92358f8fb56e47e98c3b924b00c32a8b", v: new $Int64(0, 6244) }, { k: "3193e46f033b37089d61e96a76e084932a3de1d46b475c3213f7e34add95310e", v: new $Int64(0, 7007) }, { k: "3199e6cff11142730858657ab79d2209e2fd9efa49e3a3e0b81746d41c7fd49f", v: new $Int64(0, 7611) }, { k: "319a03cdf87aa6e76cb89e613d3ce8ae4482e7cead9de2019e6b63491666a881", v: new $Int64(0, 1725) }, { k: "31a061a114fffa61b8cad6a57bec23f56d5a8e76af2427f49fd08b5ce8144bc0", v: new $Int64(0, 8111) }, { k: "31a13d442fb4b18e6b1713b757695d92055a5fb17656e7bf43d1709083dd8954", v: new $Int64(0, 7681) }, { k: "31bcb1a9f1772e529f4a3980ac86b20f225f265e266ddd3d4a94be99e100bf94", v: new $Int64(0, 9646) }, { k: "31c03a8246e0e8202a3384154aaa32fd3ea2faa74aed757f74570c569b93eaeb", v: new $Int64(0, 372) }, { k: "31ca40314a8022fb43d4f9a56686d918c1ed54e3b3720f7563654197cc1dc72b", v: new $Int64(0, 9822) }, { k: "31cd28613e867e574e3c8ecec24370fb055a5f6fa7b08f647f86dacb0f323f0f", v: new $Int64(0, 4328) }, { k: "31d0128d9e79cf6e17ef1c81d479a7785069ecabe7695871c39abf2a22f955f7", v: new $Int64(0, 3828) }, { k: "31da290f0c263db8a93c51e80e931dafd07de05752e01560ab59c27730387356", v: new $Int64(0, 3947) }, { k: "31e20cef8f2fea771c9c08460e567d5f615c775788f42d4620c9fb6df105dacc", v: new $Int64(0, 4290) }, { k: "31f57da7f71dda0fd1bad2061ee0a03f783848f1221ffc5e6642dff7fd2c22b8", v: new $Int64(0, 3385) }, { k: "31f791507b362415fcab68cc18e4d9e80fa75799001b5e5c0eab1d1401a777a8", v: new $Int64(0, 9531) }, { k: "31f79a011b5a757f881b0347f9f2e4089d36666bb9f7e46452261d59b81fcaa9", v: new $Int64(0, 8705) }, { k: "31f8cc4313b9f6f07e93b2d57a98ded7299987ff7f45d526cb032389120975ed", v: new $Int64(0, 4619) }, { k: "32007c9126c009bcfe675bdee219439a13bd49e321a9359044278784d1841500", v: new $Int64(0, 3745) }, { k: "320350d0c3a2c9f9c53cc380e7ce4dc0c729a8614d2767527ab2e401bc7b9855", v: new $Int64(0, 7594) }, { k: "320caaa24859700382b2d44100b97f9ac1267ecb7a0ff3b46dfdcac5787af5ed", v: new $Int64(0, 4820) }, { k: "321a8b75b8a7087ac1314abd591d713a78d3458e76c311f1cab4f15c957b9919", v: new $Int64(0, 7757) }, { k: "321af83cb80ddcf9deac0fac2118d1431a768027e572a699da00114b446b9c04", v: new $Int64(0, 6995) }, { k: "321b7a43da2cacc326349beeb5a63724b33c77dfab5457697f922c656d3fb73e", v: new $Int64(0, 8548) }, { k: "32220067469db69d9c0670e90bd911692796726540d1798f92cbd92f132e9108", v: new $Int64(0, 8765) }, { k: "322a14529ba8d299ad15183df5fdd713882d6f222af397b7ac574f6ac392568a", v: new $Int64(0, 3853) }, { k: "322ea857ee402f1603f36cc21f57fc70750db50891b75252c76fc2b698ca65df", v: new $Int64(0, 5547) }, { k: "322f93893fdf1c0effbcba44db60dfb06381764e7513c0bbab3ee9f0fd313518", v: new $Int64(0, 3948) }, { k: "324c58efa69fa7fe92f3887e2e4b5d8066d6ce8533f676bccf8444a4a762cf0e", v: new $Int64(0, 4167) }, { k: "324e48f6a6d092b4a4540a6faa21e8d06ac58bc94ac7193e5fff3262446aab2c", v: new $Int64(0, 5053) }, { k: "32513953d53b60d890972477f1cffd6508f37279f3e2d5d8d4bc2b012b91ff06", v: new $Int64(0, 927) }, { k: "3253aec6e884a802bc7964df9fc64a37de823d3ba3054b9f0c95306bed27e529", v: new $Int64(0, 4325) }, { k: "3263744ed96f55295fd35aa0313a077ec8abc66787a217e4bc2f36e2c71f0e0d", v: new $Int64(0, 5996) }, { k: "326ed0eb6cd172860c7d8e6f072ff3c232db0cceea2673b977edc133898c3629", v: new $Int64(0, 1348) }, { k: "326f04551a5bebab7c6d0d235653bd5afc0f338ba55115d00504d432a8dad0f4", v: new $Int64(0, 239) }, { k: "3270aec49ba7b73f979aa98d2bcf75c202cbd5b2fa534a6f81fef1e852ec6e87", v: new $Int64(0, 6561) }, { k: "3271dad509037b4634957f6e1262eed685d94e9536a2c9d2125e428d33b7b6cc", v: new $Int64(0, 6017) }, { k: "327b66492945d7a378d457f670f1dee6148635467f1306ddc8325418cd0a2335", v: new $Int64(0, 3091) }, { k: "32860a0b6fb8bac48ffbfd2a532f6d0e82f6207544f8ff9f130a7ebdd77961fd", v: new $Int64(0, 6875) }, { k: "328e6dc7f9a74c666f3f79635224923ca3c24e871328adbe9b1bef402f4cc69a", v: new $Int64(0, 4346) }, { k: "329cebe213a8e8885fb2a0a30995c6e70bddd9bcf9dc4ed9c459729153316d6c", v: new $Int64(0, 4452) }, { k: "329e722b7a0b176996d72e1cfc2ff75d79a0db55859e7a49c2c40b422d3bec43", v: new $Int64(0, 409) }, { k: "32a0ab76a80a4f9d404bd7a285c032af0d6135698285d1aa3279bb88e26bbc5b", v: new $Int64(0, 5077) }, { k: "32a23159835402e135df61c6385726ccc02a8bae1fb7298897a7fd717fec6156", v: new $Int64(0, 6844) }, { k: "32a68af5ffdfba659f3ba422aecd83e5d4003f5dc663cb1aa0b424c0a4470902", v: new $Int64(0, 5623) }, { k: "32ab53960f407ec56c492a36fa12a430b8393545b8eaec046f538530954df981", v: new $Int64(0, 6454) }, { k: "32b1801c943782d71e201ac23364cf5b08eff44bfea53c8dacc88697dc5cb068", v: new $Int64(0, 4068) }, { k: "32b7fa51ad7177f300caa2e7839db2894619a5e62e3bb9a2f2be33627f74cdb3", v: new $Int64(0, 9325) }, { k: "32bf1b5575148d20d10824498ce441539230ce83c66c99b1942eb7fbf6163679", v: new $Int64(0, 6229) }, { k: "32bfb7fa9fd3631c2ff941b3f7a9db8e4409ff7bdf379edb17d215c0388d9e9f", v: new $Int64(0, 3386) }, { k: "32d22b4d28ce5d66546e14478f21c59cdcadccc82fba25342e8fa3d6925ecedc", v: new $Int64(0, 4395) }, { k: "32d93820b64e6696772cb11c9f09e7d6c694ca5c85b3b4f4528acfdfe2c0c89a", v: new $Int64(0, 3463) }, { k: "32daa8f022374406e6fd5df8858cc59526b2c06da0b138f12e47f9b1331058d1", v: new $Int64(0, 1716) }, { k: "32e18dac9a022af8764e493971cfc722ea9d18ad0f006e8db1f292a442c1968b", v: new $Int64(0, 8370) }, { k: "32ed70070ae7cc9ff8e6686ffa94b596afbe8bf5c74b7e2d8e855705e0492fde", v: new $Int64(0, 4047) }, { k: "32f0ba12ea16cef8768d831f43ac1374e157a3f1f1ac51450a88e87ddc78fcb4", v: new $Int64(0, 6690) }, { k: "32f1994fe4afcd52585157945256e0079738321090114f01664912850ec4ace7", v: new $Int64(0, 3444) }, { k: "32f5b64be385721bfcaa54c8d9797a64b4bb45433e195217dc44325088ac3774", v: new $Int64(0, 4134) }, { k: "330222ef4ea3ce09305b671e877ccb24c971f56e3a842d2ac403a1aacd11ea3e", v: new $Int64(0, 5790) }, { k: "33032d88ee06a3563711e797a74b40794350ba838cc0a2a18139849f89eaf6c4", v: new $Int64(0, 8319) }, { k: "331578baf3770e5470eff70f60388166fafe793213066108f291cb64799619ad", v: new $Int64(0, 381) }, { k: "331857d0c9e0e23420214547df36d3acc87de69dd4713763b435b4217eb84a90", v: new $Int64(0, 841) }, { k: "331864295d6a03c926ed02e51e7ddc4d63a02d131edb2f3820511a0f54443f4a", v: new $Int64(0, 7849) }, { k: "331dd4f75e77ac3bc126ab33a3052d0f6e44b36726795b7d2a055b883c68cd8c", v: new $Int64(0, 6818) }, { k: "3326a83ff2fc972d9f78b51b6543f831f485924ca1f0b333f4f3d036a3ad365b", v: new $Int64(0, 4309) }, { k: "3331802324eebe7f8216921079c9c4b12c29d23a21eb8dc68d8ab76df754e408", v: new $Int64(0, 5643) }, { k: "333718a81c6fd833a2ae4676374ea6edcc86162178c691e503983fbf892217ce", v: new $Int64(0, 108) }, { k: "3337deaec3f072742cf3fb09b4df9876380456fedbe9aeb324e23c171eaee83f", v: new $Int64(0, 3192) }, { k: "3338115bf0537a5b6bda96c47f4b9e1b0915e16f8607a1792d9fd832710c1a4e", v: new $Int64(0, 2761) }, { k: "33394e31541bc826d82e6cd2372cf11e13a04e14def1fd99eca0f8c24a2e174a", v: new $Int64(0, 2703) }, { k: "3362ac507dc9ce04c20bc251a79a4814eaecac8c5900ac61537863318c24acf2", v: new $Int64(0, 1167) }, { k: "337aa0709cccced9de1b61a52d61c5e28c42324a312d8f2c3a9939e3005bdade", v: new $Int64(0, 3438) }, { k: "337f1412945aacd1284288ce7679591f813fb640bc4a11cc117a372130d8ed91", v: new $Int64(0, 9609) }, { k: "338e2a3f233bc3d98d2f8d729a054aeb250c5ca5d67fa561ee08f979196a9816", v: new $Int64(0, 8753) }, { k: "33970c46bae97b022217c22ce8895ffa1cce2e35585c449969888770a13df6cd", v: new $Int64(0, 5106) }, { k: "33a79b7a3e8593d1ce6a5dd7ce3a29f0af5f033643a5160c9a2509df2a575ed0", v: new $Int64(0, 4915) }, { k: "33b1efb90e3045648d0604f840b99b9bdec13c870957e3434f460188691c27e1", v: new $Int64(0, 9654) }, { k: "33c14491507e52172cf8da663614f0d93e37d543a289eedecb1235ec5859a84c", v: new $Int64(0, 9623) }, { k: "33c15dd6be4c46e66d5c1422e1e4398cbf3d17e7d8cec4afe169b8ec5ff7a494", v: new $Int64(0, 3836) }, { k: "33c1e61f9b2f66634f7550f529b1602b258001d47d1c701495057d3947aaf588", v: new $Int64(0, 3717) }, { k: "33d2f105f3cd287dc040d8ed70c724d14ad72f351a85b5e2cf971f69a4c9e73c", v: new $Int64(0, 7001) }, { k: "33def14a3cce353895080808f694e49d105641181c21ddc451137bc8b28fc5c5", v: new $Int64(0, 6879) }, { k: "33e1fd88eb11818225e944fbea9b8a833ef532acdf34a1115c0e9f86d5c7d0db", v: new $Int64(0, 1949) }, { k: "33e2a68b0a4058da71c0d5c909071d8006765e728e0c04281c02eadf83b2a491", v: new $Int64(0, 2144) }, { k: "33f976c2acf379784340e35d84876888db986300dd5b0e21c782c0b36b69331a", v: new $Int64(0, 564) }, { k: "340583fcfc14bb0de1914e564db4be420d5404efe241531ffaa83c0abaad9f6e", v: new $Int64(0, 7469) }, { k: "34079b14a2f4f5a2a89d5351463a2a418a607d19bb1dc0c2147f14bf9d714662", v: new $Int64(0, 8301) }, { k: "340ee09b3dd6fd91a9f4cd7419e71ff5869d6f8a6f1f3d391ebbb26ce84a4026", v: new $Int64(0, 6615) }, { k: "34189d85422889f40cf5d71446b3b4d8b9c8dcab3fe7c54cd374c983226a7331", v: new $Int64(0, 9820) }, { k: "341e245f1c2420b96618286c2ffc2143dc4e4d97531f2ed774800dd44bc1f2be", v: new $Int64(0, 2379) }, { k: "34221f589a89e409d85b456f66c855d1b51d5705db7547adb78cbb8cae2d60f9", v: new $Int64(0, 9671) }, { k: "342b84353066fc892353369136500786c3329f0a82a9e2f985b6b146271e9761", v: new $Int64(0, 4163) }, { k: "343c1dffda5c67a51a2c22d121be5af4f409961b333c9f94325a54a4d9fcfc88", v: new $Int64(0, 7933) }, { k: "3441b7b1dc221bf6d6648b090070aefd9be085819729ee75716dd7c2932bd65b", v: new $Int64(0, 4223) }, { k: "34420ac5a3bfe7c640bdec07a79fe42822bbf431425fee6da216c792f781a98f", v: new $Int64(0, 8760) }, { k: "34427ddfb376c26d57bdd88bf5212c41c3d76f0509c67cfaeacf47ee8a61b1b4", v: new $Int64(0, 8505) }, { k: "34449a6ab0f143a7540630159e4e3766b801d646deabfd817fded6a846bfea7e", v: new $Int64(0, 248) }, { k: "344859da38d1a444531724f58f0f12dfa3b35906983bbeb3daff23c2341f7e58", v: new $Int64(0, 1568) }, { k: "34638f3818f8da7750b9d6fdd3960f54e3a5bd9e025e44a04dc9b69ae2061e69", v: new $Int64(0, 3233) }, { k: "346b6757ced9944d3ed208cbfee9b768bbfe48904dabe52104d84ff9144e11ac", v: new $Int64(0, 4716) }, { k: "347c3519dd6992cc14eace4bd41ad2a1cfc00dc6e3a75fb40dad9fe0a795a5b5", v: new $Int64(0, 3661) }, { k: "347ecd259c7904d3ad075235271f3d7477ff05afd8a453f0ef43a07d7ff64b57", v: new $Int64(0, 3605) }, { k: "3482af8ce36acccca8ef2d8c248d16ffbdf961879556989ff29d0f8a469fdbfe", v: new $Int64(0, 8563) }, { k: "349477822fc16db7e89a3a6044fb44f85564d7157a2ef0e0175468b21cb47383", v: new $Int64(0, 9966) }, { k: "34a413c54b5c5f555fdac47d6f642a5e0728a71331479a8081f956a38d7b8f08", v: new $Int64(0, 3829) }, { k: "34a688fe122aa463d8ad06bba76f0143422a6fc47caf2eaecd4768e86240c55b", v: new $Int64(0, 5858) }, { k: "34a6d8be30816f0db02042954994089ed3db1f258202574f10832ec887892726", v: new $Int64(0, 4019) }, { k: "34a6fbdb9e211565193b87b6c3eb21acabc3411bd717d45c85f90753d9a50f91", v: new $Int64(0, 6997) }, { k: "34c2425eff6f84ed7dd7fe6cbe7a66dc82fb212336e747c2abc364a2f6b6f725", v: new $Int64(0, 9606) }, { k: "34c7f4ec7661b6f8663367d7bb6a7293ea49520641f64ba651e2dd10aeb8bb45", v: new $Int64(0, 6371) }, { k: "34cf0f2c854b3fccde8e88b6bbf1eb4878a72ea7ccfcf36cfec7c632bfec53b3", v: new $Int64(0, 7650) }, { k: "34d86fd53bb45aff383118b086fddcfb1b65eb7c388ab6be776a3707a418fcb0", v: new $Int64(0, 1339) }, { k: "34d9c07338080e2a5725f013b5221e0ccd2b3cf7686c62cee1ac09d2dbd13196", v: new $Int64(0, 1524) }, { k: "34e16cbd396a30ec43d0f2a836d2e34022d56fbc6b9f89ae88317d0377002b33", v: new $Int64(0, 1466) }, { k: "34eca37a10a657ad146a797e92d9ba809dd505b5093a094b95baec42324558f0", v: new $Int64(0, 8036) }, { k: "34ed86f30ae9731721fe0ea44169cdcdb19f6fc0b249fe12a88acf23a0eaa6df", v: new $Int64(0, 7931) }, { k: "34f60cb58b540f9ffa47a8dfb5e82b5645a164851b9116053fd27981af7be2aa", v: new $Int64(0, 9579) }, { k: "34fd5a755b9166bc6a9156517dd973d1119ea2cd115bbc7726eede7e658484fb", v: new $Int64(0, 9593) }, { k: "34fdfbc508a13b948a5e1ce465f860b49202d36bb2bfdd29d589507c76ac555a", v: new $Int64(0, 7728) }, { k: "3501ecb326fd17911a8483ef706192e511c625a10145961807a618bedac5e432", v: new $Int64(0, 6624) }, { k: "3502f3a89148e7572079d52d11ae578f0e2bdda34e5618cdffc0a1098f9f49b4", v: new $Int64(0, 2502) }, { k: "3512c44ff5497ddbc8214a4e33eead56acb59c3b31c813e6cf40cbfa346c4a7b", v: new $Int64(0, 9451) }, { k: "3512d65fbd3ff152f62d9f4a7aa22d9c42fcdcb5280730bb934edb9e8c567b24", v: new $Int64(0, 5427) }, { k: "352431e1d8561c3365716fbdf231572250acef2bab51292fac935c585a339c0d", v: new $Int64(0, 4277) }, { k: "352816a67d1c4b82b24b05c79a2c77c162fce1f2d840e3d59c37badf9c6baa72", v: new $Int64(0, 8794) }, { k: "35288ed256b033a405f107155351adcc862d035b1f1fd3a817930c433d0973fd", v: new $Int64(0, 9033) }, { k: "352d098e69726523ab0f2d95fd784fa28f08e639c19868e91b0782cd9cde8cbe", v: new $Int64(0, 6705) }, { k: "3531634095db44580219092e25a2cbdcecb49805cb23b9a1a840a9fbf2f11125", v: new $Int64(0, 9458) }, { k: "3532ed8e80fdac7bfa98a0896b83943a4997b1c0b19d248376985eb4a0d58afd", v: new $Int64(0, 806) }, { k: "354040908db26642ee31b5c1a563377a90b668d0cf101a6e49d1a8878c9a669d", v: new $Int64(0, 3752) }, { k: "3542c7920ac3b3f2c0b1813b3d36f0363a8eca571e142b959193aebb463328e7", v: new $Int64(0, 151) }, { k: "354471722750820727d74b5f38e2bbd7a5ef3a46521b26da7083e1f04035ad4b", v: new $Int64(0, 9650) }, { k: "354d39aa6eb48423b25060116e27f88c6341f4f864324cd2ea84ee711e4bae10", v: new $Int64(0, 2216) }, { k: "354e85fdad208656ab5f154d4d39bd092458663978b475320beebca95e210e28", v: new $Int64(0, 1464) }, { k: "355325ce1a66ba9e495fb7a53e8c5100b140dcef75a69d47dd7ed730238398d1", v: new $Int64(0, 6894) }, { k: "355bc132886a2ec820a3b955169e755e908ca685912eaa816ceb691948742b9f", v: new $Int64(0, 9525) }, { k: "355cba49e4f42941127fd603846a26efc7d3fa0bab995926ab8cd57569288771", v: new $Int64(0, 5401) }, { k: "3564fbc31d7361cdf833801a8710bcfca12f5274f1104cb05ff44a8bd8a0e610", v: new $Int64(0, 8031) }, { k: "3571657486b59569cc692ed2488119ebb660837f41a0667ee7cd718cf80107ee", v: new $Int64(0, 4643) }, { k: "357c37e9621caa6ca193d09557bbadbc652f90037d09913293e966be4f949013", v: new $Int64(0, 3598) }, { k: "358837c583cc26c9d40921b64f4fcce9318053a20cc6629aada1e93b9175da6e", v: new $Int64(0, 7369) }, { k: "358af298087f2eea02c5fa27fba8de13bf0b40c0a52fb9be156acdc4e9e3a804", v: new $Int64(0, 6582) }, { k: "358e664cbd5cca086de8bc7b547c16251e03286c71836883c64cccc4441730b0", v: new $Int64(0, 5116) }, { k: "3597090f6daac78b7b5cb3a0c0443a1ad8d1d8cc94e7e5c710fa1d2921bf3436", v: new $Int64(0, 5543) }, { k: "35a0a373e6d1abc70edb98cb4b7fdc0cb47cfc6a32e0db27a4bef75df294e36d", v: new $Int64(0, 2729) }, { k: "35a3f65b30aeccf876dbdd411e6dc148ef6903208b6229e2a706dcb5368cbf3c", v: new $Int64(0, 287) }, { k: "35a451a9e3aa2b88671e9164a6767643c8de1fc615fbd49435fd14929399c217", v: new $Int64(0, 2857) }, { k: "35b92a1b83ab2ec496ef9bd6e71c8c4608f45f81597128b0b80e997326c7e1de", v: new $Int64(0, 2100) }, { k: "35beea9a32d8226d10989653dcbf1ca5969818b2dca5d5d897e3dd4971c9b9a8", v: new $Int64(0, 3088) }, { k: "35c7cfd2da3fe18517ceae9f87de885d75a97d82a6873a8896e52592362fd5fa", v: new $Int64(0, 3565) }, { k: "35cc82a578b9e6bf495913bff08d1f2c507f4f762e279dab224e236c399cbd5f", v: new $Int64(0, 6932) }, { k: "35db88877f0ab47e0848b24635d71800e206b3c941f79d33f3a0a19f832e3609", v: new $Int64(0, 1416) }, { k: "35dc4b40592c2306bcdab126cea80ba133a5df2273df3fd54872020d6ae9a5c5", v: new $Int64(0, 5925) }, { k: "35e31958799b2880d81599ced6e81d381d522c110eaa087ee30ab8f779b2db74", v: new $Int64(0, 2537) }, { k: "35e9799d683ea691dcfbd423c6fb02c53a2b7cbb8c86fbed1c92cadd2b8b69f9", v: new $Int64(0, 8939) }, { k: "35eb9c49930de6fc51fb76d423306ba49cc2c917334623b551311031df6931e9", v: new $Int64(0, 4654) }, { k: "360c50a89f003d71cc0dff06a635bde306ccf15d53643f58513c8facfb1178a8", v: new $Int64(0, 6270) }, { k: "36179ebe6f2c05159afed6571ac2d3bc93102f1dbdfbec47fc00873de7e8fab9", v: new $Int64(0, 6172) }, { k: "361a8cafd95b68f45d5cb356553a8db5f7e9a52a8165e9c6fbd4b9953b11e116", v: new $Int64(0, 3562) }, { k: "3621a50edfaaa6842efd798d570c62f5ed69f5ea3f34cc9999090fd7f4a051da", v: new $Int64(0, 8982) }, { k: "3639b4a62c707e944c8f54c32f9a82ceb192c341cce5df886df20c3a69faa1c9", v: new $Int64(0, 3073) }, { k: "363f7f8bc2b2c098f8d4b9f814554c549240e218d53d13f4e44bf259abe29400", v: new $Int64(0, 8979) }, { k: "364491287821d2a5a79804c434c97dfa3dd79dda8820a74f44b37edd2b060f25", v: new $Int64(0, 1162) }, { k: "364f75e3743467c1503717fe23a66e8e6d06c2a18a6a97ec2af549885da17f70", v: new $Int64(0, 3931) }, { k: "3658f68a7178a5b38608a64658aeb4ad3cd1e0e182a81ddb30473a5564863aea", v: new $Int64(0, 2593) }, { k: "3674d2bbf6ba9ca3c1f6d5bb11a5186b79d9a3a9c11e8b0ea06708b36caca6fd", v: new $Int64(0, 4350) }, { k: "3675801200db0f033b9e67f7890cbc98849a67ac93414d02605043335f024ae8", v: new $Int64(0, 3558) }, { k: "36784cfe1643210a0139e70adf9b04e27fe54bbbdeb9f2aacc8f2444aca6300d", v: new $Int64(0, 5358) }, { k: "3681565c4a6867d46a85eb2d4f3da2853dfb14484e0dc380566751c7665549c3", v: new $Int64(0, 6066) }, { k: "368b3769f30dbd05df9c08744dd02a132123f0cf60b79f884f5cc522751f7ca4", v: new $Int64(0, 7858) }, { k: "368c5eafda1004382280c5fbbcd05f35a051a12541fd3f0934533b7161f77481", v: new $Int64(0, 2285) }, { k: "368e236d2a64745674a4557f0a55ba886347a24aeb050d47d1f78940eced9383", v: new $Int64(0, 7163) }, { k: "36906e4e4c5d7d70e53a4d9e3753c244cc295ceedc6ecc7f427db60841f52434", v: new $Int64(0, 2982) }, { k: "3690b8360186a619063c3d5f63adcc3d25af7690a16c5b02b7c6e8842aac37fe", v: new $Int64(0, 3974) }, { k: "369149789c1a8c3d6dfb19b17567b2cc80d0acd907cbd002030a725c2d5e67c3", v: new $Int64(0, 2054) }, { k: "36920657db14dba9596d92914784abbb453a85ddfa8c91ff00c5bebbe04ce183", v: new $Int64(0, 6849) }, { k: "369ddc9f84ec2cb5a2faf109e1502a9c829f4306356cd4171877b8ca05bd6f1c", v: new $Int64(0, 4845) }, { k: "36a004ebeeeb35b7e070174610d6cf4e2e3de59e10e9c899d1af67df62c30583", v: new $Int64(0, 9916) }, { k: "36a9f94cdd3a6dad47de777eed123eb4c1ee6dfa7fe392875993eb0ed28bf54f", v: new $Int64(0, 5946) }, { k: "36aae4040c5791f6facc3d49bda5f2941a7bc4387ea6468be03d3e61ad959b1a", v: new $Int64(0, 6791) }, { k: "36ab0141270b26b4e2c7a30acb2e0e8253bf89e2f6b8968aa010847ae0515bc8", v: new $Int64(0, 9968) }, { k: "36afe1c0b948831545c1af6cebfafa2df5b72dfb5079917424d3ec3a990c2fb4", v: new $Int64(0, 9276) }, { k: "36b32504b4e845ccda3c1ec43663ecdaf59ac43daded1478d3bee8ceff0941da", v: new $Int64(0, 8812) }, { k: "36b5cfaf8735d8c9e33a3fa7a2529c2a884781c5e554fece03891b9fa8d95bc5", v: new $Int64(0, 1670) }, { k: "36bea8353b180684be6f4908664b8790d309b773fd2f59fbe4b2d04c3ee2baf9", v: new $Int64(0, 7446) }, { k: "36c2b92dc59b28cc0c047c4a0e51f98c641c84eea1001fd913c6a336724bdcff", v: new $Int64(0, 6532) }, { k: "36c775600e34ba69da85f746a338f49f796207dec045a56995f1e3a449d45c73", v: new $Int64(0, 2883) }, { k: "36c87d227bbeff47c321a59da02c7ae2cb3ea2e9fbb46e6e3ebfc0200baeb6f1", v: new $Int64(0, 3861) }, { k: "36d129dc45d898e8b81819fd3561e31f753a15e1254feb8187fe04d19cb24623", v: new $Int64(0, 5308) }, { k: "36d345be08ebe728ab81d85609831706acfc73361e6ab2bc7d83e2597b60a156", v: new $Int64(0, 5566) }, { k: "36e00be1ef090c2f9975424a02ebf3d185ed5ec91e59527fff003c9e0110c4f6", v: new $Int64(0, 9412) }, { k: "36e41c81dfedcb6bb6623d2d9bbcbd65866a78291fe7654ffb8e5b37bd99d4ad", v: new $Int64(0, 8057) }, { k: "36e98aec34bf486caaa9d6472ce1ea42899fadeb976aab75cb308732b4e0c916", v: new $Int64(0, 985) }, { k: "36f6eb760ca6385e1ed7e96c72163728717932ed207bb52c84d5c4f86e68a0df", v: new $Int64(0, 1033) }, { k: "37028e3f427416dcffdb849dbaaa9b7fafacb3b378807d81c965943cfd5d3a3b", v: new $Int64(0, 4595) }, { k: "3710f85dd85ff9e2278809023ed3981c691c5125c6135414f4c65c653311e09f", v: new $Int64(0, 9811) }, { k: "371bb8de41419413e4bf6d4ee89101d7f18a0bfec7abf0fc5545bff181b589ae", v: new $Int64(0, 8632) }, { k: "371bc95202f55e284fafdc0b4a363476fee7b24bff0601b0202004db04efd2e0", v: new $Int64(0, 5109) }, { k: "37201cbfeba8247130c6b85fff7497336c5436ba4a9b1d197a1fb315a849391b", v: new $Int64(0, 8340) }, { k: "37201cf4b595b5d11c8ced0a10d7ed44946a55d2a821a2b96f171f2f43c23a13", v: new $Int64(0, 4738) }, { k: "3720c734abf355eb7053959a80e36e24ebd33730dbe02889a1fdc276094ed2ee", v: new $Int64(0, 2739) }, { k: "37286c108e66d7ef8663520c889ee05ce4dcf07655fef376285ed97abe8afa50", v: new $Int64(0, 9426) }, { k: "3735c1fcabf609ff626e99e852b95abc36d638c0c82649208fa6c9a1bf49d412", v: new $Int64(0, 8956) }, { k: "3738ab27af75b034d90ee781a25d2b9b20bb35afc8b3958861a20beb6c093bfb", v: new $Int64(0, 5327) }, { k: "373e8af502e7808c85bc911aed3c6645fc77b96e7cdb066efe44d5c25deb9fe1", v: new $Int64(0, 3377) }, { k: "374197e7b7dbc78725101735bcf34837f5535ff4eace9598dc25571669337107", v: new $Int64(0, 4793) }, { k: "374261d61e669fdefe5139ff8e8c5a6307bd10f3a90ff5b3ad16a6308d7e8125", v: new $Int64(0, 2180) }, { k: "3746ae5f3f8be302991d247fb3923e011258639e20a04213b12af4bdf5888779", v: new $Int64(0, 4571) }, { k: "375a4d9f014ec82fe4cdd8e513851964691f86e783d9fe655a519ebe13938726", v: new $Int64(0, 6412) }, { k: "375c373ad1daa9d8784ffd490f1cda46335f8007495a75d650217facf0a094f1", v: new $Int64(0, 9638) }, { k: "37654f5b6fc44083dc0ee01d2ea243d475d771c9bf3c6c94d3dc12fd13295c1a", v: new $Int64(0, 1802) }, { k: "3765c9027f03a7baf00df86050ba15e961eb2efa56847066875eb282d817609f", v: new $Int64(0, 3421) }, { k: "37660d3f8a1fde0d2b772b8f188fb82008edee80dfd0409ff06a8ceaaea5ce12", v: new $Int64(0, 3927) }, { k: "376971ce2d6d2d5257e3123f19168d2a46600f5995ed7c8c93888e01bd2a176e", v: new $Int64(0, 2848) }, { k: "376ebf69ce6d0e119f004418bdb167790ae434a9c92a2d549539e7321f821b14", v: new $Int64(0, 2022) }, { k: "37705e0010f6eefa6cb33644bad34cd53faf33310b771e3a5b8f5556c7829eaa", v: new $Int64(0, 9967) }, { k: "377658f33ee9058c71862de26bc84f4161011f17d5ce835fb99202bf673f26d4", v: new $Int64(0, 6953) }, { k: "377c4968976c16c0de2f092f0c240e968516aa7d7c5089a0142fc4efab14c05a", v: new $Int64(0, 9054) }, { k: "377d4cf39386907f09dfa3abc8ad2e7271e4d490472949354c790c33d7741bb5", v: new $Int64(0, 8174) }, { k: "377d8da614ae818a8ac9a2ce720285d8d56a1bfcf2b23dc93186420ff4495e31", v: new $Int64(0, 188) }, { k: "377f905686741ec50a9d5e7f03005d4670e32aa5fac7dcc0113053681404697b", v: new $Int64(0, 2566) }, { k: "37858201c7cda3fa574006b55783f3a732be1d0812c8248d223b266b781d7003", v: new $Int64(0, 6417) }, { k: "3789af7786daab4bce6eccdcc54c9b2afad634d165ed2b68484ca9a37c660162", v: new $Int64(0, 3834) }, { k: "378a39bc8795eed31190053d35cf03e1b7a3f868d8b52f77ff4abe2703018c5a", v: new $Int64(0, 7528) }, { k: "379112103588905f33af8aaedb00fda000d6763b3082f01d26ab402c086b1258", v: new $Int64(0, 9163) }, { k: "379a66b1fbd1357e51bf5ff1d9867d2fdd0a92cc408db298cc05a2ccfb81b628", v: new $Int64(0, 8711) }, { k: "379d4f726889c03c99fd20001c9b100b08f3124032eb951b613d5ffffee234c8", v: new $Int64(0, 5128) }, { k: "37ac5c7d2dc3afc02834a3b44cdc4c72eaf424a9e46fc4498910b1edce5fca9d", v: new $Int64(0, 931) }, { k: "37bed8ac20c030513cc7e651c2d10bb10f93410c084fb44023718c46dae22538", v: new $Int64(0, 759) }, { k: "37c573b3379eb60bcfa584b4f71346673bfd8b4b0c43cee85cd4fd1dd7d21869", v: new $Int64(0, 6147) }, { k: "37ca200d76eb34946791e50d724076f1bcb4b28d4d1a0d74f233455d2357b68b", v: new $Int64(0, 1221) }, { k: "37cbc4e54d76db71a72d983e3bad6ae0f504e70bd1659c0a45357831a0aa707e", v: new $Int64(0, 6805) }, { k: "37cea697789234c45a0638ec5dc5ba0753de3dc8051b060e832afebb86398532", v: new $Int64(0, 2194) }, { k: "37d4057522af56c875b484d28ee51f03c99ed98bff46b162e705dc4bda425364", v: new $Int64(0, 8167) }, { k: "37e0c4661dd7330a3db6fb5a124c37ffe6a027999959b0ef76d19b40bb3f53b4", v: new $Int64(0, 98) }, { k: "37e27ccb917515374d3a510794d352bdb8fe1f64631f511043e96b2e9ebd3140", v: new $Int64(0, 341) }, { k: "37e623e10b025151c1378f788aba68b37478f8ef98cffc69d52587d47dfa32df", v: new $Int64(0, 1794) }, { k: "37e91bc3467e395bd34c2cb15ea7e0b36b3fc0a7ee910e271e621f0b325cb9c1", v: new $Int64(0, 6941) }, { k: "37eae1c6bd8f59d914274b6292d9a2ed43bae51ddfab002e6a87bb39de43c394", v: new $Int64(0, 3589) }, { k: "37f441be1b86915b7754c4e6365c0eaee800654341f1107a407aff81ceabfa20", v: new $Int64(0, 5295) }, { k: "380633ed2d46990fad4103eb2f0d0926265fd54a0a1ed36d6fb33ec0517aeda0", v: new $Int64(0, 6914) }, { k: "3806e9f397ec053bcc4721be9e600a2486d14fd0d98c017a4a68cdee16821bcf", v: new $Int64(0, 9263) }, { k: "380cf7af2a6f9a4dc3f202a9f1a495a9403660995307d265a5e933b65fc2cacb", v: new $Int64(0, 7602) }, { k: "38123d1a03454ec67597ce8db04cb26811bb7d19f7e095237712621f5991e6d8", v: new $Int64(0, 9940) }, { k: "38125a99f40c124fe9489e13d6cac7d0d6c8dbfcefeb4a9175ca23fdfa8bfbd5", v: new $Int64(0, 8376) }, { k: "381b56217689b7344d2aa4a2e1582abf2e2df11bbb4a6ba6509fa30496fca634", v: new $Int64(0, 9160) }, { k: "38204e1b7edc4bcf10de501c6fccaa204698cb8f0b51e722fbd93d227d2ef07a", v: new $Int64(0, 5724) }, { k: "38205cb912d29d2ab58dfcdf018e343b79e5f20ce513ac6e03eae2877f791624", v: new $Int64(0, 6424) }, { k: "38245c155c6331a56cc68658731a37b50621a24fb6da5c6f3f00da51789d6e51", v: new $Int64(0, 6714) }, { k: "38337d979b75b29bcc60fd978fee04bfae52942978386a0b0cc5dde928298ac9", v: new $Int64(0, 1960) }, { k: "3836731c765118f86199b89ef58f83511bb49e74e7a29fe045e21a6c9cddc2a6", v: new $Int64(0, 7745) }, { k: "3839fb1d5b1f5451c3d82b21e5267b9ee38e129b7f43463cce9012991378234b", v: new $Int64(0, 3126) }, { k: "384288375d371f4763e2d331690f08fb8dc811475bd442ed597be8bff4881eca", v: new $Int64(0, 5588) }, { k: "3848d8ac78f215da1ba470608e4bc8c62d839695b62d16ce89ea76e739c89b76", v: new $Int64(0, 566) }, { k: "38506af60d77b0f39da1efd541b59c1338922fb2c75c6486c07c6a6dd489a8d9", v: new $Int64(0, 1639) }, { k: "3859d6c06bf120a55bcfb3fae5d46f8ec443430f87ff76562b21ea3455f0fe97", v: new $Int64(0, 7780) }, { k: "385a3c6fda7b31ddb960a916becf71bef035c571313e6a5e9d0a26b6aceb6c93", v: new $Int64(0, 20) }, { k: "38625abe7f47b08f2a965ac998b939350eeefe13d66ce9ad7067e88216b9001f", v: new $Int64(0, 7073) }, { k: "38636670cd48b9f9d1972a1a9243e7e51e369315b96df136dc18fe2ddc6c8fb9", v: new $Int64(0, 4735) }, { k: "3864076366583f17bd39c0c9ca6df9991ce3cf076f5c1c8795f5771855b0dab6", v: new $Int64(0, 9148) }, { k: "3868d1a02c08103defca90630df68c67162291b34c6df0da200aa2324077c413", v: new $Int64(0, 7940) }, { k: "386e0ab9f1f9f3de71845eb1fb051dfb670ebbae49fdc01f06d55c9711bb0e43", v: new $Int64(0, 8683) }, { k: "38744d7054416b7c11905772e64bde142ab6b15bfd29763a7950f874b3114c57", v: new $Int64(0, 1729) }, { k: "38761a498beeffe4f718d26099840481836b62e7bd15d2e848f3214ad850cfd0", v: new $Int64(0, 9070) }, { k: "387788ecd700a08d1f06faf48192c79f9829e66efe9b799b28821d414a439576", v: new $Int64(0, 3797) }, { k: "387b0efc834460526773331d824b498ae2f57992c9c275297c176751432d5f95", v: new $Int64(0, 8757) }, { k: "38964024554538c3bb2629fbaec2488eaa3c4f05c4bce524843b884575940688", v: new $Int64(0, 9502) }, { k: "38991f3ddec6a6fadd73ee05c782326e858811081d6a89a5542bae1cd0fe1f39", v: new $Int64(0, 4851) }, { k: "389a4d6d9c7a1c77fb91146580e0b51aece2fdd4288f158f154752e162bcbfa2", v: new $Int64(0, 8483) }, { k: "389aed2389d9ceb38039212d4b993256176ceacdf62eab98a3eba6e8984edbfc", v: new $Int64(0, 5496) }, { k: "389b6e2fa205cfdad017d341605b309544009990b0498d63249194b23582d57c", v: new $Int64(0, 9528) }, { k: "38a0b0e8aab55b0c81298f8c624d9392734325960d690b3419958cb75a2f0706", v: new $Int64(0, 9904) }, { k: "38a1426f30c57b40924ce88a7f9c0fc26a080480796a396fde69baf38ff0d4f0", v: new $Int64(0, 3579) }, { k: "38a5d8a2e4497cf49e6486232a95e801758d670db4359558aea6aadabcc41e95", v: new $Int64(0, 8702) }, { k: "38a77bea7d9f7751fc16a0515d865291ecc3864e8008c8c6c5eab2aa33a1f28b", v: new $Int64(0, 1447) }, { k: "38b54fb8fb46d7a3d49ae00c2aa2d43cbb61d4a705b87a74a3125d6c6ffaaf08", v: new $Int64(0, 2722) }, { k: "38bd73e679a39f12ed341a897926ae598858bc8620cc1d86efe5d36fbfdb2e5c", v: new $Int64(0, 9208) }, { k: "38be33dc3a1ef9956c8495a0bf68c6f40a49d4568d353e6f32c6c039e29ac5a6", v: new $Int64(0, 6974) }, { k: "38c02790e38b02d3d1b65a237e9798783f016b3b00a5c46046787f16c73f30b0", v: new $Int64(0, 6517) }, { k: "38c6d973068fda779da2b39b47948e4af7c60b59d90310d9a2628f74db426c7e", v: new $Int64(0, 7503) }, { k: "38c6fe62b400754cbd45aa2d0b7c00f396708372561e419eaea909885dffd8e7", v: new $Int64(0, 3378) }, { k: "38c964cceb1ea41e5afb905393cfa53856683d4c1c232c2649bf51d0bd663407", v: new $Int64(0, 5589) }, { k: "38cef650f6c0100a01c0e0b6bfaf51b165c2651b6d8d8c9df4192ab850147b1e", v: new $Int64(0, 691) }, { k: "38d0b61127d7d37336da60a0e6d455d8e985c872c519d2ce68ade0264e4ebc01", v: new $Int64(0, 7936) }, { k: "38d803aa16343d86b090f44c07c66eac8d6ae43962ef2a9e5a596373f5227206", v: new $Int64(0, 5397) }, { k: "38daad2c5468eb655a7fb3f39fa5b9e7d17e8659ec49439116f0577b1a061fe0", v: new $Int64(0, 6633) }, { k: "38e19db26d9b856f1490ff7c899d05587f3deaea21dbe47645359f1c99364803", v: new $Int64(0, 7571) }, { k: "38e8220ab4b7288214059fe3d0156c5617618617769cd60f036b732742fd09d0", v: new $Int64(0, 2882) }, { k: "38ed1c510b24fa265494a2174044fc7564abd9600f61e11b2a01e8ed18f3a5bb", v: new $Int64(0, 595) }, { k: "38f0a9c97d0c5116427cf26f36ed1ef7632b26c480642950d025e4c76eba0495", v: new $Int64(0, 590) }, { k: "38f35b5d365940259a3be1add70e9370752755beff96a665c547dc5cd1e2c9f1", v: new $Int64(0, 247) }, { k: "38f7c5ff4d3c1dad98132d07186f44b204c35b07a5862be0a26563052d7aabc7", v: new $Int64(0, 2825) }, { k: "38fd4b541e34efa06684bf455da2e799c890b1a4508fad6bf3a4fb1d1ad1f48a", v: new $Int64(0, 3823) }, { k: "38feb918ed2a343d7eb42e4d2fc39b17400be0d90f679d48e61e857b4fcc4b06", v: new $Int64(0, 5444) }, { k: "390afcfe09749343defeb7ac4f467213174f23366616af309a5d6e634b9fdc08", v: new $Int64(0, 8218) }, { k: "390d1725afe3d9c43f3e09c86d0813f9a686f2df923a36c7cd27b866db48a19b", v: new $Int64(0, 2433) }, { k: "390db60b70ef9c0f1cec0a4220135fa4b63a0f30a27fc7d4d43a2b21ba4ad972", v: new $Int64(0, 4237) }, { k: "39156aff42210e09e2da1fc376c4bdadd68dde4e4b9ccd019687e6daf642788c", v: new $Int64(0, 7258) }, { k: "3916b526a967b355469d6b498b0df590d8e513e1e6e7d2d7bf08881cf71c4f50", v: new $Int64(0, 536) }, { k: "391950778649e1ba4d3800f8da20ca38f6540a6a76b9948145f783baa60711e3", v: new $Int64(0, 27) }, { k: "391a2bc606f8e08113959b1e3d90c3610b4917c158cde533194cece73992747b", v: new $Int64(0, 4288) }, { k: "39272ba706603051f33eb80a4676b3cf6081d63ca9eec1a499df4edf1cd13bae", v: new $Int64(0, 4053) }, { k: "39278c7ca584e9a6f9972bd00dc9667811dc46927ee13822f6f7f3a1c0794808", v: new $Int64(0, 3072) }, { k: "39289c8998fd69835c26b619e89848a7bf02b7cb7ad1ba1581cbc4506f2550ce", v: new $Int64(0, 14) }, { k: "3931fc518885478f75d80ad39fd0f63beb682af9ed31104e9e90f14229c6ff2d", v: new $Int64(0, 7761) }, { k: "393e0f03a14e7edd8156e952a8314528726d4d94d1560a753a5531382ab2e532", v: new $Int64(0, 935) }, { k: "393ece3c4e2fb46f864cb7eb331a7a96656a2cbf538343dc78179821de795095", v: new $Int64(0, 169) }, { k: "39403f00396ebaa48577cddd95d528a75cddf86c7878b8d20afe0792e05a24ec", v: new $Int64(0, 7109) }, { k: "3941a757f38edf439bbb118ad998930cb5d32e6de8691b226714c50a7d848ed7", v: new $Int64(0, 4070) }, { k: "394ea0357cae29430f1d48a908dd653cf0c30224b81677af166d8a21318a639c", v: new $Int64(0, 1702) }, { k: "39555b7867b7cd5c71494ee57955640232878f3e5c54e448ae37c4e8e83ed46a", v: new $Int64(0, 7209) }, { k: "39593d6f0989d9ea813883a21afb2afa42e5acdbd7eb9b6cda6defa5b9edde8c", v: new $Int64(0, 5622) }, { k: "396ba522425c4288108cf1b4ddccdb7151bced12c1b35bd20524fa8dd0e1d3e4", v: new $Int64(0, 349) }, { k: "396df57ac18118681e69ccda365b1510ac9542c2f34221241778d53cbc454539", v: new $Int64(0, 719) }, { k: "396fc41d1bd1eeae05a6503ae901c497fd852a08ab68cc958cedce38a756ed04", v: new $Int64(0, 9067) }, { k: "3980edd2be18cd89d3c5ab3426d3b2274c9a000293facd9d40bb3c530f17b458", v: new $Int64(0, 9303) }, { k: "3986277e19ddc0e637f83ed48ee5c7ac3816ce30788d59ca85e10daf324ca26c", v: new $Int64(0, 7726) }, { k: "39966ae1a3111be323db9db89c2ab7f87c84b10d2a34a67e4cd57ff590268d88", v: new $Int64(0, 363) }, { k: "3997ab1b1495c423ec5e7140f4c46c4beb9ee043f6ac4944b77c83a9eff680eb", v: new $Int64(0, 3625) }, { k: "399b8cd35a9f7d968fb41e6bc6e1069fcfa05447b15861e3c8a3c772c93ce807", v: new $Int64(0, 4419) }, { k: "39a6e03b4ed971cb401ef87cf2d7f261a23a258a610af8ba0bfa28d2d3abdc30", v: new $Int64(0, 1391) }, { k: "39a71014eb263ab858920c25917868b49a2e5e965c8ae4d00f6a9038493e9897", v: new $Int64(0, 5593) }, { k: "39a7dda2b76323b5e7613925fa8488fbe889d8b3627588061ff5678427c9bf2a", v: new $Int64(0, 6355) }, { k: "39aa402920844719e652233a3f08dc6184732b9ae152524f6fee878d7d4ee3e1", v: new $Int64(0, 659) }, { k: "39acc5fac3061de716cc626463b5bcae929cac727be74e4f5129ad42ce69d515", v: new $Int64(0, 3465) }, { k: "39bb61dbb42fb53daf6ed9dccf6adc66abfb0a3e0499e05be55a6aafba7eba41", v: new $Int64(0, 3925) }, { k: "39bcae9aa0bcc0f7c09d563cf48d96a861acdb9e0651e2ae5a004e350a8d2191", v: new $Int64(0, 9883) }, { k: "39c0d4aee4b4f464ae0ed01da9db36c914a4c37f529dd458757322723d7ce0cd", v: new $Int64(0, 8857) }, { k: "39c1cecd85c28173b0f541597193ffed51115ecd804eb42b59d5ad2e5efe4f55", v: new $Int64(0, 7372) }, { k: "39caf8ba5facfebc9068d3902819527e014507ea101ba1c058dc3471a17999f3", v: new $Int64(0, 7667) }, { k: "39cc64b9bb8edaad5b977205cd5ca60eba121bd0de6e0997dfc319fc25883d8f", v: new $Int64(0, 5322) }, { k: "39cd4fc1487a681c841c07ac0b13e27396b0cef37479d6918d7bd2f44f7d6388", v: new $Int64(0, 5222) }, { k: "39e17deb26985d60c81e446e50700b8b1f6d86a007fec74a2b72025b86d616b6", v: new $Int64(0, 305) }, { k: "39e1f9c698abf4aa47bb270d5eaa2a3248876d143344227afda5f46e03eae931", v: new $Int64(0, 7343) }, { k: "39fd6f3573f3c1f6c2b4456ad1639b8480dcd9ee316750d8ab1933f60f2407b2", v: new $Int64(0, 8752) }, { k: "3a026cf1de793b60bbe9dab7c331a133bc9c2e320eac65b3232871b02e9b6146", v: new $Int64(0, 1575) }, { k: "3a054ac0a62492cff6ae447cd726572d342b759ac8ad296f9e473367b66ca792", v: new $Int64(0, 9591) }, { k: "3a07891d92683fcc95d39ec2d4e023a8d2ad61422df99dae4119f85a9e3fd210", v: new $Int64(0, 6014) }, { k: "3a253f6ec08e1adf4a381bbc571d88b44f496a30e00728b33aacd07fc9cc8b9e", v: new $Int64(0, 3998) }, { k: "3a264d93acee4c080f67b80406b1a7617055abdf332400ddf6d6ef974ab8da52", v: new $Int64(0, 8978) }, { k: "3a3102d6c3c066b26bbeec5e4e2d680ab886268fc2cb13b8c894e6dd5f534f80", v: new $Int64(0, 1273) }, { k: "3a3234b8fd3613a14b66ca1ea61005e13c89a9b7fe10a8d9a0de559621fc4959", v: new $Int64(0, 3657) }, { k: "3a38c9e899a530dd9c698050393a80a4f8bcb67646db845ce5a554a283fd297c", v: new $Int64(0, 8283) }, { k: "3a421ec4ff5050e9affe36c45753f6b7e16a3d0cb0879d75f81a81e202d9a50d", v: new $Int64(0, 7715) }, { k: "3a494f8e0fcbfd1353b176725ae5ac6bf8d1616cc9d30cc0cd548c6954ae98b8", v: new $Int64(0, 8923) }, { k: "3a53f771c1f32a2360e06537e904ae96c72222509bb9985fcb16d2fc0b065ab2", v: new $Int64(0, 819) }, { k: "3a5462bb413a56d2afb1832b427e37725ebdc5057e41f6cb45c3fa42a221bdce", v: new $Int64(0, 9442) }, { k: "3a57170fe78388bf6640e5cddfcc6480b20d47faf666244d7ce4f61a765c3eb8", v: new $Int64(0, 5132) }, { k: "3a590a013ffd4a8c34ce566c0444522967e7f4b88f4742cfc28b454ed6522144", v: new $Int64(0, 8061) }, { k: "3a6c993148dee612c5905f7774a7677691760495c74c96394d327f5898c86412", v: new $Int64(0, 8642) }, { k: "3a6dd215c5c24ee8e8e79ba71d7221e8dc78064b1ebf45170894e171def207a9", v: new $Int64(0, 1877) }, { k: "3a839f028a1b1534028cd35ad44afd6178a86b9ac813ce785e3cc527f6831d04", v: new $Int64(0, 8215) }, { k: "3a88b79291fc3ce65eebc4a9a366cfc43c667f3b84535515f9d5e5af7365dbb2", v: new $Int64(0, 6097) }, { k: "3a90eb7fe9d7ee704fc20d5431f7b3a448561b6f08e0b068ec6f33eff0e57918", v: new $Int64(0, 5828) }, { k: "3a9a207d709376a3e3318dbf57f96bc482d5ac664d9c228b83216f2c061d8662", v: new $Int64(0, 4549) }, { k: "3a9a5c36aa93c3b6c8835a03fedd7c6b166f7e3d9d5cfefdbc69d26c153d3638", v: new $Int64(0, 973) }, { k: "3a9d9b764021fe3ce0452d58488a67940d9a1c4fce11b427c0b1caea222ead3f", v: new $Int64(0, 5384) }, { k: "3aab02f8f3f8f600532c3950c57b9e436ffb7f966db8c7a3739cf31eb3c89263", v: new $Int64(0, 6004) }, { k: "3aac3738be99d03046933f8597517da201af026ba498f875a6e879ca3530cabe", v: new $Int64(0, 5769) }, { k: "3aae8753a66d9cb1d020fed2fc139b228fac0d8f8fc50fe13a2bd3ee4cb0e5ed", v: new $Int64(0, 8372) }, { k: "3abc7c2d311cf88fbee3266d64a7624b247ddc6778aca925e9c4f1f56189cc66", v: new $Int64(0, 2457) }, { k: "3ac196c23783fe1bacea82b42e34446c02f9dcf20941b821c934ab6a116d8ac5", v: new $Int64(0, 6591) }, { k: "3acad7b228589418f1441133ea826b3bcf2023c3d11a6c5cb5fc1fc3c3a1715c", v: new $Int64(0, 8619) }, { k: "3ad915dce6589575ccc3b075ceb730cffec9aec95f9882b9718c60f36a14e86e", v: new $Int64(0, 3860) }, { k: "3adbfec3cb7e272677b357ba403f04830cfd46e33fd7a91f223eac6a06fc121b", v: new $Int64(0, 1743) }, { k: "3ae4912b1db2e3d829d322436f2a6365ffd1c4561270eade888f7b9dacebf2c8", v: new $Int64(0, 8609) }, { k: "3afa51b072f3672db747bfc3482d60eabe62d6c3d09115884f6297b9fb90f967", v: new $Int64(0, 3618) }, { k: "3afc7067e41d80b813a7373b539f885b8dd73a9b04a1a9850f6321f11e27bbfa", v: new $Int64(0, 177) }, { k: "3b05017dba8d6e93935ed1ac0283d4e04b5e401285fd14202c303e95facd9eef", v: new $Int64(0, 191) }, { k: "3b0eab63e16cad9d9ff687f81f361c467e8a7f114e204d76494b7116da477851", v: new $Int64(0, 7208) }, { k: "3b1465e5f12a1ce090a208bd8b23b5aefc9996783aa2b3a57be82d50a0710708", v: new $Int64(0, 120) }, { k: "3b170d3736db3e3cd8d3e3ba6af46e26c1bd6347ce9f68b3e97946673c8ea973", v: new $Int64(0, 6619) }, { k: "3b1a2c607197928d551062d2643407e549400ee52f324bca26f20d94e1a0f1b8", v: new $Int64(0, 375) }, { k: "3b1f03c511c3017da3389703ba8fc1de974ddb311ad3a4fdd84415ee9a1128bd", v: new $Int64(0, 5894) }, { k: "3b22ccc7e69f1dfcb338de06363d828bde5806efc41d32881d742d3ba732a3ed", v: new $Int64(0, 5117) }, { k: "3b2df8439a957d05f5efac74b52c2df25668530ff93461d2ac0f3b1d9ae38313", v: new $Int64(0, 770) }, { k: "3b2e6e292c22ceab408b4d38362a70887e9798ef8232c11d851505283cd081e0", v: new $Int64(0, 5082) }, { k: "3b38c8ee6524400b61a042deb4a38fba22b6ab27134dc8fe971aeffa8383e4d6", v: new $Int64(0, 4752) }, { k: "3b3acc0a1009eaa084e5bf311d7a3ceb0a85897b993ff15ab802deff86bddfa8", v: new $Int64(0, 4650) }, { k: "3b3e945b15801a271f465f1a07aba9dc2d25c954e8455610bedae519d65abf8f", v: new $Int64(0, 7951) }, { k: "3b404519c8c93c2b75762de99f4b31bb3a046af268928dc1952d5ef7fbc7af84", v: new $Int64(0, 5841) }, { k: "3b448f4b902e8b579ddb6f3a660b7162612951269e2361250ed45f84a2c78525", v: new $Int64(0, 5782) }, { k: "3b487d8682ce22c59ff288a05f9074200e488009241fb1099f811933b0258532", v: new $Int64(0, 4062) }, { k: "3b4ccb872b1b544f2bfb0f2376cfee3c6250b28405ad81275eeb7c16c5c44658", v: new $Int64(0, 7042) }, { k: "3b4d29bcfd46e22715c4668c6fd1dc6240f3d228d58ad1b546bcd0c2f702e525", v: new $Int64(0, 7942) }, { k: "3b520b47976b9b296638b494bd99ed7d055d065dc27b83b520703a812374eaa0", v: new $Int64(0, 5568) }, { k: "3b57fc64b88b3475d9283e8e64e465d3e5eac8964c8ed78a0b140033669801cc", v: new $Int64(0, 1038) }, { k: "3b5a8fe7e4bcb5943e371ecfbe973e2a4a64db47aff658d76d44ced844a8ae29", v: new $Int64(0, 4449) }, { k: "3b6d4ad597f47bb2ec5183642a68b6b0dc22900c7f39b56ad6a6129c83bb81bc", v: new $Int64(0, 8256) }, { k: "3b791b03bd7a05b6bdb898542d502bdcbb1385adf4eb657fab46ce9d123bfba9", v: new $Int64(0, 4300) }, { k: "3b7d61abe1d54730dc6c9fd1d96d965fd60c633cd74a29f6ea876eda0f504f89", v: new $Int64(0, 4216) }, { k: "3b819f70d5e6bd34a4643522f3f055504f1a5915f7c8e48698181bd11af78c7e", v: new $Int64(0, 4317) }, { k: "3b81be118fda83d1e4907bb480f570339b466b14a7a496a3f6f1f5adbc7a933f", v: new $Int64(0, 1616) }, { k: "3b84592ecf37fc7f2c10459595be61fdb25becc0603e4fd980ab48cf49f751f6", v: new $Int64(0, 3019) }, { k: "3b8b48c17429b4170fc3b817317966cb969d53486685103bfadb3406ca29d5a8", v: new $Int64(0, 6958) }, { k: "3b8e0bec416627ef0b5e953fec3084f6a7ddeeed3e2858e0115cd222d496a4dd", v: new $Int64(0, 1613) }, { k: "3b8e1076cd4c7f6e535d50446e284c929b12b8ad0b59ce51def4d805a994dc85", v: new $Int64(0, 1376) }, { k: "3b90226020f6680be621e2c87a1f0c3cfb9e40a6e74ea70a0b8d2a52c1fcecee", v: new $Int64(0, 5627) }, { k: "3b98a4754d2354ef35be559f011c3478e63b95aab20c8e957b324b49a493edd0", v: new $Int64(0, 5505) }, { k: "3b9a09f9924ea7c18661b95a5320c9f894f0fce5c94a888b5550c6be1d7bea57", v: new $Int64(0, 1706) }, { k: "3b9de8dbf3d7f2b55b3ee56f3e8b7be5b00be1699be71655198b1f3ddcbf7c19", v: new $Int64(0, 3051) }, { k: "3ba91026b060a7ef27c036d8f55678b34998a93efac5b161b2207d580fd76c60", v: new $Int64(0, 5228) }, { k: "3ba98ec76b916eaec7aa4e9791138c9d9ebef7852447cf134c1c7412a42f48dc", v: new $Int64(0, 8360) }, { k: "3bb0608402d2abe85b482f7bfc5506b4a919810f8b79f870cf2a05e533028f18", v: new $Int64(0, 8930) }, { k: "3bb27a4b87ef3db68404305c708a8a1a27e6ce52a7c7facc5007f8893e76e8c2", v: new $Int64(0, 8519) }, { k: "3bbc7c372d72c0bf2d4687ae1f7efba9e78ec0418c42886f8e38ae086d69a422", v: new $Int64(0, 2504) }, { k: "3bc00366691378648058fb132b7adf2acbe9e298859ae04328e82896a5d359ca", v: new $Int64(0, 3994) }, { k: "3bc17faa1f821c5252afa37f1737472e6243e2ada8a425ebf2d9cec8df8d7820", v: new $Int64(0, 5636) }, { k: "3bc428aa1bdf1fbcc0188a3201740ae92579d2d1c2b88c6bf2b83a72ed828e61", v: new $Int64(0, 1772) }, { k: "3bc4b28abf9d81f6d5b4b04a538f62ff0a5f9c0d9a1c967c3af06bbeda6df54c", v: new $Int64(0, 8222) }, { k: "3bcb49e63132af906855558c6cbe4b1dfafa7f21f5efa362edada018caa95807", v: new $Int64(0, 3483) }, { k: "3bcc8de30408c4e9f1b18e35fc7d51970297300e2df8dc1690529b27719c6487", v: new $Int64(0, 9300) }, { k: "3bceb6f21040e620c3c79a463f205615daa0b39ea6283b529c96dff0284a5be5", v: new $Int64(0, 2067) }, { k: "3bcfd1a6e8d43b573d37535d5389108c2b76e7aafc26c98b68997d9f7a51201b", v: new $Int64(0, 2313) }, { k: "3bd3c353b4fc5a7f0471462761f2ade3425740c55a27e2d8ab94b2840cdf66f4", v: new $Int64(0, 2980) }, { k: "3bd9e7fd685ec7a8f069e37cd756a051cd6e81b237d3a3a24e71b8f744e471ab", v: new $Int64(0, 6319) }, { k: "3bddb7a41b7c0274906cf0a475a0a7b6fcb04ad523affb12c608c85c036fe9ba", v: new $Int64(0, 6160) }, { k: "3bdefe304079d9d999f60201d7b64e219b4f00c8f463a40f879bf306d4bb3970", v: new $Int64(0, 754) }, { k: "3bdfa705cad44fe498124c9ee8fa272a9916f2af4dc9cbee4f4b6690af3a2fcb", v: new $Int64(0, 5046) }, { k: "3bf082aa886e9e7178bcf5461104722b619668ee74657fbc0f49ef0d557030c1", v: new $Int64(0, 1595) }, { k: "3bf41dcf8b6364427d4789cae9bf635d853f34bd6963ea0c0a08f55b26790394", v: new $Int64(0, 7829) }, { k: "3bf6f5f38db14bc2cd201260e478e52142ba4e4d7779a8f31f7bc3faca005f08", v: new $Int64(0, 6006) }, { k: "3c041c132caadd6d8c5b082abccd3e23d05eccfddc558a407fdc1be65a07f2e2", v: new $Int64(0, 2205) }, { k: "3c053ccec9993c4516162d87cf3eb5611ad1b2ed058f1ea1a025e2b0bdc491d1", v: new $Int64(0, 1281) }, { k: "3c07ce264aaed0b1911eebf59235908b0554a1f465bfd1c1c185f0b2b9e18720", v: new $Int64(0, 3184) }, { k: "3c0a34df938a555fc2853967bf225cb549f6c336cc40e13d684aa70ddfb58f3a", v: new $Int64(0, 4295) }, { k: "3c0ac45a7f360c531aa41a6eee065b09a24fff265dfcba94e4c69a3a5cfad9df", v: new $Int64(0, 4535) }, { k: "3c0b21840ae6b25f305ab12266951f6a4aaf19b512869420a23a3d66b06f3788", v: new $Int64(0, 67) }, { k: "3c116a58ab1dac7978b41c3eb8ef6d895289857e898dd5a3951da523f912f34f", v: new $Int64(0, 6137) }, { k: "3c1a4284c7d2c048444bc83cd590c56427f2e96d9483d3db93d72a7c1d3a009a", v: new $Int64(0, 2644) }, { k: "3c3467d104b6e28040ca2a45f083cd7ce6b922c2c872cac430fdea942aec9664", v: new $Int64(0, 7661) }, { k: "3c45e5e0dc2a5ee5211a914a47c6b05c023332f2c5c4f009c34ee83919a4a344", v: new $Int64(0, 9599) }, { k: "3c5125f6e24a08a87f76372421beea289e18c082d2a5194756f06b3a48736a24", v: new $Int64(0, 4190) }, { k: "3c53a04f0cf252ae7a7702768b4ebfb13de5b36b9123527fa8ed57f059193e6e", v: new $Int64(0, 4436) }, { k: "3c57ae8ac8fcff43b702d1e1c92941d87042a5104ed0572ebbc8f77d2782ffb8", v: new $Int64(0, 3771) }, { k: "3c603f462b236f778688150b87fcc671f64ca0cbcdc2c425920410e8be5c5e20", v: new $Int64(0, 4532) }, { k: "3c65ceb06d860d0f4f2aed46a791fe5e4ce7808a090e2e5d8af0d764f8ef1565", v: new $Int64(0, 4857) }, { k: "3c6ef7a4b21e25e22e7aa67424d8ea1ac0f4b9f8e0739ff244289ce2f05f2eb8", v: new $Int64(0, 4146) }, { k: "3c7062c75c59dd7876bf5a092eb6e4343df916012c7d0757ddbb9ac2c12cc08b", v: new $Int64(0, 6638) }, { k: "3c7ee875b9302894cbdb86f217fe96682766dd225f15a365b716c8f6442b6570", v: new $Int64(0, 6084) }, { k: "3c7feb3919ec470983209d2e975a7a69deefc2b2c2b96097073ea461e3d28a1a", v: new $Int64(0, 6446) }, { k: "3c804719a517b5b037d93274d1d64f2e4c1b11f726b1f1aca200742db6c1c62f", v: new $Int64(0, 1099) }, { k: "3c804dc7d2ba4667a5b8d51963e5fd5a1936a0916e5937f74c99ef4b232cfa2e", v: new $Int64(0, 1512) }, { k: "3c8e77be5baa64ea6ca772f97f34253a985a725d41436082d4c2a234b93c7949", v: new $Int64(0, 3177) }, { k: "3c9109852f3c7bc4a0c91e260970a9ed5125e27b32016bd283a202b1ea9dcba4", v: new $Int64(0, 7245) }, { k: "3c930f831a28df0e177040aeb5cf07985010a50093241a54f26b8e86aeab9429", v: new $Int64(0, 4316) }, { k: "3c9526a3b9f8f82e8a27ee2b177ea53fca4aa67697119beea8f35bec17d1a88f", v: new $Int64(0, 8448) }, { k: "3c989e5ccfbeafa5c377538555d63c301e1c60c7cc4cee3082fdc2baca5dd5ce", v: new $Int64(0, 5089) }, { k: "3c9f916e163802534fefb763d1daf197b4b9ed80af38e792ef64b02c7c985a17", v: new $Int64(0, 2667) }, { k: "3ca8ba34faddd08c2043901742c1980b4cabbeea06b4b957a3a2b2d7b5f6a16c", v: new $Int64(0, 3471) }, { k: "3caae5c60f82b1b628d342bfb22d2a4ad7466c4c1513b867db1bf673a179e65c", v: new $Int64(0, 4667) }, { k: "3cb66d41f342de8f1b52adcc0c9ccc8566d5284e081fda580b209632b0103d5f", v: new $Int64(0, 9540) }, { k: "3cbb8c9618387575ccdf624d434f0b47df483401195b3aa817dab590ee143cc1", v: new $Int64(0, 2405) }, { k: "3ce07b2a581241d94c4e6dabcf8b235903404e429f6693dda565a55cd68d8ce6", v: new $Int64(0, 4420) }, { k: "3ce8e924a4849720c6f663e38d1685b60d22bcd5f9980f79e8de7ebaa20d0b37", v: new $Int64(0, 1976) }, { k: "3cf00146af6ad2021ae49e11258ac179af688a7b917607fc77ac5503342b664c", v: new $Int64(0, 7033) }, { k: "3cf575a0f3affb2f074ac576c069aa3054ab65a57631cf7f6cf090b0d5afda6d", v: new $Int64(0, 8818) }, { k: "3d04f608d744961c63292fa62791f47878d1b6903aca17d3693a0d05d765100c", v: new $Int64(0, 4511) }, { k: "3d0c8ddc9b8fc731a7dc68b8ac2b8797e557d3490adef16d901ca5cb550ed992", v: new $Int64(0, 8211) }, { k: "3d0d3bd99eea9ddde5c791c4ee05c7fd2bb173d192b8e8c4d5b389fcc7c12c01", v: new $Int64(0, 3196) }, { k: "3d0ed895c2bd0ffb716f881e726feadb948ddd22adcb89c4ad2c012be01fe078", v: new $Int64(0, 378) }, { k: "3d10337061ea4a952c4197eb5c809d675a3b334c9ed17c2acb61d9c4983ebc80", v: new $Int64(0, 2060) }, { k: "3d1062504eaccd80edeee0f46a72539183bc2c9b29c06872b036239881d3cfda", v: new $Int64(0, 6767) }, { k: "3d170d48e0b58e79d9e4c02628eac35a8388c76dae8258fd327efe9a93a4d568", v: new $Int64(0, 3626) }, { k: "3d185cee830452df28241c993a3da61c377816f5caf983e52de6aa406cc7233d", v: new $Int64(0, 9843) }, { k: "3d271193bbc8c8fc76583bfcbf56c5017edca4ffb04e1bb230dafa0818286023", v: new $Int64(0, 581) }, { k: "3d291cc4ca52e0c337c02fe0ac2dfcf26e60a99611d21afecc6e1658691916d1", v: new $Int64(0, 747) }, { k: "3d38fb7f67063d52f4574bd89792300d6eafabe133357e196b677980653f982a", v: new $Int64(0, 9154) }, { k: "3d3aec5a4e8313f6120e9d3c5be6e10895aab7d3c6acb4a331aa04a9925f5851", v: new $Int64(0, 4930) }, { k: "3d3ee2a625f9241d4c64d2ebc5cd942a490fffe4246c862857c0e1be78926cdf", v: new $Int64(0, 2071) }, { k: "3d4d8733fff310d5fbe1fbf9ba2ef9504d78f4963954f1b39d341b41532590e7", v: new $Int64(0, 632) }, { k: "3d5465ec7dbcd082d8a412aaf315af070e239005e016e02846c879c5c05debe2", v: new $Int64(0, 3498) }, { k: "3d5a566ba289c7dd0024f50b510e4b49f52738ee9be087a8f703518a2a7b764a", v: new $Int64(0, 7274) }, { k: "3d5f6793cdd3d6c6bfc0cb5e6e283d21e23c2086e23ad4f2ba76c4ecf788f656", v: new $Int64(0, 1429) }, { k: "3d63503ac8345f2b059e00bb74e6d710698697086a0b8bdaa59db7a809f44cbc", v: new $Int64(0, 625) }, { k: "3d643a04e4355aba4205c2c5a07662ab7d9db034222d3bfc4b0c1dd9cc03a7f1", v: new $Int64(0, 5556) }, { k: "3d649306af3fc4364b615eafb8358115856644f3b0a9d365ad7a738b4422f387", v: new $Int64(0, 7930) }, { k: "3d6c354e3e187f94ae84d3243d3cf6547fb40099cb0ded5cfd537c601e92e8b8", v: new $Int64(0, 2597) }, { k: "3d6fde9376c0102136b78fa9bff466cd7d8d541ab7784fc57b824196e5afce79", v: new $Int64(0, 3494) }, { k: "3d70137b7002eda90333880cf493fe4f3cf17675d63cf233b09ec648131334ea", v: new $Int64(0, 1975) }, { k: "3d78c601405d6366095b9989ac3434759fae6a06deead84090a991419007a414", v: new $Int64(0, 5194) }, { k: "3d7f8e4f56f9e74acbd6aa291895c05589a237065a17ade7b4ffcc040cc1985e", v: new $Int64(0, 4717) }, { k: "3d8210ec766b36b626df8b77e1ff21f1afdb3a5fc4b6b86ba18fbcd8c8aa7111", v: new $Int64(0, 2147) }, { k: "3d8d33fc93acb1f67aaba3ee0f325606c90c4fa2db14958864ca24f81b1d56b8", v: new $Int64(0, 2690) }, { k: "3d9d9f4b5a193752806ca40992497c8c9fac3ab3dd9917c7e1c283af999c900b", v: new $Int64(0, 9120) }, { k: "3d9e023da2098a96a60ec653c48884e34f6cf28c6c62e1363911bfe9913e815a", v: new $Int64(0, 5794) }, { k: "3da775237fb45b57bb157967b7a7c960165f7e08915a3e81291b76e3f0443368", v: new $Int64(0, 6984) }, { k: "3da8e0961865d584cb1cf0ea4f6545a56105295ab687af35bd87ce7316968d15", v: new $Int64(0, 6824) }, { k: "3dabc658ff7d4a208ccad0355aaefa3ab9f4d27cf6a7e933cb71493299a5a4a9", v: new $Int64(0, 9422) }, { k: "3dae2d795989ccb311f812281a4a56ec9ea5f97b0597b41d7c0fab1fc6274724", v: new $Int64(0, 498) }, { k: "3db3799aa2afd0402b2465c24abdd89fd8a2e9bbd18f04ae2f4d02dc69241be1", v: new $Int64(0, 1870) }, { k: "3dbcd83238e6abda7401320061728e3c711dce4060a3943ab2ea9a311fa10313", v: new $Int64(0, 2221) }, { k: "3dbf12a74deedd436199a5023ddd46aed80143672342a81f627f4836eaa16bbc", v: new $Int64(0, 1373) }, { k: "3dc127f359439590c59679f5f4956529069c510518dab82e797e69597101eb1a", v: new $Int64(0, 1024) }, { k: "3dc30290a2fc7cd9131bf8c46ceb3e7cf9d508634cc81b8d6103e4d90ead2021", v: new $Int64(0, 6142) }, { k: "3dc4f7fdc42e0b44c1654eedf62017dfb2cc6814ebb1b0d5a18eacb94c9582b8", v: new $Int64(0, 3822) }, { k: "3dd2505a96995dde1fff734a7ab4fa80fbcf39eca3e42cc40a0699307b6adc50", v: new $Int64(0, 1283) }, { k: "3ddcc32ed5b3a9979e21229e8cda44a6ed88a4c5e518b5408d02a14dd6e66f31", v: new $Int64(0, 2749) }, { k: "3ddfffeb6adc5cdfb568f240b23feefd3b68778ce02a1164034cea43ea053ba3", v: new $Int64(0, 9800) }, { k: "3de48529a63816359adbcb059a0e8ab7a9b431ef5c3574fa277933fce2a4c64b", v: new $Int64(0, 3325) }, { k: "3de7010b008eed1b31717e016e2ba29d6f73a83b026d1d801a4c95f0dea0556e", v: new $Int64(0, 3008) }, { k: "3df9995b7fffb16e9bde9a0a5b6363d68fee3b3d2a7acf501a4aa997af24987c", v: new $Int64(0, 2977) }, { k: "3dff7dd1dedfa01280b9de397ecba3acc0d3ede8df774a41c6805367580bc340", v: new $Int64(0, 6636) }, { k: "3e02934bd74ffa69733ba093313e8c95bd675aee768d9fcd32a1028ac04c425a", v: new $Int64(0, 9249) }, { k: "3e07bc467bb660ae25f507e2e353c73efcf73bdda83472c207b0ae50787c3e39", v: new $Int64(0, 8719) }, { k: "3e10146bd5b578d4ed8b4bac076b8875fc5cad84f818684efc1f7f4862315184", v: new $Int64(0, 7229) }, { k: "3e11aa3a325c7713a28932f59b73244d55db2b701cf1a06b2e7c7f6bb893d533", v: new $Int64(0, 7364) }, { k: "3e2f974a5b8a4c84273030a9f8d44cfc0f576f466eb5c95abcfdc58faebb5741", v: new $Int64(0, 9117) }, { k: "3e3177189a99015fbe16429b599f630db2268300fd7301fa613335d4c20adc8c", v: new $Int64(0, 7053) }, { k: "3e332f0c0f3192ba97ba8e8ca8edb95b70f5f4e0a45774bbd4ba095ae2989bfc", v: new $Int64(0, 5203) }, { k: "3e351640f082c8e05207a873b2c91d72a417cad8452d0b57fa3fec7d0ebe2484", v: new $Int64(0, 7691) }, { k: "3e39c6595a894e8630c84c2a8e3eacee493fee4c3eb8d297117976a83471b6aa", v: new $Int64(0, 4671) }, { k: "3e3fd19b19038d8c518e3683a5e9799f679e371d97132353d9b90ad925cca507", v: new $Int64(0, 9914) }, { k: "3e402629cb221c3af1691a97b95eff8c57ce6561188bbc0f5751cd954802f44d", v: new $Int64(0, 8833) }, { k: "3e402b43d0bac2746eb4518c1a76d38709acf9b9b4bd96d5634c0b872b57aa26", v: new $Int64(0, 1157) }, { k: "3e4067ca978d45f1f2e341c874c7a7f63e784c5c7e01dc29662429933ed16b0d", v: new $Int64(0, 6868) }, { k: "3e421e51e3c642d174a97a7c87bf3584609c71464f0a9b0946b4a72c017569ae", v: new $Int64(0, 5893) }, { k: "3e4acd83efe8021707f234961b882e4fede3530e0f440efe903eac3b55d1ac77", v: new $Int64(0, 6088) }, { k: "3e4c533f99501698102f7224edcda4726bfcb4fd6cf676310343950998bed108", v: new $Int64(0, 4867) }, { k: "3e51b54498939b07b44245ba1e9bf425f1436b4a3c7139ea0024f7b4adc0ac06", v: new $Int64(0, 3175) }, { k: "3e52af0648eb13d32db3b1eb9dbb40dcf9f572f17ccee7441b4005fa8f00035f", v: new $Int64(0, 1029) }, { k: "3e5af733ee3687aa962ebac4c4f378de1101f4e6f49407ad155d2ffc2f53dced", v: new $Int64(0, 9863) }, { k: "3e6a9c2c79e9ad7f322cb6a15bcc185689dcb1608b8ee56e3764aa3869762713", v: new $Int64(0, 5559) }, { k: "3e6f067dd6bedd3aabc87508e5a44f7b9d8d9b8937819c86278bad6a75613da6", v: new $Int64(0, 4937) }, { k: "3e74bb8f58e04519b418fea8de74478320cfaaebee17a897b347ffb87c8e79a8", v: new $Int64(0, 7010) }, { k: "3e7b67554d7af9462ffc94e448e88173c6c73886ed46fa24db8a5f0c3a79c93f", v: new $Int64(0, 6620) }, { k: "3e800a6fa8daa41bd2abd0fe9bd7d7657c6f1489c90cd7472a6e58f069707200", v: new $Int64(0, 6584) }, { k: "3e84486022c3c573e21fa1fd2aadfd3e18f5f35ee430c805180c2b1a904d7b41", v: new $Int64(0, 9680) }, { k: "3e8a6cda727c99b87f2ef64f4ee944fd4a06026ac41362a2e25071e3b2a592a7", v: new $Int64(0, 6450) }, { k: "3e8bac57de2f162c484cf656743d29c0798a3ab8ee073a091caa4f791f71cbcc", v: new $Int64(0, 2675) }, { k: "3e8f3e1050fd836c79f98790ea28a817f9df1d5b4bfd4903c876a66991926a70", v: new $Int64(0, 9975) }, { k: "3e9449f14fe04cc6e30f7a24c2736d5b427d3096fa23cd804456c9c426c33eb8", v: new $Int64(0, 9247) }, { k: "3e9b63bb7100998d9c37204e60c0eb7b038e508785d0208f8a1e7f763431f1c5", v: new $Int64(0, 3774) }, { k: "3e9dd6d4954d7db357c77d862b8178cfb96bf39f071a6a9e5657081ade7f9506", v: new $Int64(0, 9524) }, { k: "3eac28b17b313ba4b7be53d4bd55292e9682f31ac94bae9e6031995e9d711fe5", v: new $Int64(0, 8000) }, { k: "3ead81e7c4ca5964ec067bd6ae9536a213ed07690f8e06c7159ae8b14346e154", v: new $Int64(0, 6149) }, { k: "3eb60a93ebf8edd4ddc65423a8ce29002938474451218be8075909cc8edbaeeb", v: new $Int64(0, 8821) }, { k: "3ebad581cb19784c3d51e94f6005d77f278e809f7a3b06168e14b3f712813ece", v: new $Int64(0, 3375) }, { k: "3ec3c4b02ba476e103d23e3834d5a65a3c337a0e10441a34811527c5d1be7302", v: new $Int64(0, 3859) }, { k: "3ec4419126c3458d969c621acfd79206ee1d32609b37869a3cbcb37e83a44ec5", v: new $Int64(0, 9362) }, { k: "3ec970d9872be09a08f177027b391416c16bc3d34bbc55d8c6a5cb4d913f87fe", v: new $Int64(0, 9234) }, { k: "3ed02d14011c6fe5086c38f653e89e8f61d3a071bdeb558d4b1a0b6a08205758", v: new $Int64(0, 5149) }, { k: "3ed9cd36b5520e58be3cbed5fc530a016a0e551e22ffc2a27e6b544eb155c4de", v: new $Int64(0, 9656) }, { k: "3edb5b9cc970309c509994d5f779c1962026b6e8e2b75a957c0f11024a0c0721", v: new $Int64(0, 1121) }, { k: "3ee304af34c15da6bddda6b4776c7aee27b5d42eb377d439c3f5766706c1d80e", v: new $Int64(0, 6560) }, { k: "3eeae80631e5f2c44741920f30594a607349ffe0204d0fd1442fef45d55adf57", v: new $Int64(0, 6742) }, { k: "3eebeaab39b2f43dd9e1a6ff6399906ca13e1915ee0b4c33a2e5a92050cab5a1", v: new $Int64(0, 69) }, { k: "3eeda8352666912763a10e4e4a20f104c19622fdd885cd53b8a114b609f778d9", v: new $Int64(0, 6980) }, { k: "3ef7e3e96b1fd875a65a3be804b07e56b24fc1f246d3043e070782e772219822", v: new $Int64(0, 6128) }, { k: "3ef91342800e208988f74fbc8260d888cfc2b96389b218b1c8aa97455d2616d3", v: new $Int64(0, 8034) }, { k: "3ef9bef20ef654a37649a2898f15ef650f86eeb309abd0bab04d711e8bca5e1a", v: new $Int64(0, 1430) }, { k: "3efae5b5446557c8d9d76758243a2d0723326ef2db0ab3fad66aa00f342c838f", v: new $Int64(0, 3300) }, { k: "3effe4c196338b9c2ea0766c7a6b0ffe3961acc263aa09256560c5eb891b9dbf", v: new $Int64(0, 4773) }, { k: "3f0a03ee7812dc46fc083dcc15585371b8793dfb9840b4ee1469d57d752481a0", v: new $Int64(0, 953) }, { k: "3f0a9539d165577e39370e1e361b0dc4a8620ed4446aac78a0b99f2ed7053aaa", v: new $Int64(0, 4577) }, { k: "3f0efcaf325f6f4d9cc921c0c427ef60115de828a9f9832924b6ec7366a34e15", v: new $Int64(0, 1210) }, { k: "3f1351b677ff9c1c176d2a578a196fdf9a4684eb00df9dadde37c375502d43e2", v: new $Int64(0, 6337) }, { k: "3f242e5f3282b226eb5c157fbc59a2ecf05c1205d2f7d12b50ac73063045bd26", v: new $Int64(0, 8183) }, { k: "3f24f83e285f37854ddd419ebe96c723acb51cb9aa8c4bbddb42243d5f1a95db", v: new $Int64(0, 5820) }, { k: "3f39a94bfc4ba98e1223cde96891ae03306c2cc4801235967786733910d8243a", v: new $Int64(0, 4721) }, { k: "3f490012327f90a18c501e351fac9439bc09817c5c0ee665b3b971f70ea486ac", v: new $Int64(0, 8567) }, { k: "3f4b30280f80519de6bcc8d502a4c1f16b5cf7159fde1b6967cc07fe556fcb6a", v: new $Int64(0, 2885) }, { k: "3f5289c99878b889aaed4bcceca6a7c407ab411fef0e9da1308643508b631c21", v: new $Int64(0, 3962) }, { k: "3f5f6a6592ba8c702da4a39c20dbde4b88fcc1eee7d4b47a6d0bc1ee655be570", v: new $Int64(0, 872) }, { k: "3f6033dcda57eab74145f4c2cac2ce7b2c377b59cd60837736654a06d06f1290", v: new $Int64(0, 4644) }, { k: "3f68069a9f9107a619c85e3abdde59493d2a9c500f3de79efbe3d781546aa963", v: new $Int64(0, 602) }, { k: "3f6ca33d726bd828059177c3d715b097180c9af50f29b0bf68aacc6aff59dac4", v: new $Int64(0, 6272) }, { k: "3f6cf146ed66444da9de4839891136ec7b7d15204030eb27593c0cd3d54b8d93", v: new $Int64(0, 2050) }, { k: "3f73ec72ad4c25d686f904cae9e5bee16c458443b5b19b9c6ad8fa1966d7e35d", v: new $Int64(0, 2714) }, { k: "3f771382aa751a9931d4d38cdf5862a6941e940bfd099fd5f4304afd928c7528", v: new $Int64(0, 9000) }, { k: "3f798585ecc77a35ecc86686aa522fef884ec2e9f0aadf5fd36011fd6b82b19e", v: new $Int64(0, 8911) }, { k: "3f871a03dbca88d3bd3c4c150e2cb324fa73e9b81e21fe09ece57af0e6553299", v: new $Int64(0, 2529) }, { k: "3f88341f02cec1811a9b9c0a05e63945d3fcf7b92628b01e00d73e75b545e018", v: new $Int64(0, 3023) }, { k: "3f92d174fb4eb11be30ded502b48d90b7354be61705116e536fc895eb4961457", v: new $Int64(0, 4360) }, { k: "3f984731c4b950ec80ed252fd0ead0524e17e06ec9b071428c44b9a9ccede423", v: new $Int64(0, 6574) }, { k: "3f9fcdd131a978aa2dd4ba174f4260dcf90c8654f0aa6116be71c3d8d3498ae4", v: new $Int64(0, 3919) }, { k: "3fa34c305cc7dba856fab4a6717319e767690b587497cefb4a402f7716a58b13", v: new $Int64(0, 6056) }, { k: "3fa493dce76a9f21b9b4ceef5354550e00e61982a8b22330902dd4f6edec5b86", v: new $Int64(0, 9213) }, { k: "3fbfbaab66076119e7ef7ef08c9eb1955de7efffecf79c4c185c57f18d1ec06b", v: new $Int64(0, 1594) }, { k: "3fc5b4e602d871acc5af4634d0c8c6bc27d7e1449261ef0ca9637d6aa8243684", v: new $Int64(0, 1614) }, { k: "3fc9ad2a2f57b340bf1ec32f9adeccc68f2a99d392794a04480ab3b575122461", v: new $Int64(0, 6746) }, { k: "3fd1998ac57be591cf5b4b0db5d27ac28c7b14b2cbbba5676d095c2ce358aed0", v: new $Int64(0, 7547) }, { k: "3fdab20031238c65e822b2788d2dae2081a0d8149e4328f3384834d09e895109", v: new $Int64(0, 2300) }, { k: "3fe79e9ed39a239cc26849e57caa821ee4a0c184f46cb300dfe261814df5ac02", v: new $Int64(0, 7711) }, { k: "4003bd92256ca6a83884e31adcf52c5b41b637945aa38655bd669e2898f5cdaa", v: new $Int64(0, 4938) }, { k: "4011b72dfaf90f7da00c4ba4a8f94aa9f80db557e9f63fd6493e88764f71df28", v: new $Int64(0, 6036) }, { k: "4028c278a45eeb0a17b422d874c75ca66c0498ecffcac4e9803ec733933d98fc", v: new $Int64(0, 5207) }, { k: "4030e9bd18ad4e2c5330f300af56c6f21f8d3f6f99e51f8f29c8ae3cb40f8e07", v: new $Int64(0, 6107) }, { k: "4037d0907b81c087ca381e51420471a2bc2699e6fc29c4ba86b0a5f5bf9603e4", v: new $Int64(0, 2588) }, { k: "404ae98a24c37211539a05561e3b8051cd3fa59880de5ed88922a97d39f7b487", v: new $Int64(0, 2017) }, { k: "40563fa1d821aa8aa3dccc43c7ca973594b8118b8464cf9a2622fe033cc7af51", v: new $Int64(0, 7533) }, { k: "4056aede2879b8d1d9795badce06f6d60d97d8c2b696c7e2411bfcc24882673e", v: new $Int64(0, 2421) }, { k: "4056d8a362a845768084c9931a6b3237e0107194809dde68757e0680237dfdcb", v: new $Int64(0, 9870) }, { k: "4057c8f75469d2147bf2e5d6272703fc27926929792f9bff4a6db809dd8a954b", v: new $Int64(0, 9450) }, { k: "405e2cfd50c5b20df97e0c0f0f827df9ce10350e348645063a7ab7be7dd246a0", v: new $Int64(0, 7015) }, { k: "406013de2ce3ee6e914a9b9107dd1142781734ed77d81563088fa45fea608689", v: new $Int64(0, 1736) }, { k: "40602d5912898af448cc989618f90d1cee36f1a331ce4a9a7757750d27acd633", v: new $Int64(0, 6089) }, { k: "4064e1e18c7127e879d7d9d08cc21286a3b946eda622cc6c16b42c9277ff3654", v: new $Int64(0, 4765) }, { k: "406ba80c49a50acce5cf2577b4adbe5fd920c9dc489ff0f2907d6dc02969e16c", v: new $Int64(0, 8116) }, { k: "40736fe5a68bd07702f96ee702dc93a9b693f1f9222eeff8c0401b194f0a44db", v: new $Int64(0, 4893) }, { k: "4075532a08feec184cdc752ea0f54b71d6df7b557d471edfdfa06b28ff922cad", v: new $Int64(0, 6102) }, { k: "40785f0f8b43a6e251fc9f6cbc075786100daf4f3190e9c3ff37aa5ec14ab260", v: new $Int64(0, 1629) }, { k: "407c72044db62a996a03717d252b9e23c0865fd4565cfbbd7092f8c80d73e1e9", v: new $Int64(0, 293) }, { k: "407d8dcfebc84750aeed635f83ba9cd4d3f69ca94a8fbf9f304ae8fa60d0a676", v: new $Int64(0, 1731) }, { k: "407ddb8233cfdeb7af97f6a33543835eb157c52b39e93d446a15ec9ba9f91a6f", v: new $Int64(0, 5611) }, { k: "40858b46b61a78f28699a5e054b60dfa20557ad48692cb302c95b7c963092649", v: new $Int64(0, 6826) }, { k: "4085a0b7e578572222ea5b68bf81b8c15eeab273678dd42b00e2671e9fb00d7f", v: new $Int64(0, 6652) }, { k: "408dff1a9b541103dc7ac354f4f2399b9ce36f0ad8c33e85db4dd4f369a7875d", v: new $Int64(0, 7808) }, { k: "40905ba17a6a5d2be3e1b5b79d7f76207b07726bec8af6b50c5e0cc43b79f727", v: new $Int64(0, 8898) }, { k: "4094c202cb43ca65d3861685d632cbc2d87294e51e9d2c9c1b4a307db64c0981", v: new $Int64(0, 2553) }, { k: "40ab537a95d84f93e1cc392df4401466701f74cb9a0298c1c8ea0caff0edc4db", v: new $Int64(0, 528) }, { k: "40b358371f012278d4da504cc3608b5050d3fdd2b8550796a70353a07cc95456", v: new $Int64(0, 6598) }, { k: "40b8539c2e411682b88c9244aff18c1704d9644b9c0a586630106977bc136a1c", v: new $Int64(0, 4904) }, { k: "40be327ff4b4c7e18f1674880ae3a956df3630839b1a3b392f1213b725015ac6", v: new $Int64(0, 3830) }, { k: "40c47f9c729221e61fd3d7a8e29985549252f9bb95726f9d60c0a8d21c3baf64", v: new $Int64(0, 2521) }, { k: "40d26efd286d8161af66e0e7d08168e4148917a624e6228d559dae9224a1ec24", v: new $Int64(0, 7288) }, { k: "40d36a414d8c1c465ebdc5a5ae0cf765892cffebcf86f0bd6a9ed4126daeb0c8", v: new $Int64(0, 7799) }, { k: "40d65173f6005a9ff12787e053e6a8fcad6224255647c46422cfba25a3d4fdb0", v: new $Int64(0, 5682) }, { k: "40deddbcb32a23b93f45d8f34f72f9f0b7e1df82c77b9123d17c67042df9f55b", v: new $Int64(0, 4291) }, { k: "40e7e736ee2ba4cc00435c1d32e04a3ad7ab4c1015ff6680f2cd14fb3458a788", v: new $Int64(0, 9641) }, { k: "40ebdda3625a1eeac861e60085e92cd1c285f7f32eba814bfa1ce0cd347ebc3b", v: new $Int64(0, 9832) }, { k: "40ecec5aacbbcefb8b671b0beddc3c5e02c26fb899dce6ee615668991949a403", v: new $Int64(0, 3715) }, { k: "40ee1988812e6d3e158edc11fe3f2ffcba990698688c286bf6c74e28a5cb1f3c", v: new $Int64(0, 4847) }, { k: "40f474dfa2398b9101f7cbab73923d9a7a2a1d23dda13b8f9643247d3306d8f9", v: new $Int64(0, 8418) }, { k: "4100f3bbd7ad28d3e5d5d058c7d35332d7005cfce6450e7ee28863c22c5f6ecc", v: new $Int64(0, 3737) }, { k: "410149ff24a758d997af66ae29fa092a8bb7f10ba3f6ab870fb2501896afc9a3", v: new $Int64(0, 3538) }, { k: "4103d24dfc8a68034cfadde043c5008acc1bc43fb55c3b2b527c4e2aef6c7709", v: new $Int64(0, 7874) }, { k: "4105177a055a56f53e58daa1e3412faba031f9e545365a7991f4089631a45a2e", v: new $Int64(0, 6707) }, { k: "4107297193d5f82c4bc831a990cf8f43389bd8f5fd8b25e2510fc2c73784c869", v: new $Int64(0, 4311) }, { k: "410766f78d5658455de07269737d5d2ee42fa6b03c0c708038874a33a9c61a1f", v: new $Int64(0, 6804) }, { k: "4107990407f6198d61c4bcb71f79ebd4911703d230b2936003dd31fe19451334", v: new $Int64(0, 2576) }, { k: "410ea4cd2e0138b0d8a0010d353b2ab382ff96400a4ade5ac71e677754216a99", v: new $Int64(0, 3230) }, { k: "41215aa5ff9bcccd4e02702216e859992195043b08487c992604dcd6769fa011", v: new $Int64(0, 9063) }, { k: "4121fb61a699b4b7430e063e4d141b903eccba99982ec960ae851f9c5ffbbffd", v: new $Int64(0, 1652) }, { k: "4122c901fe18d8abd1a88d1122cf22502001513c1affada7b76eab27dbd56d63", v: new $Int64(0, 6589) }, { k: "41275a99dd60a754f8bc72cd906a40f40156d0affed5b1faf505db8d75ce02bd", v: new $Int64(0, 6065) }, { k: "412ebd63c5a267eb313a36de94e500efec6681e4c2d05ada3bbf08cb45e67a2b", v: new $Int64(0, 899) }, { k: "41336bb456fcc0afc1bff2b2855e9f8a5dcd1e6f5e6dbca380b9a169ff86f2f3", v: new $Int64(0, 5758) }, { k: "41340e1a555a82ef7cc4ec62238885ce4a3034823dfe002873831d5d558f6487", v: new $Int64(0, 6530) }, { k: "4135ea258dcb7de14a8bd4f380d8623101ced0ffff8a1954ad82929514c124b9", v: new $Int64(0, 2408) }, { k: "41360385feec5d1e9fff00c72734b9da3bc2fd121e2f6a1c67656afa2f232e9f", v: new $Int64(0, 8117) }, { k: "4139022c6cc683b90c6699a90493c24c8ed639634654c13ae27983383a39a7c8", v: new $Int64(0, 5718) }, { k: "414134e8a77f21206e6370c186619b5d593a1f67d105cf7608f4846ff96918a9", v: new $Int64(0, 6678) }, { k: "414170e61316ed5b4c30142b60acc3dca7c10691dd7dbf06cc70cda3e4fb0432", v: new $Int64(0, 7593) }, { k: "414729c2424e5faa9bd0b1e4076daba08e5ef2729ccc7a44f12df7f0395806f2", v: new $Int64(0, 7428) }, { k: "414981d92e9c6d675d150dd0aae533270afa494122081df098200459fc6766cf", v: new $Int64(0, 9688) }, { k: "414a2e33c188709f4a1313dbe3177670fe2a192b8af77ab0835da0818c894fbe", v: new $Int64(0, 9927) }, { k: "414d49d7084a4df25566403ea4b60c14524b1cce366e06983ed3e2ae0ff0f6cd", v: new $Int64(0, 8439) }, { k: "415179cac812e1bf545c43f30c2c01ab982c38af190d3e349c508dc6723fa393", v: new $Int64(0, 7699) }, { k: "4152bc37837564c140caa10c13d2fe125ba78d03500bcc420bd19cd043d1bffc", v: new $Int64(0, 2411) }, { k: "4160fc97f52898ccfef6913198df03885f894ede5d0573a68ee9fe63b26572ae", v: new $Int64(0, 5195) }, { k: "416688adaa57e6fbdd3f9098bc1f1b28e46e5f8dc5a26c8df43f570fb8e7ccb5", v: new $Int64(0, 2949) }, { k: "416c71776a4714167ec0294a820a5cfbff2b1dbb4755dc6c09c5049530293c06", v: new $Int64(0, 8803) }, { k: "416d280269da4d7006a858bded526c6ec398124e9041ce23e71979a66343b8cf", v: new $Int64(0, 2612) }, { k: "41705f108678873d1af35bd873ba719de4091646bfeaebeb1ef2164b2db9d738", v: new $Int64(0, 3777) }, { k: "417b2b291af57c0bedab55ac0cec7f6401b828475ad917ca3a0bc53dfb6e69c8", v: new $Int64(0, 5887) }, { k: "417fcd50d01ed4bb36891ea9d6358570527fd74a4682bb83b337cdbb82db51c6", v: new $Int64(0, 5099) }, { k: "4181a6bdb356ba267ebc325dfd27d1c50c39ca8f83e08eccc4ffb2a0bd05de2f", v: new $Int64(0, 367) }, { k: "4185844e902add6f42d926d874cf0f783c926950d324e43f695533ab13ecedc2", v: new $Int64(0, 329) }, { k: "41870b2381091d59be8ed86165f49db1839b828575942d8f7060961e3a399f29", v: new $Int64(0, 8106) }, { k: "41876f5713aac5bc5b7c3b2cec0648c04b745b96f8a9d32af6e7c852e74cd108", v: new $Int64(0, 6181) }, { k: "418d0ae4b7e331d88bf22d7e13090378804c6d6a2cb0e8a144048b67df85160a", v: new $Int64(0, 1585) }, { k: "41a8e95e7572165b5006ca08f831b347821b8b8da366549c0cf55ac23db52c16", v: new $Int64(0, 4403) }, { k: "41a993e0bda6e1a39511b71fd1cb1de315a5e368adf0c39f9a3b3eb684c005c3", v: new $Int64(0, 1449) }, { k: "41ab70a61ad7528621be5b1e7186cf973a4be7263bcadc9b551d3e9eb424913b", v: new $Int64(0, 8246) }, { k: "41ae443c14723a9ef872a011b62390af1e90aca75e95b065a7c42025283224a6", v: new $Int64(0, 7974) }, { k: "41b3204c9bea83e0088bd6fc4b68051073578fa97a3cf92850c722d99bea6b25", v: new $Int64(0, 7105) }, { k: "41b7de36a0466cf7cf5e77d3f12c95a6ef88ccbcf9c3988de8aad424ed67fa84", v: new $Int64(0, 434) }, { k: "41bc542546d9c7c22c275cee432bea23ad1d335d551b9c89c903906b8d192cc4", v: new $Int64(0, 4450) }, { k: "41c3feeaf6df03f6c7951ba6ac80e99fd96857238608a36957a4e42cef5cfdd6", v: new $Int64(0, 9745) }, { k: "41cd4a1be5f23002699e3b4c07d603702a4aa3a6d39774807ec3397e5ea423f3", v: new $Int64(0, 1566) }, { k: "41d6d8b22da21ac5b3f77283f331136662b3739468654cc058c71a7e2aa9c1ee", v: new $Int64(0, 9161) }, { k: "41d9571f02595f56f36ab6c7eeec2c07130b0a7acbca7f67484a9dac48247d71", v: new $Int64(0, 8067) }, { k: "41f117fbb3d2d4fb289219565b78c65ec2a3fc55ccfa07e1ca97beceb964ee83", v: new $Int64(0, 7916) }, { k: "41fb686e7efd9e5c0758182bf35671e5a69a02010213b62e38006a0f1e1c2896", v: new $Int64(0, 5586) }, { k: "42029f86fbec87cf5a4a15c88f1dff1f8ea7ad4c28fac4e9e55274113f54e222", v: new $Int64(0, 9858) }, { k: "420a9a466ad556958a212727a20440b6fefbbe6407678e1598b3d762938eb055", v: new $Int64(0, 266) }, { k: "420bf3371f6e7ed56fa8508d0daff22c771bb3dc7f19eee6f8a3c38ed299cc22", v: new $Int64(0, 8887) }, { k: "420dddb404e40c9a77dc911d9fbbf3968cf5ddf121234ddf4fe1d0e007790b5a", v: new $Int64(0, 2967) }, { k: "42129d2a03a59f08cbababa3110129b88a3042ffc662ef964b08884efa74c6ad", v: new $Int64(0, 8317) }, { k: "421e26f01cdba1b63d69e878bd1d7c3e6ece032a68ac859ab0fa01c72affbd7e", v: new $Int64(0, 3186) }, { k: "4225b3ce35acf0c59dbfd781ce54bade0a35e0ead2a41010567db9280f020e78", v: new $Int64(0, 8023) }, { k: "4227c06d9e1979b37b515646f47f2c07028166deca5e1bdc9a7c0c485e079354", v: new $Int64(0, 1893) }, { k: "422cb13d68d2a528cd069486a8521e551f2832e104c194319124576f6f1964e9", v: new $Int64(0, 5888) }, { k: "42454bf31c76a62754665c433809d7e066b6d660e707c05db84a28e767f77fde", v: new $Int64(0, 5541) }, { k: "42459d409523c38ba2fc5717eeb722a57c7597b36a92faad120e3530a4d6b8c7", v: new $Int64(0, 5969) }, { k: "4248af7c6f2a72b14aa72086436811d6f6d8c138df2c825ebb714b2da24646df", v: new $Int64(0, 7803) }, { k: "42490297fc8406ac3294d1e77c00d625c3c3a54ca7937764748768f72a5ea8b2", v: new $Int64(0, 7788) }, { k: "424a1261add92e3574bddab483009aa7a2b12dcb3fb82cb6e9e7dd122efa1979", v: new $Int64(0, 2565) }, { k: "4250e47e9c86eb142b887b3b20d85dfc78afc59e0d2fca8bf9f14d3e53d07b6d", v: new $Int64(0, 4268) }, { k: "42565d42e86aec21b8a0009f84f0a7d2a2f7d531d6e0547a296ade659cc744d4", v: new $Int64(0, 7646) }, { k: "4277060a8198179d35739cad29dd06888a49da62f65fc629fdd73934475cd17b", v: new $Int64(0, 3508) }, { k: "4283ae330c4d70bf053fd9f2062bbda7bc4d61eb757182a2b8a75eaab799bc15", v: new $Int64(0, 3989) }, { k: "42847df1f4262dd7d4900dace81876087384d3cce9ffab04082953117ac008d9", v: new $Int64(0, 1600) }, { k: "4290f4d24ef9b80842c71e4b0a124f81b7f75ea20c8e96a3dc5b5b09fb75f11b", v: new $Int64(0, 8679) }, { k: "42921e373ee060d4d2f84bafa67460b14211fd2869c0c2e682c1acbd5d7b7128", v: new $Int64(0, 3664) }, { k: "429bf8610785072e545c343af57e7356f1885873cacd50c26eabf54a9562e0dc", v: new $Int64(0, 8373) }, { k: "42b5116aeb21f4da184ad156c63803cf9fd27e3855509962fc3e6a12818b46bc", v: new $Int64(0, 2352) }, { k: "42ba819f2553578a6c7b8240cc5f53219533563de5f3c87a8bc884bb3b73acde", v: new $Int64(0, 7925) }, { k: "42c9a9940813561a37ab70cdffcbf6ed8d28cdfaf3c9a1cebe895a096e927721", v: new $Int64(0, 4021) }, { k: "42ce76ca33e3fd3548c1338e0a85a72d2cf85102bce2865384456fbbb05737fc", v: new $Int64(0, 2359) }, { k: "42d09f76a611613a0d071499e333949918b34ec515c7394ed2e44f7c1dbc17a6", v: new $Int64(0, 3131) }, { k: "42db71e06669e197b1f933b492916a10b5bb46f753ea1231f912602944127ca8", v: new $Int64(0, 4322) }, { k: "42ebf18ad4dd2fcfbcb3342e7400b5e773a48f14a94d115edea0af1e1bace42f", v: new $Int64(0, 5045) }, { k: "42f3147a0131957ceba51a377f5c5fc027c86dfdb8e2009c25fa6703054fabd9", v: new $Int64(0, 8611) }, { k: "42f79c87c8579503ad316463c898529ce2b1971ad6997327583d42b92254802d", v: new $Int64(0, 361) }, { k: "4305002c1c2a8a7722694ed9c7482745d509e2613baf5884bdf32482044eb0f7", v: new $Int64(0, 4763) }, { k: "430775ef214e0f668cb35b529d85998209b80dd5ceb91d91532ca89b7f6a1321", v: new $Int64(0, 6144) }, { k: "430d368570edbd3223bfaeff8c177a448c2e5f1490873459d95fc4177b4c02c1", v: new $Int64(0, 687) }, { k: "4318b0f95ff832fb193b4b10b6f2fe54079bd9701963d88f4ca24f936ff5e2af", v: new $Int64(0, 7501) }, { k: "43214404414a3672d3520f409c6f83a38aa80662c722d46d91984aa57481b6be", v: new $Int64(0, 5604) }, { k: "432192779b33b38a61a9bb4ede2fe15378a7d00a05ce2bd1003ece9c8f4cff23", v: new $Int64(0, 3555) }, { k: "4321f694ddc5d3c5c8deb41ceafe0644dab157fa14450c951515d37e5f6a5e53", v: new $Int64(0, 9847) }, { k: "4323103b28ac974b33aeb6cc56091ef0dd17d43b09f7c50b41508e83ac07f4a9", v: new $Int64(0, 1411) }, { k: "43253a4bba085d6f3a9aa9e10a6cf01f00057ea99777a0ef5c1f555ccc9dda87", v: new $Int64(0, 2793) }, { k: "432dc08214ec08c9a551d8a2462dbd6f8e41b68167f74862156e564e5d7e62b0", v: new $Int64(0, 709) }, { k: "432e124b50ae0fc47353bb78468c51c277ae8f1291b3404b7751878c4ef958c2", v: new $Int64(0, 3616) }, { k: "433aace1120b509d873f6fdf34db060adf51f741f7d649dfa5402eec6d86ffd2", v: new $Int64(0, 7988) }, { k: "433b40c3b8f6c2e5196ef0bc1f1058333ba129a8e6738dd1e987728829dadf3a", v: new $Int64(0, 8589) }, { k: "4348d653bf418e29e15559117d1309bf4ec646a0c47b517e76f9329341bfccfc", v: new $Int64(0, 888) }, { k: "4355ad4840743a65446e32c174f6dadd97db41b15e9b1fbd13f12d823d0ed970", v: new $Int64(0, 3026) }, { k: "4357e45054f4fe70dbfa623b6600a1cc54bc8437f290ea771cde083ed1600d97", v: new $Int64(0, 9432) }, { k: "4359b6455257677dbaadb6c9f7ff64286b767e2cf4a2c035eb2748b53b6040c1", v: new $Int64(0, 7497) }, { k: "4360cb2d0d9e8668b81d6f5df138b66c95c82f315a22da6f471bbc586c61df4e", v: new $Int64(0, 1476) }, { k: "4368d9c84c2285f96ab1aa97284791a16569003b10b8796030113975c704054a", v: new $Int64(0, 3631) }, { k: "436c2c38e9690a609beebe8b04048b4073dd954b091346218c66fe0eb5d14908", v: new $Int64(0, 8250) }, { k: "436cbd09b7c31a512612dc1a9ad65d610789223e8a1154df37cde6c4063ffa4a", v: new $Int64(0, 5352) }, { k: "4371785fc9b0b41b3ec1f1785a5f54bd577e29d47d120f0826ca46b770bdfe3c", v: new $Int64(0, 3750) }, { k: "43727b30427b5102e23499fc4c10a79342bf8904d15ca44734b616ae05a32b55", v: new $Int64(0, 8513) }, { k: "43739fe760432721bad0ba485993f1ca0ea709c73eb3cd17a170453ee5c67336", v: new $Int64(0, 8412) }, { k: "4376039864eb4b8a8b552b2a1cd5cec1e00ebe5ebda870020d268ab8488bc9d2", v: new $Int64(0, 8984) }, { k: "4378adc5e0e90c7806bd279985a303ffda9de4f86500643eb53a2848911a0031", v: new $Int64(0, 6769) }, { k: "4393c7d3ba9a9fb2db1b1ef6be9cd26d966663724e11aabaffb646106aa38de5", v: new $Int64(0, 5115) }, { k: "4395c65cb59d7cd2f76535eee9b2b939d5256a634e9c22c55ba255504577e145", v: new $Int64(0, 9906) }, { k: "43a0acb1e9a9a73d01da6edb2a69a54d6485d9a2461b63c6c3b1a275928f0f7d", v: new $Int64(0, 1755) }, { k: "43aa7a0cfb416368c2114fb4e5bd4094ff7b04a39f1a4c10ba13e1f4dad4094f", v: new $Int64(0, 4509) }, { k: "43abf8d9aabf049d25d86dd0555ad81bbb76bdde7b5571cd90af6960d7fa9cc2", v: new $Int64(0, 5657) }, { k: "43b0b348e1ffea992733b216b385516906afaab848a518a58fc1ab5232f353b2", v: new $Int64(0, 3652) }, { k: "43b1dd7791fb576ed5d2df550fa6958eedbfc6b42d82ee05a9f6cb804b4e6256", v: new $Int64(0, 1689) }, { k: "43b452e57575e82f83b5ef76f2d190d2c06735b13a14893fbed9187cd1250bed", v: new $Int64(0, 2295) }, { k: "43c57ecaf1f92a327d6e662327789973b8f31f45a9433d4a5a91ebf5a71bcced", v: new $Int64(0, 4608) }, { k: "43cb0f4aaba58288010a3827ca9bf2c9c5b7c9c500fdc85d31a234d312d7ac34", v: new $Int64(0, 135) }, { k: "43d4d3d55241b82359c2eebec2906c55d220ed43f833e0817ebbb72aa05cc9f8", v: new $Int64(0, 3506) }, { k: "43d58c254d5a8a9cf2b56afbbd588ccb1888dea74860d387de916447f87c22a9", v: new $Int64(0, 5999) }, { k: "43d6374aaa4ec4cfbe4ae7956cb2bf2aefd933b359685304806528aa08635acb", v: new $Int64(0, 7247) }, { k: "43d6bed94c6fd9b965a065cc4abfada40c5fd85e711c2d940cbb071988c07ce7", v: new $Int64(0, 4140) }, { k: "43de9bb66ef342cd8de665231229cd3f38d836173c9e0c91a61c0bff83d77726", v: new $Int64(0, 402) }, { k: "43e374988927c93b1e165686aeeb8888f5011ff8250f6772b91c02a698d6c4ee", v: new $Int64(0, 733) }, { k: "43ea01651c100eb5c79a2176ee6554699fcf175f04c9c04d94bac087c62a66f4", v: new $Int64(0, 9078) }, { k: "43ea59c1ededd1520bd3bc77417860c610f6718a0aa6271055fc667cfa719e8a", v: new $Int64(0, 3482) }, { k: "43ee34ee81c0c2637eb1a11c77d6791dfc2666053744e41be8bc103b9a856298", v: new $Int64(0, 9357) }, { k: "44001680203a4497fc8499b96225b07d457e5ac806d622296f6f31cdbbed0032", v: new $Int64(0, 4199) }, { k: "4401f7392374e0dcc8f6f2e39b40fa73dc266e1615188ffacac82c66350950cb", v: new $Int64(0, 2101) }, { k: "4409cd207775d00de4a5a420576683ad21eda9901d37495cd85e150eaf867b26", v: new $Int64(0, 1483) }, { k: "4439f65db3519d62e5e3a11e854918eb8f072384c0e88062f8044ed319f19843", v: new $Int64(0, 8701) }, { k: "443a3c6f30be1dd454b275e57b05463b0a7649407e958150eb93149a3743fb70", v: new $Int64(0, 9077) }, { k: "4441598823e74dba4fad812e5b2f8f628fd4bfe4beff9f8e2aa522708c547502", v: new $Int64(0, 9748) }, { k: "4449b48c894dc290e956c18cf525448699d6795ad6aaf6bfe5e695fa9eb535d7", v: new $Int64(0, 56) }, { k: "4457201eaa4e8fee3fe3e03fef0435c085f06af9c5077a72e8a6d22419fc4f9d", v: new $Int64(0, 1486) }, { k: "4459c7fd91c7cc9203d6c2a4237c5156d085fb8f33fc283805023a9d363ea95e", v: new $Int64(0, 5517) }, { k: "445d66203754edd2a8c287d06eeff9827f71b554b660e94d620433abacaed006", v: new $Int64(0, 7798) }, { k: "446874662213ee048614b26a9067a2817ce1836562cf57fcc2d967a4875c9558", v: new $Int64(0, 8058) }, { k: "4468d6aef94865cab0fd137bf153a1520031f260d998eaa6fca4406575e5e914", v: new $Int64(0, 2920) }, { k: "4472c2d2a778943f41e745402bd615df585a3201f36c18ce6c9d9ba72bc32f21", v: new $Int64(0, 5475) }, { k: "447632ac30d905b5a9b8133423e780eba23b08e51ffa822414960af0886beacf", v: new $Int64(0, 3132) }, { k: "4478c29bb8f65de9c5c648a4ca580db3ca3d7b371661cd10148cbba5ae395f2a", v: new $Int64(0, 1694) }, { k: "448275249c3fbb345bc5cd6b89c8345652982f62e2fc77c3d0b7371205739cf7", v: new $Int64(0, 5325) }, { k: "4487132c86672d4bd1c4c65bf1871950f982ccad3fbc0a1846025309b83dd958", v: new $Int64(0, 4083) }, { k: "44934f1686fda3c68983bb3fb532f06eef33a2a0ef3a44f1128cc3b439bf0d07", v: new $Int64(0, 6640) }, { k: "44a31180412c09a1eebaf95a16af71650f258b5df63e70239945115219fd3738", v: new $Int64(0, 2011) }, { k: "44a56bc190ddf0455cf6c33ef860c47e693dc8800b5cf4c53b824556e71667d1", v: new $Int64(0, 5442) }, { k: "44add6d1a9d8eeef79771fe53d379e2640330492c39d517b8e09b8b27b33080e", v: new $Int64(0, 3590) }, { k: "44cadfc26c723142828f2a0686f89f7da132f1fe7ebaf5ee6448dfa1fbaf5d4d", v: new $Int64(0, 8488) }, { k: "44ccf1ba794da9e7afbab077bdaefcde62ae19a681721f8af0f344b957f26c17", v: new $Int64(0, 8520) }, { k: "44d1cf6d4baa8e843e7404890b11105d19eb9eb5dc98687bfd06e62c8d79f7ed", v: new $Int64(0, 7078) }, { k: "44d591f8358f5f10cfdcfdb8e8f2de4b67deb9fc281600d892579acb8980ed8f", v: new $Int64(0, 7748) }, { k: "44d613e145b32263100321a27167981fb67cd95c7719ded848febf07bdd50ca0", v: new $Int64(0, 7604) }, { k: "44d67a7e1061027e83a8648acb60cc1866aaa773c2ba6249a21c6db6f7e523f2", v: new $Int64(0, 43) }, { k: "44e46eeaaf5a5a7d1b4f892cb6c60df2627814d2803a83ff824bd716b57436fb", v: new $Int64(0, 2460) }, { k: "44e527d5651c0bcb361270ce2ecd561aeb00a75f94df96d48b67e995dbc7e399", v: new $Int64(0, 8678) }, { k: "44eb92c824f63f98f3dc98c0bfd726f1a584c6b53a806682aeffc165ea7589d7", v: new $Int64(0, 3904) }, { k: "44f7911089ed396808ebe15179031bb12f8552b1d86cbfad54dc4cf641bbd8dc", v: new $Int64(0, 2881) }, { k: "44f89e9be78e3906c423053b14881e290b509fdff2819fc2d0795f1e121aa3fc", v: new $Int64(0, 8390) }, { k: "4502876f5d75809c75a4d3bd52bd1d52fe4bb43a55beeb599ac33e836ff0aad6", v: new $Int64(0, 271) }, { k: "4515bdde3c2d154dc4dd0167106e9354a22f0317cf1dc8df9423f945dd82e150", v: new $Int64(0, 1480) }, { k: "451ae80fb6104ad5c9b41ef16c10c6a1a2a0a5544c88ec9afc5001fe1f572d48", v: new $Int64(0, 6623) }, { k: "451afa6da1bd61407a6af6a019a10a9e29c1389f24d4ad8a43711a23409f7595", v: new $Int64(0, 8148) }, { k: "453382fb57ad023dda849b65759f84448940446c0f758094adaf1e7a6184de15", v: new $Int64(0, 9046) }, { k: "453bf43afedf03c874823b4ebba8379586e135b50c6ec3a5962af0432d05e2bb", v: new $Int64(0, 5093) }, { k: "454d9ee9d5539fa07deb6fcfa93fefd558d1a8e8de86fe86f4e09a1dee5dc690", v: new $Int64(0, 6637) }, { k: "455289e0338dda830d28bef05592754d2ca9963e1a24778216ca8a42007ac12d", v: new $Int64(0, 6029) }, { k: "4553a922ac19f07580065efac46097347af083b751d38cf47a506fbf6940b310", v: new $Int64(0, 5030) }, { k: "45547ca4cdb5b971774d25070ccfc48ac4a49d292a92997191fa028b2d0a93bd", v: new $Int64(0, 7637) }, { k: "456421350956c697d0f43c2a044e9a63ec836329750d8ca80b002cc958f26c41", v: new $Int64(0, 3814) }, { k: "45691d14c1847019423eed65d0f4a2d56d8fab077d5dd1595a63b687f85bc1c1", v: new $Int64(0, 1311) }, { k: "45774a54401ca26ce8c310b43318a2470d60dfb27bdff4fef7cb066b105acfce", v: new $Int64(0, 7420) }, { k: "457d12928bcb130e78a357eb1828cf9e764f0e1d365dd5e35ad24acb5d625ffe", v: new $Int64(0, 1831) }, { k: "457fcf9868191504967d69296b70fd5c101b4c356ce902af18de434dccc1ed68", v: new $Int64(0, 9282) }, { k: "458609a0793f17b43a88eb91cc92afbe4c7d5804415a29a4330390f4e4c9a273", v: new $Int64(0, 8623) }, { k: "45871e5b0717ebaa8eaf905efa31d223060f519fa7df6fd63a809dc06d19f4ce", v: new $Int64(0, 3143) }, { k: "458866c33180004e0ebbcddcf7e0ea046a0822d7a60b1222fb8c93881cd6cdaf", v: new $Int64(0, 3699) }, { k: "4588f92576b11950a9b561c62a1b6da4553e8a99b93ae7ef5daf54eb1eb9f278", v: new $Int64(0, 5494) }, { k: "459390251caf34f32ae6a75f4808bc7848dd5b54ea284201eaf0bd85a6845dab", v: new $Int64(0, 3617) }, { k: "4599fc49b14e28af21dbe412e92348e0d9219e6c8ecea051a7a3c21972e76167", v: new $Int64(0, 8020) }, { k: "45a1cea339ac86c0267a63db47f55dca8258ee9af8d6eafc9dad86d180227df7", v: new $Int64(0, 6481) }, { k: "45a4f215dbd092639884ab5cc5298d35c15d143fe633d90b693616518daf9b01", v: new $Int64(0, 6858) }, { k: "45a7c28f919432144908e6a9c7126b368b9637514b9067f09b7e001fe76c475d", v: new $Int64(0, 550) }, { k: "45aeae044640b153b513ec9d95425075e7a0d24e29b8b060b36cebdf1bedab3a", v: new $Int64(0, 4729) }, { k: "45b4467bca2608a741d66f3ec8df168597ba1d99bf999d2901d5388f5449d830", v: new $Int64(0, 9725) }, { k: "45be1729fae1a5b389882d9b908a9a5e96942c7f50dc017ae4626660a4f5549b", v: new $Int64(0, 3328) }, { k: "45c1905f62a32a8ac61815be31b92979ed3714a5b726b29681f0b18626176d2e", v: new $Int64(0, 9288) }, { k: "45c29089987e007572e8e9ed59d6ece61e0a2ebbb6aaf71b5e61c3068f2ca256", v: new $Int64(0, 7361) }, { k: "45c6f3e03bc006092cfa08cd21e1994dc376ccad2482fde9342d889fbaa09bd4", v: new $Int64(0, 5603) }, { k: "45cc7b2ef04e43a5f890dec46139af544d36f1c6f29dbdffa523dae13e7dca80", v: new $Int64(0, 9852) }, { k: "45d2d95562e65174292c9fffebfc9cb254f4cfeafa83cf282b3be6ac9f801120", v: new $Int64(0, 5244) }, { k: "45d5a246c7018a1976ad3409056cc2fc1314be24839842cfbcb8397661e7ea82", v: new $Int64(0, 3741) }, { k: "45dd3746befa0e59dd316b1ac5e8f1616c1961ce013993b5b12b33c5a51e6785", v: new $Int64(0, 3473) }, { k: "45f42f2866348a72be32f5179c5a61e000e7a7b6f9f20c44d6920acf44c054d0", v: new $Int64(0, 7101) }, { k: "460ce0577278c1e2c2b5574c4038e4202a3c2cb6ee63e85f130d78bcb64c9f13", v: new $Int64(0, 4795) }, { k: "460e86a696ff399406a5acc3ce6d671f216cd21183270e1d19837b0e9f7e1d35", v: new $Int64(0, 3622) }, { k: "461c28634394f1cfee6e8f7fccaf2e2f90f324d6552486dfafbf7c57fe2fa134", v: new $Int64(0, 1799) }, { k: "461d010fdfba3bbf55dcbb87f43c91a53001f2a9706173ac93e51251d22562f8", v: new $Int64(0, 6792) }, { k: "462aeb1b3b38f656128ac9ba244bfe7a495b8ae4378f5ebee1790c389699b381", v: new $Int64(0, 6096) }, { k: "463400ae31e604fbb209f5d4250d3489d4d8797f7b45781c305bdedfcb1eb4a4", v: new $Int64(0, 2584) }, { k: "463e4d0a6a29b9a2c176761c65b51a69901c8e0cd9ccdba02078297f9fbf1a85", v: new $Int64(0, 7572) }, { k: "46403e51ef14a139d5f2b083bfddf42bbfbe14feb530e59d6343002b1f21a1e2", v: new $Int64(0, 8543) }, { k: "46414f5d698623512b3daae4e5167611a309b59569e49e136de9eb79db035a26", v: new $Int64(0, 4326) }, { k: "4642c275bba9effa96280c1180df28f3e062838ded5af8954cbd6e739039e82b", v: new $Int64(0, 5038) }, { k: "4649124784109ebff1c147bd2c73657c338cf69b845f83b943b65d7ad16f3f4a", v: new $Int64(0, 7903) }, { k: "464da98c52ed3dad6d361035d8355814a1ee4f75ad49ff8c6bbf1ea6c583941e", v: new $Int64(0, 6369) }, { k: "464e23d3c92bb1ce33dcf77db247807c8060ea75e0edc0925f47fe1095f266c9", v: new $Int64(0, 1186) }, { k: "465adbf5672c3fef7fbf5b03868ad1ac6b30bc721c6103f0215b92331b383280", v: new $Int64(0, 5029) }, { k: "465f409c80f59b87add290ec13e9102c22785a3a1196d0f33bab6f1f20000dae", v: new $Int64(0, 308) }, { k: "4660b75da955d84d0550a76e9588ec2a25df3a7b2d35a699ec7de8a03e381a16", v: new $Int64(0, 9102) }, { k: "4665588c9919754ba225343570e70c67f68c070f72a7317e6405f79cd86dc3de", v: new $Int64(0, 379) }, { k: "4667ec32e5db1d2a5d748dd6c165bfb7548bb0f5dab07a051dceb244e16a3737", v: new $Int64(0, 3048) }, { k: "467c20b9323467c7f1bacee7aa3ea0b47900cfad33e485b8265be908cca4866b", v: new $Int64(0, 2636) }, { k: "4684f8b76876734e9409fbe6e8792c7403b93fd29919080d3aae2921ef7a4795", v: new $Int64(0, 5507) }, { k: "46916c27ee3f47ada67e3c326af977f2ab9e58b3e2458082757f419f096efbaa", v: new $Int64(0, 4745) }, { k: "4697564098738d4abae942e46cb5fe8f9b68dedb7de12c993b3998ff2814e1d0", v: new $Int64(0, 9365) }, { k: "46a40874d7b3ca0bbb8e1560b0dda8612792d44bc0aff7608c930134047d400f", v: new $Int64(0, 467) }, { k: "46a6d04f9739c91bb3d113d78bcb97af6a92a0186426e9b2cb4caa19358bc9e2", v: new $Int64(0, 6771) }, { k: "46aa6cb10f1e952de1584dd142011e83fa12eb55e3b1c4e96c2ccc21b984afe3", v: new $Int64(0, 9563) }, { k: "46b01c118c8a87a451f67ab1a4d5008538d9477ccc81667fd5925140c6179de6", v: new $Int64(0, 9620) }, { k: "46b4d2db6e5b5c4a814f72b3e5db5c43bb4322db82b4c7e99298f7f7903fe1ea", v: new $Int64(0, 6756) }, { k: "46b706b603d855d96481ee10c8cc9242270ee5d7a6171642dc21d4524adfcbe9", v: new $Int64(0, 1936) }, { k: "46b75f468b80aa3f83afe9436cc922c9c6db19db4ae203cee09e8a2788a3be83", v: new $Int64(0, 8813) }, { k: "46d209a878aa74b53bbffa088b8c6423f2276d08c12436f0d9932bf23f80b3b3", v: new $Int64(0, 880) }, { k: "46db0299db7a66051c7b429774a22afb858406f7c6c37f5e64d64c2368b26ec0", v: new $Int64(0, 4879) }, { k: "46e1e183e68f678f9306959a69b2dd70ea0d06725f5048eb63ee17952b8e9a61", v: new $Int64(0, 9135) }, { k: "46ea6941c58e73cf284f4855bb671062cce978ac3535c05078440f186b422f81", v: new $Int64(0, 4426) }, { k: "46f10c16ff58212110440c40c601509049d1fdccda4321bdb11f4e4d6df8ac95", v: new $Int64(0, 1734) }, { k: "46f70b52da842ccad6aec52bec7f174e55d03029c44295d8afb12eaed459d44d", v: new $Int64(0, 3152) }, { k: "46fdadc58da0f756400e98f455e9535e651d1fc43d6169005d09998540bc1b74", v: new $Int64(0, 3129) }, { k: "4701f35dbe5ba2e6cc010440ce58734c055a1e4232f45c0fde2930bded8d5ca4", v: new $Int64(0, 1748) }, { k: "470329217eb23d339c332b7517f9dd1bf39b1ab9e5b9943597c6e75d787aea73", v: new $Int64(0, 7527) }, { k: "470614a6991d0e40788069bba89458e509a0b0f24bd1549d92c4b3e4899b72b8", v: new $Int64(0, 2454) }, { k: "47067c2a8506a20f355cb950d647ac194cecf276245a73bc5ee82c290b29fcce", v: new $Int64(0, 9463) }, { k: "4709a809a42d9b376684f80541bc1acb05ff3645fd4674edf7d4f162c31cec9d", v: new $Int64(0, 6323) }, { k: "470fa4a8a23b005ca5a42b56213105acb00b7816dbc18f635607d8a32e768439", v: new $Int64(0, 9790) }, { k: "47102549d2145392e55b341f5531e6d8cd7c4685489e1942e335b1ec10e36111", v: new $Int64(0, 7648) }, { k: "4718028dcc007d85442e87b59641c707d6a12964a2e7467b3f60e19deaa31965", v: new $Int64(0, 8037) }, { k: "471a77052b2c7708ca0544e6e6ea135a9a8b9b8becb94c008a95aa65c2aa1d5b", v: new $Int64(0, 9570) }, { k: "4724562ef93fb62bd5ad342914707f79a2e2a98f881d925352edeb4f9dd694db", v: new $Int64(0, 6661) }, { k: "473e122cc4af7888a6b5c0ade04a21e211fc226da8366aa8b206c0d5ce7ce814", v: new $Int64(0, 1282) }, { k: "47527c554a375b2fbe884d89820aef6e3e2e95062fce945cfa3b70262e6fc0b7", v: new $Int64(0, 6388) }, { k: "475452c589f2884551604e14211bad1764bbe252eb9fe8be05c6a04e7eb86da9", v: new $Int64(0, 8610) }, { k: "475dd203ac90399fd94c082e36d45a17e347f5500d79ca4d5faafcf4319b0ccc", v: new $Int64(0, 4120) }, { k: "475ee16810ce4fa6a47290a9242eec29b61f3148ab4bf3e1298781a49c6e2904", v: new $Int64(0, 8187) }, { k: "4767f8a6bbd404d027d10013df93b9f497ab1ea9f88430505b91dad0dd3df49f", v: new $Int64(0, 5776) }, { k: "476ffd5bc49058320b36b4e35cb3e56e4ff508635d22c6be08ec16bdb6b3d7b9", v: new $Int64(0, 5754) }, { k: "47754b7c3bd8f751a55938425fa33554ed1fe6041999bfdd843ef5afd75d5d30", v: new $Int64(0, 397) }, { k: "477e300d76a3da0eb16d8b810a7bae5b6a4feedb258a49ecb014def52dfe0ccb", v: new $Int64(0, 2453) }, { k: "477f2a796068fc1a8b092ef5c7aa808dc53a3579d22d8178161236e7f2274704", v: new $Int64(0, 9924) }, { k: "4783204aeed154cae1f2bf447c864f731dfd2d76e9b962994717e89687381a0d", v: new $Int64(0, 5546) }, { k: "4788dcad9e96bbcc5594a7852b9f5acc1cfd8d8d3c690d15129ef977f38fd14c", v: new $Int64(0, 706) }, { k: "478d88ca6be3bc673335fc0061c9e58ac6dcae791f855173ffff2f4ecd724e8a", v: new $Int64(0, 1704) }, { k: "4790442909f45717c256e592269f094a9661d20063d6895e1007ee09f1a9bfbb", v: new $Int64(0, 2027) }, { k: "4793a0392b619d25ed5fefdffbdd49a5bbd8830073139adccaf1351900b721f6", v: new $Int64(0, 7694) }, { k: "479a594cc4d47708118fad22f8dec1b5099b8c24fba72a7a04f893b36ab090d7", v: new $Int64(0, 9183) }, { k: "479d895fc49a12d6df48e92a8cc292d1f142befff02721ed3a3d3887fb6f057d", v: new $Int64(0, 7340) }, { k: "47a458276aa1dbdfda9c3e89a0a7a91fcaf912e494fe5f7f8f58b9897bfc0d09", v: new $Int64(0, 2493) }, { k: "47aa49cebd3a34995b11aa0d8a8cb095efeee77d1a1154204b431fadb402bf07", v: new $Int64(0, 2070) }, { k: "47b12aca72a1f81f086e86c80f5759e8e7e0e6711e0843bc40d2ca65a1f7671f", v: new $Int64(0, 1207) }, { k: "47b131eabfb2229708048e150790f0511ed92968ae0a4af83038d9962704a043", v: new $Int64(0, 2738) }, { k: "47b3e7f610cbd8dc7bd6343c4398f9afeeee1754b130b179de14b5b0044e2073", v: new $Int64(0, 3299) }, { k: "47b65c06d9c4986d436c43065a63d2f8cfece5e058ffa068b174a8f66b88f09f", v: new $Int64(0, 1919) }, { k: "47b95f2217ef4ac982d9695c708accba018dc86e7957d818f4475a5477160ba6", v: new $Int64(0, 9982) }, { k: "47bfc23987137ee439aa6390429f8929e35ef2e717c84b516424ad16beb24a97", v: new $Int64(0, 3607) }, { k: "47c04a7627290c6cb1793f9d25e7d35e364dd6816684740ee2b7db2fad06ee16", v: new $Int64(0, 3550) }, { k: "47e2ed0a82902cb30c338e3d436b8e78326dfea474c122ac7383388052595c4c", v: new $Int64(0, 5985) }, { k: "47e4af4973614f2f25bf3eb62fbb20f23de9a1ef26efabfe6c1b3bb6c12588f9", v: new $Int64(0, 9595) }, { k: "47fe4f68e9cbf48cfe471886c2249fbd485873a5bd7984244ceb5d5d5f741793", v: new $Int64(0, 9009) }, { k: "4805f284cbbf802ecb36efb8aace696dff056cb6cc953687d83717801549ad6e", v: new $Int64(0, 7683) }, { k: "481207041bb7bc5864255a69f1a786e7060de1fa4c1fcbf06fd541bde3ef2485", v: new $Int64(0, 6803) }, { k: "4813f306ce4c3c6037edcd48aa372efd8cdf80291a7dffd31755c822476a62a9", v: new $Int64(0, 7400) }, { k: "4814e5ce7adc71979709060ef9f272be8abd3ddff9e41d916e486286ece0aab6", v: new $Int64(0, 5832) }, { k: "481756b4cacdd0d19ca252c628eed86338bf18c5ce8c03b8173b0d194c006a53", v: new $Int64(0, 5675) }, { k: "481ef0c9f94cad6223eb465a96a0c7b01acdc705224b4256716f3f720b6cbf03", v: new $Int64(0, 7558) }, { k: "481fcb1cee639f8bbf42fd2f928edc51c9dd86b3d5f526d7c32197b913863753", v: new $Int64(0, 9628) }, { k: "4827fb6e3ae0965163fd918dfabe1e31724717044a3ad2c07c5556b5e914028b", v: new $Int64(0, 6425) }, { k: "482f7c4fb94062404b2a0870da5df7ff612e8832a79e092e5109365e293ebdce", v: new $Int64(0, 6749) }, { k: "483a0c6cd0add8afc068d0024ab7eadc29e32876bdec85e2b7774f62838f7501", v: new $Int64(0, 804) }, { k: "483f2fbccd753ba106af6552c0fcaf79ce831e7ec6f469598ef10312fdd9a98b", v: new $Int64(0, 6888) }, { k: "48606c5af713116673d1829af1bc5ca426718b0c3e86bf7a29489971cad9bd5e", v: new $Int64(0, 2149) }, { k: "48644072df33c792d44f5c8c39c9655549b128a012dc5d48d5da9acb1ec9226d", v: new $Int64(0, 6963) }, { k: "4867bf820ea775c92d5d69b05b6098942800c983e0c263e9d7a6920ec37b1d96", v: new $Int64(0, 6821) }, { k: "486907696b3bf7966aa6eb2b40de5f0ef32238e2ddd64a66cc64a6654182e16f", v: new $Int64(0, 7233) }, { k: "48700c5c9349da9b01cc9e02b7c43b5637766a9eb49585fc5c76b961cfa9286e", v: new $Int64(0, 4827) }, { k: "4874384e164db6d059ac15cc0ee3f2872c3580fe778aa817a78657785175f15a", v: new $Int64(0, 5849) }, { k: "48831762d5a2f8b93c1128024379eeff592f97d529632c160bc556ae3307a5e0", v: new $Int64(0, 7587) }, { k: "48847d74626388a4d9f4a54b853be2df603256c2d1fc608001f2da435abfdd5e", v: new $Int64(0, 7368) }, { k: "4888396856586a6844896c1ea3bb3ff0c3a6d3c1260b4c04df758897ba0316f5", v: new $Int64(0, 5140) }, { k: "488e1fb900d756c17b096bf78c15d9a9e74c8673a7ab480095f9317dfa338448", v: new $Int64(0, 8618) }, { k: "4892863a036046fede8df3b010211c8a11b374e482ebf4a81e581d767704334d", v: new $Int64(0, 9477) }, { k: "489f361159c75396c221d2e7d389c0688fb37d8f486fd560f253cacd706ded10", v: new $Int64(0, 5528) }, { k: "48a47e1d87bada57c900c7e9a9f5041ab896883933c75e42eafede8a3a2919b4", v: new $Int64(0, 8185) }, { k: "48cd92777b17d626a3c38b61e874df9a1413112f337f04fa8f1ad4a70bc45b9e", v: new $Int64(0, 8690) }, { k: "48cedc30b18e60d8ab6ed85158fe6618d32715cc1bd03203bc6e37aef131907c", v: new $Int64(0, 3621) }, { k: "48de73feb80d5b735ec091259fdee60225cfb075017d936418d053a335297027", v: new $Int64(0, 4874) }, { k: "48e28d08451d6e8230df379e6e3979b449ed8bd49749955a884a1ee8b14c03f9", v: new $Int64(0, 7093) }, { k: "48ef0d8a9beec51a07c29150b8736a0a583184e348297222f7f80f53e4598ee4", v: new $Int64(0, 4853) }, { k: "48f92571c0c4c1d3d84c7af0730f51d69c0bd7e83050a311564cd8bbec1745ed", v: new $Int64(0, 4275) }, { k: "48fdb7e3f6f8e21410f34b70767f2182678d67892777bf929bf3ecea32f8dbaf", v: new $Int64(0, 2219) }, { k: "48fe8127abf1e44ed9bfb5a1b21e36f91d55a7e79574bf9e6c55c24341a85901", v: new $Int64(0, 8368) }, { k: "4901ec07e8f039c285a768db29a32e6aa46dbe2285c5be25361ec73017d11b95", v: new $Int64(0, 5514) }, { k: "49040a239c4bffa6a33a6d5ab54db8ffbc3c98c931889e5de4a4315fc9310abf", v: new $Int64(0, 9938) }, { k: "4918daa22c1d6122552e48e94fae6ab4ddab1f0129b0d54f083cf43c7d10a1fa", v: new $Int64(0, 9393) }, { k: "4926e5f10c1f03628f7eb5672e70c91921fef4592075523997a013b2e2a8642a", v: new $Int64(0, 7563) }, { k: "492925115d32fc521265f4939358c0049b056413a0962f2ec85a6a8800a212b0", v: new $Int64(0, 2732) }, { k: "492a11befa6ed45edc790874e4ee7940cc787d48a493bfc55790f90b8d3aa3b6", v: new $Int64(0, 2209) }, { k: "492a390b22294cb849fc3ad3684fcadb6fd97198151da94e681eacf36a2e2815", v: new $Int64(0, 6538) }, { k: "49324908b493896285297a68e4baa88bb6eae08781185c28c9171480502141ee", v: new $Int64(0, 5270) }, { k: "49369fc4dbba851ef3d3e4b29932fae0d2a0d8d4f34127fe5636998920007ba3", v: new $Int64(0, 1189) }, { k: "4936e5d8710971a37a84fcccef975d73fefd080871c384696448107795b99597", v: new $Int64(0, 6845) }, { k: "494c742ee46a527ca799c50db2cb8d21c53a8aa8ce6678a700b809b84a708ef3", v: new $Int64(0, 3232) }, { k: "495203acc70650edad6819e10f7377b69fc404daa449f9dcc948e583ebba156d", v: new $Int64(0, 6971) }, { k: "4954f1f391edd9116ac2fd816ca920d46a88a925aaba8039ec642591aee85e9f", v: new $Int64(0, 8002) }, { k: "4968c046cda37d104616269316aefb87394f5abddc941e37bfce0ebd26b3ffe9", v: new $Int64(0, 9746) }, { k: "4973ba366e2218cd2ec3afe22361b566998c1251bf4cf72640226c2e3ea8f271", v: new $Int64(0, 7173) }, { k: "497828b161ad8cc4849a7e3e78fe6e414494debcbb5eed6c718e8efd9cfe73a3", v: new $Int64(0, 3453) }, { k: "497c984ff56c05d488567e4f385ed5bf1e86768044ddd9f07ad0172076b62555", v: new $Int64(0, 2614) }, { k: "497ec5e1b6d1ad7c04a52c0b78fe3d5546610de35b800bc0db3c63139d4ae8e9", v: new $Int64(0, 8287) }, { k: "4981ae507b675a937215c8ce94fc83a2598d3ae5c04a71516d51e2816c7b93c1", v: new $Int64(0, 1192) }, { k: "49851fc156094f3baf5e282b263128c0de4ec59a9b0ed5e448d714bd2e35112c", v: new $Int64(0, 1035) }, { k: "498d43a0f677b48cde54dc15626de117b8a0f9894773a62ac58de4c84f2e4a75", v: new $Int64(0, 9456) }, { k: "498db036f5d3ef41650bea03809a912ee03e0a188e73cc3051a22d1d5da374b3", v: new $Int64(0, 6445) }, { k: "498dc404bd4a33fe5368deca1967488d53f7b6d4dd639fd03c63290e61536ce4", v: new $Int64(0, 202) }, { k: "498feeddb5a83a32ecf57cf9295abd012018660f26058257c97683df3e1d71da", v: new $Int64(0, 299) }, { k: "49957b75aca8cec73a1836f6bba3245acddf4295da6533270c38023cb430f15c", v: new $Int64(0, 4307) }, { k: "499b2dc4e02664a27d94b6c4512f02d404f9914b6c32d15d5e24a31da83eeb46", v: new $Int64(0, 9446) }, { k: "499ee420b7c743fc9f9268003d94d98a65c7607ce3542f63c222dccc82ac1290", v: new $Int64(0, 7268) }, { k: "49a14d78c4b01b6f22f0d25b8cc3b26609654c19d08469fdb4cc0bd8814596d8", v: new $Int64(0, 7816) }, { k: "49a24695f87416d214490168ce7399d0b696a6f148d6cdc18c6475072951b148", v: new $Int64(0, 8151) }, { k: "49a449704a8d33b2436d3bee31fc4f4499fcd1d815ea9cf80bf75ebce4f4e1a4", v: new $Int64(0, 2419) }, { k: "49a952edb48c7da2f21d414b599effb38939769dbbe12d83a9a1496f81d85677", v: new $Int64(0, 778) }, { k: "49b21fc8e998bcb6521e77fe67d9b6f800fb5b1d45f15413dc2b266a5530bc7e", v: new $Int64(0, 7246) }, { k: "49b4e8056595f17f3aae2eb92e977ee87f37cb101427e7fcac826c40d9e50e85", v: new $Int64(0, 7294) }, { k: "49bccb2f1d9fa60489179f012e8a2ca6bb479783af7121a466c6c3c9d7986281", v: new $Int64(0, 9049) }, { k: "49c675822b866b3f913509d5d7123d22b627ab1401003d76af3116723a06675c", v: new $Int64(0, 7236) }, { k: "49c8a390f535e2b6f1239edac6dc787cd0db62eef4483a98fa5bd44c6d6cf129", v: new $Int64(0, 5595) }, { k: "49cc3df6b6f421429260beebfd566e46ab7e85d40b0c31e664e8369435bc8ab7", v: new $Int64(0, 794) }, { k: "49cd1331e7a4813d11a5d8ea2da1a1bfcf3c2b7d14828e93201248984dd2f0aa", v: new $Int64(0, 3650) }, { k: "49d195ae65c14c7972ac5b1118d15f1cff1c757bd6bc7bf4269afb5af77f0e26", v: new $Int64(0, 6697) }, { k: "49daf90f263358e5090f79bb9da6f627b030c6543b0c3b48767a8dc2e28e8dda", v: new $Int64(0, 2935) }, { k: "49dfef3e5a4f3fb330832c881c2662b66f0621718d0040334cc006cbdf74f6b7", v: new $Int64(0, 5683) }, { k: "49e58a2208ff8ccd5b90261919641afc149df34158dcaf357e1ea2b9e3501934", v: new $Int64(0, 7353) }, { k: "49e6a2149ef15071d1aab48e24543f3d223465d9be1858bdae7909ef52e55219", v: new $Int64(0, 7059) }, { k: "49eca3f65cd8e5b7a8c2a0f7c627e66fdffa43a120ceb75231bf77c7a74ab730", v: new $Int64(0, 3949) }, { k: "49f3dbc3cbf95452818aecd1a959ad5043d55f6645572d9a965ac708a8548ed7", v: new $Int64(0, 4685) }, { k: "4a08d0b26eb91217940d46420d74134b966814bcf801759bcb022b5a70568bf7", v: new $Int64(0, 4364) }, { k: "4a0df761a90546c5d0e33f8ab0c999043deff6224e6894432446f576024140a3", v: new $Int64(0, 2420) }, { k: "4a0e8fe1bedc28104b335cc50e88176fb0ff9c32055544b8ee814b2f21451ba7", v: new $Int64(0, 9317) }, { k: "4a19f1b0b9336ba862f60e9a03b43585ba25acc8b5bb142e6e5ad1373a929dc6", v: new $Int64(0, 6846) }, { k: "4a212f2bdd07df0c12d3f41e92809bc74362b1f886442652379ffc25a12d99f4", v: new $Int64(0, 6931) }, { k: "4a215faa206fa2722c84aeb64289400825e3f32538a9b4cb9d6d78c7fea79fba", v: new $Int64(0, 1232) }, { k: "4a23547c80d7eb316d19f233d3c57b702a9a338b2828b531c7e5905623351a94", v: new $Int64(0, 1238) }, { k: "4a275eb1ffc91aeadb521c8c6384da8220c4ced2d80cc8e9d86040e03791ee35", v: new $Int64(0, 1410) }, { k: "4a31954f7c0ad31c723b3795060ac39ad2edc7dd9dd99fed4a2f3465c8162331", v: new $Int64(0, 8595) }, { k: "4a332586ede1933743c5169dd03dce8f3eceb40a4670dcbf352a51b56044c150", v: new $Int64(0, 5123) }, { k: "4a407b53b4825d2e8d1dee760304f7310e4cf9cd5645ccbff90a5621724de240", v: new $Int64(0, 1888) }, { k: "4a44f87670a35810265cb350043921cd926df73b69dca3071eed48b466ce057d", v: new $Int64(0, 6009) }, { k: "4a486f8a4dfa29c573a75804aa00a22816344833f0d4cb7ebc54c78f4c3a5838", v: new $Int64(0, 3551) }, { k: "4a49838af56daa660fa103ff1f286ce07ced13e1efdaf6a81394313ee6305732", v: new $Int64(0, 2013) }, { k: "4a510329819a49c9b37eab891a815b42313f1d0c4832cad8ceeb3ae561d2b978", v: new $Int64(0, 9348) }, { k: "4a53349950528fdfe5fa3093c139a19514613eadc058e2c4bec7c8f149d9c51b", v: new $Int64(0, 6768) }, { k: "4a5381237e5796d297fd71a94b9e7f16332999d1146bae69bfbc8f708b06feb5", v: new $Int64(0, 5760) }, { k: "4a57f59aef473dc650f47d9ceea4bf7315d3bd7ade277a5da8e45b40ce83f90a", v: new $Int64(0, 6940) }, { k: "4a5ad59c9ea1ac723c8234fd9642ee8a37d376d6602af048a281ad5631f3096a", v: new $Int64(0, 4358) }, { k: "4a5df6cbee4c5b5cf507c42e75975808016bd66eba26725dc932ba0cda5bda58", v: new $Int64(0, 635) }, { k: "4a5e119c31c2106067ca943ece8698430489bb4c719ef1e85cf68af79ad75afa", v: new $Int64(0, 9915) }, { k: "4a7421c6b87a04e3a10eff04dd91f8cfcacab44ac262bc49cc1ff5aa8c0bbc52", v: new $Int64(0, 6476) }, { k: "4a7910fd0d892863d4d1d55de1f739f39fd8bcc62b36767f849524d6c60afe54", v: new $Int64(0, 6551) }, { k: "4a7a4169d99df424d5bdbb8f0c19465bafb1905fed075b92f59f1a26fea75cb8", v: new $Int64(0, 4948) }, { k: "4a919e17aa1cd64c4d6afa750c2b89786065bc6d348bbe5da47da0266f69abf6", v: new $Int64(0, 2252) }, { k: "4a949a47f66ed0b1d22a4a3b1d070a17ca5b251dc75d52ab5a67fb159e5b2ea0", v: new $Int64(0, 4473) }, { k: "4a95aa13dcd6ddd240c41a69e66c97411eb1d36a1e30e351407127c1f029006e", v: new $Int64(0, 5231) }, { k: "4a9be7a5cdbdf568e3117658cde688cc6c47675bd03194f14dc26da9e62f9220", v: new $Int64(0, 4616) }, { k: "4a9c60e71316c726b9c529b069449c28fb2cbd1bcdb13974f18d9ed5285a11fd", v: new $Int64(0, 9814) }, { k: "4aaa135fe3d38ffb8c9cd1c1a266c482d6c0e9124b025a70a0f1291545a4c8d0", v: new $Int64(0, 7384) }, { k: "4aac0355ac12ad86f1e15b5fe359786cd844356b5fde9b7e111201e9c1baf6ed", v: new $Int64(0, 9397) }, { k: "4ab075e0903e4e35b096d4d64e0e81bca5c3968aeae8e87d98d80b7e8426112e", v: new $Int64(0, 18) }, { k: "4ab6cca09470d9551d6bd2d88b5bcf6faef2e823bed5ab35d52b7fb78cc72c5b", v: new $Int64(0, 4949) }, { k: "4aba7c1605f21e272d1d96cc3056fe288f24e98308a706a536e6b2791371ca69", v: new $Int64(0, 9390) }, { k: "4abb657ffcfdcbac1044214b9aa69c8e1edf25a133af7343daba77588437c43c", v: new $Int64(0, 6923) }, { k: "4ac190410efa80a82602672079936c2508ba601aac8f185bcf7b2074735fdb54", v: new $Int64(0, 8907) }, { k: "4acffdb1cacae6228e091689d4905b953c1bddd79cf7d71e6c5bd86a526189f7", v: new $Int64(0, 6023) }, { k: "4ad4734fcd305ae10fbfd0013eac510c51cd1d7d53b8bc2db01d8cb0ccb578fb", v: new $Int64(0, 9316) }, { k: "4ae4cb0c06eeee20a30ac8027806e01045f464fe6267f51ec3494a2821393e2c", v: new $Int64(0, 5032) }, { k: "4af26247247523a61da118dc75fc1b5aa3aad90eea75b827f8a9ae537c98ba54", v: new $Int64(0, 802) }, { k: "4af4a68f47a37329dc7c96db0d2d84be06cfac1172016df0e3816ec8fe89d21e", v: new $Int64(0, 8580) }, { k: "4aff07924bf36b87235b045312fcc10874e48d2d94aae342f0cd22b02e74599b", v: new $Int64(0, 1254) }, { k: "4b098b22aff28e3e450a6793772f3208014857b9e3bf06774e5e96ac9da34c09", v: new $Int64(0, 9307) }, { k: "4b167f1a1455ca66f53569ff3d9cc240eb77bf0f7ec6b50b1067d5583f2916f8", v: new $Int64(0, 4849) }, { k: "4b219371e3756ec18dac4f033a2bc8f3d486781ab7eea12cbf258c667a1ec9dc", v: new $Int64(0, 8646) }, { k: "4b27a2281aa19f15b0c5a0ff2608255b3a4e785169cfee5e2cad40418dac653e", v: new $Int64(0, 240) }, { k: "4b28967ef099405b7204bc725b3ba7a90cec369ef633104eb23bb21daa035caa", v: new $Int64(0, 7647) }, { k: "4b2e4af3e78757b1078f3cd18ef783d26e47911bfad7e41e7021b28559df295e", v: new $Int64(0, 4682) }, { k: "4b3305aad2d8fb43cb1266d922105d4475a08a05fc4a75dcb4a08d959e4c1b1a", v: new $Int64(0, 6848) }, { k: "4b373a1d28055370e75d7109e4186354ac07d00ca1ab6af1230e2fa48ff5bf50", v: new $Int64(0, 9974) }, { k: "4b38695bb0d32dbe34d72bb7e04dfdfcfa562696dace025b5e54973ee5b082e1", v: new $Int64(0, 2958) }, { k: "4b43ecfc48a6f35bc7a7940b93ac7d1335840e9cb634facabd04dc08d6fa632a", v: new $Int64(0, 8726) }, { k: "4b49b68e50214415f7fa14022c7ffa747b0779c0e6d3cf7c4a11a7b84f0a6ccb", v: new $Int64(0, 601) }, { k: "4b6034bb85891f5ef58ff735e289d82429afa19ebd55cb33489c1767f8a04944", v: new $Int64(0, 5905) }, { k: "4b62e03b29d6f76393c3b2de2e5db0d8e3f994ea5dd5fdc9b11f1c536f3fc490", v: new $Int64(0, 5698) }, { k: "4b707d39b3f6ed598c29ab28012cd26b1811df312c288df09558d6a08dc8a22e", v: new $Int64(0, 1417) }, { k: "4b85f6582ff7acc881b6c2563f68bef13ee785c25350edb982ec611d70a8aa28", v: new $Int64(0, 8084) }, { k: "4b90b4e682c0a2bbe02371043d2ad29451db2ff2215368f1c13e691a1b0af279", v: new $Int64(0, 6706) }, { k: "4b90e511d7832c9af17db9b88e2a1d8bb58228ce7fed8fccdcd3422fbbc353cb", v: new $Int64(0, 8364) }, { k: "4b97cd4d3aeafeda04b2b3543e7be6b66954d3c3c1ed23410a8eb6a6e5ccb655", v: new $Int64(0, 501) }, { k: "4b9e99d2c6c1141a9befd884e8a443f906e5f01cd3d5add464f86d98ed7a89b3", v: new $Int64(0, 2908) }, { k: "4ba8945b13248998da65c7672f7cf873927825008d49686767bf8877f005502f", v: new $Int64(0, 4101) }, { k: "4ba96674e8540f3fc6a4ddf6f4671ed6357eefb1c5b0555a56a67993f487694d", v: new $Int64(0, 3229) }, { k: "4ba96d5d1149d55c3cdf26906eab3353fe15dc83a845068fd67b60d9f152d405", v: new $Int64(0, 5951) }, { k: "4ba9c77dd5ee2ab8d8b05ddbb574c7b06f938846d491930de378fa2cfe95771e", v: new $Int64(0, 4180) }, { k: "4bada2177198857e00310be9ec08293a3dc9c2c81f120e7ecf0f16f96353199f", v: new $Int64(0, 2497) }, { k: "4bb252fc886044fa60f9068b930e9bde7b6264dba3191fc4ebb9424f2948bbc0", v: new $Int64(0, 1971) }, { k: "4bb9f1a11d958b7cefe8ebf2fcc7f8a069717745f981ced46942de61e9b524ab", v: new $Int64(0, 6599) }, { k: "4bbe7bbca9d4ff49b1e4ad18c3051b2510d3a1b7e93977389e575013672fc9fd", v: new $Int64(0, 8161) }, { k: "4bc96bc1fe1f4fc1daf3770a75ab6d29580cc0dce74d4bdb7d2e988bff9bd2a8", v: new $Int64(0, 4487) }, { k: "4bd2e008ab3d793d974dbcb9d9143d574b6816c97c9a929fdfe8216bc7f7a53e", v: new $Int64(0, 7240) }, { k: "4bd4d645f551302c6866b2a7f434d0b02d259144f21ed10fc2bd8b343d4592db", v: new $Int64(0, 2583) }, { k: "4bd6a291dc7077a1ca05911c6644d42755cd7611d83332638ed0ef7ccdb839a3", v: new $Int64(0, 1382) }, { k: "4bdc73c9e8d525e009028b8f682210c0ada9089bec98512f01d55d49a48b5a85", v: new $Int64(0, 6680) }, { k: "4be004201bb0cb7cdada8366e64d68f880dcbbce60000c329cc550c451df8a63", v: new $Int64(0, 3910) }, { k: "4be282493e1782f2718664947c34209ce90721d17f10081166c23aa3677eaa16", v: new $Int64(0, 4038) }, { k: "4bf3fdc46d85169ab0918c825faf811c9b6500deeb579e08fd70de2eaeafffbf", v: new $Int64(0, 7898) }, { k: "4bf5384b5cd78b7ad4cd134b77938d7bc4b9d2e98f1533486c886b786effb06e", v: new $Int64(0, 4365) }, { k: "4bf7af5af96c7b54d4e69e3171f63074944573fa090116fe951c1dd723069bba", v: new $Int64(0, 529) }, { k: "4bfaaecf9812d73a2f51f0dc274e9817534dada60215709845efe4cb4e60feb8", v: new $Int64(0, 436) }, { k: "4bfd7e104a3b90b6143321ba3ac99c571502c5bc56d12abcfc6c53f05700c58e", v: new $Int64(0, 1900) }, { k: "4c01e4b8d13b1bc44a84887c9bd17d38948925e1c59c2911d55653e1319b77e2", v: new $Int64(0, 4922) }, { k: "4c050c3df668eec57d359fef0f6ca630d2b8ff0e1475d70a313840cf2c21f042", v: new $Int64(0, 7181) }, { k: "4c0c99bb43d26470cf1cdbc739f793a74864314432b573e8617865c59a6d80ef", v: new $Int64(0, 9150) }, { k: "4c13dde2acf87759b61cd89fb3638a7b394bcbb850070501efaa85d28acd1167", v: new $Int64(0, 4491) }, { k: "4c167280c9cf68304a727b00fd087974cb34633e05cd885c30bbcc0275f163af", v: new $Int64(0, 9537) }, { k: "4c1a7b2e6ab32ee6cd50cc131702b278b0aa8d3af4c2855fc78befc1b501d7b1", v: new $Int64(0, 2871) }, { k: "4c1bfa17d008a624d539fd15339e2f6d188d13fcbe4fae5c9ee359f5325483c4", v: new $Int64(0, 2358) }, { k: "4c1c94ed2ff695bfb3ee306a7594d81c4790c0b417359b514186b42bb80e156a", v: new $Int64(0, 952) }, { k: "4c226303c8469a46ae618f8eb6f9b7355cef6ebac0eddda3f0063e4bdf21f9a4", v: new $Int64(0, 9479) }, { k: "4c2f73c3e554cb78a9723c6562b4bc0691a479011a1da68e417ff79d0b86a51f", v: new $Int64(0, 5766) }, { k: "4c30e82437dd4792c0a9166f4149abdeeb2c574c3adca074d0a7b05b4599c57b", v: new $Int64(0, 852) }, { k: "4c3301b6c766fae48368fa12a0695202c8404b2ec6261dc26ad573a35c23d312", v: new $Int64(0, 4278) }, { k: "4c38ccb090b7e8248b504e746811fa8e28b693d7a5057cec3549f524d73eef12", v: new $Int64(0, 3936) }, { k: "4c3a5c4e58141f60dcce4be007c57476c9001a2769410d728fdf1da54fb16857", v: new $Int64(0, 7252) }, { k: "4c3db7d0abb52acb6fecf7938c4c284a4ae881e91a2ba9dfb9c2f78456a172a2", v: new $Int64(0, 3117) }, { k: "4c42ed348b16bc52669d059308b3b734f61a81bc6f324c72ddf4138f3aab7e6b", v: new $Int64(0, 8322) }, { k: "4c55a2afc2ca79f7f89a13e319ffd4646d552b14ee79f06362f64997d90baab3", v: new $Int64(0, 4968) }, { k: "4c56eaaa9674a3d48f8006c466d3804569d4a923d9fd54f1eb139fd5dc784aea", v: new $Int64(0, 8997) }, { k: "4c655f64c522d48a4846ed2ad080c5064a82025b5af5103893b3652c01621c06", v: new $Int64(0, 9737) }, { k: "4c6914a01ec90eff27364ca4eb29cbf6c518194fea8a7bad75d2d1c654f27098", v: new $Int64(0, 7642) }, { k: "4c6c35e4ab77097eabe757b32e25bfe3f57e8ae51a9fa72cfa033ff93bf567b6", v: new $Int64(0, 551) }, { k: "4c6ec2930970572e22532c5b762a7269ca839c575d4cea72b641758b1c70257e", v: new $Int64(0, 1671) }, { k: "4c71920f97b6167f51d10cf230739a344c0ecb987c83c96ea0ce79878dd2321c", v: new $Int64(0, 3918) }, { k: "4c776bb697662aaebd6e3235d17bf2cbcfd4799964e13660ad34de3126505ec4", v: new $Int64(0, 1633) }, { k: "4c77e6417d4092f632607e3537c1e46f9d32b632421a9439e5d76ca97e5f1e3e", v: new $Int64(0, 7538) }, { k: "4c786d62589989797292348bd1cac61984a69cdb14c4f7fddc29e2d6acbb6e85", v: new $Int64(0, 8889) }, { k: "4c7b1cd61031de44dd121fa72fdf822360ca6d55f292ad4a25c23a8a8db89cb8", v: new $Int64(0, 4156) }, { k: "4c7df42cadf964f2b25f2eb10f4be961192ebdc65b99b77c24718832ddd7bcc1", v: new $Int64(0, 149) }, { k: "4c7f0cf8537d0dacbd2e812457ec577ce51290ea8b9b032597b1510525e883e7", v: new $Int64(0, 9429) }, { k: "4c82bf8a705859c2eabe56ab185b2d13cd95326c4a7babaa86af8505d87656ca", v: new $Int64(0, 5404) }, { k: "4c839ad5ac6b18a884246bfdbc9996a08083776e007d126534d778b0712ee0e3", v: new $Int64(0, 4828) }, { k: "4c8403e138fc359e182aee1aea0fc4fe625c37132dbe018388948dd45cb80bff", v: new $Int64(0, 5351) }, { k: "4c868c90975ae6369455346a749c978b8db88dba52653d079a385ceb6ceb75d4", v: new $Int64(0, 6500) }, { k: "4c95294ef23aa019da72f46aa379d1a19fa4ac7cc73eb962b8328a545632aca3", v: new $Int64(0, 2055) }, { k: "4c9879493c35f48b755a6274c18f1210ba63bc0c916fb05caf68246dd3686bbd", v: new $Int64(0, 3762) }, { k: "4c9d47095cea28404b80efa6dcb1deb3ad7fd62d69528d29f72e47e07a120594", v: new $Int64(0, 5486) }, { k: "4ca225c3a9c01ee4c0473861c5a659a74fcfedbd16ad56f05d4cd51bc3d009dd", v: new $Int64(0, 3505) }, { k: "4ca6d972292c74779c55f9c6d9fa2b455c6f76fa2ebc7427ea3cfd0a509c20f2", v: new $Int64(0, 8425) }, { k: "4cab65817ddfb048fa6bae75b4f984f31572f90dadd8136b8e2a6b37b6b848fc", v: new $Int64(0, 4052) }, { k: "4caea2bea9dce08733ca6fdd6f3d31ba231697ef3303c283dc05be7b596e4209", v: new $Int64(0, 8918) }, { k: "4cb4c49eeb2d07348784b951a84f7ee14b88247492d18d37db5b5b31f35e0536", v: new $Int64(0, 1721) }, { k: "4cb6b6aecf2591de6cb8ee40a21ac9578baf9469af043c5d8bd921007a2c083f", v: new $Int64(0, 3321) }, { k: "4cb6d1033b9f8fdbeae73e835c7efe6f3ee554df735e4ef82dfc8173700b1d03", v: new $Int64(0, 4973) }, { k: "4cb8a6957b9af91c4720ad5dddaf3313c0264d265e9b5bf2d4f4741182055dd6", v: new $Int64(0, 1025) }, { k: "4cbb7043acfa109fdcc16ef7aea3de5aec20d143086ebd6b325e3a9d12fddfb4", v: new $Int64(0, 758) }, { k: "4cc585a6be75210e0db80eeffd2f2ebdd800a3e9eb57eb1a752d1a98b477d846", v: new $Int64(0, 4168) }, { k: "4cc7408fd6bc609ea8179f178e86575416ceba1aff920b57850e8e8bb5ba81e8", v: new $Int64(0, 4734) }, { k: "4cc84258ccc9cccb59ed101080f7282fea2871f99a8be56331d97122f16af3f8", v: new $Int64(0, 5889) }, { k: "4ccc058b0afa0cd20343b4b4090b8aeb37273b57ba20c3def96c812e293b198f", v: new $Int64(0, 3002) }, { k: "4ccff1ded389dfdb0fb3146b73061cd08ad7b9283dd1df968c392e4c10275a67", v: new $Int64(0, 1863) }, { k: "4cd7bb95b04f525425792677b528dc635e2c5c8a1bb3bf2b844f277f8c797344", v: new $Int64(0, 8108) }, { k: "4cd7dc6b5dda0a664bd128515920429a5463a063efde9fbc2e14078aa872785a", v: new $Int64(0, 1153) }, { k: "4cee66619230fa490fb37df256b8c6d4b277904df1d9e061624aedd516e5cb15", v: new $Int64(0, 2483) }, { k: "4cee91800ae2a944666a9ceb1d0d1ed4a39e7f72b42b28144d15399eeb45a00c", v: new $Int64(0, 4145) }, { k: "4cf9ba33bfe1c4d473c4d3fa40cf62a9331b99b2c584c57ce23e8a8e44ff3477", v: new $Int64(0, 4383) }, { k: "4cff26b47ad3e3732eb5b26ad71217fc3fe5e6c8b723a62a7664b7c37da2c8fc", v: new $Int64(0, 2933) }, { k: "4d03c13ceeda521ec82a56d283a6e5dbdd08cc922577280aab1da2d860a6cddc", v: new $Int64(0, 2746) }, { k: "4d04921b15084e6f586e0673ca434df2ac23ce638f0dc405173ddb975f10a062", v: new $Int64(0, 5796) }, { k: "4d09ad315e3cb488921c961fce8a5b6a4e5b3259cea8e58752c616f11d946a14", v: new $Int64(0, 7505) }, { k: "4d0b7117409ad1a6ca42c460ba0d69cd1e0bd03e355d43b8bbc7c5fa26bede79", v: new $Int64(0, 9700) }, { k: "4d1920111d68f643a6e016d3317fc889eb7b3e451dfc76f44c11ad110326094c", v: new $Int64(0, 425) }, { k: "4d234cf8747148f37289fa383245793f265e4e77fec22d976740032dda538b1f", v: new $Int64(0, 3945) }, { k: "4d34e3152e5c9ea25f240c9a1e7a494117dbc5e76459a9e91cd8eb9ab36fda67", v: new $Int64(0, 4873) }, { k: "4d3fb53fbcdcb2b3017adad7d26028675ae871233e5d49f9396de22f519da1a0", v: new $Int64(0, 9179) }, { k: "4d406a8b04c599990d6c40730f245ffc5738fba5a8be3bf8d280d6805cc17e2d", v: new $Int64(0, 6781) }, { k: "4d41b92b2782f1431e6bd874ec606bfa1b3f97edacb2d8292480f8effb0a67f8", v: new $Int64(0, 5107) }, { k: "4d486365c3de5901877b347eef26c57242f57b497cf8c6a8c115000d27f706f2", v: new $Int64(0, 6579) }, { k: "4d51c2e283f03ced56e6c5c525eecd31d4c59b10f66c57a84eb9077ad76dd931", v: new $Int64(0, 4082) }, { k: "4d58976573c5650d24043893c6aead4fa2d0d407153a7259aaa548bbe973f4ad", v: new $Int64(0, 524) }, { k: "4d620e0f05179daaf69dd0487560d5318275eacafc8e016ee2dfc16e63bfe473", v: new $Int64(0, 4250) }, { k: "4d6593301f2f1b0ff4a09033619b8afcef39b0cc7e2c51d09daf06e8ccc4bf1c", v: new $Int64(0, 3886) }, { k: "4d6db465dd8106e910aab886332602a1a8f23373cb4f982682ac50dc1ba5a621", v: new $Int64(0, 9762) }, { k: "4d6ffa1dfea18a19776698caf4967eef6e60877245eebff125ea9bd44854deb5", v: new $Int64(0, 9074) }, { k: "4d76977024eb46d3737db0f256928f59ad2e5ebdaf04d940761f0efd8504ab90", v: new $Int64(0, 7836) }, { k: "4d88ba982e2c1d32b67549160b4c8f346a0b1fb9c8d00018f85412b85ee5168a", v: new $Int64(0, 5717) }, { k: "4d8a333b95eeee03be7b07690bdc1ee491238595843dfd24b5870be6db8aa955", v: new $Int64(0, 9778) }, { k: "4d8b5d3b791dbbacb910c7a23db03f75ddfc59306af9a5ef0d6b00c0403cafd2", v: new $Int64(0, 9420) }, { k: "4d8d5c2819f8f76fae65332a76c6fa25d1eb86b40da53f12404b0000281f18cd", v: new $Int64(0, 5716) }, { k: "4d8f335de26fd0c6fc09635cc1c2241f32c0a38cc46405c4f468376e8cff69e2", v: new $Int64(0, 3842) }, { k: "4d911c1478f33ef773a2e3ea8028789fcb1572fd48234dbf1b192c9135de5a22", v: new $Int64(0, 6197) }, { k: "4d9856cf485457c0bf7bd309aa9737315211c3ee5f55729d2ef12fafd6e0c13f", v: new $Int64(0, 9232) }, { k: "4d9965920cff65c8544adc6de2374b5e460d3e8c1627750cd46094471605937d", v: new $Int64(0, 2103) }, { k: "4d9b310d40a424fef2b0ce7e41326e0e41f50955de03149aba901fcd3467cfb5", v: new $Int64(0, 9289) }, { k: "4d9d67993493dc6890e9552dcae0132e2921ad2dee1461b351a57672fe48d231", v: new $Int64(0, 1791) }, { k: "4da61c096452569fba82e5c5638b5ade55307c64c1add73265b023f01d6b832e", v: new $Int64(0, 3173) }, { k: "4da9371dd39dd66e07058f2f0975a036561c803f2f4baea02711db26996910f2", v: new $Int64(0, 5306) }, { k: "4db1cd2f94542080d603dcc50dcc9cb7c07c6659d3a3c78fdd6740de8e484e82", v: new $Int64(0, 570) }, { k: "4db3b8483c9702afe15b2701e0c3cf016c2ff917f8c1199933df9c7faac20eb7", v: new $Int64(0, 9571) }, { k: "4db54b6866750b3704bce587c453eac32e8bbf63c2f2a95e7927a36b11f3f537", v: new $Int64(0, 2479) }, { k: "4dc27f4bb4f5ba42d78dc469a62ba4366ef1b4c6b847fd986a2cd8d284a5984e", v: new $Int64(0, 7460) }, { k: "4dc39b184afe08ebe06fed338c0c55ef0a7cda36a504ff82dae7bf5f993a5996", v: new $Int64(0, 2884) }, { k: "4dd45f70149af5716ac0fe3b6487f13f47573dab9bd3a1e7d3edcc7e345d519c", v: new $Int64(0, 4911) }, { k: "4ddb55447ca69d2a42ca8f43001bc6a475a5064f10f2fe4c98f75b1c0c5562a7", v: new $Int64(0, 1133) }, { k: "4ddba71a4718c7bea126c0cbed5cd991eae180075d7ee4d0303e2ba5e1d052e3", v: new $Int64(0, 4159) }, { k: "4ddfde844c5744fe5d581f2ab84b27296580c78bb48328f299d5a8b0961ab137", v: new $Int64(0, 9021) }, { k: "4dee5e1d274748c7ca00eefca91d92b082d9bab9c4d7d962cdcb9d08757fe975", v: new $Int64(0, 6007) }, { k: "4df1509c71705b664cfa55e905a4f3beaef36b5f4199417c5efaa938713ba861", v: new $Int64(0, 4648) }, { k: "4df8d6a3bb9e99874d10abc09ccda4b76ad9979415c67c39944455f08bcd124f", v: new $Int64(0, 3367) }, { k: "4dfde35c3215f6d853c3d47cd313bdc2bb0fab7a32b3746868ed1e415a31d549", v: new $Int64(0, 4308) }, { k: "4e00de57833013fd9d3f18e24f9ac180c6eefb48b5f55a52868068423674fed0", v: new $Int64(0, 6343) }, { k: "4e08fceb0d8d7338c1da6579958f539da0ebc9e9435c5b5581b922f208ca4d04", v: new $Int64(0, 288) }, { k: "4e129b2297f3b70d01c151dc6a699bd10f47131b56d1252eea2a7d9bd1d1e0d3", v: new $Int64(0, 9346) }, { k: "4e1b4cceb332cdbb5ec30e4a4758a55dd424ffa2a226de54c6188e352ed9af9b", v: new $Int64(0, 4315) }, { k: "4e1d84dad11f03d5fbff7e2bf4a375fefa712c868b7e8a300331b08fc60457fd", v: new $Int64(0, 2114) }, { k: "4e2e06cc540667f7d38256d696c0833058c270c81b52826b2de316e1a1b9f0e3", v: new $Int64(0, 1224) }, { k: "4e2e5ad32ca55a4422cf6111a9435996242d9f960dbdbc3dd78c03236a676b54", v: new $Int64(0, 5728) }, { k: "4e31993e469af082c085a8382e75edd4a9c8dc31cd5a8c48afc629774b2dd103", v: new $Int64(0, 8241) }, { k: "4e361107a2152051c42ac3628b5e7fa60ff945856c1186b77ee5d7f9c3911c85", v: new $Int64(0, 2048) }, { k: "4e3ae1a84158e29f0e954930f65463db626cebed683eba04cd34a0ae1c6d6545", v: new $Int64(0, 8284) }, { k: "4e4110f61a598e0a3e3fdfbc14c62e2d0c110af3a394a273239b2453327098e8", v: new $Int64(0, 9640) }, { k: "4e43bb2739b85a8e0d0700900d0e8a9973279d3da931c8fd3e766be30a0e4bec", v: new $Int64(0, 8603) }, { k: "4e452b8462448002fa51c9de3dc15708601253216434381273c037c683ad6753", v: new $Int64(0, 9692) }, { k: "4e4bca26518ed4e301b6ca56ba9d61b2d96f86d0b42182b41cb0dc4120cefd69", v: new $Int64(0, 937) }, { k: "4e50e1018e709b288c145eeb99664fbfe9af767d0c2fdfdac55c4256f2e4c66b", v: new $Int64(0, 6067) }, { k: "4e51da2ce8a6858dfe4b997532fca582d9b1886b19d573009c87715e3305ef65", v: new $Int64(0, 3136) }, { k: "4e5a61a74685b83a545daebd0f5e97c17edcfb073899fa0093372d0288e7189f", v: new $Int64(0, 3677) }, { k: "4e5c237caec9bf9465f4834c9f1a6d042e7b73be6b1c09d27beefcbbe818a062", v: new $Int64(0, 1482) }, { k: "4e6739d06e840ee1ca9bd4b7328fd0f6714e58f6fed28c216f7f0b5dae5e3078", v: new $Int64(0, 2998) }, { k: "4e8d3c71bbadaed7d7b7fb915394a3f1de89a5775c392980195210a3081a298e", v: new $Int64(0, 4768) }, { k: "4e91edf87c0ec511e5cc18cd88e7f9d0e8b3201c84646b720f2569aeb71ce303", v: new $Int64(0, 7210) }, { k: "4e94a264a5e226cc4de3f25db668fab72b6e4c9fff7806d16cf42d09bd5d04d1", v: new $Int64(0, 3252) }, { k: "4e9f672bf2c29dc4ae34fd985011a9642410b740e303d54db1081bc9db1d2094", v: new $Int64(0, 1510) }, { k: "4ea306877d58e241f8f45cefe5d117bb3b471528f824bc20d1d562765cebfde4", v: new $Int64(0, 9802) }, { k: "4ea53767e992308f6f3cd57b46b8322170824771edd7bad8fa2a90cbc1c0c3e3", v: new $Int64(0, 6130) }, { k: "4ea8d03d87dfbcf66e844ea42451b23df44829f68325b63693014b127e78369c", v: new $Int64(0, 5817) }, { k: "4ea92e11522bd544982e6d24a847a1964fb3cf29d29652ce49a7489a8ec52dde", v: new $Int64(0, 41) }, { k: "4ea9637f8262e7b83ec8f5244053d9a87709a5461e8afd9d5e58e60c109e13d5", v: new $Int64(0, 8043) }, { k: "4eb4f8035e8a8d5c1b0b04110d95d7dbe31be4c1353ad2bb2fc689ce6599c796", v: new $Int64(0, 8920) }, { k: "4ec135d64208ee9f5e5e7f2f85b90fc3863f958b59764ca2e8ee25c2328b60ce", v: new $Int64(0, 6430) }, { k: "4ec189f915afc8a9b2bfd5131ac661fa54a237574fedf22736b611d73464927a", v: new $Int64(0, 5807) }, { k: "4ec62f730b35a0773e1f2db1e5fb21852a357d59b94d032c12c8abd73f0850d0", v: new $Int64(0, 4036) }, { k: "4ecf91ffc311b535dfa65c6c7d67cfe06e1c47e21aed50ea97082ca853ff8e16", v: new $Int64(0, 2747) }, { k: "4ed1413c0ebaa3b6816fa7cbb2ccb16c570a8ef2132c906cb37667623257239a", v: new $Int64(0, 6231) }, { k: "4edecaac3b4bdbc9d6781bc988ffd521f7fe73313568c767d2b353b8fc000055", v: new $Int64(0, 6411) }, { k: "4ee326731786cd310c1c86ae74a6654a4e3a4b047668b0f4b8b19353c7661c13", v: new $Int64(0, 6711) }, { k: "4ef99b7aea3f6f4fd2a0789c01bf70b4c545887ba65046139f2dff4c0b6c8066", v: new $Int64(0, 9501) }, { k: "4f0e191d20ea5fbcc5f61d54d4270f3029c7915367e30522a525d5db13eaa605", v: new $Int64(0, 7950) }, { k: "4f1b5c7b8cceffb121009dd28d27ee9a02d31ca38ccd6f6e84dc1ff29d89556d", v: new $Int64(0, 7908) }, { k: "4f1cc03573cd69562726e77bcc013a23cd2f90669d2b25bc2ebe67878471217d", v: new $Int64(0, 9172) }, { k: "4f1eae232980ad2f434410ecad24f08696413901e30d233961e4ba3c4a09eede", v: new $Int64(0, 2791) }, { k: "4f1ff9bd79db323ad85c507549ffb80aefdddd11c271dd2b9689cf16b28a67a6", v: new $Int64(0, 6549) }, { k: "4f35a7e9f4b61b9e64acc744e210998ac4c743170bf88b67a15506906f020c56", v: new $Int64(0, 350) }, { k: "4f3d1103de0b832a7b7a4158e011d4ec9a1739b976d8f575ff10a26ba6bd256f", v: new $Int64(0, 3496) }, { k: "4f426037621ea494e867585b627d1ee73a2108728bf263fa45093c032b629ffb", v: new $Int64(0, 5550) }, { k: "4f4ba07be7e8f87d581843baad671aa34f34f19611f9f5540bde8950f3219caa", v: new $Int64(0, 2969) }, { k: "4f4c080917b07fcf64c4a07b0a7d198df488c4035a7981402efa3d0ec009d7e7", v: new $Int64(0, 4122) }, { k: "4f4e15ce8cdb30fc46bff9aea31fccf7d2aaae3263cc8551505ab6c066a71d87", v: new $Int64(0, 7152) }, { k: "4f58680cd626c6c5304c9aa4bfee00cb352151e1c400904e9394efc7e9ba95e3", v: new $Int64(0, 5451) }, { k: "4f647b9d27cf8bce788337bad72cae5f68c9ee9a5c0061afb235bedeb5d7cafa", v: new $Int64(0, 8575) }, { k: "4f6ad36a9477ee77c731ef74dc1eb49da1bf41887800f4954b765e31d1894fa1", v: new $Int64(0, 3147) }, { k: "4f7261ecf3a1da1dbf81da8e2da1ca30a18556108a6094946543eef03cb03fcb", v: new $Int64(0, 4283) }, { k: "4f7ff6c47fe36e89cc148b7f5c8dbb0eeb24e90a1800322f4b4d9e4206e81fd2", v: new $Int64(0, 8989) }, { k: "4f8c380c8cf674aace807cdf9fd9cb1cc95b1fc384feb9fed0477697eb642b3d", v: new $Int64(0, 4946) }, { k: "4f8fa43b41bc3b6a81909216979b3e8413d97e5871db558cf897d48cd6874512", v: new $Int64(0, 5482) }, { k: "4f913095da1ffc22cd7d7d373f9884899a92dc6a9796a375c0f71593b7e2dbbc", v: new $Int64(0, 3733) }, { k: "4f9bed5ae27159577cd75465a0845277c5b61218eb813155233d1475f2ff0dfa", v: new $Int64(0, 9251) }, { k: "4f9fd9a8e1f1918a56b99e7c74bc56dec20b66ea29ca2031d3930f06b9dddca7", v: new $Int64(0, 2208) }, { k: "4fab3ad06ca9ef1499f28730352169ddea57f42da9b6caf7c42e7a56ada781bb", v: new $Int64(0, 4997) }, { k: "4fb249a141cf296d20e52fc9ab1f94fcab16aae69446aa149196d18bed27ef0d", v: new $Int64(0, 1693) }, { k: "4fc228fc2e12f32c7a038c4da90510203c3e4bbaf09c024e08322728af3a339c", v: new $Int64(0, 717) }, { k: "4fc2ac716ef039857ab733812cba0b6239c7afcccd92963b405d6d02f5c2c892", v: new $Int64(0, 8995) }, { k: "4fc581537a7c1a01ff7d95c9d0ff63255dd78f9ab686272c9c02aa0baf4f8d12", v: new $Int64(0, 6693) }, { k: "4fd004a6ad35cb5477a110b3398ca5a722bb68cd3ef8b5a4d437c0387bdc9f2e", v: new $Int64(0, 634) }, { k: "4fd6668a3031153e3b701c059e02805fefa7d5b3380d67cf077081ba28f5249c", v: new $Int64(0, 8974) }, { k: "4fd8e265bbd7be98f6c9971388d59254aaa26d118b22882b162c9be8b2e957d8", v: new $Int64(0, 2390) }, { k: "4fe11604ba44649a54e1e0ca57145f34089652cf35ffce1579b2b368bc424803", v: new $Int64(0, 5824) }, { k: "4ff61b43a99da674bebf5e7e32aa1fc3b4019257931600dad5b5b70841bddc89", v: new $Int64(0, 2244) }, { k: "4ff82fc0064a7a3923170a928b0add61497d30ebe9662c4d859ab2fafdfdd7bd", v: new $Int64(0, 8407) }, { k: "4ff831a5ef5ce31f49942e5d00479e1315cc04178510746edcf12fef90fb17f4", v: new $Int64(0, 9722) }, { k: "4ffc47a0fca41467ed47a10f92ccc28e19c75a15ef21a1e44a85d1e39b10b076", v: new $Int64(0, 9887) }, { k: "4ffe88afa9ff72878ff82868b850998e75c121c2ab8f68c840afed77afc7ae9c", v: new $Int64(0, 7880) }, { k: "4fff7c63ad0d4a6d5f1b36daedac90021c5a940da95c4c69efd05bd0cbc72a2c", v: new $Int64(0, 3338) }, { k: "50045324433880f22e6b2a53a4dd105864e046b9653d82bb1b577b4b8111fecd", v: new $Int64(0, 3272) }, { k: "5004928dd958f909bccf983337e3a3f661863da6572fcd85dfbca1c4077baa94", v: new $Int64(0, 4490) }, { k: "500558a56a0bb111d0c45e75c26cf777c612de62e81c3890c5865359c84f31d2", v: new $Int64(0, 5815) }, { k: "5008ca5168a5c5a61db99de4c3e4977007fbc4da761b07d7bc51fd15337f1716", v: new $Int64(0, 371) }, { k: "500cc598724e0288c8badf124b3108c8dad81524b637368bc8eb528ca0ddc830", v: new $Int64(0, 6093) }, { k: "50191a1c2b053d1c9259e2b4658b8604fad3e2ced8398782803e921bdf033020", v: new $Int64(0, 1576) }, { k: "501aa85fef500dfde3379d72ea5d1cde92e6b6f151d3d495194fa41f982c2c69", v: new $Int64(0, 6214) }, { k: "501f0f409ff10d953600e39de483a9ed46636f5b555f535eefb75353ee36c94d", v: new $Int64(0, 5522) }, { k: "501f79ab82f6740960f20fa60f582b89304d5244512cb214f76b801c675dff98", v: new $Int64(0, 9860) }, { k: "5026176eee75cb8207c988a07fd288e5f5515b90f5ba2377e6d322d86405c2ff", v: new $Int64(0, 4646) }, { k: "50322ac9a44a9777c102279b64e293c39e53fbec9d00f8fe587ce33b28117c8c", v: new $Int64(0, 1577) }, { k: "50467fa6db81dcdecb0c474d549913ca417b9a042c5277fc74b6e2e6853f9309", v: new $Int64(0, 2430) }, { k: "5051beb686ad1a4dcbc463c49e1161c6c3a4408c73e202402bc1a9df6ed5dcce", v: new $Int64(0, 4396) }, { k: "5052ee0f92aeabf73740e070d995e3fd730e374f341af06d97fda4d275949778", v: new $Int64(0, 6755) }, { k: "5054358cfb25e122b3878862621cfd76df19aad9c310d5fceb25009c8fab6f3a", v: new $Int64(0, 3033) }, { k: "50562da54bc8484ca715531f02b77d74f9c584f5daf31c8cba7b13056f325e69", v: new $Int64(0, 4130) }, { k: "505646d6dddc3f62638468dfbe106658062dbbdd80599c44f79d796872d50c43", v: new $Int64(0, 9259) }, { k: "5056c8bd8eec72da31c8b611ff0b6ce3ee30a2c42a2e1a4ba112f905a612c6b5", v: new $Int64(0, 2542) }, { k: "505b372ea32f507b9d65d420f851a23bc46e4c81fbd8c4397807cf7c63682483", v: new $Int64(0, 2913) }, { k: "506c435f003dac1d2579e111f1a3896184ebd14a27b70561a992bda66245bf18", v: new $Int64(0, 2870) }, { k: "507473b4443502d182c2cc78e6afcb0ed124c9672056341265e5906bb23d38c3", v: new $Int64(0, 6110) }, { k: "50758913a8865444a14c101608f074436fccb8643bdc79df32568a9b793f0533", v: new $Int64(0, 9026) }, { k: "507678730c918d225fec084c3592bb4262edf12b43c685b43705618f322672f1", v: new $Int64(0, 859) }, { k: "5078f1c7f577750935c2a84a7e899eb182e94e4a2bd9be2a584b9ed423d0279d", v: new $Int64(0, 2131) }, { k: "508156741d53fcdd0c41f9073fa692954a5f8efab4ea00a315af09081d5827d2", v: new $Int64(0, 4314) }, { k: "5081a6efcbd876ad0e4cd1e6a8abfb450f97c3c90bbfc2df8fe66dfe6825c81a", v: new $Int64(0, 9707) }, { k: "5099be88951c30f06bcd42fc848335f0f2be20dd92f070560bcc28540c1fa3f2", v: new $Int64(0, 6421) }, { k: "50b077c8353eb164e244cb273a43ff1887af34479e7f79e7985b6cec8f3cfd09", v: new $Int64(0, 2572) }, { k: "50b15fb0e3045cae373a531325035d1bb036f85080ae378e5c79bd7d3f1fd365", v: new $Int64(0, 7613) }, { k: "50b2af122de0bf1f2d8d28a6ea1e10df2c22369e642f5f4d8b883491c75fcee8", v: new $Int64(0, 9726) }, { k: "50b8d325c36d00e5a929738afc6fa6b96317882f0c133f1883e3d2a57a993197", v: new $Int64(0, 4762) }, { k: "50bea9de09f185ce1dbb73382e888c4516373478965329541aa2e82e5ce81856", v: new $Int64(0, 2930) }, { k: "50c1078de6b21750e2271661c4a3afe6a101d3ccc556fc92f097f305799821af", v: new $Int64(0, 195) }, { k: "50c7c034afd694a9c0a8d775ef3310a085de01cc00bc7e041837ae548738b257", v: new $Int64(0, 7843) }, { k: "50c9e00d3c2a7a8425491092a9972d7fa61577c35d4da5df4cd5c1c2de3d924a", v: new $Int64(0, 4152) }, { k: "50cc9910f272035fc4a128298cd24dbbe0ea063f7e5a5aa1a42dd0c47d0df2cd", v: new $Int64(0, 7301) }, { k: "50cd941d7683d89a8d326af6480ce8fb77716636e4a304eb9684484788598b0c", v: new $Int64(0, 3982) }, { k: "50d167086625ce18d250364e6981f4a74888bc58c75918f63123fb29adec44f0", v: new $Int64(0, 6611) }, { k: "50d1ecc736159c0a96d09e1575048b21f06448e650d4bb5787ea058961328732", v: new $Int64(0, 4856) }, { k: "50d263b42f92de0d9ce21c8ee422c4f5334cd168b3c6bb1d6bfa8989b85e3ff6", v: new $Int64(0, 5310) }, { k: "50d298d3bf003a69021aba36d8aa59d23356c8d1872e7b541c01ce62cbb960fc", v: new $Int64(0, 9129) }, { k: "50d76f39817bb01692ff621343921c5bd09b07e87ad4a005e458a132f61e8ebe", v: new $Int64(0, 9809) }, { k: "50dbc94faa60619deaf26bc20f34f07cec21b6ab9e3c59f73314d48d890fce44", v: new $Int64(0, 868) }, { k: "50e946e80c21926de87d2a2a9ab009d62248680e28492251fbc7e66c3531b42d", v: new $Int64(0, 6945) }, { k: "50f1e7f1fb194b1f0a5127e1a84b9d4d78ced5ff9b69a6bbc8659c3b0e083b0e", v: new $Int64(0, 9881) }, { k: "50f94196c31cd2eb3728bc495e386ff947e2b6317f91aae79e298af91357266a", v: new $Int64(0, 4739) }, { k: "50fb0c2ed20a10ddb535d47f0df4fe9764eb3279801a80e40ec3451b018d5fff", v: new $Int64(0, 912) }, { k: "50fb3a9c3715c77787f560c4a1c5b90495e81b62848417f4151033fd1f4e3e88", v: new $Int64(0, 154) }, { k: "51006f02df91bc331edb3d926a58f456d273c7096031fe997962c04105fed93d", v: new $Int64(0, 4620) }, { k: "510fefba4f1b7a6f0c323000a1e5affc93af356d12eadc0e9b85f92f7da8a256", v: new $Int64(0, 2111) }, { k: "511072706a26dc525d4f260ab012d64589b012da3f2794ecb61a039ed06b5c95", v: new $Int64(0, 3400) }, { k: "511d8f80449f056f2aec23f6b8299fb903733be3f07d4038e35a72741426e07d", v: new $Int64(0, 3333) }, { k: "511fcd6f381944456725bbe9812649cb70523ccf668f2333b63c2d4f667915ac", v: new $Int64(0, 7724) }, { k: "5120abe03ca2af66c77ca320f0b21fb556f6b65fdd7e3264c14a30d97bf7a76f", v: new $Int64(0, 134) }, { k: "51231325d38fbc22a809afa81f0c440f0ad370a7d180c8a1006f5ca9bd313695", v: new $Int64(0, 4018) }, { k: "5126c9f10d99ef8bb6dbb239934881c911e01fb91c38f87012b6be0ee7f90632", v: new $Int64(0, 1194) }, { k: "512c80939a5f45ad4ae19e5a75c8db7027a592590907e32fb4b04cf6f8c75e20", v: new $Int64(0, 5447) }, { k: "512f352d420dc1543788ec24916b1f162e68ddab4efd4c9e3a681b1c3a8f0856", v: new $Int64(0, 9831) }, { k: "513778d510cb4dac35b8b935f0db1baa2168962805fd1642780976b947fe14bd", v: new $Int64(0, 7641) }, { k: "5142d6fb12a79b8b392b039c639d63e65278bc1fe4ed3bf7b8ffe75d21792564", v: new $Int64(0, 7782) }, { k: "5150c1ac0ea288758c9aa27f8a45fb7c9a2ff682bcdf3f8937b0c122016f943f", v: new $Int64(0, 2616) }, { k: "515188c400f9448dbf7ab95b3fe03222d7bfbee45d1a068de7fb04ed05d17716", v: new $Int64(0, 3640) }, { k: "515b38a089e80bd67b0e5e6b1ca2b8ecf099af546d801d20f1bdfae39826eb45", v: new $Int64(0, 6909) }, { k: "51680229cf3343171b3f6c7d7632225a6c8198e81a734f55ca679eb1f695a83b", v: new $Int64(0, 476) }, { k: "5169d00d894f858a3ebc06951faeeb8863920b0c9a4bbb5ec37c0573dd061143", v: new $Int64(0, 1472) }, { k: "516bada240d2b50a659994cc0539771e35876e54ba1d297199b3e0d7801dc9d3", v: new $Int64(0, 5204) }, { k: "516f1c950f7f8bbb7cabd3d57d1b1eaae205a6a5168c3ff32b7fab813c99b808", v: new $Int64(0, 2267) }, { k: "517194986da97d156ed1efd40cf44d1ccdaae4df72173e2f2659c9bb549c1371", v: new $Int64(0, 5071) }, { k: "51aa4686926ac0aa0aaa69455606bfb2e7b9f1b18b0b60b159b1e484638f28cf", v: new $Int64(0, 998) }, { k: "51b1c57284c8964eee1684edd53a275be843986e64db4633e05dc4b80e203d54", v: new $Int64(0, 9519) }, { k: "51b90d246843b660e07f0d7913830aa7021805c507056003f0c525dc5f3e31f7", v: new $Int64(0, 6382) }, { k: "51baeb3c8938bd26560ab948654df916d6a3ebd6998a287c041468b6aac539bc", v: new $Int64(0, 7253) }, { k: "51be5a0a4f31e572e78528a954e05efd0f785aeae8d7ac72549a397e77f85662", v: new $Int64(0, 8291) }, { k: "51c055f40cff27ad6e5b9fd28fe9919fb28350a1e574fc09a8b32c48813d5de0", v: new $Int64(0, 6346) }, { k: "51c0cb66db48f781e9022b55fd93b35def1eb15b372070982767ed4bd08ab435", v: new $Int64(0, 701) }, { k: "51c4cb4befac978ed2a50452733dc64aba68c43a9c172db9b3dfb4cc9cd99513", v: new $Int64(0, 5125) }, { k: "51cb5540276390fb4fc36371ab522aedfb41a3a85e5a49f384f50a30f9aac9a2", v: new $Int64(0, 6420) }, { k: "51d16d329d499d07b7a03392af171ed84b8ec4d904a39356ba217b0d3722e60a", v: new $Int64(0, 9084) }, { k: "51d9effa8f3ad19f7273167cf847916557d4c96fe1791214abd2544df39cf7b4", v: new $Int64(0, 2735) }, { k: "51dbbf0a25c6238e393236b41f4544f9dc247ca34a28b05fc9f8e325c75d5e3d", v: new $Int64(0, 3809) }, { k: "51e1f7a71febf050a8f08948f1ae9cfd37c0d028c03d387a324b53c470c292f9", v: new $Int64(0, 4247) }, { k: "51eb5a656fd2a91186b9c19be9cd97eff1815e81263217daa01d058ba4acae81", v: new $Int64(0, 7581) }, { k: "51f1a2b95455f917a5535a4bdfe1195c9432d75205ac207ba7ca6f5ce77f2041", v: new $Int64(0, 9087) }, { k: "51f2a1152f013b1e1b6307b62d0585e84e2aa3f9a2e67b618438c4c1a6b7dcb1", v: new $Int64(0, 8787) }, { k: "51f9d4c26bb12174517b3f92cfabca63c3c1f4345ac183dc193a6c902aa68602", v: new $Int64(0, 4811) }, { k: "52006e5c71b0b84d5bc7522ca3e460b1966bd7acdbbd86eba4368e2fc4ee7a98", v: new $Int64(0, 6131) }, { k: "5210654fa6bd5f2af3546f23787ddd7ca273efc488fe68a151d2ee13a496c52d", v: new $Int64(0, 9562) }, { k: "5214e59ac4c81a8b165fb53173d53b1a30ec9de9c5880f42aadb76beee168f25", v: new $Int64(0, 727) }, { k: "521a603292931e0f6064717ce144f29f9a9e4bb40874cb012edf5f1c49c86818", v: new $Int64(0, 1546) }, { k: "521d4e089d953d20f72fa99a4b7d0a7585527846d05a15135ca0695a88433606", v: new $Int64(0, 9784) }, { k: "5227e7e08b866f09ac8a57f0288b900f348faceb04f8327f426ab5edeffa2ebf", v: new $Int64(0, 9627) }, { k: "522e00bc9abfb13202e3d43df686f5473f50f33305c66fa06535b19f3c970f1b", v: new $Int64(0, 7024) }, { k: "522ee09a30edbee9003bd5d53d201e5bf221042b29d8d32b5678ff739fadd4e0", v: new $Int64(0, 1692) }, { k: "52388b9ec6f32963799a01a063809f8bd49aa8b8aab232711a95f0c8feb6d5cd", v: new $Int64(0, 1319) }, { k: "5239352cc8805d41f0d393102a717676e3127a3e1011857a5197e06c3b950cc8", v: new $Int64(0, 6533) }, { k: "523ca47ce26ee4f61db9b453f92f933aba40e54ded8d61adc2e1275f62465ea3", v: new $Int64(0, 1726) }, { k: "52409782a573268ff1de03cf232d7edc0e82b6e57b437c3f2df0268e88359333", v: new $Int64(0, 3466) }, { k: "52412b7d9e9db36004ca72aa2690dc822b25d8e687505147134655c68202cd8e", v: new $Int64(0, 2088) }, { k: "5246668ea87fd384b85a566e972becd44c7b0c7c21c16532e8685536f5ca1091", v: new $Int64(0, 5033) }, { k: "525571394989d30949781a610d57c8a282164d5a293027738553dae6575c28e3", v: new $Int64(0, 9334) }, { k: "5258b87d773f1461581cec676753d8aa1222e1ab27a1e266f34374a7ed935bfb", v: new $Int64(0, 79) }, { k: "526262a577ec73fa707d59dba76c62ca52dbca8c7e1abf0b3c799eb5ef92a5ca", v: new $Int64(0, 433) }, { k: "52663c562d51bb25e2e5e4931689a372d090d4b0abb914c4fe5b54208ef35822", v: new $Int64(0, 150) }, { k: "528df5fa11de21e1079f73bfbca5d0c3bcc80ab2507897415b7234b2081c4c38", v: new $Int64(0, 2335) }, { k: "529adecac5243c31aefa4d6b7c31b93948de17cebc57972dfdaea922c95fd272", v: new $Int64(0, 6240) }, { k: "52a74d7bb1bb76290160a24927b7947925f17f7251a98544401636a6c85e953d", v: new $Int64(0, 6762) }, { k: "52afcbe8f21a0ed6c021397a01922e3e506372e1e86a9b44d295b96aa119c204", v: new $Int64(0, 1443) }, { k: "52c56708ad97e0ec0cde91158d8317765f30f6e18557a59bda8d911c3c4859db", v: new $Int64(0, 3681) }, { k: "52cd32f8c11dbf719ed899786f0370131d3027d03402f27f96cfd43ef5b45e03", v: new $Int64(0, 8414) }, { k: "52cf95abf571b29cd5fbcc9f57118a6cb82a218c05ef295ba1aaa879d9b019af", v: new $Int64(0, 2613) }, { k: "52d29d360e929bc9523c6889cadfc9e4a59d10a02ce842833959c93bfe72561e", v: new $Int64(0, 9750) }, { k: "52d3441aa4662f0255f09196274233bc1884c41f6f1ee1ab826bfa9291e387cd", v: new $Int64(0, 7047) }, { k: "52d5385657e30800fe72965aa4453f27b143ae03b896a5a660330e25ed54d219", v: new $Int64(0, 1124) }, { k: "52d56be103e1b5670f3709e151dc4cc6fd8a4ba25ec88095639b063d42613f43", v: new $Int64(0, 6443) }, { k: "52d9301767baf87701e68d7d4b471b7e3e2144ea726460375309e6ce01178933", v: new $Int64(0, 6632) }, { k: "52e38cc90a34a63264bef871c458221a8708f706a784ef2bfd775480ca30bc95", v: new $Int64(0, 330) }, { k: "52eced53a652393f5e487be278c24fed8b388e4a76057c6d288c89585b96cc5a", v: new $Int64(0, 1051) }, { k: "52eda9e541765a37f0365cd07b8c18dfa2b6d15e3e61e670ea2c27d42e47dbe6", v: new $Int64(0, 4318) }, { k: "52eee461a4e076b57cbe98cb6ba1b1f21a41cb581f46a99426ed6b46cece8325", v: new $Int64(0, 7436) }, { k: "5303083114675b2c9aff9611c525d3d844f9688fd60a57eaf56adb0c0ba14371", v: new $Int64(0, 4818) }, { k: "530da9466f965eefb2e896cf5aeed28ad27f306de9e39050003b46bcdbc32d44", v: new $Int64(0, 8586) }, { k: "530ed43c51c2631623fad3301257d9d52923951a492ba1db7806d3fd754638c8", v: new $Int64(0, 576) }, { k: "53125df34fd2f169465ef054451bd010848f5165ba235f19e03844f5efa3c432", v: new $Int64(0, 4958) }, { k: "5323e4a320fe9394fb5ad3feab60281dd32ca432b2ee9de719699a06a695ef73", v: new $Int64(0, 166) }, { k: "5328e51a09c70815c7c52300a436f00acf461f5c3678e999974c1c5136782dce", v: new $Int64(0, 5800) }, { k: "532a0a098489d5002857f1393388969c27b56c46c898a71c9c190121606ee1ea", v: new $Int64(0, 589) }, { k: "532b14d2ec9395d635614708acc8d82db85ea0da1f91f29826dcb5c91ad62cd1", v: new $Int64(0, 7250) }, { k: "532bd54c995c17daed3b4c257fd08bae77ac6f283414c8f1447890d7bce7723f", v: new $Int64(0, 4218) }, { k: "532e4185f3d86787effd4f94c787f9a780ef365d2c39e551abbbd93f938c8c00", v: new $Int64(0, 1757) }, { k: "533d1a433f3c7faf0b95108b0a1c1d13f24d76e1af357597d0e87f492e3c7fd1", v: new $Int64(0, 2505) }, { k: "534d31a838b7104b0e393aaf8fa37ff6cb5844a1954d232ea55222121c469a03", v: new $Int64(0, 8095) }, { k: "5361b685c0cf987af76bf3bea6fa4fd1832f487d33fb9e95b0f2b0214e1a7a93", v: new $Int64(0, 831) }, { k: "5363e5cab9afd0886451feb056a569ccecff6c0711fa7a2ca9302d5a0a18270d", v: new $Int64(0, 2490) }, { k: "536a25dc9219a5d4c752689140d2b1104ccd525fe7c8b654e54e16f1e85e70ab", v: new $Int64(0, 2058) }, { k: "536c9eaf2bcbfb8e6b1213988546b5f6eff10261d7eed784554b9838ba192ac3", v: new $Int64(0, 3915) }, { k: "536ca41a430a1aa0fc40b57ebb866eb5d9b96885887563fa9a458b70a4ec7e6b", v: new $Int64(0, 6198) }, { k: "536ef0f5fb65bd1305381f5fa9a26f091a2ca121dcdf518b34af9c301b7457d1", v: new $Int64(0, 7894) }, { k: "536f006175f00ff01489999ebbba8363428b5b56cf996b10a3c879704bf222a4", v: new $Int64(0, 3520) }, { k: "5373b920e949c96b150788a24ccaf02e1a207d1354b218aaf41ec4d8fcaadbbe", v: new $Int64(0, 85) }, { k: "537488251ee4b49c5816cf42f5e1eca505f22cfd9321fcba3a42779ed09545b1", v: new $Int64(0, 6155) }, { k: "53774a4938cfbe1f8fb24edfd6d41b07529f1cba59d9f35b111838468a4c5994", v: new $Int64(0, 922) }, { k: "5377849f98ce1461e7bae755eb238c13d9c8975c68eaffd2b83fe728bd59ba4c", v: new $Int64(0, 2406) }, { k: "537fc967d4578a491470450bf541aaaaef40b590f1541a16d926b87a293b59f9", v: new $Int64(0, 9765) }, { k: "5389a984ebc42004584e480a35b8816f336c960ad962a532c688ec5625224c7e", v: new $Int64(0, 7437) }, { k: "538af2f4c8a6c980904da4663365ddd6734139705d20613c0bafef19b4fa834b", v: new $Int64(0, 9878) }, { k: "5390ad014d7c5737b858d6cdd996c045a1f5b3d9ef4c9ffbc0e59544f8361175", v: new $Int64(0, 2924) }, { k: "53993baf0a2d69a3dd0ab5d148bf6ea132de163c14b2bb404300a656744fcb9f", v: new $Int64(0, 2165) }, { k: "53a05f032d28d11f4a6b1464789c1c044e30e6cfca94c21f595d4496a694331f", v: new $Int64(0, 7188) }, { k: "53aa32fc4c1538f948bb172f00d86b94e543f6160c700d417b2e730b5489bda4", v: new $Int64(0, 4991) }, { k: "53aca71dd8f214bb33692af495f18e19bb68e0833e98c6d98397dcc3aa34c6e4", v: new $Int64(0, 8577) }, { k: "53b097758fb33f1f5463b3b09eaeea510402ddec92bcf3c2846458f8561db017", v: new $Int64(0, 1158) }, { k: "53b1f9faed67357427da6bd33f80223c00468bdb29dac4b39dc1e6a9ca886f0b", v: new $Int64(0, 5975) }, { k: "53bab0bb65e4b4b77da5fbd29edd47bb9bee397201a4d1d94bf5c5bc563280a7", v: new $Int64(0, 7404) }, { k: "53bdd79b0b9e092b97e74535caceca6334bf2dbdfefd5d820e1463e117f207f8", v: new $Int64(0, 2424) }, { k: "53cd4072dcc3f8ca012d245bb18310ff7325b76226ac752830dad8e787c719b5", v: new $Int64(0, 4274) }, { k: "53d2952de7ba3cf098f04a2ca0b426b307dde5d4fa267655afd7664c6ec2b6c2", v: new $Int64(0, 6773) }, { k: "53db408711554300f40bf43bedf4b64972bd88c90c623d09d8009641d82cb3e2", v: new $Int64(0, 3430) }, { k: "53dd43e26cc6084506dda950f6afd2f7ca796ac78c0172edf186dd26e755ca0c", v: new $Int64(0, 4099) }, { k: "53e651af6ddb9aaccb4679265d9b017d1d0e8405901c2be3e368c54eb6803320", v: new $Int64(0, 3154) }, { k: "53ea66da169ec60270d1bfa9e208d21127d90e16cacecd558a0c582bd07eb942", v: new $Int64(0, 1288) }, { k: "53fd6bc9d89c18c907bd3fc5c9ce0603088ae72a506e8c51b22aeb9a94e2b279", v: new $Int64(0, 444) }, { k: "540196caf2ccd717dda8d40e03f9756089ac6f165e213c1b18115f0f3a7a3474", v: new $Int64(0, 6086) }, { k: "5403719f1f3aa4bd1ae049b1c4721e8039ca5b08783f6534002cdd17a749a61a", v: new $Int64(0, 2451) }, { k: "540677d34459d15270b3c4b94eb04363c6268fe0b5762c4158a7491e525dff2f", v: new $Int64(0, 6395) }, { k: "540fd0697c72b51c436f5a93a90e7d16c4f6aab514d6fdaa4fec8ef38387292c", v: new $Int64(0, 3684) }, { k: "54193a54c0480d75bf609e877b47790758fc3f6645ef63ea3f216d6c29db1b31", v: new $Int64(0, 8892) }, { k: "541951d7b89c8f7e33be1c69447ba36e479260bb9bb3e1ab38b723a607c9c0c5", v: new $Int64(0, 6045) }, { k: "541db2a74f314ea21f738f2c3d49cc3d8faa3f7779281133385299bb6b7dffae", v: new $Int64(0, 334) }, { k: "543276213dd7702546c068b89bc887c1aaa89a55b4cc07ce0fe2841bc9e29fe7", v: new $Int64(0, 1378) }, { k: "543a2899c2f78d927b7116dcef6699b07bca64893d159350a8d5592446c1beca", v: new $Int64(0, 6497) }, { k: "544254f1abca26ae4ce3e2b081bc96e7941dd796ee296168c7fb3ceae13ee2f3", v: new $Int64(0, 136) }, { k: "5448469a36192a5339630748eeec4efb8bd1893444836bb6e381fe796c166470", v: new $Int64(0, 4004) }, { k: "544c0baf81f9afea3ef8b8829bb042f867639028c8c52916a4a5c5130abb08f8", v: new $Int64(0, 2463) }, { k: "54684f9513b336dc985c3ebceb8545ca6494dd71b58a733067a8c7a99ff27742", v: new $Int64(0, 4782) }, { k: "546a78cd59b326c69a59173c9c79531051268c3773a4ac3194ec5f2a724f681e", v: new $Int64(0, 5254) }, { k: "5471a03f50e83cae738b8cc8702446d6c235bde32bdb83772a0bdc511cbf4f2a", v: new $Int64(0, 253) }, { k: "5474655ed34f3776a2a31703f53b17b181c6959936e2dab885facd1af84d8dc6", v: new $Int64(0, 7511) }, { k: "5477c77a15ed118b24d00960e879468363a0d0c7513823a89bbc59a99b0e1c64", v: new $Int64(0, 8047) }, { k: "547b9ad7d93df3a9cf22987faa0b500e0aa8c7c629ed0a3a2e0308d9f542c3d0", v: new $Int64(0, 1351) }, { k: "547e56eb207c3617a164b6acf0b0863731c3813127836000a09398f4ef897607", v: new $Int64(0, 7218) }, { k: "54800cd7742a83c8b45d27862ab18c3faff74d3198951cd43dbb1abb2943c281", v: new $Int64(0, 3409) }, { k: "548a00c32985e37e119b5e4a1392685eb0882d63be3ab0de0cf3ffba9efc4bfb", v: new $Int64(0, 3666) }, { k: "54975d0423ee5eb2083795862c1497df109798f160117956708e134dcf3500fc", v: new $Int64(0, 5511) }, { k: "54a1c9ab574bfeded31c68223284f95788624fc26bdded068e8f710ddddb7c12", v: new $Int64(0, 8342) }, { k: "54a2d7568b4a34d1a637ba030fd5d61f3178b0036693dcab02a97a59ce38bfa5", v: new $Int64(0, 4462) }, { k: "54ade933a959efd0355b7919cfa5f0b1e43fb9544ec584c7b1d70521b2ee65e4", v: new $Int64(0, 1521) }, { k: "54ae81ec2ed844ab56ed01f0bd217d9d2a47be49901791d364c93001a6a388c1", v: new $Int64(0, 2130) }, { k: "54b346e5b278a29e326714f25a831ebca99955d45f0ec9fedf36ec266622c20f", v: new $Int64(0, 3901) }, { k: "54b82134be2f268d80292fc308da45e777e754cc24f93f67b0de880d646eb415", v: new $Int64(0, 6572) }, { k: "54d248570ad12582bf623721dbb7b5eafd3afda5cd3648741c8578192434915c", v: new $Int64(0, 7703) }, { k: "54d5468ffd086798879d2234ced8684c8c521c10499344d16515f2021719fe52", v: new $Int64(0, 3792) }, { k: "54d6939c7330fb84d1c411f6fa0cd78bfdf7dc32248d6047195e187301560208", v: new $Int64(0, 6279) }, { k: "54d6c45947d503eeed72fe519e3f44acdfd33e35ece316438eeb0b81ce2697bf", v: new $Int64(0, 6116) }, { k: "54dd0e8304642ec89560215601e5a5ac9af3842b7f358a48f5e5576f48161125", v: new $Int64(0, 7618) }, { k: "54e3cac08503e94ca08f8e3aee96642946df9433c70357ae05ca2c22e491261c", v: new $Int64(0, 8657) }, { k: "54e43acca138ba2cd9f0f6cfeddb1fc2669a23d4217de57635056c52e78711ca", v: new $Int64(0, 7074) }, { k: "54ea7eeee07a5288ee468f64e39ec4d32367685f6b3fa8a19860d004f8f0a98c", v: new $Int64(0, 9923) }, { k: "54ef91f045c3ac47ac6532c4d581c002c7b3448c68bbc6ec5cf556208e341a36", v: new $Int64(0, 7721) }, { k: "54f2f0d77ab57152d513bddbd09f4cd424a2ca786ad501ed9d909200b257db09", v: new $Int64(0, 6398) }, { k: "54f4817ffd4bc8e59af74d24aeb0cd1bf0bcde3a3dca74739bbbe9ea408a4373", v: new $Int64(0, 4537) }, { k: "54f9b9df23d3e301957e1f20f9c853952d5d5a738b74fb0853f2f1815b5c17a5", v: new $Int64(0, 9222) }, { k: "5503caf91757b81b6a429ca5fc53caa81d47229493d076090b861ba4fd647ac9", v: new $Int64(0, 1422) }, { k: "5503d73da71022f71f5e91f4d359bf21012a9c06ecccec3f7c8e6c0358981324", v: new $Int64(0, 2314) }, { k: "55050eecc300db9d9c52a624afb4c1ee9009bcfe2dc47ccd31692ba9de581ee0", v: new $Int64(0, 6578) }, { k: "550fc52db2b19a3b4c72d46f21377e2f221486255f7d324b67816ecb5753c953", v: new $Int64(0, 9454) }, { k: "551160c96d444ee46a4e5192fa28fd9a4c18fcde341e68f409f0c9022c986f95", v: new $Int64(0, 5489) }, { k: "5524405824f6b82f606fd8c7cc98cae5cc5480bb010a3e2cdc4d112c2e140bf9", v: new $Int64(0, 7601) }, { k: "55261b38d28a56093530904ca754ad11d17126c4ae24fb0ba68b2e4d7e522a37", v: new $Int64(0, 5662) }, { k: "5527e6b9858d10ac5e7ce7d537c68ab31280187ac2139eb2f23db92319dc1d2a", v: new $Int64(0, 3514) }, { k: "5533986af3e644f1db08f2fca6e87b8a5ede4dba47da2554c51f5f9515ec3c42", v: new $Int64(0, 708) }, { k: "554141fb829a92b6e8f1a11f29a6120e8b390505fba2fe1b4bc4a7a325aea928", v: new $Int64(0, 2389) }, { k: "5541b2e96ba2382db8e0482f52c8d350997c1e91e03feaa262d83e5d21e37d32", v: new $Int64(0, 7560) }, { k: "55504f2ac5db15fec25440969af904df7f9af7447c47ea0c60f048492b913337", v: new $Int64(0, 4351) }, { k: "5554ff78844a7c557c3b1ffb75e9de340af47b4ea51c9529ec919319ed1526ed", v: new $Int64(0, 6631) }, { k: "555a70400deca23e46c5bcc22652622c4c9002fcab09ddc0d6a770b96cf1605f", v: new $Int64(0, 9370) }, { k: "555b9f25a6fb856f448c75a553b09163c969948ec60d2e3f2f2ed475015c22e2", v: new $Int64(0, 1514) }, { k: "555d5838b0f6a2b793485adaabe5d33ad0bd26dc0daf7bc908c3fcf555281d64", v: new $Int64(0, 7091) }, { k: "555f47ef20bb639016c93ea5a3098e90c4cadb682c90c29b80c34c0065fa4dd8", v: new $Int64(0, 6262) }, { k: "5567c668234d9f2e824a8bf1079e1790e6db44957f70f3c1c199b7598a2f13e4", v: new $Int64(0, 6153) }, { k: "5567eb081b3d21478aa6cc22276a4aab7f14802b20cfc3406df7f8152d90bf13", v: new $Int64(0, 833) }, { k: "556800d1d72e08d36bbf3a273333bcb608d1763ae0775078efbf6d45d9cc2173", v: new $Int64(0, 9747) }, { k: "55694bbc993eb4803a53ccb533be7246b69b142c686075edc2f8fb866b9e2b96", v: new $Int64(0, 9651) }, { k: "556d2abf6c10381c879be649e88ed4c33ea7011cb50b0413f190083263389ccd", v: new $Int64(0, 2561) }, { k: "556e53833eb47d9d4c581587e26f41805f67d41cb2e0ee0329cb85fe3ad4620b", v: new $Int64(0, 5780) }, { k: "5572807ff94bd37a1843ceff26798cc8ef8f5f203e078a0bbc95ca9c246d7662", v: new $Int64(0, 1451) }, { k: "557b81b2c97b4d222e3f37450bba90c3b9325c57f1c13f313e12c70e9b37a3b0", v: new $Int64(0, 6603) }, { k: "55834fcf301db160fd4f61077afacb6752452018f183c372f882e6daf33cf4f7", v: new $Int64(0, 2343) }, { k: "558d7ba8bfb78c6abb842b3bc8a728be84e9074bcebae24a57713e5f041c79bb", v: new $Int64(0, 422) }, { k: "55933e8f75a74c683a176ee474eb2b89a7de7f10d6e0e94e62a193b3390104f2", v: new $Int64(0, 8136) }, { k: "559bd7b08b45bc2b3db01030f66a875a970d52963db17171b68f6a0d8cc6fddd", v: new $Int64(0, 7696) }, { k: "55a5f12de13804a93935e5529789957c0427e732fc422be4b74e9261607a2e80", v: new $Int64(0, 8474) }, { k: "55ade5269f4dc5d30e0079760bde31bf8ce2f806da2c63a5853e3e8784a6d640", v: new $Int64(0, 7356) }, { k: "55b0dd351e60d2c0eba53bc3097078f68f47ddcfecda0754ad5cd49ca75686a1", v: new $Int64(0, 8704) }, { k: "55b42d3624a145bf1f0cbcb026bd5a8fdbb26989cb7d2d169e23ff5168b12e4d", v: new $Int64(0, 6090) }, { k: "55be4bce09c13c45d2fce1c0882bb965c0fa9a9f0e7583e48b246f0a162c783a", v: new $Int64(0, 7556) }, { k: "55c03288e750235eb53884d0b1eba8af4a4eef56fae2643105339027239774d2", v: new $Int64(0, 8062) }, { k: "55c2c91f8107eb87ffe12478f53abc7e21278625b2d7d0c707126998de181273", v: new $Int64(0, 496) }, { k: "55c5813c8902b61eb1940eccd41d321421feab2d4a486641a507a0b9c7458deb", v: new $Int64(0, 5935) }, { k: "55ced3c782d3587fd047ae1ee98bf9be68434ba9a878aa4feea8e3c1d7a19817", v: new $Int64(0, 4755) }, { k: "55d7081bfeeaefa4854559856ee284c3f2f451d7a0583b2fb9c324e63751efcf", v: new $Int64(0, 7060) }, { k: "55d7483a5b2b25f8972664896068c1c0180a86ed1f6c10859db99b9f78ba4d4f", v: new $Int64(0, 1040) }, { k: "55daab4ea0603b684b0b5aba0744ed4b4ed78092d40c6a80507d5eeb07f72b5a", v: new $Int64(0, 3819) }, { k: "55e03fdbb5c3e7db68c0ec680ef1526a611dd8e9e5d0454fe7c6e98864b6e66c", v: new $Int64(0, 6725) }, { k: "55e9eba8d0c1ae25375b8c75de558dc15f0fa4da772a241c5d3eb5054a4f2af8", v: new $Int64(0, 803) }, { k: "55ef7ae15566dad9dea673fe40071ea68766c5b76b5b765b6b4945a6f31bbb27", v: new $Int64(0, 4657) }, { k: "55f7513f8646d72661aa485dd277fe1d4371707d4223bfd11598bca61f04492f", v: new $Int64(0, 8987) }, { k: "55fac9a98abe555de0edab38a5eb7a67f9136670be4be114ed0a8a648fbef011", v: new $Int64(0, 4718) }, { k: "56046210ebf64e5e462ff7847dae03482cc0e8529f94d6d43d2cb8807ee443fe", v: new $Int64(0, 1341) }, { k: "560600c95db6662946377c7ae3081b1a1e800358a0dfbf9633febf9726ee8008", v: new $Int64(0, 5214) }, { k: "560987bc73ca6fe511a3a165c5bba5ee08b01821cff365e3d316da7728950661", v: new $Int64(0, 5931) }, { k: "560bc956f9ef629326c14a7cdf73a29c77227adaa5915ebb8091ec5d761a34e9", v: new $Int64(0, 1896) }, { k: "560e62db833a257e5d2a773b4da2cdd15eeb82203b66fdde18f58fabcfb9cedc", v: new $Int64(0, 4864) }, { k: "5612df109a551df3557af22252ecee86504d55fcd7d7be90d67a777b428af937", v: new $Int64(0, 7479) }, { k: "56146aa9524e3332ba9c1ac26a4839094e8bef37f56f325f8594b3f5466a92c6", v: new $Int64(0, 1699) }, { k: "56150081499ac244a6c71a49f07226a95a0a34e0363d73c32b98c70f5a7eb169", v: new $Int64(0, 2905) }, { k: "56178c591a9af62be98c445a2da7264b02b00f3cdffb7a66dfc4c5cc3c727f05", v: new $Int64(0, 6856) }, { k: "561c5f83d8e39c3ad999afd259b2fce7622ed04c469639e41b480672cb65140c", v: new $Int64(0, 6040) }, { k: "562cf4806f1dba9792292c594d6ff49bd9ae20fa46a6774b274a9127b3dfc055", v: new $Int64(0, 5729) }, { k: "56365d1d5af6a861a35ae3840d7678dd00281b5c49dd15ab0c342516df205888", v: new $Int64(0, 1331) }, { k: "564043e0bac7adec0101b74dd9b0a007b3f0f54080626c012e473574deb5a286", v: new $Int64(0, 7391) }, { k: "564390cd4d7546c7cb76fa69180e8b0b15b29a0897fc5cdf8be54478051cfc62", v: new $Int64(0, 7673) }, { k: "564af3d87e452022c6bb53c529cff602711e6f64c2d2e7db328c1c452d62cf97", v: new $Int64(0, 9236) }, { k: "564c0feea6dddc4c45401a6154ad892bf8e8b3dd1604bb90dc77c23de6822139", v: new $Int64(0, 3832) }, { k: "565be364c8247b51bc056edb83d031a3289599d80af01e28e31289b61f3762b0", v: new $Int64(0, 1907) }, { k: "565d49d9faa0fc51d89d77eff83ac52acde8b56a4381998206b8b64d65526f74", v: new $Int64(0, 6418) }, { k: "566ffb031fbca3bc6bbfb523f9076191b7a611fdcd95da103cbfb4d8c41aab21", v: new $Int64(0, 9785) }, { k: "5679e69b9a8c056850cc7b11f2f266352c3fbd339346e627e2904d35a5724352", v: new $Int64(0, 5173) }, { k: "56804faf6645a6383d11fbd6d417e4f6e43d10a9b16a4df7bbea43999a3ef25f", v: new $Int64(0, 883) }, { k: "568cab9ec70d602be5267867302e5a7b9747b16bf24968c9ac1abd987be5c87d", v: new $Int64(0, 9612) }, { k: "5690fefd3571967fe84bd2d9e39551b7afc58e0d636a39e3d80487d98dd1a763", v: new $Int64(0, 8613) }, { k: "569cc182c25318779f744b6d650022968b3717a4961292ec35c854ec9b092094", v: new $Int64(0, 8663) }, { k: "569d186549039e6706cc948b4b8964f212cb537761cfb409976303b8250bf114", v: new $Int64(0, 8596) }, { k: "569d1a3dc33fc5038b54b40806c4f992c11643567a38e5cb014c9c2bb120f37b", v: new $Int64(0, 7465) }, { k: "56a6e646de29302a4e54f1e4ba9b78fccadaeea0b007d8c39c452aa08bb7d7a9", v: new $Int64(0, 1775) }, { k: "56a771b3b1631d6fae10628947862b335ae1c9e3cfec5e0f04effee34d6c4e54", v: new $Int64(0, 6081) }, { k: "56ac071e1e9fb9001be19f5d8c689f42ee9194edd800f43c7b0fb5a448bb1c49", v: new $Int64(0, 4707) }, { k: "56aebea08a76e616a002cced52781826d7ffe5484cb784190b7d8e0eba81a426", v: new $Int64(0, 7576) }, { k: "56b03fc9ca2a7e5db5467626bf26fc0417a2be0a497aa5efb467a24780bf0069", v: new $Int64(0, 9675) }, { k: "56b1e4790a273e50380fb7c3ee7ca05af05b46ec2cb58587303c8305efefd5f0", v: new $Int64(0, 2876) }, { k: "56b420e5c218f216f8e0f5e50dcfce398f5220d0c4090c4a5096ad14525f2b03", v: new $Int64(0, 8455) }, { k: "56b6013eb331557e25dc73aba5598d79a3030385a3d218f63ba1c84797ca3a40", v: new $Int64(0, 9713) }, { k: "56c49005457fa27e3aa18d44d8abcf2e4b59547a8b3e3fdedb7dbbe9a54ada81", v: new $Int64(0, 7094) }, { k: "56c4b91c5eed478e0264716687f34da4d981f835e934ee62a5dfb4ee4abe8ccc", v: new $Int64(0, 4341) }, { k: "56ccd14f83cd025c7b30fc919d43b1e4a6f1aab2e313a814d2fc60e169b1997b", v: new $Int64(0, 886) }, { k: "56d8166a2e59e7c842f9687fed018020377282f74512b9081a754c6d7abdd9cc", v: new $Int64(0, 8101) }, { k: "56d82bacc6c86fdcd51b444c0bccac6fce8819a36a4421f370f14b5a471ee99b", v: new $Int64(0, 3673) }, { k: "56db5996102c5cf11c0c6b959cb8095a3b360179a8a7ed4585ac61441e83f5e3", v: new $Int64(0, 6949) }, { k: "56dbf05cb761868308238412f85b83646fe500e6c91e185b9f12dda218971b52", v: new $Int64(0, 373) }, { k: "56debdf8c6ccfe7f7b5ec64629cc368396f4083d040d8a2d873a69824a907a4f", v: new $Int64(0, 7145) }, { k: "56e1e530140e34fb7ee096fa0713cd97bc58a164e4b6385febd2702d0fa98bea", v: new $Int64(0, 1265) }, { k: "56e8d96b6eaee49b384f12755a00feb2667dbe217748fb4be38296d4dbc9ce8d", v: new $Int64(0, 7605) }, { k: "57003d1396636c70c47eb38070c6e2ef25b193eb69b616a3570334cc895a2a00", v: new $Int64(0, 7082) }, { k: "570c690bf4e13072c9b4974b4d2207665ec3e2aa1a2eab018fa92b134fdcfc55", v: new $Int64(0, 2929) }, { k: "5710369fa6e682e334afc799fa809fe0a259c53dbc7a10bbfadbe1493452057d", v: new $Int64(0, 4515) }, { k: "57114de3af1a3f0782805d84a14c4a655422d85a8ce0886eda0cc28b76a8cbae", v: new $Int64(0, 2243) }, { k: "5717c3115563489d4f4a7ee878b1d26c6aa4879dc7f4f07cd9c4244846a63e11", v: new $Int64(0, 8865) }, { k: "571edd2b52242b5e7bbd4cc857855c68636006b69efb6e5174452dca7caa9787", v: new $Int64(0, 2861) }, { k: "57255d7a8a594bd181d4592ee36401e60262fe9e208d8565892195017ca2f5c0", v: new $Int64(0, 9096) }, { k: "572a83d1a2ce7e1f804cc34fed54326e5efa9021360bfbd0e63b7d87e37571d3", v: new $Int64(0, 5097) }, { k: "573589c1a6963ce7136537510cd5082e56e565f27afcac7e9fcb1e9fd527c081", v: new $Int64(0, 8925) }, { k: "57376fba3564a69af90f67a2d84a39a9c544e5d354e3314315c6d45d22c022f2", v: new $Int64(0, 4010) }, { k: "573918c4cfc9569a82f9e4e8cbdce8265047662019ccd94d1a2f27bd8434fa97", v: new $Int64(0, 4150) }, { k: "573bb94552cbf4d206a058463e4daf92d9025d23fc39199b139709f92c31a89a", v: new $Int64(0, 3432) }, { k: "5740a24967767cd356bf69e5cbb11d2b8a4d1992b9b92712021469ecb6f621ea", v: new $Int64(0, 836) }, { k: "5743c096e8e9edbe842761702b5c7317d8acbb2c945f0dd59325ce18cd71bf5b", v: new $Int64(0, 4503) }, { k: "5743d3017799afb876614e4407f6ecc5f0b6100028dfa5d32f3da9a2b906e5b8", v: new $Int64(0, 5490) }, { k: "57493837c339bf8c2296a2e41ef3be704b8eace52a4418a67cdae2daffb4f112", v: new $Int64(0, 5264) }, { k: "575297c26894a1721d60957a1f0ec62174cfe2b920baaa86249a0933c232e49a", v: new $Int64(0, 7134) }, { k: "5760f7aaf6b4badfdb1dab98003a9ad37cd8c223fe1cd5d7f86bd7e54a7f58a1", v: new $Int64(0, 808) }, { k: "5763c25d9ac4990b43f853445ab00713fca1bdf7a487699af0b04d5715f0d8eb", v: new $Int64(0, 8227) }, { k: "576c27a12a9cc8fd8fa529a8ef9c533e5b18165de84a9ad36b7a4a44beb8a043", v: new $Int64(0, 5629) }, { k: "5770bb7fa7299f5c174cf3d16423c1645328cb1035645735308ff00e2aec3a42", v: new $Int64(0, 951) }, { k: "5778f412f5ab8a70af2f56a286e2961456afee86d4071f33ce4e41fbe3e9baeb", v: new $Int64(0, 6718) }, { k: "577ab928153ed88454d50174e5607d7ef46b34b7c49341b2204d97470657b52b", v: new $Int64(0, 1798) }, { k: "577b814ca7dd8439d2904a356ef4368ea677bd055fc4473a731b738d3f2bb377", v: new $Int64(0, 9645) }, { k: "578473e178f6355f94091f829b3c50b937879708f02d929aec78ac721a896aa6", v: new $Int64(0, 921) }, { k: "57870d4d0f18644b5567fa1dd02505f46764c76e5ae1e5a6d11173e3cce9bd2f", v: new $Int64(0, 2621) }, { k: "578b4ce653ac18b38ff6bc7872b4b7ccbf0cbf45615c30cd59dedd883509a857", v: new $Int64(0, 9710) }, { k: "578c65ed8ca9d98230649ff7a433882541855ecc6b093a1a109d67fa03352f38", v: new $Int64(0, 7456) }, { k: "578d58eb37a8c182a4c310df80f2fae3bc137c2f0acdccf206d0b30039405ba3", v: new $Int64(0, 140) }, { k: "57926a8b7e63ab00412a6c8dae633861f163273546c09dc2371b8f86950a96ed", v: new $Int64(0, 2091) }, { k: "5796fc1f060b77634f0f77c0ce4dcdb08eed961c19b699678bb24acd936ae265", v: new $Int64(0, 977) }, { k: "5799b6f809263c18451d9c563a805772205fb7caca350f0ce959fd2573a56ecb", v: new $Int64(0, 4058) }, { k: "57a01c73e84ba37c56c3a85a26322370a9dee01785e9ac46dafba50254eaa30f", v: new $Int64(0, 8008) }, { k: "57a5bb9b4ab607af450188fb3b4c180c364968255a0fe9b7c5900035195eed41", v: new $Int64(0, 7619) }, { k: "57ace012a645053aeff8c1e8ac258b83178b406a7efeeca15a1e6b9d57a1f365", v: new $Int64(0, 5605) }, { k: "57ad79161cb71205305eb5bb23b47f0ac177a59c3ff0f622844f2084ae8d3d8a", v: new $Int64(0, 2152) }, { k: "57c4410a893fc396ad8c36a44661429e7b7207f46a653a4932757a631adf010d", v: new $Int64(0, 6622) }, { k: "57c7c54cd2a0c8eaff7143d8775d0ce88289fb69f06bbc1f9fdb03ac658cc0c7", v: new $Int64(0, 4132) }, { k: "57d3d086487a70fc8fdfc32f96ba11f65315341ad6b8e3f061695cce5e873baa", v: new $Int64(0, 7792) }, { k: "57d6892c2b6db5b2740dc07bb68f5e154766ebb4c4765ef300bbe3f3db82f5a6", v: new $Int64(0, 54) }, { k: "57da1e3f58c6fab7c47bf78fb8d46264b51923002c806c245489ac286f33c73e", v: new $Int64(0, 7217) }, { k: "57e3ab0e4396c4a9cd0bba6b579131db4a305a5b039db59c40987a42717f10a4", v: new $Int64(0, 8422) }, { k: "57f5eb59f89cbf3308d77905f0a26424ad52f0b383a57ce0026f39b3af4b89c5", v: new $Int64(0, 9771) }, { k: "57f64a7bbf9415d90d34c2251d53c2f6e724a30ecd45fdeff5fc48930cbbd6b8", v: new $Int64(0, 2105) }, { k: "57f6fcffb43741e06e00eb7a83cc5010b0d5542990314567ae3cab28dc1e1e4a", v: new $Int64(0, 8309) }, { k: "57fe089d0ea228eb60616a4e2ff4afe94d52f26c13659da9db2941f72cd9140f", v: new $Int64(0, 857) }, { k: "58021ac05e7389bb02c8fadb6492fbb6482303a553911abfa9fbd6320da5aa48", v: new $Int64(0, 8855) }, { k: "5806bb531768b840420c1205668cc4d17eb75f4e89de7ab738304e91fea0a7e9", v: new $Int64(0, 2937) }, { k: "581302b35be2f759479648952b4f8c7d8b6f3a2946b94de938ae7d7a1f1ef8ec", v: new $Int64(0, 4415) }, { k: "58182568a6f394e3d938c1a69aa2f56402c09b35b070a149f9a3923448c7caee", v: new $Int64(0, 4022) }, { k: "581b618bd434a049bfa03ed6b20c963130aba8f83211b2f578d4adc268c45ced", v: new $Int64(0, 4042) }, { k: "582cbac5ad152f71cc5ee667e98b7cacbbe6742b62b07a0662b78db0b1fe1e97", v: new $Int64(0, 3446) }, { k: "582d6b919a6a537f292ba4513b3365d77c121dbb8759bbbbf3de3f7ecc3e7582", v: new $Int64(0, 6930) }, { k: "583356f089bd56f366f1615259990c467c8aa7027f598e0a6dccdeb56e98cb59", v: new $Int64(0, 5787) }, { k: "584793e49c9c7ced44993107d3fe7f4a5ddef748a91151a2c8c20c8532d9e023", v: new $Int64(0, 2051) }, { k: "584fe5ea35e1b4f29ad28c8fb0c283c8d2d022d5ead1f8f61fd05ee9dc8a16f2", v: new $Int64(0, 5939) }, { k: "5850c1c93800d349650fad2095360af6066f918c760fd10b32538d9640268362", v: new $Int64(0, 4790) }, { k: "58566968f2e8d095854f92ba50023e2ea7f6ea00cedcd3b3251094b7e8cb2a1c", v: new $Int64(0, 7075) }, { k: "5856a02dcdff87b9aec417c27af98bbb6192c4d9c424cbff6c88e07fc1dc3ea3", v: new $Int64(0, 6828) }, { k: "5857bdf16bbf3b2661927b51d2bcef561513fdcd3d4091da9b6694e1511c9fef", v: new $Int64(0, 1959) }, { k: "585e76e2c1a20e2580e6596efe33500ecf6769e14275f5c9cfca15f4157c74d4", v: new $Int64(0, 6199) }, { k: "5866666666666666666666666666666666666666666666666666666666666666", v: new $Int64(0, 1) }, { k: "5878d7232668d8c615df2f2fe6379123ec50c203941ac03d536b10cfd7504beb", v: new $Int64(0, 629) }, { k: "58799fb7d4ca65d4778738350d4ab9632a078a6a39549e7e8997e5321a15bf07", v: new $Int64(0, 459) }, { k: "5879e3b035e978699956c8d066b42380294ff9eccb61fa0cd4995f72aee12920", v: new $Int64(0, 8042) }, { k: "587a36aa4537a99556b5d7504eb9913ec782e77071af557067dbc95d9128fc73", v: new $Int64(0, 9042) }, { k: "58872a55db3be74d58b25225dc82c6f6a8dfe803a270e301d4395549ec38119f", v: new $Int64(0, 1502) }, { k: "5891c1c2d6149d20e39b52f69e23e03ff24aac1828acf908c2446f3ab2cdcf02", v: new $Int64(0, 1787) }, { k: "5893161c15c29d6845ae6a0744d336231e3a3a860660476a3f9fc8b8c776b37e", v: new $Int64(0, 7549) }, { k: "589fe3f789cd08dde31138ca2e26fbb88a1cf641468eee8ecb60f5830bf8df8e", v: new $Int64(0, 7868) }, { k: "58a007d451b351d8d894c039085b3cf347f5af770b1b80b94f348a4b04316f2a", v: new $Int64(0, 5292) }, { k: "58a431d005f780f436d8eece416c2437a29c0345939e967cad442153dae6264b", v: new $Int64(0, 5789) }, { k: "58aa250fe5488f907d1c214a8095a6bd7157e3b859a5a92c468b33366b840725", v: new $Int64(0, 3403) }, { k: "58b33ef298d946df0d653c95bcac6f7dbd45bd7d7cc20ca44d60030713b79baf", v: new $Int64(0, 3479) }, { k: "58b38dce1761cf08d3b122a2c84c45342d710366a6be772ccb192d2395a50aae", v: new $Int64(0, 1439) }, { k: "58b4d80210fed27216911b12680002ad4f41d621452fb4f0b4d01292529ef041", v: new $Int64(0, 2229) }, { k: "58b722a97284d800e8c56506b19378a51ddc585ea3129d28502353cd380c6a19", v: new $Int64(0, 9729) }, { k: "58c196b061b9b6a2565159bec0ff80b333add15b9bf478c4c6306d7e6c070255", v: new $Int64(0, 5134) }, { k: "58c3b8398a7ecd2b081aa8c59ee925f15685df5ef6213b7446b7f5b005896caa", v: new $Int64(0, 5986) }, { k: "58c40aaf2cee7f8edad499d43dc5c22f41c9ed5a57198992e62f8f18526c4830", v: new $Int64(0, 1851) }, { k: "58e78f3c59801a7a8aee47b62c664ac92c10471fad27843dc1d51e5e086c0cbb", v: new $Int64(0, 8155) }, { k: "58ecfbc20bb52374971cc53816618708ce21bb02b8abcca9fbe3069029dd81e5", v: new $Int64(0, 358) }, { k: "58f11afef1bbb1e5344080d77a1054870d571b005cd40ba0959026c67e4a1077", v: new $Int64(0, 3619) }, { k: "58f3e7e5712410d202aba7013c47ddfe64ef33d19ff996c8f01a4af103a23107", v: new $Int64(0, 9342) }, { k: "5906de864aa079e26037ca41a99fefb762afab2010a892b8737eba68df8dd8b9", v: new $Int64(0, 9180) }, { k: "590a0776e782f58c9ad84d7cbd546b364dac17091ba07f0f87ae4c315fcaae05", v: new $Int64(0, 5898) }, { k: "59143cae31c54e49f92d54bf22de45b8b5faf85e25ae804c144254f195f02635", v: new $Int64(0, 2653) }, { k: "592015db660b9c628e74ec9a6d82d099589861b3e81127d95a32df31ff73eef4", v: new $Int64(0, 6642) }, { k: "592102841b08ad227764e5bc305453b7559431ff7c886b90c291b94b7cd12396", v: new $Int64(0, 2637) }, { k: "5923d462a638820544523ebde863708b42061972c9d7f0d2ec8be58272e2bf4f", v: new $Int64(0, 4805) }, { k: "59250f28d6cd29d8a8e004f981c5e43d6d17083ef053d52eac4462af686ca4b6", v: new $Int64(0, 1797) }, { k: "592937222a2760876c9a99b07b021835ef93409799e21f6ab1a5579f3fe0a7f5", v: new $Int64(0, 9953) }, { k: "592f2e611a0580b8591d843e509c20b6b3aaf99c3cf26ac629760857fa7f95c4", v: new $Int64(0, 2863) }, { k: "5931eb88581c2fef803487d9ad15e975951a2d6328b93731af7d3a9a431f5537", v: new $Int64(0, 4817) }, { k: "5944f2cb8facf95d6b6aeb373b9ff01040741772d0e93fa490d39ac5b29ccb8e", v: new $Int64(0, 6208) }, { k: "5945abc10fde08b21b538e0d94202d16dbd9b907e7ae5d0131d2716996eab491", v: new $Int64(0, 8156) }, { k: "59475065aff5c0d8064ce7ac1be9aaad4cb3b3ae6f2bcf61475efe4c6caf5da2", v: new $Int64(0, 8649) }, { k: "5947f6334f6194be5a5a093017f0fafd76e2af0aa6b6d1a2ceff8f9453724fd4", v: new $Int64(0, 1136) }, { k: "5952938e49bd7d1523130b9e1443392347f4d3b83411591eb5b172302d415437", v: new $Int64(0, 9216) }, { k: "59563803cdff00a22552658bf7200e5f50debe3f25401d7a6e2303306a21c7cf", v: new $Int64(0, 2123) }, { k: "5958a5582142ecb1ef83c728356c56413d56b08efbff2de1eb66d775d1463ec4", v: new $Int64(0, 7484) }, { k: "596719dad5f03ab18104873d81464abd35df816ad67d5e4d0d7c1cbfecdcd7cc", v: new $Int64(0, 8072) }, { k: "5967db2cc0641c69f8b22c983bab4e40a83ab273280542c502c73be654f6aefc", v: new $Int64(0, 4807) }, { k: "596aef490f4f78867aced36c7a44921e0e55c61073c2a3a7940281144b03832a", v: new $Int64(0, 2725) }, { k: "596f5fd448b1a8a8f44c35dd6f72f053852e5f6e79a7338bce851999d22bdac6", v: new $Int64(0, 9608) }, { k: "59779d1c060c1c10f18244be1f62e5a7eb31c67f81106ea3ceac1b6e926b1c1f", v: new $Int64(0, 5745) }, { k: "597d66b7ebc1f912af51bdd54c085fb75458b432a836b54f284996db99608a65", v: new $Int64(0, 6613) }, { k: "597d8958953e50801f4a1a537c0e5590bdec4b1cb40adf7e947ad56e0cd9ca09", v: new $Int64(0, 3644) }, { k: "597e98055041228d994fc77bf2f13d59f69e43f8499450e1e04782836f305b05", v: new $Int64(0, 2787) }, { k: "598ea88af058f53769bcacabd3aa89d8933703dd16686a0f34d0c9ef7d4e88e0", v: new $Int64(0, 4280) }, { k: "599f9be8e7fdd6c71fd134eaa98e28f8c67129d2ead5b381e47ac079c7381f2d", v: new $Int64(0, 9339) }, { k: "59a01263332c9bff4be231780ddabf394355f01a394122e757cd20e63c73d02d", v: new $Int64(0, 2334) }, { k: "59a20f5e9e8cc281d0697ed5dc894f6075198633ef75cf1112fc6ba7ac699b34", v: new $Int64(0, 6684) }, { k: "59a27cad0a27ca06f8bbd299dfbcb88feba0a9f5c39b99324b1881570ee0207b", v: new $Int64(0, 9019) }, { k: "59a395f3d9ea47cadcf1eb29a7c06d9533373830c4401f3f1eae22e38e580293", v: new $Int64(0, 9970) }, { k: "59a3be458b4ad59de1ca2d7a66d34c3ec16782e07bb585222d37d78ffe76923b", v: new $Int64(0, 1048) }, { k: "59a5166e773b67008dcf453f2a25112cdcd7a439729786fa5b4c3234919c73ec", v: new $Int64(0, 2265) }, { k: "59a6b518386a9f14741179cfc7439954c8def02d6004104e5e657c550e652150", v: new $Int64(0, 445) }, { k: "59ab3b536d81d38d47997e3146c078fb760984f77e36140f238fcd4726e4c82e", v: new $Int64(0, 9987) }, { k: "59ac894b4c889aaaf7c3cd0b5e1fe711fa35430becadd241075aa43d68e6ab67", v: new $Int64(0, 2528) }, { k: "59aea9d2a385fb1affcdd88bea37632dcd92758461d5d53185fa3581232ff3c3", v: new $Int64(0, 7248) }, { k: "59b4d5d2fa791c26267117f5ce61c2bec6fb3048293ccf35020825115c613622", v: new $Int64(0, 2819) }, { k: "59c36e70fb977cbe2bb635b0a8875a75083fdb9d0ed1209f28cb441a1e6088c0", v: new $Int64(0, 5747) }, { k: "59c5decfd288d36a454efe2d19b07bdfbfa6cf1ea826dae045840f916b677e48", v: new $Int64(0, 5992) }, { k: "59ccdf3038a56be7dedf391433cd4ce5194fb615741ee8890435513430b7ddc2", v: new $Int64(0, 6456) }, { k: "59dad37cd14dfb1e26f7e73829018b8f2bcb891051bc8a0a30e50b833b3d3ba0", v: new $Int64(0, 2290) }, { k: "59ddf9a5bff71dfe5c402bf64adc510f15fa5848fca8da9228eebea1127173b6", v: new $Int64(0, 1749) }, { k: "59e046b81e1db4d5398db1cf45c972a23d1d55a52f3e12d41fd4c809d78c710d", v: new $Int64(0, 5542) }, { k: "59e076302030ee777dacd9b619209d53eeb0ece1b87fa0b0578877eee9224c33", v: new $Int64(0, 824) }, { k: "59e9c33ad4c0ba1388bce0e25ce710199601fcff1bddda4194da7c6de0355d80", v: new $Int64(0, 5620) }, { k: "59ea0db246bab91d6257249cb2e0841a59e31ffe3617b3ccefa75eaa12bb225c", v: new $Int64(0, 7166) }, { k: "59eca4c70234383cee3514e62bf6e5fcda6ab5e77bdf17a934f1a381604adcc3", v: new $Int64(0, 8559) }, { k: "59f4e0654f8ddebb232912423390e6b3fb1ee2ef06eff218c56777faa4228875", v: new $Int64(0, 4129) }, { k: "5a008f3892a8345ea18cdd5da576ac50cb20144921cf75370c3b4ef44ffac778", v: new $Int64(0, 558) }, { k: "5a02e8ea4dbc47f14aa1eee15ac1db7071c2ea5d9ff122bdbeaa4d1bded601d6", v: new $Int64(0, 1609) }, { k: "5a0741b0026e92bb6a837011b925d29c433a3055e49d59f6630e7ca611c85d95", v: new $Int64(0, 2124) }, { k: "5a12f1d51b02c722446113cb16fc3e3b9e937e819383bdc50573e18baf5c0ae7", v: new $Int64(0, 9089) }, { k: "5a1379b62052519e32c41a50c99cd2a3ba6e6faa13bc2440cbe486b3af1a1c04", v: new $Int64(0, 7623) }, { k: "5a222b0ec8ba2afbd7cd1acc641050ad61a8d3e355cd7026dfef23b352c753b1", v: new $Int64(0, 5806) }, { k: "5a2a2f7cb0d253f1ce1e0a2a8d34015eba97b87305817c706db235c6496ab05e", v: new $Int64(0, 9807) }, { k: "5a38259d01e161f6f748304314bbecc8dcde500cfbb58d1ea9e895dd12d1c3df", v: new $Int64(0, 6099) }, { k: "5a39b6a61b912719389a1a3b7d128251fa10d1e0d09477f72d569fc4edb769e7", v: new $Int64(0, 9613) }, { k: "5a3a82cd8dc32225ec8970ed5fb49a883dc15734091aec6452f8217b7e96b1b5", v: new $Int64(0, 1773) }, { k: "5a4360b2b5e4e80c31c238e3af7b95b160e3728539d671e9aeb4e8b9cecd0ead", v: new $Int64(0, 9471) }, { k: "5a52ffdb77be18d0cd2100f584da569ea35645a61102fc0f8863cdf686c75ccb", v: new $Int64(0, 5039) }, { k: "5a5cc07620649a763c675c808172cffd90bfd9ea0e254d292e917da88b06d16e", v: new $Int64(0, 8154) }, { k: "5a5d8fc7becb1f4db3ef441454e534923b04c63e819fc113eb64de2c668119d2", v: new $Int64(0, 9708) }, { k: "5a6925ba3b44eb99a157b454977e00f048e0cc1bfecad7d47e682805b6bcb020", v: new $Int64(0, 1783) }, { k: "5a6baa6c24d0a2862adf2ff225eb5aafc03191d2fc48c759c79fd79dfaa55738", v: new $Int64(0, 9629) }, { k: "5a6ca385c7037135145f52cdb3e33cc940e16f5d7d6e7c02ff583df81ba6f746", v: new $Int64(0, 3782) }, { k: "5a6d78226c660728eb8b5e4359d0df7db66c59816d03b32b884401c58ee2a23e", v: new $Int64(0, 967) }, { k: "5a78471264d2628c0cdce3bb3ed53f6287de70ecfd31f310a11d645aa935c64e", v: new $Int64(0, 8666) }, { k: "5a786c01535d10b6ab3ace835f1f8c24ab037178f73cd5fc09cd0d97c68170e4", v: new $Int64(0, 6120) }, { k: "5a79ab49fbae596483359bd1bdc8949e78803380fd820039331889fb556a78d6", v: new $Int64(0, 7216) }, { k: "5a7c3fc868d4f30cadb1d65067fa60907f5331128e98d4f5020a593696a2e11b", v: new $Int64(0, 3645) }, { k: "5a8a79c9facc964c0c0afc95c5bcf6b473ae352b1b06afb22a23de8f55cd048b", v: new $Int64(0, 5215) }, { k: "5a8d7ea33bc22509afc778202b49ce4caec6ffb5159eb50a1dba0bb59cc79b00", v: new $Int64(0, 1591) }, { k: "5a998d2292c30b0cc142c0ce9030caf58de2651dcfb7a39352c11a68a8811ddf", v: new $Int64(0, 1427) }, { k: "5a9ae54696dd3b533a1e87a2b8ae96783b41000a937f4986f250981be85edddf", v: new $Int64(0, 9575) }, { k: "5aa2712d72b9266818f3bade1cbe08f29c5ad7676647abf91bb871388e9bf603", v: new $Int64(0, 641) }, { k: "5aaaa1eee9483171c75b1b607a4ee7b76cdac176fae25d534fbc3d53a8555ff4", v: new $Int64(0, 4758) }, { k: "5ab13a29ba3b9daf207c904c72be23be5643fe8687a3ef045cc79b46d9797de0", v: new $Int64(0, 2302) }, { k: "5ab1e5503db55410550603cc65ed9ebf5a4e2f723b63f859a3a84fa61a7452e1", v: new $Int64(0, 9114) }, { k: "5ab9b35c85523534cefacb26c435ce2fa43dff3c07ad0216a596a19b28bacc73", v: new $Int64(0, 7403) }, { k: "5abc6c7f38f8fd18f48dd15cfaa088d3e39b98025eeb272a02df5ac7f0acfc47", v: new $Int64(0, 2873) }, { k: "5abf6a779efa27def7a2ff718b16ac957ca3c8112829ba252e0947bd934896ef", v: new $Int64(0, 4759) }, { k: "5ac710b4e4cf304988dd7cb23468763426fa573cb423e3c5b9e65024c86fe869", v: new $Int64(0, 5473) }, { k: "5acb0b438ab1535d21447b06e1802cbe728d78783585b8f232ee220dfee0b400", v: new $Int64(0, 1829) }, { k: "5acc35c3a5d7561690ef0fb06e68143fcd9ab68f5943d95fbb08955d2e7a9ae7", v: new $Int64(0, 8796) }, { k: "5ad24de5451f9f1a6e3ccde5bb0578be4258c572ccb877b13ae3e8b2919e96d0", v: new $Int64(0, 2452) }, { k: "5ad91c4440d3a0e83df49ff4a0243da1edf2ec2d9376ed58ea7ac6bc9d745ae4", v: new $Int64(0, 333) }, { k: "5adbf79eac2ff2e5974f775e949db145bc8d2ea6d1feb260675eae378c6ad7ab", v: new $Int64(0, 7644) }, { k: "5ae099f05f677fc8f20d236350054dd8a7669e8c16e86b8e60b4088121460f2e", v: new $Int64(0, 1314) }, { k: "5aed9a1ea4b3123feafb92269a5ca05fb490a2cc7bb176a3f98ff50ec5d452bc", v: new $Int64(0, 4580) }, { k: "5aef997f9f3ae133d44806dd3dd27fb3486af0af5f92ef35c7692d9cf4fb6319", v: new $Int64(0, 9908) }, { k: "5af71db47a761f08fba8653b964b3c755a25a767665cd599a5d8491a80ccfb4d", v: new $Int64(0, 383) }, { k: "5afc64032627b8b5a9f22c1a05cb6fa21a737ab069674b2af0e0740af0936608", v: new $Int64(0, 3835) }, { k: "5afc79c1a186c35dc912bbebaf9ff84e86fc4b824b95091d0395943df5753f6c", v: new $Int64(0, 2779) }, { k: "5b03c12dcd56b3ef0470646226078476a04f27c48556fa76500df04e86e520c3", v: new $Int64(0, 2197) }, { k: "5b1a549e14667faee80be2bcde3b9b5fd7ff7ff2929c560f2f675305d5d08762", v: new $Int64(0, 7680) }, { k: "5b22e11e52b87684489c2079aed8c4917027504fc122105cd8f773c438e0aa35", v: new $Int64(0, 7741) }, { k: "5b531bf729bb250e4324494d391c0bb48afff16501d8c994682e5488578a090e", v: new $Int64(0, 8850) }, { k: "5b55cc74864e2415b35e1050d3b134f7bb2878aaaacc09cbb58db1b09e75f1fb", v: new $Int64(0, 4652) }, { k: "5b5916756263c7812c2fe2cb099d19f807059581bd6c3f8a551e32c13998f1e0", v: new $Int64(0, 7913) }, { k: "5b5ea56aa4f1fcc4be052f77e2971e876125e8ae24201e75c34b499469e7face", v: new $Int64(0, 3893) }, { k: "5b678e6d8e8939b946de0efb56734b9df3c99056b675f3afb86c5e8cde291f97", v: new $Int64(0, 2118) }, { k: "5b73bf7f51af3eae5291dc45bc0eb3dc775aaa0a162dd25acd5a602666081f24", v: new $Int64(0, 9207) }, { k: "5b827f55b7022797abffef839b2435271a5a36e6c49d0f977c3f9ff853135b90", v: new $Int64(0, 7064) }, { k: "5b858232ab768ec2a9ebe187bc92eef9bc0555795e526b4ca81c71e72abd4bef", v: new $Int64(0, 4271) }, { k: "5b884a81ac0b8364a87957a33bd0ffc0dd97643ff531b808ee95f166e9f5cfde", v: new $Int64(0, 6938) }, { k: "5b896ce8ee8e67d61ad6c34663cf13a15fea70635e9b247a884209709198eb3d", v: new $Int64(0, 2092) }, { k: "5b91ded3635689a9c4d56a8b285707c29d164359cfe42bd2ce928532be1aa582", v: new $Int64(0, 3074) }, { k: "5b94e29ec685459773ff16e9b6bc1d672af700fc5356c9aa72fe8938183be60a", v: new $Int64(0, 5687) }, { k: "5b954289f6dd8f290f4287ce453f8ce8a0df2123bf4dfe668a529c6a313df5d1", v: new $Int64(0, 1216) }, { k: "5b9f593b114d4bd420e442e14fd336b2ca518bfc3e7084029e16fb32efbd4db4", v: new $Int64(0, 5366) }, { k: "5ba42b014fe7fbbf61a63c96ba51a89fd092f35488928abf49c7c63f3d05a153", v: new $Int64(0, 163) }, { k: "5ba50106ecd8725d7bfe88a8e9c2be8409e8222c4f55f2ffe070c4208c80a9a3", v: new $Int64(0, 7271) }, { k: "5baab38d2c023333eec1182e9c597ae77e4bf732826250c896cb46acb65e4584", v: new $Int64(0, 7652) }, { k: "5bae264a36eab21d516fde7aa1333a9bcf880b79ae297bb1ece194036b18d646", v: new $Int64(0, 7158) }, { k: "5bc0726c0925334879a038487a2db60a11d940756d434416805b2644e4c5c21e", v: new $Int64(0, 6734) }, { k: "5bc2a5b014f7b7d55a7e8ad72a05ac0ab0598608461277fea685bb61d84fbeaf", v: new $Int64(0, 6716) }, { k: "5bca2a62169174d007be486c3e90806bdca9e0c69ddce3d43968d64819d8b51f", v: new $Int64(0, 2436) }, { k: "5bcbc48b79398b0e76d4ebb1dbe53b5b7138f4e4eb731f6d37c174cdeb9800a3", v: new $Int64(0, 1532) }, { k: "5bd46d1897eab0e9022efc08ed5b5741205a39707a6cf2348a5c2e7b47de228b", v: new $Int64(0, 4214) }, { k: "5bd51049fb19f59e057d755346585017908bb0f86facbdf86a9727ada47db39b", v: new $Int64(0, 6203) }, { k: "5bda030ad1401b99965a07dac3078fd8fcd2b7da5e0986bae63cdb5179bc2b66", v: new $Int64(0, 9686) }, { k: "5be0c319f94705f27b62d996bac49258c839404a4bdcd5718b3254840a2ae555", v: new $Int64(0, 6186) }, { k: "5be564a07dd12d7aa853e605f5383826ca44387d390c5a33b8cab72455459ff1", v: new $Int64(0, 5838) }, { k: "5bf3f15a55b6eb3884436f9d5e9c35f0333ffe68bbbe6a01c6e1b544bd3b10dc", v: new $Int64(0, 4945) }, { k: "5c00d9f947981b2c1d184d67a36d06efa285025418729cd3955fd2aaed585ad0", v: new $Int64(0, 4384) }, { k: "5c07ef50bc1ad0204e533473477a988d2c0e401609ea4ae445759f70f5cc13e7", v: new $Int64(0, 8257) }, { k: "5c19bc21b8e325926957a8aeea89f65687fe86753e4b0eedea172cb476676fe5", v: new $Int64(0, 2455) }, { k: "5c1fe5f6fe0f9cc616817f03d79d7d32bd29d233294498ad6cec4bb1cf7305ca", v: new $Int64(0, 2511) }, { k: "5c28066361a5f1d7f749cb4564a30c03e802e7f41d4ea24a3a07acab24f185e5", v: new $Int64(0, 9242) }, { k: "5c28f5b93a7a611a849c72877204454612e2f2e2fd77998d5b1a97c85d01f927", v: new $Int64(0, 2947) }, { k: "5c397e0f7dffbfa6f290566fb1432ae2489c33651a3b582456cc1d3f55766bdd", v: new $Int64(0, 244) }, { k: "5c3a46623e342feb1e571fbb349cfe8725d750ee9308664ea508280c8a4d7c32", v: new $Int64(0, 5585) }, { k: "5c3d97256dcd13d3c952b8e123f5fde4d25f290e5105214f10c4fb8c8ef3c961", v: new $Int64(0, 5078) }, { k: "5c47de544910f3f7fd320cce07f2c5be9eada2f6d158183b6185e86d8249790e", v: new $Int64(0, 9607) }, { k: "5c4d967fba423ca88db2abafc521fef1ad984c9ec96624aaa018e4829410d385", v: new $Int64(0, 260) }, { k: "5c584f7df974f466e218fdc17a878b3781052dfa030797a6ba2d019b6527ed29", v: new $Int64(0, 674) }, { k: "5c75e640a04c8c704f84f61a90b5cc403da4704abf97f3456c09790a7bfd913e", v: new $Int64(0, 8537) }, { k: "5c7d421836e81b0bd78166a9c4ed8a2eedb5a962695e86984481f10972fa0813", v: new $Int64(0, 5880) }, { k: "5c8293ce4eb12c29f026a59fc6aac35ff32b5f56c2e48e61089eaec232c6e533", v: new $Int64(0, 8112) }, { k: "5c8b4f572e634e32a33720856ed022462bea31429d183571bb16213cb13f4463", v: new $Int64(0, 3326) }, { k: "5c9294f46e19d92e552a53c904b73a78abc6dddabd0fc2552222a1b23ad60ab7", v: new $Int64(0, 7512) }, { k: "5c9b5cce8dd659d5ccc740f0e27f11c331ce6fc86ca6892b02fc743134029025", v: new $Int64(0, 7871) }, { k: "5ca1f739092357b851f9a4c3fad9359ce1e19e2dafe63cae13eaa615666547a3", v: new $Int64(0, 8621) }, { k: "5ca4167ac3ccf6ad3ebf3db8cf9df6c3cb3869f2d28926231372be9f01fe6f20", v: new $Int64(0, 2907) }, { k: "5ca584a9d2601d5d68c19cdb569ec59d6a676ee3da336a9460c3eeb968047e62", v: new $Int64(0, 3337) }, { k: "5caefdde0d66c5c7d9244a443defa463b24528921d65e314d7d6ed7e42b824a5", v: new $Int64(0, 5592) }, { k: "5cb767f21bb54685eda27d01ca5b3be79dd95f7cc88d105dfc153bea5c209f8f", v: new $Int64(0, 3095) }, { k: "5cb887a410c58c21f90af6509d0cbf6fc743305cc83b948fe35fcce54252b386", v: new $Int64(0, 9767) }, { k: "5cbb4d0bcacd2cf87e740e075c45f59399f3400984da8d9cb2afb557e0e920a1", v: new $Int64(0, 3017) }, { k: "5cbef142d0f2b54ca8c2bc0c51a29d7f49088c9bc62f663a1447a0377c53d09e", v: new $Int64(0, 3187) }, { k: "5cc741dd2bcbc96f4ba9b0ead3b461654380e7536d70271083b5ac165a38cc19", v: new $Int64(0, 9140) }, { k: "5cf401f77867c8794f9ad618c97fe684c5cab9299d8e2048d72d3e39e8e60591", v: new $Int64(0, 9347) }, { k: "5cf6c43695cecd1cf1841c14a27da11992bff840d7408c8e7d6ec586bd6c9348", v: new $Int64(0, 9568) }, { k: "5cfef45e3f1d6cbf5af19ce4caa930c6a26efc784ee5b9692b059cdc57bdf0d9", v: new $Int64(0, 6248) }, { k: "5d1cc8e80f24767d9ad988a6bd9ad95e8a6329821b8cecac7c0267ca7e5b162d", v: new $Int64(0, 7197) }, { k: "5d1da44a0c17621d0daa33ee3d6232f5c80771722f16da235b78178140ac27cc", v: new $Int64(0, 5349) }, { k: "5d228ba6e8a6d7bb6fe3e884647346c38baaa6ef15e53077fba375021b60e010", v: new $Int64(0, 5359) }, { k: "5d2a75ff559f12aadb93e4eb1f4102f095feb5158ace6a55d057fa64e7a30c1a", v: new $Int64(0, 4696) }, { k: "5d2c503f47fd42366ac1d712010ff9c88159df37aba5e9136c4499b1885f249f", v: new $Int64(0, 3744) }, { k: "5d348ac5bbeff3273c323f6ffdfc89729e91d177e821e701feb1a4f4476630f8", v: new $Int64(0, 7519) }, { k: "5d3491b40e88db494eb68ca91aac125ec810147f120c0e2f87ed0ce1fe18c0eb", v: new $Int64(0, 2195) }, { k: "5d36554f8362f891d3372a6959fc24d1a04001a7bbebc947ca659bcd49ad3af8", v: new $Int64(0, 9272) }, { k: "5d37d73cdb21e99eab1ae0401bc74052c72f29aa6dde29aac9574f9a8136ad73", v: new $Int64(0, 3342) }, { k: "5d3b07b0d90b3fb0b1b9e5cacba1c7ccd51afa4ed7f01dd9d6ecaf5bc2e9e3f5", v: new $Int64(0, 8990) }, { k: "5d5aa30cfb7ea00aad5aeaad867ca78e4bada5f4f2cf6817c69eb30d20b943b5", v: new $Int64(0, 2098) }, { k: "5d5c29ebdcc2df1604dbdd4350de2058e71b58b0d143cacc36b6069aec84655c", v: new $Int64(0, 7957) }, { k: "5d60a9aaa7fbf68fb50129b9d1abf730ce8aa0592c6a8356b905453581ecbfb0", v: new $Int64(0, 2401) }, { k: "5d61693fe63ba78d23e430e2af3dadb51a457eac93b16f45b0de438eeb5ce99a", v: new $Int64(0, 5213) }, { k: "5d72b3d636b00e135345d19295eaaebc8e95db46307f1a1497812a550aa74cc2", v: new $Int64(0, 3729) }, { k: "5d733a667ba32c92e73d16074bb7a45ed2fe5c0ba04c555410b82502ff7c120c", v: new $Int64(0, 9895) }, { k: "5d73a7fd4d6527474cd35327c189cac31c1ed72edddd014f236bbf07d1904d24", v: new $Int64(0, 3876) }, { k: "5d7f672fbfd9c8ed18d626a1913ac9aa631e550137ea08c69d3c6cd45d04a157", v: new $Int64(0, 3612) }, { k: "5d807d0b8033d966ca18aa7e62f2aeeee3e810449289f822cf8d7f8715209641", v: new $Int64(0, 1864) }, { k: "5d80c5299d742fc3fdb05b7226536eefa96b8a915df05664ac9c46e25ce3c1d8", v: new $Int64(0, 2687) }, { k: "5d8c3ba5c72a6f41299a95b3cf1b7b3189d269c9639af8b06770bcd85470ee7b", v: new $Int64(0, 4885) }, { k: "5d8c6b87410a2a695d20f9592800094a44babb016ec3afc8293cead4ffe2c396", v: new $Int64(0, 5504) }, { k: "5d8e91cf5f9fde25f38b0deaaff453bf516191ffd172e37e59f15c9266f4fc51", v: new $Int64(0, 9554) }, { k: "5d9af05d7dae0c2e7b7b80e7583b504fe09b8bf89dd243797935508cfea70d1d", v: new $Int64(0, 5784) }, { k: "5d9b507565c9f64b1af83748a05b07233edcbdd93e160b3d652ef37629e6a0a7", v: new $Int64(0, 4897) }, { k: "5d9b89f3e5e0813edbb0a63214b1ecf77d45e54cb1a508a246e912a5e0c369a3", v: new $Int64(0, 5778) }, { k: "5da3c68a2df5d37c0bd901702a11be0759200918a418e6e064b9b674937f1875", v: new $Int64(0, 7775) }, { k: "5da67d1820bc88fbba275fc8dd3a095a06fc7efa91772cd873e66bf599cd5273", v: new $Int64(0, 5650) }, { k: "5da990f1e24ba441a5508ed132602cdd5f40c7e26060a4c6b73d549af661133c", v: new $Int64(0, 4321) }, { k: "5daebf736c4c96fe83516aa04ede4112f016c104869f45630504210a58755f68", v: new $Int64(0, 4016) }, { k: "5daff6bd1b5375c82545f2caf581109a23a89c8a4edb3078ab7eccccd27d19a7", v: new $Int64(0, 2262) }, { k: "5db5aef75f41af37f97e14ee48ef878793b7065ca0a50a1f9f5328a5d0e01dd8", v: new $Int64(0, 8570) }, { k: "5dbe1914aac299f76f60213441272c4385e09a3b856514cecb61a343fcaa4039", v: new $Int64(0, 2000) }, { k: "5dc464a99e621d70588087b433267b954cd3d3551f574f1cacf7df69f4d9e7bc", v: new $Int64(0, 8264) }, { k: "5dc77000c5c5891871f8984a3b67e087dae29477869b7b96ee538512c5c4c651", v: new $Int64(0, 6664) }, { k: "5de1b3c8398bd567a75c5e71275272a268fb7bf6e04169049052e8b8a0be3738", v: new $Int64(0, 966) }, { k: "5de62d408195d431efcfc3a756e872bd29b6a937560f4f2ec8e9dfd2e2a2ccd8", v: new $Int64(0, 9345) }, { k: "5de950a5b5f854afe0a6d8356ca17fbff005fa034f7c83bf93903ca77c7c0207", v: new $Int64(0, 9619) }, { k: "5de9c67cfa7bb2a55717ba3b61e7bcee835dfacf9a278d9395c1c95bb87c6bc3", v: new $Int64(0, 9980) }, { k: "5dec2907d7a26a25b94c153d957a6cf8810fb57452d0900fb4f5c854253c63b1", v: new $Int64(0, 875) }, { k: "5df14b61a31805547fab9afbdc15668815fa71a3f9028bab439c0772910d260c", v: new $Int64(0, 8843) }, { k: "5df5f337d636989dcb87e37c79ee83059d6574e17fa913186e6430419c9e2714", v: new $Int64(0, 4711) }, { k: "5df9928f936583981c0fd4deecffe31ea9aeb567d2ea9e49d2ca441dcc15260f", v: new $Int64(0, 1674) }, { k: "5dff57ad68fe098decb2a7b7d75e8db634aabaf687488163c533371ac09e5afc", v: new $Int64(0, 8416) }, { k: "5e0ad1bc16fe5e7f4b4112432593a965894b2eeb30648df9e2039b39a99e1098", v: new $Int64(0, 4899) }, { k: "5e0bb54a24cc8b3004c66f0d0b1db4c1d837044e2ae85d7aa98402b1a4cefbf9", v: new $Int64(0, 4044) }, { k: "5e0ff1bcbc5fb602115bb819d656edfffbe8c8ea815b9da7a40e9947212880cd", v: new $Int64(0, 3213) }, { k: "5e1bb625971c8396839630e366b46a25a57104f55e32f6812ff9367a8ed58282", v: new $Int64(0, 4698) }, { k: "5e2038e83412cfc22b8ca033d6c904df3765a0f301ac5011140640b6c3779039", v: new $Int64(0, 348) }, { k: "5e2727d73d5d816272f913fb9c17d3c1941790edd30a57ff10a96e0c62b85564", v: new $Int64(0, 9760) }, { k: "5e30d01c27ab5d6bf0b2d149864890cb76f6da229731ef8266f46bc75f3060cb", v: new $Int64(0, 485) }, { k: "5e31a274c21bbd59c1a922df3716694d68144251f680165a2822c4ece3753190", v: new $Int64(0, 2978) }, { k: "5e3ec0a344a1f7e5a694f70e49aa5d4181523aead3eb476d4a8d9c569542db99", v: new $Int64(0, 2204) }, { k: "5e526c56870d3d14d987a28cc6607af4392bba65bdf08f5676ce643a24f9f7c5", v: new $Int64(0, 4964) }, { k: "5e54204730a4ec66951f78a7172640612c176ec9ee4f7d7a05b495718bfd08c6", v: new $Int64(0, 2120) }, { k: "5e54652ce6ab314caad1e8b92d03cbae110a8ef798d6676ce39483ff647f9150", v: new $Int64(0, 4028) }, { k: "5e5b56c05479d02a817d66764059d3cd7fc96a36b9d3eb8e4400e20152e62ecb", v: new $Int64(0, 291) }, { k: "5e62cb4e954a2b4a81d48329aa2991c2571717e3e04d5f5533490dd5e9f0184c", v: new $Int64(0, 138) }, { k: "5e69148d57ae4aa08adbbdbf9312c116fc58a2d54e06359bbf7765c250b16865", v: new $Int64(0, 7034) }, { k: "5e6e87fbe6bfccad3c7391b3078cec20a387a2a18791ce82cbb56c7f48201874", v: new $Int64(0, 8927) }, { k: "5e6f1c99625b81888698509a874c3424f46198d806393940b36a7749d003fcbf", v: new $Int64(0, 4754) }, { k: "5e72cafe75f63f92a943a4af8b3f615f907498fda108d4de9f20d4cd33b94534", v: new $Int64(0, 337) }, { k: "5e730820dec0ccde5c6dc66c723255e986123d28f2550057c46899c685a7df31", v: new $Int64(0, 9796) }, { k: "5e7465b187afaff3984f3ab8b335a97fbbe952b9869f1eae0b00a030c5a23b3c", v: new $Int64(0, 950) }, { k: "5e771cc6f84fc2dd90f096d9faa548d36bb6172e87c0f3d587d7d673d390519b", v: new $Int64(0, 1916) }, { k: "5e83d2398457038bff692504bd209434fb224aabef624aefc584f066436fd9d1", v: new $Int64(0, 5210) }, { k: "5e83d3fa1635f5c05d141f6621fcafca60be8ab4d17be7049d9eac08060479d0", v: new $Int64(0, 543) }, { k: "5e8c6e14389da1ffc2377923b5f374f4782c3453c9a927f0f3387b96bd98a93c", v: new $Int64(0, 7751) }, { k: "5ea6322f2a3d7f8b77fa0537a0bd60ef8c8d0adf5330fd0191a79d3e2d6b8554", v: new $Int64(0, 2005) }, { k: "5ea6bdf06af19b8966b29f1dac35a61f347b3750e34d40a7bac248784975feb9", v: new $Int64(0, 604) }, { k: "5eb5a3452f2ae8f74c7419c890a510238f7dd1557257b1b379d1b2d4b33f8215", v: new $Int64(0, 2381) }, { k: "5ec62f37cf889decaad66ac101060197281aca389593ed85d5317406e82ca4b4", v: new $Int64(0, 5272) }, { k: "5ecbc3b7d4035a4d0c4ee178f82e89fbb26b3c7f5e69a7c657145ab6637c8772", v: new $Int64(0, 1428) }, { k: "5eccb67f5b530c8a193ee3a0c0766486c416f98e2331fe68f9792b0e34b22fec", v: new $Int64(0, 8313) }, { k: "5edaddbe2fb4b344d0c153cb03f46d81f85d18dc22fbccf2abb27cea4c8e5f3f", v: new $Int64(0, 6883) }, { k: "5edb621329164534366cc43cd3f92e762bd01940c47bd24e2148ff5a2a849eaf", v: new $Int64(0, 7234) }, { k: "5ee96ed51776ffd6fd6c17efeccf95b9df37d216528ab2a33574df51588a748e", v: new $Int64(0, 220) }, { k: "5ef4554262b339490b97546ccfd6b3d71276426c682b4fc45b887f60cc856227", v: new $Int64(0, 382) }, { k: "5ef57d5f81747d02d31fff03f394b8626fed4ba8b7d7332c982d231b0b0e4040", v: new $Int64(0, 6547) }, { k: "5ef64ce97b2dfab5f295574bdecd3a6fc7edbb074ae04edd9b6b5120d7399e52", v: new $Int64(0, 7434) }, { k: "5ef9f0bf1556928ebc5fc4e965093130becd2be83cc55199f8351707f4e9bf30", v: new $Int64(0, 5678) }, { k: "5f2323ce1ec6017c797ca7e70162f9a37e2e79f9aa20110751e533d46abf743e", v: new $Int64(0, 4956) }, { k: "5f25aee3a8a108c3dfcc47576a45c92392b37f0a1907167f96e9c487f4620360", v: new $Int64(0, 232) }, { k: "5f332ebd7c5d3514a964310089ebf7c4f3986f2310b3b7e15a4e8fe0deeef5ef", v: new $Int64(0, 4440) }, { k: "5f38081fbacb7399e60e97226a4ebf6eb7f8d915662b8e18a1910015c40960ec", v: new $Int64(0, 663) }, { k: "5f4d7477128008af3aefdcc8f2149ffa150412d5d9319fc6ba2db501e4f3df14", v: new $Int64(0, 2062) }, { k: "5f579f886339fca7f8b934ea2840c28fd3fde84b35e3f5be287fa36da90b6385", v: new $Int64(0, 342) }, { k: "5f61df5f9f7c297424e830f3f38efc898ed1b9143a74949e31cd0f9771be416b", v: new $Int64(0, 5478) }, { k: "5f681b2e8026c6c90dd11e15db8d4d67ca46a06626b41d0c851afa747b2aed34", v: new $Int64(0, 6222) }, { k: "5f6c50e76e72b8ed06e1f2ca469f4bff480096247d41abb13f6bf7e26fdff0f7", v: new $Int64(0, 9264) }, { k: "5f71179777c8b1487f428a909a3cb44bda865a0cd9b5591886119351954bd36d", v: new $Int64(0, 5402) }, { k: "5f87720a3e9813c455085e73ef030723bbc939bb23c99d0d3270d74bdb914fcd", v: new $Int64(0, 7491) }, { k: "5f8dfb498f92cc563817c24601f686d2058fd29f0dae020df66863529a1fcae9", v: new $Int64(0, 4091) }, { k: "5f8e6268dad6d92ed8932b5c62d13c5e392858b10d74e832d7d266cb853fdd72", v: new $Int64(0, 5156) }, { k: "5f9cbd21b6917d779a07bb1ba5ff2c09193cb77e42af4688dd0684ae198ef5bf", v: new $Int64(0, 3780) }, { k: "5fa96980cad10d83e2511cb6b4db489b264cac0c9e89e4bbd1b5c5803c9e8793", v: new $Int64(0, 1421) }, { k: "5fa979dc3c20591d975649bbad4687f74b271985ec0e2394736315fb4e5f376e", v: new $Int64(0, 5305) }, { k: "5fab60ea5c51907d163145ea7e6f58241c133c49a6d9d9637e115d31cbee599f", v: new $Int64(0, 4480) }, { k: "5fb6200e232b94de7c2e48b2e2c8fa08a4ea5f43afc24e0c07785f84165f7baf", v: new $Int64(0, 6730) }, { k: "5fbe40c531f149b655903f774f1181ba2b709adb4163c82efb8b0e9a2b4131fa", v: new $Int64(0, 3113) }, { k: "5fbf11a25a35d1bccca04ba171a9c67b4a95617ecf6a92bf25def13aba403168", v: new $Int64(0, 1871) }, { k: "5fc3615f759c80b493d3b95f38d4ac1f317ed1f4220d180efbaf57dae447cc80", v: new $Int64(0, 9369) }, { k: "5fc6d57cdde7ae4f33a43453761f3ddfabd9c442c889dd9d679aa65d495cb854", v: new $Int64(0, 1169) }, { k: "5fc917036e2fb65b3adfded3eac55b7d5a3cc5e4f331413b0289ee29065dd838", v: new $Int64(0, 1824) }, { k: "5fd122c5d860d2793ea0542152946e2ad3231585b3df249f2ff103a26984c5e3", v: new $Int64(0, 2218) }, { k: "5fda5b4c9bc71e4d9106c59b39a29fd871d17501b1aa16ddd6b4292f37451226", v: new $Int64(0, 1247) }, { k: "5fdfed58be49a374da5f95544d90e90cadf860a72017410d53aa518f1503f96d", v: new $Int64(0, 251) }, { k: "5fe43f3e92afb916229fa282ce714f1c481de9322a1a497fa4d6918aaae3189e", v: new $Int64(0, 7733) }, { k: "5ff5d5f9c1b161591b0773cd17c3267676d96eceba02c8b13232007ed6d6e13c", v: new $Int64(0, 1200) }, { k: "5fff3157ea336ec1d11caa9204871c61447432ea5fcd386baedfa84b1b3c35ca", v: new $Int64(0, 932) }, { k: "6013cd413e8c620380d9716565157a8e11798240316ed108c29c23b7075db996", v: new $Int64(0, 2730) }, { k: "6018431420526d3fe9b5529a8d250fe800774deb4616c2cb2c41658771d2df66", v: new $Int64(0, 683) }, { k: "601cbc685b2474e793cc14f6fff7908ad85b4a30f7d5192aab3a59380bbef255", v: new $Int64(0, 1685) }, { k: "6020e46be51041bad3f4e6724665f027bbc95dea43ab6811e14cae4f0ebfffce", v: new $Int64(0, 2673) }, { k: "60241a8816cd09036619ba1a6aa3a02c0a5aa1e67085931397da886d15ced083", v: new $Int64(0, 4310) }, { k: "602ac645a83f464cb1d14061b54b2e1ebdd92fd7c73577c04010c2385f99923c", v: new $Int64(0, 8674) }, { k: "603c6d67f1954f73270e15d666d243d32e9b2097d8b94e96a8a7f0dad80d2d50", v: new $Int64(0, 5598) }, { k: "6041409840bef6347d1f1e1576f36a8eab5e3e38dcda2f09730d9310c7aa4b0a", v: new $Int64(0, 7281) }, { k: "604eac3ba711dfc0be38df6d80fb3f58b35b0be200756b4f41165b4709b5679b", v: new $Int64(0, 7362) }, { k: "6054698519c88dc02800d74ad79f9f46e034012d457ce0e1a5adc417444c63de", v: new $Int64(0, 8868) }, { k: "6065374f4eebb0fc0f82df3938a33ca9b727bc5366116364adcb8c180b76fbf2", v: new $Int64(0, 5954) }, { k: "606c6cfca89b73fcd718475aa882f53132c39d286c0b8893ba317afcd389469a", v: new $Int64(0, 3560) }, { k: "60794e046b112a79f34f120915282043a5303d1479e596ab9daf12552e7c42b8", v: new $Int64(0, 8733) }, { k: "608136e0761de7777e44e39980b9952cc9676e036aaa353a28b03d6df62bc40b", v: new $Int64(0, 7952) }, { k: "608153bf9c81f425e30522daba2bd4ef5e4d1f27ea7f984d0c66b6d61635a96e", v: new $Int64(0, 906) }, { k: "608f02eb9cae16c242922ce9fc5723581cf4e3726a754e2d295877f93f326bb3", v: new $Int64(0, 9999) }, { k: "60a65b2d93a45837c7cab4e5ba326f9af133b57babd032c6444c4bfacf5abd8a", v: new $Int64(0, 4953) }, { k: "60a9d1498ee212506e16d339158fde1ac67f3bd73da6836b5322e8229ea8ff71", v: new $Int64(0, 728) }, { k: "60b05db9746a595ab8ac422e30001017afdf0231271f593dd49c63682777fa86", v: new $Int64(0, 2418) }, { k: "60caf6835ff653fcf834b236bdff8d5042020744965f29b3d4800e431e181503", v: new $Int64(0, 2711) }, { k: "60d0892761754fbd91f4ff3600c6f84d809f50e8a024a988816562c31789a0d5", v: new $Int64(0, 771) }, { k: "60d3e9d64ceac7fc03ceb9c315b743864ce8de0f88e8ef443c4c0d2fc75c3843", v: new $Int64(0, 4347) }, { k: "60d65f406b6c550a68e510a010d3a6df6173d9ef74222a332c7b65b75632ff25", v: new $Int64(0, 6033) }, { k: "60dcfab324348131d42a535da080a1448858e2069de66cd2839a6e8daea46796", v: new $Int64(0, 5948) }, { k: "60eece586a9c6ab57209c8f4b521f30babe6eaf8c49277a5f349a324a7252a8f", v: new $Int64(0, 2814) }, { k: "60ef786ef27b717d9b279a94730fb1e39f85035b33efdaffc99ce649ec124f94", v: new $Int64(0, 7396) }, { k: "60fc0c9996ce543d54fd08ea5e5e4d261888f2ba3aa188d18a129479995deaad", v: new $Int64(0, 7865) }, { k: "60fee75f227c8647e10404ab2397a2f06c16e820b477e638f7629a41c175958f", v: new $Int64(0, 1009) }, { k: "6101ade67b42635d70566f46d8e09ee9a26731e54101a6c9f0f56b69b1a61a8b", v: new $Int64(0, 1253) }, { k: "6101f082b32ccd40a1de7bbc9f94e6ffadb1f85b70edb314cb38f3f033f5fd9d", v: new $Int64(0, 5932) }, { k: "6105b8d8f102122deb3b6a12868c65d4e223d35a2422301cc7af880fb1fb82e6", v: new $Int64(0, 9079) }, { k: "6107f3895e3c860a3271c3e8c3fb4f674dbcac291f98c1f7789461460cd2c147", v: new $Int64(0, 5706) }, { k: "610841c94eea974d5e115bd5dd808a86be2b42140e0d7fbbf65ba99433324020", v: new $Int64(0, 6119) }, { k: "61117a983b75b3f9acfe9fc8529108bbc974a7c18465ad0f17bd51dd59efd97d", v: new $Int64(0, 5374) }, { k: "6128e280f4fe334d488c52b74f6da11819379bcf5006cd0132c272c1836e7777", v: new $Int64(0, 8571) }, { k: "6131472282e013ce9d3be6e5a9cc93ff90924d48f83b45a95fbd2e1daad83e25", v: new $Int64(0, 469) }, { k: "613e4f67bff38500207ea5753870e380ed6bc80dedf7e8abf2a0943f07100a43", v: new $Int64(0, 5055) }, { k: "613f9e7fcf9d8798c9f19bad06e285949f1bc747c0804fa2db9cb8187c54c2fd", v: new $Int64(0, 7153) }, { k: "61432ada4cd1cb8fd45ef4cca9c65652d1787394249b0c8f1500f6ea8854b89e", v: new $Int64(0, 9556) }, { k: "6148b6370ed81b4753620c677fb1172ba3cb41ace21220db4faa2eaaebee2fbc", v: new $Int64(0, 1664) }, { k: "614998663d25b96147d0cc0cf6ac86274d48b36d36fcbd205e2dfe7709eec9a8", v: new $Int64(0, 9379) }, { k: "614f3f0d692e330e4106f228c08f2aaa86bd1225942bf99ee2f04eac52af9569", v: new $Int64(0, 4621) }, { k: "61523388d0256b4d908d50d5e08a42b1d1bf5ece7b724314620c2b8098e60f77", v: new $Int64(0, 5513) }, { k: "615613f1fe4c59f38cac949654b212eb8002efaca0be5aadba66f4d67b328012", v: new $Int64(0, 2348) }, { k: "61671c75e22e32d05a4a7254ffb136d026899cb34a5d3092a34ba2377261f342", v: new $Int64(0, 1020) }, { k: "61677c56ddde63e640226d1c6ca741b62bf0da65daeb68e5169a33a245e9fd1c", v: new $Int64(0, 8351) }, { k: "616e117a2a14674dd9c444f61a5cffd91e28b32ae0ff3f38d18118af9e68352e", v: new $Int64(0, 1364) }, { k: "618438df8b6d638b36a70a5cd79c057c7f81fbfc55f660c54350d0fe214a6255", v: new $Int64(0, 1498) }, { k: "61870aeb8057b357bd3832c6cb5b976527588c9b317d9751db64384ffd50b7d2", v: new $Int64(0, 8073) }, { k: "618758a54a9c69939b87acb053662c155e3a5efb4174ddd12151a72b0b4220bc", v: new $Int64(0, 3206) }, { k: "6188b8abb12332fc4f2c298786b4709497f8231d6e5aa7f487972d7484446437", v: new $Int64(0, 474) }, { k: "61894fe18fc577d5aabbf1a81f366ada469ccd2261582d2260e06830f83c3052", v: new $Int64(0, 2506) }, { k: "618c8c3a9c9524b6defb075093691df7920afb3ee77316b3a21e9df33d9bf960", v: new $Int64(0, 6031) }, { k: "619b9bb4830fbc62acbd8a9f044929e4a71dcfa21d1775588e848be2281b8070", v: new $Int64(0, 7321) }, { k: "61a0672a89d6a8eab8443413a4ceab242734e01536339561f7fd6159a02ab535", v: new $Int64(0, 3523) }, { k: "61a25cc156f711fc69eb03a251317f7726b23e118dc5dfd26120b68bdb60fceb", v: new $Int64(0, 5323) }, { k: "61bc9431abf95f5675fa5da4d576ecb34047b9e29121cd235daab21a93b429a7", v: new $Int64(0, 6701) }, { k: "61c0d0412ae1c1ff3fe04c250cbdb06f5312d7693a8bac31895bbde2165baecf", v: new $Int64(0, 9483) }, { k: "61c5a4c17ac032469b6a55a3a358da21c5a67b4b8cfaa3f17e97b1659709c843", v: new $Int64(0, 7366) }, { k: "61c65f7a23e69b588d32aa360de4a66df02a4bf6f358710680d569771c4066e0", v: new $Int64(0, 827) }, { k: "61cbc1f852cf82d7dcc8acfa3ebd506d3cf515690193842530b552dcceaabff0", v: new $Int64(0, 4014) }, { k: "61cc61a97004b05c808f6f15223604b2de8e9ee3852e1fe930522c90ee1c3e76", v: new $Int64(0, 2096) }, { k: "61d5fb0cf30165fe3f458f7cabb65d532e433e394a4f44581cea397f683d7055", v: new $Int64(0, 2059) }, { k: "61d676b628e478f59dc456326ad70d5171263d369de2027315f646e80dba373d", v: new $Int64(0, 2336) }, { k: "61dc7bf5700fae0e10ac8ff47407271d394fc44865815c3dd1e3f21772f0ae9c", v: new $Int64(0, 7690) }, { k: "61f1886c69db7be1c4a8c69641e3d67f2374e81e1a1aeed89fb29714ca207714", v: new $Int64(0, 7130) }, { k: "61f4e185f03c9b96d15de7810c2e26838ee3c1b9bd603103197896006ebcc8d4", v: new $Int64(0, 9177) }, { k: "61f5242ef278af12eb718530e36ad11cfaa6ea092f4a7b66145b016d5130eaf8", v: new $Int64(0, 3788) }, { k: "61f6976f1d05681bf57062b18f6801686166c4cb3d3ba7d149f5342a2cd649ee", v: new $Int64(0, 2513) }, { k: "61f9246d06780d0b47cc41237170ecb26de5ea85a023f81343a537080f2146e0", v: new $Int64(0, 2525) }, { k: "6206c04e631c61f8b8aff27d812b22f339a90a50fdbe943d981edf99734af77c", v: new $Int64(0, 465) }, { k: "6206f887c6bb0bc26073ba73da094763fb35eba399571b9ed786da909b86c37c", v: new $Int64(0, 7399) }, { k: "6215e377b2a9c612cf55cebf8e2e254e8798048dae4b23008a158311f00e5186", v: new $Int64(0, 4808) }, { k: "621d3f7484a09ca65a03c7d19d02e7b8e57d35a7695dae8a4297f3e34943ad79", v: new $Int64(0, 273) }, { k: "623484823acb0ed5a80ecf88036e81783bf76c2a5da05b57c55c546f1ec62bdc", v: new $Int64(0, 9797) }, { k: "6236ac4250aac221f5a9f011d57b919825851b856249099b1e8b968df37eb9df", v: new $Int64(0, 9533) }, { k: "623a52842a4afbfc53d645962a3e87d82e0c9955880b330f074a2bae857a7802", v: new $Int64(0, 4484) }, { k: "6246a321f30ecee2c470dc80a682dabb9ecfa5ae8e44a9721958cd76145e8f7a", v: new $Int64(0, 959) }, { k: "624b766f6f7372096bdb55f211ec3131ae9cee3ca6cdc958d583428a64da21a4", v: new $Int64(0, 3928) }, { k: "6250f87a21fbdea8bb666cf818d56238c8a1debecb7fc58e89380a230e218dc7", v: new $Int64(0, 2850) }, { k: "62523da353d03d9c61c002e4b85a7eae9ef01cd6f320ca7293ed23e0ad955a1b", v: new $Int64(0, 2974) }, { k: "6256ed1a5c96b12f2117e74aa65785d5219253a866d0dc82f7df927679ac1f70", v: new $Int64(0, 1384) }, { k: "62575cbb808667e93161c38478f358529f7dc8960789b714581fb7bc6a51ffc7", v: new $Int64(0, 5145) }, { k: "625a25dd369dfcf78179ea9a5de7c89cf23cffa0ea2be3ad88882d23dd366b35", v: new $Int64(0, 5314) }, { k: "625ebf02cd23557135adef1d821eebc9166acc143fecb97ea531484e6560c28f", v: new $Int64(0, 8766) }, { k: "6265a0529a45d94256cb7e55b3b32176f159dc7eaac05a34e7c8f55d702930d2", v: new $Int64(0, 423) }, { k: "6267d32e97bb440d0898cf9c3cbc5155ac06ecdae4696806db217ee72d6f401d", v: new $Int64(0, 7859) }, { k: "627ee0fade8d169cabb3d15e33f99ddd34ebf15ac3375883ed48a78c5a3e2c53", v: new $Int64(0, 773) }, { k: "628658c38be5da9d00f426872cd13c6ed0720edc3ba98d37822df54b8a6e5186", v: new $Int64(0, 4547) }, { k: "6288fb9a475baad3ec93397dc9735d5c0224be6ead584609ee69a67973dd2988", v: new $Int64(0, 1425) }, { k: "628f786f69e5650827e908d6656ca11fb427f76dbf58c108c5637e29114f2906", v: new $Int64(0, 5755) }, { k: "6292323d2924e0f7cfdfdcb3a187c4f80f9aab9f049e13123f984db97b4ae628", v: new $Int64(0, 6616) }, { k: "62936f1b4e886bc86b6a9465d4c6fba58a626d55ccdd34fe408d4e9a33ab0105", v: new $Int64(0, 6526) }, { k: "6293a008187fbd62bb9c1f9d80526c3bc9ef5269d8d53ef882224582e6f7ad29", v: new $Int64(0, 7470) }, { k: "629403abd6cc63e6ee7092651b1c592010d54574f004e7ef26ec8fd64edc04f2", v: new $Int64(0, 8496) }, { k: "62975c4636e62d798115d5315fae3c18fd34a370acaba19f2670b04545b867ce", v: new $Int64(0, 1322) }, { k: "629c945c5d67ed4b1904493dc6841affcc92b9db951bc2e76493e7c9bb8529c5", v: new $Int64(0, 3996) }, { k: "629dee82435ab3a661ee5ca1d092c073d394bf74f265224dbf3c68e9ea2bbbf8", v: new $Int64(0, 1327) }, { k: "62a49694ac8a28204f6cbd3cdf6356075a20f21efeb006bcf5b14be3318f6c46", v: new $Int64(0, 1680) }, { k: "62a6b7b7ea451211c03b7569f977dec793841cf74e232c86efcbe1662ea863d4", v: new $Int64(0, 1240) }, { k: "62a78fbc77906eca35d0913525c026c641c39c9d9658be148c386252206fe53d", v: new $Int64(0, 707) }, { k: "62aa42b42a4e80f7cb3571f25722cdfaa2b98bd4f006067ce0118de7418f48fd", v: new $Int64(0, 4133) }, { k: "62b3d6413e151b70561454bb7ebe6c5c80b8e779bd4b890dee082f7ce9354526", v: new $Int64(0, 5411) }, { k: "62b7df83a743eb904aa5a0567a105c969b3632fa53e2dae061220ecea9631933", v: new $Int64(0, 4513) }, { k: "62ba8e09fd8d1179caa483fd8497ba17c417ff1bcf530f2b5761dc166fe9d18e", v: new $Int64(0, 7719) }, { k: "62bb5e92cf935c090250ef485a6c398bacc0031bb6036bb5e4a8792e29b1ed8c", v: new $Int64(0, 4559) }, { k: "62c8d8e32c78ca1ae43b5274b56c18a0b3dc84b0d3edef40eb26e5f177cfdc77", v: new $Int64(0, 2936) }, { k: "62d42f203c29ac5e20a86e15c56fdf94c59788fd1e71684b00f9882acec46e79", v: new $Int64(0, 2268) }, { k: "62df93571709a658503892d0f558717b10cab34f5c6ce1eab53522782dad9323", v: new $Int64(0, 9482) }, { k: "62e4147467502506b9ed6a58b1e27d9a85eacb516c5e32b2b364e46d2da3f4db", v: new $Int64(0, 6278) }, { k: "62e7f0b3098f101fb566a512e0369dbefa2a8313adc5ebdeeee5c4cb2303a37b", v: new $Int64(0, 3215) }, { k: "62eb2852a63603b68dfdbf46a8af37a27b2ac1aafc2e85c9faf3326794e2677d", v: new $Int64(0, 9592) }, { k: "62ecee7c26bdd700c88c5bda622ccdb83ab4193400db5b7773c0ec28b4a8a89f", v: new $Int64(0, 9328) }, { k: "62f2fdda853c7b1b527af99b81187c07d2b002fb884310aca0933186ddbf6c9a", v: new $Int64(0, 5685) }, { k: "62fd1ff69f0c02f638627ae28bb28a6da4eed87b6f2f2e5ef3f99844abdbbd6d", v: new $Int64(0, 9880) }, { k: "6308315f2da0347aba2f73aa7e7f72aebd1c869276f9eeadc992cb2500691e16", v: new $Int64(0, 7794) }, { k: "630c006e98463c8dfef81e38336b6000a92ea534a6cb03fca5e398a51ff9feed", v: new $Int64(0, 7243) }, { k: "630f8316431115a6f7dde0307c67115e82c4ed6cdd484365cb64b021911fc3fd", v: new $Int64(0, 5684) }, { k: "6315d48e4f3064b2d3cc21b8ae96b17590a6303575532376826e22571ff9f551", v: new $Int64(0, 7778) }, { k: "632491481599e1cdfeddf08cdf4e530e02f17e088c2ddf6678080ddf0420cbe0", v: new $Int64(0, 3437) }, { k: "632fdb82da9b8534713c07720cc1eb3964d59f043ad1075ffedfe4dd0c30fb41", v: new $Int64(0, 1624) }, { k: "6338eacd28006beb3d2b910618fbb002789999d425dd1edcc60119cc4d77af8d", v: new $Int64(0, 9935) }, { k: "633a7fd39925c8f8bc184a07151c6e20507c4e12251d3bccdccad6e19c05525e", v: new $Int64(0, 7551) }, { k: "633fbc9a1ee50e0a58d4450e186a9c14d940bc31005187ccbe306a88fc1ac4ae", v: new $Int64(0, 5569) }, { k: "636aa7e029af16d5af47bcf9342362249ee09ecc22d5edc1dce39e839c2a91f8", v: new $Int64(0, 8598) }, { k: "636dd04876e2d4dda818a5cd97e7fdb5f72d08103fc6e72735342dad44458c2d", v: new $Int64(0, 4551) }, { k: "6371ff6da6e86c56bdfacd5aa3355b6595df836a363cf0bb5d0024b2103291c7", v: new $Int64(0, 1106) }, { k: "63743213ba6508f96d87ea731283b066c1d73fc9513cd870a0966be9828c2d74", v: new $Int64(0, 3022) }, { k: "6386b5479e4b85d5c526f8ff14c7a3652aca6a3c6644ebe96f4181117bdb229b", v: new $Int64(0, 2986) }, { k: "63887df829c0176e250a011d3890c3bad696c2717f59e26fecd1bd7babbc2678", v: new $Int64(0, 516) }, { k: "638af0d4778ce793eeb95e79856853cfb79b3a3398bdd5a89a826a892b871f06", v: new $Int64(0, 9964) }, { k: "6390fcc2d95d6ed4b809b2dc0941a6223eda3d171f13e613e8e49eef36fc68d2", v: new $Int64(0, 4878) }, { k: "639bc4b83abbe0c17790919d6e83a201ffabda2f343bd70411319521c2a5c828", v: new $Int64(0, 2569) }, { k: "639c798efdd9a50f9de9654db32428cdde1e26c20c63dd457b8b2558f93e56b8", v: new $Int64(0, 1329) }, { k: "639dd7e159f0f9961c8d78f3d0afca5a1c68791977d379370a2ad39de406c815", v: new $Int64(0, 3593) }, { k: "63a06ed2a005cb00e828cdc6c18ecfc2c53fae7915431e85fb82be93ada5a93e", v: new $Int64(0, 8056) }, { k: "63c794c38a302246848cb8a9df013220b3bd4870ee6a025ca3a3fd38db43de19", v: new $Int64(0, 7449) }, { k: "63ce91cd33420b5abc64bdac74e5ab5496ee40820db53ccb4f028acef163eede", v: new $Int64(0, 8506) }, { k: "63d66bbab50b578bcfbc104e73efcc0dd8243e5bfa20a1ba48e7319f657fdf79", v: new $Int64(0, 2264) }, { k: "63dbe32182785d45a0846bf7098e24d91557acb11b8ba1448f2b4acd1fb293b0", v: new $Int64(0, 7367) }, { k: "63e4690331b475987a7a3ad555e2e6ef8715c166c9cd75833af0be33635902ef", v: new $Int64(0, 9907) }, { k: "63e47877556cd718415e49edc0a8112804ef98db229639b8c4cc5acc3a08b710", v: new $Int64(0, 1895) }, { k: "63e819d580ec72edc887efff29bf534491526ca5dda502aecdc1850fbc29bf18", v: new $Int64(0, 416) }, { k: "63ef66bfd00caf258d8953cce35d86ffd5bcf50e8a01c58dde12f2ec512fd418", v: new $Int64(0, 6360) }, { k: "63efd109337316de29dc3213de7eecd34b3322774756ded7ecb9ba76969cdcc5", v: new $Int64(0, 4020) }, { k: "63f6ac16c40185d24e2a19d00b5f5ded47f4f401cf2b89b79f6dd68e544219bd", v: new $Int64(0, 3770) }, { k: "63ffb76164eb683bebcf4d53b512bca235aff9f50247057af58a23dfd32a5291", v: new $Int64(0, 1215) }, { k: "6403c69cc70f23bfd26e32237b86595cb4e7c1ffc5ebd535e1be00cc2eb742f9", v: new $Int64(0, 7595) }, { k: "64099a6baf82cc18adb60148742d14ff8449012c506eaf7b45b15b1fd19ddbd6", v: new $Int64(0, 4418) }, { k: "641af700b3d9f0503cb9b4334d40d737bdfec43b9cc5c8cd9e277d04b422b846", v: new $Int64(0, 2143) }, { k: "64235c51e8c0e173317265d3db81aa8b5bda668747638079ab36eb7a4057d132", v: new $Int64(0, 7568) }, { k: "64325011a549dfa1b9d1822c991ae3e510ae59966d5fd4914309f2ebf9526052", v: new $Int64(0, 1236) }, { k: "64346a57c758e0a9cd3ae7810a4f3c24a538d95a686b5af48e51e974b0a3a4ac", v: new $Int64(0, 2047) }, { k: "644b7e48d692f711f25c1046889d3050ad178c8f3e43f92b41d221c3b05b3028", v: new $Int64(0, 5008) }, { k: "644ede03413a6c78347ab85175bd8f7aa14b2842d12d21ed9732e04486ac490d", v: new $Int64(0, 4390) }, { k: "644fe0f24414f3f9729b44d4369602ebdd76bc8366e6d373be2f1558c85265be", v: new $Int64(0, 965) }, { k: "6464e1e0919133c8febec7828fdef49410833364f3fba86019f575852174984d", v: new $Int64(0, 3848) }, { k: "646702e0495b1d1bfa979abffdcfd18dc1ba2da93436e8bcf22d8153673611e0", v: new $Int64(0, 181) }, { k: "6468f06cc0b7f16a99c173a85183914aa05ce1c42675e3c033fda884475b6923", v: new $Int64(0, 8692) }, { k: "6476f948ec6ea87f39cbfb3d8e58ebee0227a58299bc4374b337ac7e381555b7", v: new $Int64(0, 8200) }, { k: "6479c85ff73b9db89ed9a59c0f4ac7ece68d2520f8db868a796f30aac5f1f9a9", v: new $Int64(0, 490) }, { k: "647b5bbfa5d66a58f6e15835afe2c9d87e9962f766ac8fb0a1b8ab3e6394cec1", v: new $Int64(0, 229) }, { k: "647cc9fcf864922211bd799bb3bf279f279df8590838b3272e00073b0dc8657f", v: new $Int64(0, 3689) }, { k: "6490362155c36cd725890d114f741bedde3b7cdd929650ab6ce14d1f4a0bcef9", v: new $Int64(0, 1781) }, { k: "649d0d015cc69c2ad334da7618e1663bd87aeb6a1ca4c6b4ec68df5cf83a7611", v: new $Int64(0, 671) }, { k: "64a946b4e16dd2d906eac1bdfe7a7985fee241f24739faeb0a2089f0eb5229ae", v: new $Int64(0, 189) }, { k: "64aaecb339b6593fc8192bc4bd5b75bce8d0a0ab3b188ae0e0ccb258cacb3ba0", v: new $Int64(0, 1318) }, { k: "64b12a41b0d8f08265dd79d76d0c82234abbded39082e58f92f090814662e7ac", v: new $Int64(0, 9581) }, { k: "64bf796dd7d7c2dfe2e97b35702fd7ee09ad53c5db377cdf55daff830989b29b", v: new $Int64(0, 5934) }, { k: "64c33ad0f7d15af642c26d2367a6337fb18b39a29f6080dbcc05eddbc7a678a4", v: new $Int64(0, 8902) }, { k: "64c6a0c8309898569d772bd16c5160893ea8ef158c98d844508697eb16c1890e", v: new $Int64(0, 1212) }, { k: "64c7e6fec1e8f9557c2385a4da754d86fb18d9166d9ed47f6dd986d84762a97a", v: new $Int64(0, 5067) }, { k: "64c808d773fe4796c09159bfd3023ede6fc417025ec7424e64fc9f91e9e7d571", v: new $Int64(0, 9175) }, { k: "64c865532a5e0001ec1165672813a608f5ad22a1583fd8cbb37e9a66e14a6234", v: new $Int64(0, 3414) }, { k: "64eb93796344adb2d69a93c966f8bdc1430bad3993abc677653aec01ee2c7b29", v: new $Int64(0, 2034) }, { k: "64ecc26d990883aaa6319e498597fe994a152a0b29aac27300730ec95a1c8a9b", v: new $Int64(0, 1330) }, { k: "64f572565b8fcc73c1e5f9e63845583b67f63f630c42daecbed53ac6d280dc65", v: new $Int64(0, 8094) }, { k: "64f60d1c0c4fc24962994d9f62ad28f07d60c8613c56f14359a8c349be30b2aa", v: new $Int64(0, 8874) }, { k: "64fe5a3835a9f3d6e04045f16e2f3a7f04ccaab4c8d7b0d17293c9d381418a22", v: new $Int64(0, 8459) }, { k: "6505e24b0c6f5eb10a5a1cd908e9c62b044ca282caf543003d6be9e464d8d437", v: new $Int64(0, 6414) }, { k: "650cd9c201d5eb997159371d7b206f8667d112f074dcb31a09ad7407e10cd4c9", v: new $Int64(0, 7417) }, { k: "6513878fac0e4662af463b472761b81739cff3c2ff030b1482879b0a288f30ef", v: new $Int64(0, 9846) }, { k: "651b489979ea1b28af0e5c7602d0fd0d2883d98fe18650e2201862aabf39bc5d", v: new $Int64(0, 7504) }, { k: "651dcc1f378b486356b90a07b60b1a548ebb74b14d71fd8563731a648f9fe4e4", v: new $Int64(0, 3907) }, { k: "6522acb9c8dd7ea73f77d1fe7a97e04d01a7ed1fd9092da0ec9d3c6c60bb62de", v: new $Int64(0, 4066) }, { k: "652630363a8a673259bede69f5f412fe1d37edbc596c24b2d8a9376be20e04a4", v: new $Int64(0, 4196) }, { k: "652697e3e5a745ee68f612dc3370d1229e0c71561e8a172572e2548bc0febf90", v: new $Int64(0, 9604) }, { k: "65271ba15285fc7e0043531b7d2d9e726747c0eed648e58b93ea288199858fa5", v: new $Int64(0, 1461) }, { k: "652f931cde1a15777231c8fabaa81ecf4ab130e2995b52ad1d498135de2be4a7", v: new $Int64(0, 7225) }, { k: "6541bbb6267807e1314ddf340e626c47ec553666a9bc67a5620624aadc616737", v: new $Int64(0, 2325) }, { k: "65452267d1600018ebe2f6ce73ac2faa1c9783cc4dcf1e68accadc3de48a0a7e", v: new $Int64(0, 696) }, { k: "655a8f79efe3d60d9b13d8fd99044e4a45818d99885edf5bb7ef2e967f8dec58", v: new $Int64(0, 1309) }, { k: "655bd211af66fd99209d0cfe46053ac8534ded6153587b3009bcc422a71def50", v: new $Int64(0, 6878) }, { k: "6561b4b29806e790c646181ce3a087449efc3d9838b846aff4451dc5db52e18b", v: new $Int64(0, 8153) }, { k: "6571a2ca8234b2f15f66940a7109eedd9004bc55e0598be6b37d0ddcba590c28", v: new $Int64(0, 1983) }, { k: "65817a0dc3b1e0339f3c796111e9db1b557108495d03095a52786dab84064296", v: new $Int64(0, 417) }, { k: "658c248db03f700d7cbbaccf406e3db216d1e0079447fdd5c545faf67cf28175", v: new $Int64(0, 8668) }, { k: "65a1ced2ea6bb5db7b14df082b4f999380c7a020993db1d61481e4890cb0c69f", v: new $Int64(0, 243) }, { k: "65b740efc77227d714d26deaeaebdb8b5a312e78ff2a0004d7725198d793970b", v: new $Int64(0, 5748) }, { k: "65bb6dce00d36bdda21b8c653ba30307615979265f508fcbae4e81bdf90fd19a", v: new $Int64(0, 5047) }, { k: "65bb9b544706040e42f8e94c4218a1f99d5758cce3f8f9ac4334c3d7a0894198", v: new $Int64(0, 6032) }, { k: "65bfc1eb427f6ef07ec9ee4354eb845f8fb0aabf298eb988eb8ab1567677e53b", v: new $Int64(0, 2146) }, { k: "65e2811ed323fa5814e99e993d25f9233d0497586821b0123eb41bdea2202d64", v: new $Int64(0, 4313) }, { k: "65e379cccc9104d9755d200089bf82bf3fa26e870e2656e35e7f0b22b5348d93", v: new $Int64(0, 4242) }, { k: "65f5de3160fed90917c32c91b08973a8e7887b68831d26cb441aba33d858a47c", v: new $Int64(0, 9709) }, { k: "65fa92a87ee0f23bd5b1831d1a3d5d347f300c9df3fc21baf01b71d8ba6deec0", v: new $Int64(0, 5318) }, { k: "65fad7836f9198b729df7906bd73248ccfb63d57d2418d2d5df2df99af790414", v: new $Int64(0, 351) }, { k: "6604ca36fb7196e338c553d4741f8c115c8cd879e32f71a9b597cbe61a214ec2", v: new $Int64(0, 2831) }, { k: "661034ebb70328d407141c3550bc07aace4427c99ff7b8674739cd782ca4b7b8", v: new $Int64(0, 3094) }, { k: "66133ea47451fb15784215456e62e42da1507117b5126aee76f9138c1746a011", v: new $Int64(0, 6947) }, { k: "661b3641bba40f2e19da32049ba58d08a2946310df5f4d641af8667f0334f31b", v: new $Int64(0, 4772) }, { k: "661ba72e57864c222aa5245e9d523117cc2e531043519f85373072a76197a267", v: new $Int64(0, 9246) }, { k: "66418b6fa081e927d59fb9b8be4e1757bb6b685c044a4178636f47293f220f1c", v: new $Int64(0, 8933) }, { k: "6642faf81bc4eade8c5cf041f04dc2aaa4bcd4afe52e6a28fb9c7c83f1998438", v: new $Int64(0, 6801) }, { k: "664f64937b7f0dcd8b69c6a758846889f19ba97f6db03cfedf9e90c27007d5fd", v: new $Int64(0, 3534) }, { k: "665fe3607f28cf21c32c1b05dbdfb4f27a0bb8a37298c2a816b5e5f1b2fdabde", v: new $Int64(0, 2156) }, { k: "666c006ad71080a63ddfcba8a8ab41c335d1431931ab76c043bad6cfa90eebb3", v: new $Int64(0, 4435) }, { k: "666db2b417fbfad6dbc7167d70f104b3cba6388c60554d4352728ebd51e39fc2", v: new $Int64(0, 9625) }, { k: "66724b3e02559f6650c5857c083329360bfc8d3629e4cc06b71eea5aeea68cb6", v: new $Int64(0, 8240) }, { k: "6675862d2416552a1d2650297edcd4d2dc7a018aa3166c1b45cf686f6e291a46", v: new $Int64(0, 6567) }, { k: "66787a1fc12d08d386353e3d9bc820c25b8f3e8502395fa666cc167d3d7c9eba", v: new $Int64(0, 5484) }, { k: "66808a335de511218cdc0bf617017f36aaded5a41d07ab2b12969202b1d33c07", v: new $Int64(0, 7804) }, { k: "6680cfccfd86ae4e3e982f7abbc300a4695e2c5f2ac9c49108c6c82c153496aa", v: new $Int64(0, 3646) }, { k: "66820223fd4f11b5edd7bc892245f972d13e8367fc921d9b9b3c11ebfe9a7db4", v: new $Int64(0, 2072) }, { k: "6686ce63f218e05208b2b4f39495f383de4b19335ef822249b0842262372004a", v: new $Int64(0, 6044) }, { k: "66ae2a0f69e1667760e0b6f2857a47a00f9d06af898d227c8e565b1b0d4d46c3", v: new $Int64(0, 8410) }, { k: "66af5f751a5fddad6ea8a39bcc52f267c94062786b40dd734db09b35554e4931", v: new $Int64(0, 2748) }, { k: "66b0c6e63ce603373e3736d0c6418aef80a44d60e41e0f51b48bf4b6e6604583", v: new $Int64(0, 4875) }, { k: "66ba48ce8d12ccfffafd754363bea3b19058ae2dcb28eed4bfddd859c923acbb", v: new $Int64(0, 8645) }, { k: "66ba722e553a666e0e606e887a4f2701983e763309f259cb759fe2d708e5bb63", v: new $Int64(0, 325) }, { k: "66cb52ce782ccb40f6c6d924d5f4c342a3094d0f7853bfadcaac0f0685904d74", v: new $Int64(0, 9848) }, { k: "66cd705e2dc8f21fcf48ae4743ebe379283b7b22565063d534b8dd2aa5166aae", v: new $Int64(0, 2437) }, { k: "66cf417aa22533b6f5207d6f1264d0a215ed184ba8498c33e48aaf6284721ebd", v: new $Int64(0, 3413) }, { k: "66cf7bb6ccb5b4cfb03558bbd32d7a8749a4438b26f6626b84684ed5755de83f", v: new $Int64(0, 4712) }, { k: "66d097b79749c4657f03b11c6cf91f4e615db9d5df80aabe4693019979eb2b56", v: new $Int64(0, 223) }, { k: "66d6bcd4614a4a66d81362a1ef09b514d97e2b07361468e25bc4d68547d86f8a", v: new $Int64(0, 453) }, { k: "66dfdf289b72d60d8751afce2a57cb094c76347c812a52b3f90b52d77c070843", v: new $Int64(0, 3909) }, { k: "66e7c4c6d6d8a16eb5a5839f4821a19c921626926091a1d53147b00a71de847b", v: new $Int64(0, 36) }, { k: "66ec4e125e3b593002ebbce5c8b724193b5734a4a54bcc22cd0dca22b56954c6", v: new $Int64(0, 130) }, { k: "66ec6ad2f1a85dd81c9ae84cf370a250a168ee06b24a2090054f1fdce1f379ee", v: new $Int64(0, 2233) }, { k: "66ef4b83a18447be62db32a5c91760b029de9ff679d9718342d8480499338c2c", v: new $Int64(0, 7956) }, { k: "66fc177e962f61520c516e587cd58632c7499ecda0201fb651b8a986671a4127", v: new $Int64(0, 8748) }, { k: "66ff76216ade5a4f6ece849a157b665c1c1eadbb3e886cab6f2f812822254d8e", v: new $Int64(0, 1789) }, { k: "67026baad2d2f999864352968e718bbb58b6fb78b74c93da4588bd6b9a511d5e", v: new $Int64(0, 9492) }, { k: "670505ebbe30dddffbd43311ff842eabf6ecc8a7b12357466993dd7bcffaaf81", v: new $Int64(0, 9367) }, { k: "670b31a5f1cfa0baded0c48ef0b29785bde7338e3d241dc891f0396f4056c72a", v: new $Int64(0, 2780) }, { k: "671a489a7a4ca73a872e989712a1adcd6dbeb3e47909fdbd176a6784504c79a4", v: new $Int64(0, 6042) }, { k: "671c5140b7ec13594ebc22cfd4ab144d12facdd31f6c0d305058193bb7ed2a15", v: new $Int64(0, 2818) }, { k: "672bf92be2fceee4c44a4fb6cadcf9021fe69dfe1b31f5726dafd5d1042193fa", v: new $Int64(0, 5917) }, { k: "672c887dc216bcab7d1b6830a679d5d1cd5dfbde1d9ba6ad1623c711c57950c8", v: new $Int64(0, 1159) }, { k: "6733812f631205be32e5daa12b574bdfa0c304c248a674bd4e555a5fcade436d", v: new $Int64(0, 6437) }, { k: "6737864c5b7ec6c7986ef6d8c6f4b91a6b143d36aab6f4600bd21f472427d7e1", v: new $Int64(0, 972) }, { k: "6739d764f1473f8e5048935628956a597496604f1f3e8ad92bb7fd918897cd37", v: new $Int64(0, 3185) }, { k: "673a3a134bbe6f2fc765d6922e2961f2553767e652ccabdf12df9ffc0b01f2c9", v: new $Int64(0, 9349) }, { k: "673baeee55f2d8c159226196f67de8b3a71a710cc358e07851f1e57a57a4e47a", v: new $Int64(0, 7561) }, { k: "673bcf427392d5ecfde0d1a59857a36b5eeefa419ac830c18d083ab885048a09", v: new $Int64(0, 3787) }, { k: "673eee60e9979817d784df19c24481d6990e9cc7e70e774016504e874251310b", v: new $Int64(0, 377) }, { k: "67432b859f88d2708af9bdd8a5a3c500b4b0c90676db1c0f87ae13db93a407b4", v: new $Int64(0, 6990) }, { k: "6744405f82ac560ec5faf6555551aa8555a0736c941cb51880390b7b6e6f5ae2", v: new $Int64(0, 7383) }, { k: "674f28ee9578e48f7ddaa87e661924678153f444b7cc1b878b6fa68dd68c2d43", v: new $Int64(0, 1137) }, { k: "675979b9d8a9bc282ef258f0b5d986714ec46eac281957a1ed707ac1c3399c8d", v: new $Int64(0, 1446) }, { k: "675b2118cb25d747bd856d47036e75023dd7c9938a57bdfc2f41e3477cfbf61b", v: new $Int64(0, 8727) }, { k: "67627ea61bad31482e1c2a0386469f34c675b7c04117051e02562e9cb7afc3bb", v: new $Int64(0, 4552) }, { k: "6762fd1710dcd2771f0e6984ab37c523147e9077c6a9bc25f49b67a91177b2ed", v: new $Int64(0, 7477) }, { k: "67728143eef8312aa9fb5645ac46fdbbbb99f56194fb446b2d48f6f08dbfa046", v: new $Int64(0, 9543) }, { k: "677ed500dad3ce11026bced8d0b43ed6300746b01634a6abe0721aef3d0bb0c5", v: new $Int64(0, 8489) }, { k: "677ee6476f4f281709fbec746347ee8546efafbae761d0e54ca1f8926c4dbf3b", v: new $Int64(0, 4600) }, { k: "678ab1c5cb5950edc29376a275c0e31885ba363579f39ca4f524bfc4fed355f7", v: new $Int64(0, 1285) }, { k: "678d371fe6a0618fabf49b5857def9dc72fe92e4487a3205b8226017a33c0b8d", v: new $Int64(0, 3225) }, { k: "678f00fc8d7009043bc8d405dd1a8088c70ba5d85039a4a8e2fb4aa719d2929c", v: new $Int64(0, 1011) }, { k: "6790cc3190a7ad7759d7487da310b0c7eac10836fd3906386d30b512bf9c91ab", v: new $Int64(0, 844) }, { k: "679395ed09f56573621399276224962d239ad6ae4cf7a0c98a77230b4aee80bb", v: new $Int64(0, 7514) }, { k: "679d221aaad1df0894612ab0b297f6ac2f14d88a6e42b0576fe594fc92bf95ac", v: new $Int64(0, 8560) }, { k: "679d772a8401f11f83fd8b4371e5ae51444677f03bdac2b8da12787ccd98d7f6", v: new $Int64(0, 4977) }, { k: "67a4fda22294868f22f7a25e3881535eeb1e2a6a73a74fc164427462aea24dc8", v: new $Int64(0, 7559) }, { k: "67a6a484e5857895825e780c725b7a5d5fd041947620fcd6923aaf8692aa13b0", v: new $Int64(0, 3082) }, { k: "67acea83442b086003bdeea7c53a53d420a2b786adfdecc6d850862859467a73", v: new $Int64(0, 1111) }, { k: "67b14b0da7720a33fbc43136f6a8b90e06b6cd75fe38da2f4e38f8f55ace3ade", v: new $Int64(0, 9011) }, { k: "67bd1a49797fecc6329fbff7f4a82d029b653f5eddc5e60c6908a1ae989e009b", v: new $Int64(0, 3742) }, { k: "67c02e1e14f09d9eb5357e81b7def3576a73dc006ee36aacd3209fd21c0c6ead", v: new $Int64(0, 6729) }, { k: "67caa599e1a6e7271a1b3515ac6aeb425610ba6acbf0bcb2f473dec840c03212", v: new $Int64(0, 545) }, { k: "67cdce9c6ea1b0f26c8d3c3a7daf468214c66e428b147f51673b2096141b755f", v: new $Int64(0, 9220) }, { k: "67f64380d52084cb6f6f95f95fd20e0281340b75b6e1e5cc4c55e5a8b8725f7e", v: new $Int64(0, 4063) }, { k: "67fa49c1f906637c26b50b426aa0405f0e657fd86b170fc3a140ab950257842d", v: new $Int64(0, 1091) }, { k: "680ac5b70bc3c93e94fbb5b5f1aad1c8cceb22b6f4e99a19362f614a9dd338d0", v: new $Int64(0, 6354) }, { k: "680f19c05aa68c8055665782c153e3683515f992d624e80be1ce6142c73c7fbd", v: new $Int64(0, 7485) }, { k: "681160410cf2e412a3f6b600fa9be5f5421d4048699dce9c2ea066edeeb5a053", v: new $Int64(0, 4806) }, { k: "68168cbad036bd5b582906635b2be3c185c5b117bf64816cd5c9e1670ddce7eb", v: new $Int64(0, 7851) }, { k: "6818f96d1609684331af79d1b5dcf1927027fcaa89b2453cf060a84d7cfc3a69", v: new $Int64(0, 9829) }, { k: "6819102a6cf61fd689613a1f016663c3e2494157347ec87ba72b5202e543f545", v: new $Int64(0, 1407) }, { k: "68299a51b6b592e2db83c26ca3594bdd81bdbb9f11c597a1deb823da7c8b9de8", v: new $Int64(0, 117) }, { k: "683e0b4c0f8727079375b8f29d35944dd482c8b506ac557d63b95e775f28a96d", v: new $Int64(0, 1246) }, { k: "6841ae971cb243bc38c3efaa9bfa27f595668f945d542336d49e906ccafbc609", v: new $Int64(0, 8906) }, { k: "685414ea86500397dc9ec16ccc4f5afca05fb5f5963eac47eb74657d4fb38a40", v: new $Int64(0, 6835) }, { k: "6855bf3d107ed3a8b6786397a4738eec1ad94bc53345039fd84575dc7fb6455d", v: new $Int64(0, 7935) }, { k: "685a3d918980eaaa0955ba64e8447e501bd7743b58336dd1234ea64a1760a35f", v: new $Int64(0, 9890) }, { k: "685abe5eebde72bdc1d33551ddb6fa39002cf696b9c9b4104c5b9da36afd0276", v: new $Int64(0, 3642) }, { k: "6861ea34a908020f0c8535b3120a1c5b7408249803f786c94929baffaa3aa807", v: new $Int64(0, 2459) }, { k: "6862decbfa02d50bf09bc9334ec89c3c82f6c0e59080a0d4382834aabf7467c1", v: new $Int64(0, 6836) }, { k: "686b35ef7def0f118ce1f613ba13b550806774d0d5a71748d1ee91f910358edf", v: new $Int64(0, 7051) }, { k: "687414b28683237aa97a3e727eaeea48783af7586312195d46d417545bcf954c", v: new $Int64(0, 7099) }, { k: "687a547b98eb64ad5abc4788a4315790871f84a21ea0350a78a7fb3857567fd7", v: new $Int64(0, 8186) }, { k: "687cedcd2c7c2c68801cfc7600fa11d9b6fadcebfe81e6ceb4cbffae6d5a3fc0", v: new $Int64(0, 2654) }, { k: "689b3c906ee3fdd59dbe8ebe412a87e784d5f4f68cc72afa9b9cb8e5f773bf78", v: new $Int64(0, 2487) }, { k: "689d422339b390a0ab842ff221a13fb1079184a27ca0febc46280df89d7078d0", v: new $Int64(0, 4660) }, { k: "68a8975cae67756a63acf743cac6806dc2432326b249bfed9eb86bfce8445ba8", v: new $Int64(0, 1459) }, { k: "68ac10eb0cb321bf3b03137c536bfd40edd72eb4604a22b53891351fb37bbb25", v: new $Int64(0, 8231) }, { k: "68b06a495d25c2cc5f96cb5f3038d511d145175c40b2c89e213b4ef0547600cd", v: new $Int64(0, 3059) }, { k: "68b48b45c41f9b6ccbde4a36ac9ba7490a97775a4561a23865dd89dbe0e06f01", v: new $Int64(0, 1626) }, { k: "68b600d154734aa4c1ce5f2accca2fdedb994ff6c4240a30af0b6c5e15a966a7", v: new $Int64(0, 9824) }, { k: "68bed6161239ce9d45ce28c40b970c31103f8749a6e0f21474eedbf5ef93aefc", v: new $Int64(0, 8597) }, { k: "68cbf1bbb03a6b6d3982fe28d920e722f9b331bebcc0c333341ca00078eb764d", v: new $Int64(0, 4846) }, { k: "68ce3ab8a762423d2a06526ca16cafcd6f1bcda192e0ece4c00eadfeb1e7de5b", v: new $Int64(0, 4222) }, { k: "68d0f0c0653725e34ec76a17ac0f14380c18ebc851087205db5d306956295826", v: new $Int64(0, 8517) }, { k: "68d6829a1ec90b57bb48cbe476666462fe70ac617da4ada275e7f3dac3313271", v: new $Int64(0, 3807) }, { k: "68d991abc29c09b66679a0660b8c865151c5914f7f307e34ec886e430d8ee519", v: new $Int64(0, 1587) }, { k: "68dd5a2632777c4ab18830b689d3a9f185603dcf37aceb2f352b8a031a16643b", v: new $Int64(0, 6910) }, { k: "68e3ccf91c570d77cbef6738a2f4bf75bf492ba940502bff61d7707454fd4bff", v: new $Int64(0, 4072) }, { k: "69029280bffc73f95188feb65891635576553993ff1985d92ac8165c1db10b3d", v: new $Int64(0, 9603) }, { k: "690ada660f181f2eece207dd16e291c477529ee24896dab61d1dfbd4bc12826b", v: new $Int64(0, 3748) }, { k: "69164db9959237d9d7dffd76e9f9debdc1d2dd547930cb96d6844f15e533201b", v: new $Int64(0, 2911) }, { k: "691848cf4c95dc1f0fe672cc3ee912c79eab0c6b759021b093ef789b79e2abf8", v: new $Int64(0, 4479) }, { k: "694456fae4471f3acce35e685c7a2a7bb4d2ab7ff6338aedf4252b463732bdfa", v: new $Int64(0, 8353) }, { k: "694672c139d01582e53e4220976143b0489e5eb74eff6686bbcf5cdb2ddc842c", v: new $Int64(0, 4528) }, { k: "6947d8f124dc5538e05ed2891b237c2eca3427feefc000a7992dbc951e24f4dc", v: new $Int64(0, 8953) }, { k: "69506b21f735242bc42b620955d2fb6d776f484c4b8c3cc798935de417767def", v: new $Int64(0, 8139) }, { k: "6951a3b1ab0b9106f7bd30baa35607ed960fab27f6d9a2e820127ced1be6b527", v: new $Int64(0, 7996) }, { k: "695717ece457b2cc67012d712ce32a7d78c32bba16af54627a5c8c5f14ec1163", v: new $Int64(0, 2475) }, { k: "695b4e653e03cb8226d22e2b3a46a8529b5d430e2597ec31d10a2c5e64a046f2", v: new $Int64(0, 4720) }, { k: "696d1bbb01ac1c60d9b1e1cdf9d2d8283cc3786dd415dbd4bf944c001afaa166", v: new $Int64(0, 8201) }, { k: "6973cff9dbaac6dbd7896a7e7692e2b2304c76b7e9a22f579378f7bff130afa6", v: new $Int64(0, 901) }, { k: "69791141d18de97d7af871549f82ccd146067d699c1a6caa639ce618fa26b41b", v: new $Int64(0, 3952) }, { k: "697fa5475dc8399bf509970ac04af71e4f55469cd2b09f981e94762050210a3f", v: new $Int64(0, 2385) }, { k: "69803daa4b976aa1c9750713cd865928fa488b9c4d9fcc99c016f7184e7d344e", v: new $Int64(0, 9392) }, { k: "698864f1ebcc5e0de42a2bf0493ce8e76c8b739237184ba60cfd43b629b7848c", v: new $Int64(0, 362) }, { k: "699a00e0d30281d62221ac92ca51d24889d1d81a7260298634730a4bda35b6a5", v: new $Int64(0, 4502) }, { k: "699b05800093ee7d3ea194cd55206d7f2b3f8c62e4344546cfd0eea9f9ffd423", v: new $Int64(0, 5146) }, { k: "69a8fb837ed1b8d522dbbfc2a6fc51fcaab8bec87f6bd2e8ab9b5b013d3a2be5", v: new $Int64(0, 2073) }, { k: "69b77ea346bbdfce1bac04185df4548149f89edb32944f0034e4904889f42805", v: new $Int64(0, 276) }, { k: "69ba214c732da3a42436ebb529b6a9f4a65cb54b1a02b7af9e8124f357db5ad9", v: new $Int64(0, 1435) }, { k: "69bcf94410b62d13148eb4783feeda23d42a959d8a27c75c5be84bfda67d696a", v: new $Int64(0, 8210) }, { k: "69c18646a4527ed1c11a4171828f6de59178edb3bd48a80b7b0a99fd2fb082b8", v: new $Int64(0, 5597) }, { k: "69cabc80ff485e9d1545378b11c7fdb1d2de24994695dffe221922f05ad31b60", v: new $Int64(0, 9284) }, { k: "69d2063a4f392df938408c4ce70512b4788bf8c0ec93de7a6bce2ce10ea93444", v: new $Int64(0, 32) }, { k: "69f83b2bcadf967fe11c766cee452337c09110b078e516f6f8267f82804117e4", v: new $Int64(0, 3314) }, { k: "69fba21ded47f2e9f63683b69576f619b7ff6f21c01c90cf627a253af434d69f", v: new $Int64(0, 2709) }, { k: "6a0450587bc35358f381df5b5a2f798ac6d6065406a299f060fde5059947e325", v: new $Int64(0, 2214) }, { k: "6a085256500cc670ee61f327a5f33bd4d64430827f27239c707086d7efba8e78", v: new $Int64(0, 4009) }, { k: "6a0a927e221a0248571198f221ea04363f300fa51cfd642282b6a7aa8f6403ce", v: new $Int64(0, 5312) }, { k: "6a15779d402b34e033e91b4d1e1387db7f8afe9d04096a9f29740b25f7406ce0", v: new $Int64(0, 4533) }, { k: "6a260d0b475fe2aac5252d1a8bad5d40e0b86d20ba77eb1f5220c76ffe032a40", v: new $Int64(0, 752) }, { k: "6a30e999c897f781ebb3e500590707f556ca9bfb5eb15cab3fca33d1bf668e97", v: new $Int64(0, 8763) }, { k: "6a3bb5219b0d1a15b2dc5937258f6d9021a9e131a340f6241396b6b2c2056a22", v: new $Int64(0, 5177) }, { k: "6a3e0ffac74c16f1de12e3c6d228e5fd5f773ed93c2a3e1d0ba444561e7cc1d4", v: new $Int64(0, 3653) }, { k: "6a41388b2a013ebe38429f585eb3b11b426c9ba202d503eef1b4b776eec643b9", v: new $Int64(0, 573) }, { k: "6a4772180f57632b5068cecc3de76fc420d67e50432c39c9eeca43b410718789", v: new $Int64(0, 5837) }, { k: "6a49de43e153c5138799a387fcd773961b84b996e971a7364aefe34469a01b80", v: new $Int64(0, 94) }, { k: "6a50812b4eda56a306ed40bfb4cfede1642997e00c0da606c31280d2db63ee44", v: new $Int64(0, 3012) }, { k: "6a6772e1ef82e5eb5286ae8810808c21fa64f60ffdf73a3575de113904741bdb", v: new $Int64(0, 8303) }, { k: "6a6a007476453cfe0daff6dc9ac7684e786083c652c88e60254860acd2a0229c", v: new $Int64(0, 8829) }, { k: "6a6ee8cfd8fb0ef3a228ac3b8d7029b28f0dd3bf710d73b8adc6c64d2f7f68a6", v: new $Int64(0, 2922) }, { k: "6a6f6daeaf77922dbbdc3aa37d251015aba0141f6a3f07bff76b31d3068d0ab5", v: new $Int64(0, 3419) }, { k: "6a7227c58fd5a558f7fd24c11fd7718074fc0d43df898087226eb72aed12a4f6", v: new $Int64(0, 8699) }, { k: "6a77b8e6f5fbab04063fa216cab0a8533f8675ca1e5ee22ac600be1046a51a8a", v: new $Int64(0, 7174) }, { k: "6a7cb790b2214566a15284fca88be7331021b2b7cbd37bf1ad09723b4177e6d5", v: new $Int64(0, 6575) }, { k: "6a82854f6acd1476a6a2919a5a1035de4fdd3310dd441c829288855ae8ef71a3", v: new $Int64(0, 9868) }, { k: "6a8d03b24d9939dc49f70bb154e3168dad7679100c996c7b8dfa572215704417", v: new $Int64(0, 4267) }, { k: "6a93284fe0f7f42ff8d9c814c2e59fe61cc9ef4b6de58fe1532dccd79073c201", v: new $Int64(0, 4057) }, { k: "6a946160fcb94f14fd40b49a90e61ca80eccc0bf7257ecfa1154599c2ba6e06a", v: new $Int64(0, 6816) }, { k: "6a94996077c25ebce1dccc7919467cbf5c85b1fc424cfe0bbf66bcc696372c06", v: new $Int64(0, 8614) }, { k: "6a9692c6f0bd81b98411bd522abb7ba0b6bcffe177d63ba03b29fc662b11a1ed", v: new $Int64(0, 2220) }, { k: "6a9b31c274c09eaa8051020819b80b625176da8add4878d87eff6531804a8afb", v: new $Int64(0, 8091) }, { k: "6a9c9dcf89d4415d1f77939711e8168d2d8846b5392675c8fa3b019675cdf9e9", v: new $Int64(0, 8369) }, { k: "6a9e39e4d7f11464123f32ef978bfe39c14688973cb31a06edc89a325c010ecf", v: new $Int64(0, 4971) }, { k: "6aa0aa229e53b550830d32016e6b1830e4602f44dcca79652cda01f09afc74ab", v: new $Int64(0, 947) }, { k: "6aa26595e24f571227f99b197c96c5566ca248607388dc8b9315dac27fe9c523", v: new $Int64(0, 7701) }, { k: "6aab5dcc2f6641136e19194606d0fb53f83291ad1af519ff817b0ebbb2c7d740", v: new $Int64(0, 8876) }, { k: "6ab5c2df48fcb68748eeb92cd3bff5b88022fc7f16f6ecbd80a14d31035418c5", v: new $Int64(0, 1515) }, { k: "6ab8c6f013cc9f7d4240233393a20cedc8993cf939b4c16aaf03fb5fd3bc714d", v: new $Int64(0, 5551) }, { k: "6ab97aa1ba6c93b6d48e281b7cff9b6035bfa8752fdd0335c49bd7b2c15d8758", v: new $Int64(0, 6328) }, { k: "6abb2dbabdfe36e52221eb212f932b8d4fd39dc394e535082b2e7794c4669c30", v: new $Int64(0, 7184) }, { k: "6abc40645bc3869735aa3d42f6b75ba5ae2af98b0b460293c5b92964a5a445a0", v: new $Int64(0, 6170) }, { k: "6ad0024e7e5616bfedf0bfcb5c4c8f4f271aefbc9e81ced825dc820fe208cb8d", v: new $Int64(0, 9517) }, { k: "6ad3e175c8133a1fee434da7d4a1309ab3d298bcc45661c5bb2e09cb3174d8bb", v: new $Int64(0, 4689) }, { k: "6ada9246235b734d2f56c5f36ceafefbd11cdf077a040e782b3a5e3d1e7826ec", v: new $Int64(0, 7359) }, { k: "6ae20da3aae27371729a40ab9075f5e6a5215028a67b5c6b1cba53923849cf51", v: new $Int64(0, 621) }, { k: "6ae28f9393aab04f1b60b16af0c4fead00b0dc950ece7271160bab7f5bf26193", v: new $Int64(0, 3040) }, { k: "6ae4e2ebbe9aebea87d6f425a6b0996572491f026a2c16caf2a5f5d3884df4b3", v: new $Int64(0, 887) }, { k: "6ae593a40d17e06a1129f864c925b2e9e58ee6ba32a1bcce698cc1543a649be9", v: new $Int64(0, 1295) }, { k: "6ae68076081b55bd6653a69de761a8ecc74b73e1e76e9adbf76170f63fbe8bb9", v: new $Int64(0, 3043) }, { k: "6aefadff23c2e17b87fdf85a6d91b7d6d2fc88baaed127635a200783b2b6dc6d", v: new $Int64(0, 4421) }, { k: "6afb24d66bdf82637c7e6b2cc815c23e3e089e9635bf4fedc075fc0f9a4ec049", v: new $Int64(0, 9301) }, { k: "6b008807e20ed160a83c2109deff126e9e45076be3451178b81cf5503f4c741f", v: new $Int64(0, 2360) }, { k: "6b0eef376aafdb51f5ccbb13867cb361b67cf64af82b33a6177e6563f76f5eab", v: new $Int64(0, 3245) }, { k: "6b220d911c9de9eb12278a23aa8ffe3d740ac98b40d4a5c9efb71f2bc6b76b20", v: new $Int64(0, 8790) }, { k: "6b228ec801ae0973677f0e4e612c67c055b01445ad1050dd89bba38020d34af9", v: new $Int64(0, 8694) }, { k: "6b2be55b907ea9a463f9ca1aaafb3cf39878c90b41a20be945f7c948811d3a8e", v: new $Int64(0, 9293) }, { k: "6b3c8be0c994ca0523fbd810a738a0acf2e6f518738bae981a7c1869e006a929", v: new $Int64(0, 4227) }, { k: "6b42542ca59cee140a00ab6b6634b481480816b7cd316d2ce215c14638e7d737", v: new $Int64(0, 3164) }, { k: "6b45a3846cf70ee57144b92389d40b24d120f624eb13519b30cea68933fa531e", v: new $Int64(0, 6634) }, { k: "6b480268d5bc5d3775b16ffb7c4802ace27b4f6fe679c2381858e77734808bf6", v: new $Int64(0, 8584) }, { k: "6b49231b7c59cdbe5231d42a1b4ae6836ba51e791f9a5da3b524e0ecc0cce330", v: new $Int64(0, 7907) }, { k: "6b51ebab828a098c80a9f9bfd5a8cee66e3f2eb6f6e22c821abcaeeec155c577", v: new $Int64(0, 7172) }, { k: "6b56eff3fb030d759c6821e2dd9365f8920f6622d2312194eae65b5cd3613dbf", v: new $Int64(0, 3130) }, { k: "6b570432ed89a0153e2ee3678d60c2cc328ba9428142857794a1fa120d5e6962", v: new $Int64(0, 9050) }, { k: "6b589e2f6d5a3c245e7806bf13868f761166d54a1cb1bbb5f6264befa3d75e5f", v: new $Int64(0, 8903) }, { k: "6b596ea6ea86314380cd189b9e7321cb4eb496e6253eadb997350c7ea29a912f", v: new $Int64(0, 8905) }, { k: "6b6dacd2c3af287e44109af5ff86d371bec503574613f12ac28f701814e97d26", v: new $Int64(0, 4186) }, { k: "6b70c55b5a7932317caaad6a1a7dbd8df7f4abef98e56a75bb82b45e8e124aad", v: new $Int64(0, 6459) }, { k: "6b7126e24037f0b01f2acef6182500209b3a831782e7f4e27518f872b5c4d5c1", v: new $Int64(0, 8146) }, { k: "6b7305ab077bffc493381b0f3fb5b68ef441dd3f3a7c8534ec3387bf83e75419", v: new $Int64(0, 7636) }, { k: "6b80c3ec6d526c660812b707d15b50a9a8d890448d7389e3f8410e79e692cbf5", v: new $Int64(0, 9558) }, { k: "6b91baef68530658b31b8f763f62c602e331776811d0049c66ca54991f884762", v: new $Int64(0, 8700) }, { k: "6b951f7e6d2b27488ee6716f24ceb0b276b74b58dfdf9c39c136660f601210e9", v: new $Int64(0, 7254) }, { k: "6b9edb92e59e5e93c6d4c1c85a846659f02a2b1c333d8fd78ce4838ca5f38ca1", v: new $Int64(0, 369) }, { k: "6b9fd62f9f658f78439cfa1a9a9e66853a60c5d6844af25c1313d396dc1386f4", v: new $Int64(0, 4957) }, { k: "6ba80cdcf4b3eb6fe3a550b5aaf98273c5051e5686094a891395ad433c5aef18", v: new $Int64(0, 2679) }, { k: "6ba99a5e8eb7e059efc9f6957e2d922c9c8bc4e89d7898a915128b53178ce940", v: new $Int64(0, 8551) }, { k: "6bae5c0982fcbca53f31bc43a397dd45d382cceb90848c9321b571fd524451e6", v: new $Int64(0, 7016) }, { k: "6bafe7b4700fe4e3da5e2edc078b6c076269314a7cbcb6bc57ff2523e59db4d4", v: new $Int64(0, 5558) }, { k: "6bb0a5cddffa4bc48fc9a9adcb7358d2f302ba7a15fce4314469eab4c7507a00", v: new $Int64(0, 8177) }, { k: "6bb456c64c43140b58bb7e180eed55544256d846a8649b5721e366dde90f3e5c", v: new $Int64(0, 2516) }, { k: "6bb4f0d658f84884d9f6a64532554884fe2f27bf42ef064ec06222fdd38ba522", v: new $Int64(0, 473) }, { k: "6bc342faed97b3579b67492e2597a567b554477ec1609c67cbef08d03965479e", v: new $Int64(0, 8600) }, { k: "6bd4e2466650c70804cd83c6e5ef79dca887e0cb0cfdd43c7d4fbe868e37c364", v: new $Int64(0, 9672) }, { k: "6bdff59911f6c880ba1210593913aa7cc7d4eb00109e414e3c2c0c38dbb1e5b2", v: new $Int64(0, 7214) }, { k: "6be46936c7b4a73cb6a8045a1beea74e5d1e9cc7732655c4930af8dd9ed00d28", v: new $Int64(0, 3801) }, { k: "6be7da217f3ecea67f7186a28808d0032d7e8948179b99967d5fdedb614a8dd1", v: new $Int64(0, 3457) }, { k: "6bf0d3fb935bc80c211ea79b569797c81c5a579b191f1081cb3a0d11373bd222", v: new $Int64(0, 5084) }, { k: "6bfeb1a56bb75aff3bf8bfcc03be840664d2628a1cb24cbc57edf5d41ea2daed", v: new $Int64(0, 7286) }, { k: "6c017b905a4a3f314a7d931ab83e8ef826f2ce9496b1f65ca94737b4db922dd5", v: new $Int64(0, 9107) }, { k: "6c0fba7995fb219444bb15a83c28026d8c6e2e58e688d7b254ce4db10f1fa395", v: new $Int64(0, 4141) }, { k: "6c0ff78ac77b9d74dbbd685db72332a8702404cb138631fe02d479ad5c139f89", v: new $Int64(0, 315) }, { k: "6c125b00ce5a20cdaf4a5c0946f3ceedcadb42a5a329825720aa350daab4b563", v: new $Int64(0, 9572) }, { k: "6c2325b35c86d740fd6f91740ba1fa2350dbf25bfabe719a0647750e37ca2e9f", v: new $Int64(0, 6461) }, { k: "6c253e394c16e3f5b1e673c8c29124b88ef06a73a350f99ad1c6c56d31033526", v: new $Int64(0, 9027) }, { k: "6c2b21343514bf65747b704b0cb095abe3eaa120c7814c40dfbf403edf4b85cc", v: new $Int64(0, 2415) }, { k: "6c329fd6442a0f322890dc0860c5f8f52be7c5a63dbf95174b25b2562169d299", v: new $Int64(0, 5835) }, { k: "6c40627f95c0804321bff0260fe40ac7aee711d5bace280344836a48803a57fc", v: new $Int64(0, 5479) }, { k: "6c418e15fa439fab7c94d5b75415047848ecf4662fc89eecc8ed2cfe3fc86fe3", v: new $Int64(0, 2840) }, { k: "6c4eb3957befc17904b62677eacd4b1c4b54678b98e36397aa0b5d46b29b63ff", v: new $Int64(0, 7532) }, { k: "6c5e0f58cc562752393081d52a423487c8cb8d26f40138bee3e6623f35cc29e4", v: new $Int64(0, 3246) }, { k: "6c661740fe9d501464cb8c53ef878007999f6d1ccf2b3028c582e39375233754", v: new $Int64(0, 1769) }, { k: "6c68c0a62af61078a5e287db1c58920219bd996ca6cec2f94fa9f4cfca4d161e", v: new $Int64(0, 5736) }, { k: "6c6c419568a74e22f083c0daad7f2d4f12d408a1719a4824c91402782157ab3e", v: new $Int64(0, 3933) }, { k: "6c6e65e4a9be7f2e9c1e3e28403bf4fa771bab0ce2f40c94196e01352f5cf889", v: new $Int64(0, 8797) }, { k: "6c6f839448e544be1faf9162a9f6d7c1b2a66ba42c58662908cdd3db171a5d85", v: new $Int64(0, 4809) }, { k: "6c738ef811001699c419bac250a29827e1672b2bf82358bdcc680a0219e190e4", v: new $Int64(0, 9983) }, { k: "6c7a925cc734f83cc4ed3b0c2728854d6d35088d1cc47b0ea03905b68b3f6a12", v: new $Int64(0, 5560) }, { k: "6c7b5fa5cb300a1ff0824efc4e430345cca2cc4b5848f8a37ff81186a08453cb", v: new $Int64(0, 4514) }, { k: "6c7c11723edf16ec3cf93b780463255eee620b9e2409221a20343bfe14b576a3", v: new $Int64(0, 5703) }, { k: "6c820097f0eb53ed0ad8ad92a1afd35b4b3d7c56bf1a42d7c0ce606f1eb07213", v: new $Int64(0, 7438) }, { k: "6c9e0b87a99a66b8cfceea5e11caa5f9ee4202a29c42894c4e63071374dc8ca3", v: new $Int64(0, 5781) }, { k: "6ca5c0fe65f941119aa4b2d0dd2203f8140569a45e6896626bd1ec8ca042212f", v: new $Int64(0, 6496) }, { k: "6caa638a8add71eed797c2858f588f584961c8de7f8c8d8cd4034fc8b6ccaa9f", v: new $Int64(0, 1534) }, { k: "6cab85ed21e96c9e299a918f6b791bb0eab6ecafc2d6ac080938364dc2cf2dc8", v: new $Int64(0, 7326) }, { k: "6cac5167e59ae3b77f028c1806d58ac1ddb6d561c827d611fca39c3bb300cbb0", v: new $Int64(0, 4466) }, { k: "6cb4d47e4dad20c7e1fac56be6ecdd20a47c7a9c315d50fff88c74251658227e", v: new $Int64(0, 5283) }, { k: "6cbea02d1e3ed1e0fb4521d2fda79ba3cf9ca33a63dbf804005982bf1a866cd5", v: new $Int64(0, 1389) }, { k: "6cbfc64639cafef7435a1fedcdb9a7c93c3365e41718b259f75574313de137a0", v: new $Int64(0, 8261) }, { k: "6cd3a95cf945529dcc02423eb5a4e78d7bfc3aaf2d9499bba91c206417d5bebb", v: new $Int64(0, 2167) }, { k: "6cdc6510355735ee4ad82d07134a2dc5442603841d49a7ac24d261c3ba840da8", v: new $Int64(0, 7495) }, { k: "6cdc74524331982826d7e0e88a3084aaf6233542165c507eb8dc46d2ca490c43", v: new $Int64(0, 1041) }, { k: "6cdf5dc961a1ea8bfddfb0304db5fdd7f6b37c326e833c64acad5d6a1de78440", v: new $Int64(0, 7325) }, { k: "6ce32135ffbb9188686d79c38b4f4d0edd05c3f4d327124e8e772d604736ef70", v: new $Int64(0, 2862) }, { k: "6ce5d746903aecb254786349502e43612f5aecf10583941ac36ad746fd3e3d28", v: new $Int64(0, 5947) }, { k: "6ceb478df7e38574d41f7c046ba54c5198cc6b84ec1bdbb34bf59c7c8d459a15", v: new $Int64(0, 2701) }, { k: "6cf1177d96d1565807deaac0065ef659b0befd54eb819d2455a5cc9066d90701", v: new $Int64(0, 1668) }, { k: "6cf39403ddf5712090efcc25942fd7d4481734e69f7d450334ee30c78d9fcec4", v: new $Int64(0, 6793) }, { k: "6cf9c547b677b1241ee361014bf4c4c1b3fd7c5135451e36b20a8251165016c7", v: new $Int64(0, 263) }, { k: "6cfa5fb10fcbbab875ef41bdd44b5626de65d551398825ecb4330badef7ee32c", v: new $Int64(0, 7283) }, { k: "6cfaf58fa3884d3c36388bdecc0ea572c0985f96f972e61b0c1ff4bf9eef11ee", v: new $Int64(0, 7297) }, { k: "6cfbb71b6cc2f6cb3ffca5af345fb5f31a11dc6c31c39e3e3a348f97f2e2215b", v: new $Int64(0, 105) }, { k: "6d01dc507767afc167c55d26b27514081126495dba28e49e20f9e1c53e747a34", v: new $Int64(0, 2203) }, { k: "6d0aef519bf36d2f34a5c5a892160931d77ac0d052a48af0515d290e212885a7", v: new $Int64(0, 3958) }, { k: "6d0b107b64751fc1c403f17b8c14995aed90893a1aa56b9551d7c46029d4dabd", v: new $Int64(0, 7295) }, { k: "6d10f39a4a2a7b60f1330469a173e96f4f0b6aaa3594d9580307e762ae33a0ab", v: new $Int64(0, 9086) }, { k: "6d22a13c0c824d30cbc615632fe6d4ad165ebe21ddc06c1ae2bd5e5e427b022f", v: new $Int64(0, 2844) }, { k: "6d2880d6c6a24d5c7ef7720909df6ef4b5a19e82f7d183966bdc1befc6cae3d1", v: new $Int64(0, 4413) }, { k: "6d2a51b6b8bf451e2d4fc5d172708726fefb0dcc3cda7b4cb749d7a3e8578f91", v: new $Int64(0, 7869) }, { k: "6d2e1040e3250580ebb6b813139255010bcc8b5afc258dfcb0ed9322cbb5116f", v: new $Int64(0, 6308) }, { k: "6d386a715d164855b44b9b5c5fc0fe35af04e235ef2cff9d2da7269a1b237b88", v: new $Int64(0, 7993) }, { k: "6d3d6cc5d6b58decfea48acfe92da928688b2317a11f6c6133da08bac4c30175", v: new $Int64(0, 4336) }, { k: "6d44c264e18adf5bbb535a65f12655733472f62cf3fa60e8f933437db276f661", v: new $Int64(0, 4641) }, { k: "6d46a3de375ad44d9b783379a796d825a774a9d79ef90f2119b5ac35b04f8022", v: new $Int64(0, 167) }, { k: "6d4992b137c9f9fe21359abc3e7a94bc6ac7dfc7f987d59e24ca5683f3d2b79b", v: new $Int64(0, 8040) }, { k: "6d4dff71be33c18f46f011e8f01118ef62cc5d2334b867f4280a2132c9b2d125", v: new $Int64(0, 5995) }, { k: "6d53cbd058882260ba85910893501b23c71329771c583cbfe430340fd42aa5a7", v: new $Int64(0, 7769) }, { k: "6d630b041e042aa42144c21f9d495a1308e842f7cd9b701d956c11cc34971e58", v: new $Int64(0, 9565) }, { k: "6d65b7bbfa5db2a65cd4702d13367b085b7079d4a69e3d0f5f63df73a341fcc9", v: new $Int64(0, 4751) }, { k: "6d73d671f834e7763b96642794e4b70b4976c85a54717cdb886b0d649ebcb048", v: new $Int64(0, 6401) }, { k: "6d7761cfccd868a89b11fbdea57aa837b6a5ff161fe5981745d0dec6a8d758cc", v: new $Int64(0, 115) }, { k: "6d780a2baf25c6cb298e1e80ef33100e967ca812dc5ae537e95f8abf33b1301a", v: new $Int64(0, 1385) }, { k: "6d7c4f634274440a417a55a2d717ebf9ce46d40513698e7e9764fd74523140f4", v: new $Int64(0, 8891) }, { k: "6d7d1dbddd7ca9055e667aa53f25c7074515c8e6ce908d4ba440e9487e3ecbe4", v: new $Int64(0, 2692) }, { k: "6d873cff9beb5aae8e898a9a1f4f42bde6e010b5eece766bd5b6b7f59e875059", v: new $Int64(0, 5839) }, { k: "6d9ff450b770f3830795ac8975b3e60f191e30fe9f0208f32aa973a97b72436d", v: new $Int64(0, 6338) }, { k: "6da654a174bd270f737de2eea2ccd233a011c2c585ee42b8dbccf10d1da849cb", v: new $Int64(0, 7267) }, { k: "6daa0e748732075a4ab1aaedff86ec0f7837261e21b6b93524b03fdfbd647220", v: new $Int64(0, 5202) }, { k: "6daf5662a913aebcd4949a78f337b9e3af8b94850ffbfc54afb7a2560f31a673", v: new $Int64(0, 1659) }, { k: "6dc1b6c3f68d094f1f973089793c28d59edcc2b7e29a29816e71e2579fbf2f20", v: new $Int64(0, 7622) }, { k: "6dc44c71b92a404d1e275b999bc8ccad99643440b12dcc7ab82d2c60d4948d5e", v: new $Int64(0, 5666) }, { k: "6dc77f9771c314080e03328e2ee993323181a8d884c95ef4b5c85473d484bd6c", v: new $Int64(0, 3526) }, { k: "6dcbaf69fe3ee981c96837d58b62417e4a37951d7ff256a4a2311bd760256ebf", v: new $Int64(0, 3212) }, { k: "6dcde7dda55712c38ddc3537c0600c8c4fb25f1795966892233762bca3423afc", v: new $Int64(0, 9022) }, { k: "6ddcc8a72ef4f7d94a18a8e647215e49d8c8d5f66b2694201ad2e57fe8f52e85", v: new $Int64(0, 2280) }, { k: "6ddfc854b62000c1b739a90a0aaf9ce82e6e7398c814a08f61b13c79b63a6dc8", v: new $Int64(0, 7068) }, { k: "6de7638b63a28b1c99134a3c5126a8bdd53bd3021679aa5197cd67d07a26189e", v: new $Int64(0, 3462) }, { k: "6df8dfa04149859c5666dce5057daad468d8854f8b61a61ed31a0e0139a61a9a", v: new $Int64(0, 5920) }, { k: "6e06de528a412f89005c75fefb93870f339db0663851e343955e970177d60ae9", v: new $Int64(0, 1720) }, { k: "6e0e2827dbbd02895f6dc3b839e7995f579d52609a084e7f5a711ef3682bf938", v: new $Int64(0, 7354) }, { k: "6e0ed1e7e3383e9428350145e6071a0670e2d0c45a0d4693d6f8396853d920ce", v: new $Int64(0, 1655) }, { k: "6e11db3ab42ab3afb1b9b5e8cf847bac53409ab4c12d8d266733daf7897da7a2", v: new $Int64(0, 7265) }, { k: "6e129d99ca733fe899a20cc2c0571cc32300db366455349b622bf8a1eedee5b3", v: new $Int64(0, 5608) }, { k: "6e17f4b0e4bc708098299cc649eaedd5bd1702b09468cde638b6da89dd95f257", v: new $Int64(0, 6588) }, { k: "6e1e80284b8c0d3be7417b1d538c17560689bd731b8c8a16cc50df6d3ba9bfed", v: new $Int64(0, 8856) }, { k: "6e370683b646470c47205941e0a2ad56ea95544cd277ecf00deef3460da7be42", v: new $Int64(0, 53) }, { k: "6e3a98ac4bf39977c4ca05c0d23542b501c79fc30d01d90b4ec825b72b7bf531", v: new $Int64(0, 9406) }, { k: "6e3b003d112d4cb159a9c80ce028abb0e3213e78674c06f63b4845ca7b5e0e3a", v: new $Int64(0, 3686) }, { k: "6e3feb35f4e57da852422007dfb3ec00ecef4f6906278c232f61d68470b3c7c6", v: new $Int64(0, 1724) }, { k: "6e577fd6e5fc5d345aba8cf475cf5a8386aeff6817a9f3834727268c73976b7f", v: new $Int64(0, 5280) }, { k: "6e586f560a185a1134146d2c43381fdd1cb4dca7397ce189971b700d802dcf3d", v: new $Int64(0, 9267) }, { k: "6e5ba0fd23ae13f66f0cb4f994670cca626e5678e20b8d696bc56c9ea122657b", v: new $Int64(0, 5139) }, { k: "6e660f1250a66ae46f39c6436b27f947e421bb7e5c9a79bd86033c09425b0d5d", v: new $Int64(0, 769) }, { k: "6e6675e3a512d56acdcf62377bde79326891a2cf8356882c64a6a3d7bf117441", v: new $Int64(0, 7658) }, { k: "6e6e8a7fedb5b97bc961c447894d063cbacb47800ae6bdc8030a6f772f99df8c", v: new $Int64(0, 6601) }, { k: "6e814eb91d40dab0db5ba54611c48c1ba449c33da5b7aa5be3997f81339edf26", v: new $Int64(0, 3109) }, { k: "6e8abcb0aa4b96153e06b51f2c42e3b5590aac967891443ec8886193fd10b42a", v: new $Int64(0, 6258) }, { k: "6e8ba400004e49dce4427700e602637a14c6dd9e869f7235e1197aa055b754a0", v: new $Int64(0, 1964) }, { k: "6e95883151f7e1d78155ced00003ae55f7a33ae5de9e2c39889386e2102335c3", v: new $Int64(0, 1872) }, { k: "6e9f938aa5b2378b34319ec6d5e23a4200727b635de34de75ec52f92506c88d3", v: new $Int64(0, 5518) }, { k: "6ea16ea6327f8d0fcfbc7419c405d9b1410073898c198001163c83f40f234b60", v: new $Int64(0, 3237) }, { k: "6ea8e7182fc38f422d8274807c921cdf1352077dc2a830ba4d689d051ccb9a04", v: new $Int64(0, 7373) }, { k: "6eb8b5f0b8027f3945442ed5ce817f4d4aecb7462f566a344b03d395795f96ee", v: new $Int64(0, 9017) }, { k: "6eb973fb6f40a22968ebaa7b76edbe6a4b370baf8af59ec14e16f70b4bce90eb", v: new $Int64(0, 2940) }, { k: "6ec1de94d0aa64c759ad4cc1c8cd66237ef3fff88b2a59e96a6bddf501ba24ee", v: new $Int64(0, 8075) }, { k: "6ecf19e0edf5474b6f7e698977161c1342b6350bcecce34a22c94c60c40364cb", v: new $Int64(0, 1433) }, { k: "6ed6e59717ec7e4dff41b64ab48192c61687876f380959254ab3b98d1fe321d6", v: new $Int64(0, 8388) }, { k: "6ed799360bbe4664184f2f73b7973f14b4bdd4eda91b2098ecccac1ce000ff4e", v: new $Int64(0, 871) }, { k: "6ed85a7248294d67eea12df830f8035c33904489a420957a7d2add2349ec8883", v: new $Int64(0, 1695) }, { k: "6ee3e4369d806c9c3a233e85e6aa4a66f86ee1e4611e29ad334b7daafe345e0e", v: new $Int64(0, 5350) }, { k: "6eee2638fd5edf4ca784f4e6e6e84c6ed3fd750e48e86b6b7149ea3b7f932b2e", v: new $Int64(0, 7502) }, { k: "6ef16178ad69ec8d1a8861f081046fb3bb63eb14c1de33c36e092d1a983ef82e", v: new $Int64(0, 3412) }, { k: "6ef23023cb3f66ab5b102eadfe40cde28780209dd9915ae86cd8659c7bbf3e89", v: new $Int64(0, 8961) }, { k: "6ef46c8f601c12d924b019600bfd5012e6701faf3272df08bf26ff068d2ef0e0", v: new $Int64(0, 9358) }, { k: "6ef65def82a63fad0ae4d879ccff0dd34aeeb7121f57e628bd536bc3eeb13038", v: new $Int64(0, 6748) }, { k: "6efd83c4c23dfcd6487c6cc19585d84df18206054ed88a29f88ddfc8d6f15c6f", v: new $Int64(0, 3885) }, { k: "6f03fd97234be043edd072512fff5fc522d33bbf7ca58641fffbde7f26b7b49c", v: new $Int64(0, 5523) }, { k: "6f203c7397377012a77b54fdb4f7df67391a6a07ece213bf463afd1935cd18ff", v: new $Int64(0, 8784) }, { k: "6f21f7ee613220200a0e17392f39e17dea0491de197662f40a915dabb65ad589", v: new $Int64(0, 7768) }, { k: "6f3354d8e21d19ae4a7b962fd381a908301d50d711547e33dfde0be65144c967", v: new $Int64(0, 8703) }, { k: "6f3ceaa3b3736e1fb74d9ac7003db85dff23c76f33c6ff0652cf03e2e9b3c763", v: new $Int64(0, 4037) }, { k: "6f3d1ef4919bb53ac3315c6e7bd8d15c69b765fedf1e7f74e6f5ff45f93d4a5d", v: new $Int64(0, 9460) }, { k: "6f43d51460be81e82dea1188d5105579de23506745de0c4d4cefcb8860f59280", v: new $Int64(0, 6050) }, { k: "6f4874ea805398db44917674066f0abd0bf7ba6d5545a79f3a4931fa80e069ac", v: new $Int64(0, 1994) }, { k: "6f4d8b70d5e2496ec7f250d3943de102c179144977570d9a0f69d44e85e90671", v: new $Int64(0, 328) }, { k: "6f511cb3fae46792f316772154c9f4470efd73e3bdaa922f1fba42f124e685c2", v: new $Int64(0, 6311) }, { k: "6f59740488f4f273e3da2c61bbe71121eacdd1de0cdfecd0598c40fe13b6a42d", v: new $Int64(0, 7906) }, { k: "6f5a3fde5da85a5087d61c2dba371446038ef076740b42e816c9f07012ac1282", v: new $Int64(0, 9308) }, { k: "6f6e837bc00a85bfca24a5bebaf9820dee01f266a15164d44ae1b7a9909c01ea", v: new $Int64(0, 5237) }, { k: "6f6f01a101865126132c32fea31a7ff370d92dba43f01dd266c9d93ef73bbe6e", v: new $Int64(0, 5413) }, { k: "6f75aabc3590c5b153839887f3d5b6daf2c3d19b7a36bebe0dc9735c46d58cc9", v: new $Int64(0, 4674) }, { k: "6f80396509f12a77589982aaee0459586fcdc7256f3f5b5b1d297ce4da1fad89", v: new $Int64(0, 1423) }, { k: "6f83a6d6d1bbd5c852c1431fb76167b5435bcde094756298dba350f0f683529d", v: new $Int64(0, 6695) }, { k: "6f868cc1f56bf8ae28314bf7d6f5465f65cec532d93478fa5a07e7eb4333f134", v: new $Int64(0, 3119) }, { k: "6f9a1d7505427e690efd11ad090a0f4ae377bfa345b6cb58e25029faad8c8229", v: new $Int64(0, 142) }, { k: "6fa08ee2b502c4d96cf6bc0d0df62a3ef525623bdc8eb095a5c4d9894cc13f43", v: new $Int64(0, 5506) }, { k: "6fa77afb497eaccba4776a22799beb5feb9bb1aa60a84c75fdce7d3ddc4cb9b1", v: new $Int64(0, 2189) }, { k: "6fa8b44b305e02c10e18e72d2ba50626fa250d71b5253dd14f62ad3877438e8b", v: new $Int64(0, 5166) }, { k: "6faa20010a9a3ec72304b1ac69f9e2045d1eb301c8883642e1cd35863a9f9279", v: new $Int64(0, 5382) }, { k: "6fb34d0b76fba974ca97293774721c627e46445df96d35356e75603198628eff", v: new $Int64(0, 155) }, { k: "6fc042084c1e6030527a84706b54d967aa42a951be31e0e7f0851fca93ce5711", v: new $Int64(0, 1883) }, { k: "6fc431fd0bc61866d66b2a1e60077335e35f3b8207c5a24d9a9c100af42278c8", v: new $Int64(0, 6721) }, { k: "6fdb8b0288f58511eae60546788fc07443373e1e3759e8e057c1e0e4c247ed3f", v: new $Int64(0, 9769) }, { k: "6fe31130c7d07c72f1523a0a265bb83b0a58c1366885455835b685a2518add64", v: new $Int64(0, 6294) }, { k: "6fe6a0fefa17ad50f9877a9480ad4348b2a57c1003608b062b19d4c5fdd74644", v: new $Int64(0, 3454) }, { k: "6fe85a0340bc5b4c1f21b55cf859de805a7b0fb2ed468e0e584058dcf361dc81", v: new $Int64(0, 1892) }, { k: "6ff76111409e4a06ade6a7df8adb7fe66bfd8936c2b8c34feece06fe56e30686", v: new $Int64(0, 3159) }, { k: "6ff77c6cbd2a87b68b247f23a21700f925279189b6222b7e8c6b6b263117ec91", v: new $Int64(0, 3139) }, { k: "6fff443be35d5dec4d283711c8c4760651b5273b6f49a60ae3e7951774390489", v: new $Int64(0, 9435) }, { k: "70041139321e0d224179dd6be9d2285e69ead46b059f9a80a7f395b1c8c1315b", v: new $Int64(0, 9111) }, { k: "701cf377598de6e1cab146b2f8d6cd6f7e80484a30d38c55c6c9f6887b72da4a", v: new $Int64(0, 1780) }, { k: "701e471839376794a6e5f8a1ac4e15bb889542eece4fd0938ca34689388c51c6", v: new $Int64(0, 656) }, { k: "70279cce762ba5c7b83efa9f2b45f69124b87fd7eeecfc648d432af5b666f132", v: new $Int64(0, 821) }, { k: "7028954c55798674df70dc8c2bbde366c60367cf272ae1c9f4be9aff87fc109e", v: new $Int64(0, 9813) }, { k: "7029d464d0d18ed4be817b247f819073ff93f65c96fc98f201af4fa33514d580", v: new $Int64(0, 7168) }, { k: "702bb59766b986d8ddc67642da966cb033ee071ffdc107958bc663c40c2cf7c8", v: new $Int64(0, 4188) }, { k: "7034eec0a7e41f384867319c15d269f64a64ad1648e216f294207941a337f467", v: new $Int64(0, 3798) }, { k: "7054c0cd2dcbb3f6138f3763f4ac2f80efcb3d25405de4a25565bbf1c27dee39", v: new $Int64(0, 9945) }, { k: "7056c919b972f0a1abdb16713444ab71d0bf7e7b9c3bcc40a063bb0b99969429", v: new $Int64(0, 7381) }, { k: "705b27596adde3f0fd2c8c8a957863e98432c533e5b174d48a736bc6e20baa7d", v: new $Int64(0, 627) }, { k: "705d251b03fd52c2892804590bd4e58f31c37b1603430b6df2d980f876bde579", v: new $Int64(0, 2383) }, { k: "706a4e85abb1d9ee32ea2ffcb1a3a5f9acde4c8a0b2e7eac629a4d6659a63394", v: new $Int64(0, 5471) }, { k: "70712a78685ca3cf5798cf7666210debb8c4132debe32bf652af7c20c9d971ed", v: new $Int64(0, 1904) }, { k: "7082d4dafacb905c8d331ec0229fe3f2f2c0a851d143361e5ec2d6b86a23979a", v: new $Int64(0, 9950) }, { k: "708a6af07df0fa788b620ab67381bef3f76b8bb007fa8e2980586b994b7c685b", v: new $Int64(0, 8195) }, { k: "708e64921b82c83ef199a8baafe7b326dac8b0b4adc14e891934c3dccdc9c052", v: new $Int64(0, 4869) }, { k: "70a3d3ace93860a12756e47d5951baf2a9217c9ab41ec75a72863e221e0b274e", v: new $Int64(0, 6761) }, { k: "70a3fd85636707efd4a4d64c635fa47dd9d96b7360bf78a740987c2ca201bbc8", v: new $Int64(0, 2495) }, { k: "70a9ea41348db22983148146ad22e3d947dff5d26cd2aff0b2f71e7efba81a4d", v: new $Int64(0, 5970) }, { k: "70b5e6e0fca4cd35692f0617056edc61e6b95914ce2bc367a34634e304b53651", v: new $Int64(0, 5653) }, { k: "70b6b589f91a91959890ac4c6c4e3042531754f93f067ba64155dd163398d02e", v: new $Int64(0, 1036) }, { k: "70b74f9408056bcfb26b9f4588187f3e3ade9b984ede8add06ed1bd29d020c3c", v: new $Int64(0, 8696) }, { k: "70ba22c717d039c211b5076c17d431b1c5232138cd0c69f9d1cb6635a49a94f3", v: new $Int64(0, 1955) }, { k: "70bdef4aeb4d88a8613caa8b8c6dd2ff2338bdd1c10cce855183099a5b8b930a", v: new $Int64(0, 1307) }, { k: "70befef81d56abb5ac88b24a36e4a14c02cd63d29469f99a21904f6944080985", v: new $Int64(0, 4633) }, { k: "70c0ec74d8819b542a87f58e4550d0a3ef80984bbd43c4e6096f57351d183acf", v: new $Int64(0, 3485) }, { k: "70c7e504569bc2a6ecf749e11f0f49b34287ddf93e722fb33f031058dd7ba333", v: new $Int64(0, 9401) }, { k: "70c88c1f00867f77da00528a17cc77bbfaf0afa97eb03351059042348779fb1e", v: new $Int64(0, 5498) }, { k: "70c92bf644f0eb9f8baf0483e5e4a5d054149cfe49453e6a694b471413c0fa89", v: new $Int64(0, 6460) }, { k: "70d8ad349a15b6e27c96283d54becce48aaa454075a53c41200b89e25159c499", v: new $Int64(0, 1475) }, { k: "70e3828297caba3e7b43dfbb6af0c79714c5da91260e2bf45bf3b96417ea8e63", v: new $Int64(0, 616) }, { k: "70e7b7889020f64bf66215b88b2b2a94a8ed48d8f5c9a4eec0dafe4b3c230d5c", v: new $Int64(0, 4562) }, { k: "70ea4867cd964ab56ff0ec2c7e8c0272f37344681f573eed5cece3778c1e8137", v: new $Int64(0, 8507) }, { k: "70eb006fd5d09da219eb7a6bd1a5178e96f1829c4ba3553232e8446e69fa458d", v: new $Int64(0, 3542) }, { k: "70f66d7c57a4af60690037b326805200fe52affab318c19c192a19761eb27504", v: new $Int64(0, 1989) }, { k: "70f7d08cd94108d32957aae594422c92cad68e98ea78396714a6efc61b5dec6e", v: new $Int64(0, 4495) }, { k: "7100811f3063342ba58a2c9e84c26da2c86d0fc69204ea67fbe7cc4b3a7f778c", v: new $Int64(0, 9496) }, { k: "7107ae13ad1e945fd810090b8af5eb5ef476004b5972def526a6ed5450811d91", v: new $Int64(0, 5339) }, { k: "7109995c746b71040d54d81a314943e934617fa5ed304f0853a3704d79969dd6", v: new $Int64(0, 1598) }, { k: "710a6588e4fac927edaa55816f4b230125294fb785142ed7648185eea9b5a872", v: new $Int64(0, 4273) }, { k: "711bb5b18bc30c0e76e32d76706277e2c9ef44b9335d9996c94dada0ef7d598b", v: new $Int64(0, 939) }, { k: "711c203099659e55127ad0b80da61aeeef9dab090937da73fa95ff121865e142", v: new $Int64(0, 9682) }, { k: "712889851ae266657db3d90c69c2bc33fca0c18339d50511da89c7205466bcd4", v: new $Int64(0, 33) }, { k: "71316faffecb312ff638b7b219994bcb01318532257d00204bf82a1bf904925c", v: new $Int64(0, 1168) }, { k: "713475fb7c4766b16b99213649f8cea57983dc986fb5e4c6608b5d6a5f194acf", v: new $Int64(0, 532) }, { k: "713af7cea121eabd10f2fa739d3b6f461a7aeb788004831d445f3fdce2db625c", v: new $Int64(0, 9505) }, { k: "716645a69ecc99c024e99707905e9bc7cb5eea873ef588ae1426f31202e8bf16", v: new $Int64(0, 7793) }, { k: "716909c211ff4385ea465a7361f4e4869873e3e2b2339b94bd1f7a027b2bfa65", v: new $Int64(0, 2173) }, { k: "716d1065a71dece79c2a695190bc071df016fdfd605931712293f89f5f943134", v: new $Int64(0, 3803) }, { k: "716d800372ff8feb625fa0b6ea689777b2b994d4cac243dfbf1314cb03b24d5a", v: new $Int64(0, 9304) }, { k: "7173ce9373c4fb92b74f152fe6d2a148d5c2cbf72fd107d79a3787796b1b9e32", v: new $Int64(0, 3849) }, { k: "717530611291a827bc746297f4b18925a9d166800804e483fbbe241d39560528", v: new $Int64(0, 3941) }, { k: "717ecec253f40d7a341c664b319d3d77c1a466accb4c95a61052586aefcaa7b4", v: new $Int64(0, 4891) }, { k: "717f8224861cea5257d2e9399f0f1b79a694b2a15fa9fd0d7974634824578ef3", v: new $Int64(0, 4710) }, { k: "718609527dc9526cda791ad8709ae9d7f0acd13ab9d6c20f52b5934afbde0f5b", v: new $Int64(0, 2551) }, { k: "71886371e6758dc387e67bff32c2ebf811c944cd590ed9f039197d1a925f1f81", v: new $Int64(0, 8145) }, { k: "718c6b7111066caede2d8fd0e87d8a8c86be8e50d690c20ea619c106a1c15bdb", v: new $Int64(0, 2093) }, { k: "7194617b7e03c6c636873596401870020668e399685f67ec67cd50ba3266b46c", v: new $Int64(0, 856) }, { k: "71a0a2704acdca0ce6fe2bf0829e844df8c32bbc37f25a4135c8422f905d4c36", v: new $Int64(0, 1675) }, { k: "71a1bf393f19b5fc794fde7f842d52c2990b42bcef039e9f0464476965595f8e", v: new $Int64(0, 4221) }, { k: "71a2ecd8f335708a71cac0a8a5423bf8b396266886a1ac8e59ae007af60fe05c", v: new $Int64(0, 6511) }, { k: "71aea0353a97f7fe6cbb2f6e99a8b052143d1f61453ce8c45863b9a09fbb2918", v: new $Int64(0, 8745) }, { k: "71b18a05feaa25ea7cb12cf6754232dd161f8ced19395078109e51fa58c4aed2", v: new $Int64(0, 8532) }, { k: "71bffb10ba4ed468c6583565ed751fc4a4fd50896a212dc91e5735a80ecfe128", v: new $Int64(0, 505) }, { k: "71c1e9d0c91c01e657a2c0a34b368ef13ca696c12806764543eb9d0facd9ae55", v: new $Int64(0, 5256) }, { k: "71cd35a06d974992600395aac2135c7c8645938f921dfbd443511f2b65d08096", v: new $Int64(0, 4764) }, { k: "71cfcf87a42327332d35232247c1bafeab2810feffa068ea040ed681d04aaaa4", v: new $Int64(0, 7480) }, { k: "71d0312a7942bc7a2889a2bded69bc757ea3c3bb90b39aa1b52a185b967573e2", v: new $Int64(0, 8530) }, { k: "71d0a386a1d132944d676c6d2e119b0dbc0da0f653ac168bc8fe74601f4ebcd6", v: new $Int64(0, 9131) }, { k: "71d214abd7f2b63c9ac2fed9da6f1bc8333d015d16dfee7c65aebc374df1b390", v: new $Int64(0, 8975) }, { k: "71d3344b4bf393de0efb2820d3b1183492f32ce1f6bc5946802290aab4113256", v: new $Int64(0, 685) }, { k: "71d67795b4bf4d750c0181de9b22154abbbe83abfe519215d567b10415b44318", v: new $Int64(0, 4855) }, { k: "71e2dc724704cbe8dfbe12655e0c55739d5dc378eb831e1f3c1d5470ec52fc23", v: new $Int64(0, 834) }, { k: "71ec58edf0e4ea152741a5794026c9242223046b38dd11aad83b56ed70808cb1", v: new $Int64(0, 8339) }, { k: "71ee9323ddf75b0625848f0750130ab056034bc0f6843d91005dc892fd7ed50a", v: new $Int64(0, 2132) }, { k: "71fcd8c4bc8d8dfd9468ca22cdc3930f6247f14087a12384d48278f36d9c02b3", v: new $Int64(0, 7323) }, { k: "71fdb9069f40efb573bd0954ac18528dedacd0a96a5efed215ad6e0db6a7a721", v: new $Int64(0, 7455) }, { k: "72098b3a78acb7f635e8eaed8ab728de2da16a93d96844890e1c94dd6993bc4d", v: new $Int64(0, 5538) }, { k: "720be871d9ea50c7b77f3dea1d124f1724ad070948f4092457ee1705f7c52dd1", v: new $Int64(0, 6331) }, { k: "720ddc73f7908dd0cd5e40f6367c9da949578a82020488b7d03ae47985f2083f", v: new $Int64(0, 5694) }, { k: "72115d3952aceee4c9aa595cabc3edbf63c62acaaa9b5b2e89c03683ece903c7", v: new $Int64(0, 4579) }, { k: "721bfa21f423de5f5133a2e0af9d0b6f01012e7b9b22eb6349243625796ae4a5", v: new $Int64(0, 3020) }, { k: "7229db16be87eccfbcc7f6afa6854baa25078e30aeb20e0d5bb0bf0b7d0f73a9", v: new $Int64(0, 9956) }, { k: "7239b0eee18f1538b148f670b84d00a807130b202e872c07f81ac2fc53a4fb3f", v: new $Int64(0, 4925) }, { k: "723b4d5b6f007688abc9f7dc4ff7f39fd7351aa44b36a41bf43abe58a2802850", v: new $Int64(0, 9455) }, { k: "72453ee0512a734a97e72b3fe73eb39920aaa5625667234baeeb9dcca9ec92ff", v: new $Int64(0, 2441) }, { k: "724c22c5e678601e4da83a55d8a4b0122410927d62ec9820024063a08c98552c", v: new $Int64(0, 6785) }, { k: "72609e659482b617756ec0d5e290187b4ed2ad0e55399226992fe509ae0e43f3", v: new $Int64(0, 4508) }, { k: "72644d9516c3218ce7818ad7120a85709bbf2097f6b09c63016a447d42e3dc74", v: new $Int64(0, 5462) }, { k: "726a71f8daecae71644342c8a76f44606104d056e207928d5d4c2c0b288b7ed4", v: new $Int64(0, 7920) }, { k: "726f509038d433af1c4cff9d736290be1b227649101bf1d2443130406ea051b6", v: new $Int64(0, 7709) }, { k: "726f8c1f7542181348b295b73b9a83daa106ca7f62cbbc5588c99ac4f1d452b5", v: new $Int64(0, 1346) }, { k: "728a4ff50bcf7f0d4cc6799a28b0f66be5470de036905c920fa4e5e42d18e164", v: new $Int64(0, 3240) }, { k: "728dcc519f1cda35a14a7cad64ad54443d817a460c736a08b329b69972d3d6e3", v: new $Int64(0, 9418) }, { k: "72916ae91faea28f65b1319a5cef04aa9161e48065a97e6196e745d76dfd5e64", v: new $Int64(0, 7961) }, { k: "72a2b2395f5bdd3381230e6bd7a8ccef9a76e2ef880390c3f1d4b89587390b18", v: new $Int64(0, 9214) }, { k: "72aa3e7892b8f1cc027c50bff37646b4358d756310a358f4b04c39ae582c72fe", v: new $Int64(0, 1770) }, { k: "72ccd05e6b223803de379187193ac04c1fe2e3454cc71ffea9435d00d3b36b5b", v: new $Int64(0, 5417) }, { k: "72ce4d7e9783c053bf4f895910fdd727ee48498081a7de7ea553110c43bed2d5", v: new $Int64(0, 3600) }, { k: "72d1178876fc4b6fbc3d041ebf6b42d312647ce3d9d67a5be07858a8b7ff207f", v: new $Int64(0, 4088) }, { k: "72d22a26e1c83f8ede34dd04e0fe7d64f2434efc1749c4bc5c7072a418d8d7e8", v: new $Int64(0, 5642) }, { k: "72d2a051956ee43163face5d25e54ac5c52b289800243a1980d2c95466518018", v: new $Int64(0, 2563) }, { k: "72d6a4dd6c12a57cce17f70fb15e8042388369144ae94fd302e05b3627003597", v: new $Int64(0, 7688) }, { k: "72d782416d7771494f2699a319fd3401ff76ef37319d5b4d735c8ccebaf220de", v: new $Int64(0, 9417) }, { k: "72dae121f70fe0158830212dbff90e2cbab730812f1f38e755b4a8fa49b0a97e", v: new $Int64(0, 4478) }, { k: "72e665482d88dbe7f83f8496df80c4110831d9d2e0ae781884ad60f740db4b6b", v: new $Int64(0, 1166) }, { k: "72f1a86ef9d933dc1376271073c8d5aef8d284714c0a1f6a2f541a195c08fb05", v: new $Int64(0, 2875) }, { k: "72fd15fc85b4d4ec8ec527b087d93fa7e4aa89ab6258e8822b861132a9f97883", v: new $Int64(0, 4254) }, { k: "72fe9ce5e0c2724cac1f76e6879ee79cdddd546714be9f64f27c424b08f214c1", v: new $Int64(0, 610) }, { k: "7304d70408fd3b7430e37c5dfc4f0cabc5070c17ec56e17cd57debe8373036ac", v: new $Int64(0, 577) }, { k: "730cc4700cf1ef22e792db9d5a4b8823394147be2fec811e3446f4342c55f5f2", v: new $Int64(0, 4429) }, { k: "730e1ac95bbf369792650e774a16d73d2a55301435d55ea0f6525a4fe27e276a", v: new $Int64(0, 3515) }, { k: "7310149e455f337834e0e539b5f165788f53129e0690156ce2224575a25b124c", v: new $Int64(0, 5394) }, { k: "731633311a01e9759499e1e3477e553a8768c180d5ce8988db148cdcd048bd45", v: new $Int64(0, 6887) }, { k: "731e087905fb8e4423975cc34375976241f1f742c3fa935a4ce37603c66b66f1", v: new $Int64(0, 3224) }, { k: "7325b8a62d746b442a901fdfee619f513d29d68673880bea7b7ecf568ca2af13", v: new $Int64(0, 7079) }, { k: "732fb101921e983e13577c18878322f6f2208fc3c56e6f708158b5c4582a5807", v: new $Int64(0, 8782) }, { k: "733665132d4f98d17c5817aa26aa7ce7ec7c960ec1f013da110bfd5c2bbbb1f3", v: new $Int64(0, 3396) }, { k: "733daafddbdc84c203074657f1ba21f35b5e130285947cf8caacac3d3f73b032", v: new $Int64(0, 2896) }, { k: "7346dd62b5c36a52b44b4d04e05972d3c4e9a05e51830ff479530e30e4e94a8d", v: new $Int64(0, 7674) }, { k: "73472901407225b0d33213ae2c14b1b0e6a684e1426237ce23630fe98f3c2abe", v: new $Int64(0, 9486) }, { k: "73484c5b9134907e64496869ada3cae9cd430047caf02e26e1a8e0fa1524cf18", v: new $Int64(0, 7887) }, { k: "73490c33fa609db6b864e1adab2dc7e9c5df7f8cbda06bc3e598dbc56f50c4be", v: new $Int64(0, 3032) }, { k: "734b70d7f3a91246c1196ab46b9d0bd29a7b113cffc15197af5ffa56ffe9e43f", v: new $Int64(0, 7474) }, { k: "7356033db4667dfefe7ea3ebfb06e55770e3dedee6f08fd5c5d2cdae15539894", v: new $Int64(0, 4355) }, { k: "735a83ea8d76c82f479f366c0a51eab2ef21395047b08d8a7b4c40463c1e65b6", v: new $Int64(0, 9605) }, { k: "735ad88176345800c38b97f334249df0846613b104c39fe387c3f28ca74e8e0e", v: new $Int64(0, 2249) }, { k: "735fae7a14b2680bf03ed89acdfd67fab11882d84f6f400027f2950c04eea6b5", v: new $Int64(0, 4998) }, { k: "7364fb67b4b760499cc205e920cd581cae02fde0428b7a4ca994f3e6ba2abd86", v: new $Int64(0, 7664) }, { k: "737ac76ef667ab75d136207fe62f0c91fd9308a0034bcab3db9691bf57c2ea00", v: new $Int64(0, 4919) }, { k: "737e01c64d5abcd7340b91f72dfcd4f04c491ba38ead46597ad878b0840914bf", v: new $Int64(0, 5342) }, { k: "7385e15bf074a3b67c5a02ceda210d10a374a2405568216bd7a242f29c263cc8", v: new $Int64(0, 9615) }, { k: "739dc423e6af43d18c7314e7784519d436cd595282c821ee127d1144f00b251b", v: new $Int64(0, 8976) }, { k: "73a525d8395c248df1ce1f006b6d08ac02e1a4cbb966ae89311fdc232320e572", v: new $Int64(0, 6812) }, { k: "73a758c274f6ffb80f18ba3c8f312026a2498ba91f2b0b3dc56894acc5ba8471", v: new $Int64(0, 1703) }, { k: "73aacd62ef224dafe2915871e61391326858e13552417436acf5b966278c0ef7", v: new $Int64(0, 2849) }, { k: "73b64de0882d64574be9ace2c4cb62b802a63bf59759bbd9749670f28476d3cb", v: new $Int64(0, 1484) }, { k: "73b7d6add8265949d9e3042cc177be60ab33710217eecabe7411177635d0748c", v: new $Int64(0, 5289) }, { k: "73ba7316846721329eb375519d0e48bdcfc6bf5d7130ee78526637de453aa30a", v: new $Int64(0, 866) }, { k: "73bae466b4e0cac2242d098f1f805fcb0f59a198a55c521ee86f40a40eb4aa50", v: new $Int64(0, 7231) }, { k: "73c2a289c22632d3bbd156258036ac1295189897d527fb1a97ba6342e0029bd4", v: new $Int64(0, 8270) }, { k: "73e0f7f331d9929759e0f63411c9df31e9b6af736227a415c3e2d6f7138141d1", v: new $Int64(0, 6151) }, { k: "73e18ebbc632dfefda4b81bb90b00d2abab1492fcda301474e60d220f42e4c50", v: new $Int64(0, 6696) }, { k: "73e1b9e9d6555e4c6856a44fd06c3e84ccb9267a7c6fb0f23571d899356ce0fd", v: new $Int64(0, 110) }, { k: "73ea34fb4e4e55fcc02e4de4ecdaa47e51ed97068fe7481610731baef29ed7d2", v: new $Int64(0, 2781) }, { k: "73ec86bf36356d1c3579ce11ea15d0cfcb09b373ac0f24b385304e50d80f9df3", v: new $Int64(0, 6829) }, { k: "73eca919309173ead1d2bd50b719fc5017ce9d15b65605c9b04f36a0f1e39865", v: new $Int64(0, 5590) }, { k: "73eea53e8f877e04fcc0421abb8c6484e26fe7b8b21fa380bbb6ad5630cf6745", v: new $Int64(0, 2170) }, { k: "73eef4be2862edfa709bee7ce63a7b918297fefedaae3c8678b36a8c4c4ca249", v: new $Int64(0, 8756) }, { k: "73f4096df6fbc7e6cd0a02ae08705a50bc6e5ec68a9300005b28d07fa8dd24d1", v: new $Int64(0, 8438) }, { k: "7409b9d4b947ca4bef09716dcd150a2c62b60c6ff60f99fc5f224416bb84b9f2", v: new $Int64(0, 983) }, { k: "740d36c3336aff6d575039b22ccc661395526c530aa850207c668e44e1581315", v: new $Int64(0, 2651) }, { k: "740df55eb9f30518f246fa0ac7085be6fc3c7e8f94ba2f95ceea900a74b83cc6", v: new $Int64(0, 7889) }, { k: "74119a111aaa8efe5e4860e316336334de0917ea356300986aaf6de9d7c8c1b6", v: new $Int64(0, 1776) }, { k: "74161fd69b736706d462c357c6a97d3560c6456858c4a3a27b1e2baa1dce7977", v: new $Int64(0, 4301) }, { k: "7420e3fc71c09d5f62cf7e90596ffb68e5a0ab0fa0a8c3b99aab6ce06ae0e54a", v: new $Int64(0, 4337) }, { k: "742346b89b5ebc11ecd765ce5dba07331e48188f0263e4d76773291ebaf8ca31", v: new $Int64(0, 4824) }, { k: "7429e9984a7e656b0dfb66600a4b74b5e93df2b7d05d595ae00e3c33924e3c56", v: new $Int64(0, 5234) }, { k: "743003e931d91c05cb254314d51f18cdb85dc81e73603f195ae7ac6b33b4335d", v: new $Int64(0, 8862) }, { k: "7433b1a3f5dce7c5e4f18b91f239ce23b131d6a8d540e6958ebdff3ca5b14ea0", v: new $Int64(0, 666) }, { k: "7436629c8ef5be9fac1f327f5734e300222b1434289e502e603a505c163b0ddf", v: new $Int64(0, 4812) }, { k: "7437e4bf39ba153028a8a90ee4eb5c5b851635a6cee36beec4e88dac3cf89924", v: new $Int64(0, 4732) }, { k: "744965b4bf898932c6193ecc809ec440b7f4a75630d7bfa74a20bbf7041fca57", v: new $Int64(0, 7435) }, { k: "744d11d79b9734f4c7546cd80ca9d8d83806f87122e6988fe92f73500364179d", v: new $Int64(0, 1679) }, { k: "74624d6d59e70c75432ae0786f37e8253e6387969d9a3b5cccd13bdee651911e", v: new $Int64(0, 5184) }, { k: "74680f26913e9f2b11ba98e6fb3e5085b0d423ae1f28098e0490479bebecea59", v: new $Int64(0, 446) }, { k: "74727f5d31eee801ff592822c0ae9283d2a5c8d6e53e90d0d25d88f5a63c166a", v: new $Int64(0, 1017) }, { k: "7473ebaed086b38ef78cc420a7188a320c6045d7fef2a74b323dcdc48624c714", v: new $Int64(0, 5368) }, { k: "7476396ec29698d72addb0e35ac14e622a094399d35c73909cdb7a10ce9fb5cc", v: new $Int64(0, 3301) }, { k: "7477af4ca371882cda52e7f14710531606d09ec09c44dec4e17462539e8b08be", v: new $Int64(0, 8932) }, { k: "747842c872b418a74ff46f4546a7b43790aa439e697217f20392730e3c74e9f4", v: new $Int64(0, 2886) }, { k: "7479fd9e33af71bb32dbfa6cbc6a516c0e67dda736a2b02c673c696e3509aef7", v: new $Int64(0, 3846) }, { k: "7481e2b63cb230906ef75c261a11cd702a003d9099f10b3def7c6c9bec37edf3", v: new $Int64(0, 2371) }, { k: "748981acfcc51f3b7d4f5870712e4f2100559142a2140bb6125934632c47334d", v: new $Int64(0, 4501) }, { k: "748a965458cec343e9451bb871eff0935b2a9839bbe36526d71c7c5903b98034", v: new $Int64(0, 2979) }, { k: "74a2aed42bf9c03aa714eace3b307403de7862e47de29562b9ae5215742b48c0", v: new $Int64(0, 877) }, { k: "74a658a270826493658892244168ef53227fe1d69e35ced66780cc86bab267f0", v: new $Int64(0, 7575) }, { k: "74b32f6a59c7075ecaa0bedc623543796ece6d92f2122e433b0e7942520b5b98", v: new $Int64(0, 1405) }, { k: "74b746644444130ffeab342ba72c663d8e371c3167c147aa01209a706bfce335", v: new $Int64(0, 7018) }, { k: "74bc9f3d8dae975ec8af7563f96c177fa7c15843a7e7e223ed27f19817d3d70c", v: new $Int64(0, 9666) }, { k: "74bceba689a163d7bbd90ae0e174a781e2eefb3123629b7037c62f1668e44f16", v: new $Int64(0, 9513) }, { k: "74beb7adb9fd45af8bf279436bbdf0228c5ef031e445d9f8b70be09f97a8c2b7", v: new $Int64(0, 8710) }, { k: "74bfd2355eea85bb6bdd29e1913cdcdeb865047818247b1d0f47ff23f338254e", v: new $Int64(0, 8251) }, { k: "74c1b10aca3a9ec5dc69940beff6ab6cb655b0892f8e5d120f1c07d54dea7806", v: new $Int64(0, 2941) }, { k: "74c383411c82e572bd689bc6c5fa0038f3cc7381b5ba448fb2551fbc9afe3585", v: new $Int64(0, 8942) }, { k: "74cb03b733f31c49fa11328e423b6b3b8594e2631dbeabda06b6ed82e0e1ef1a", v: new $Int64(0, 4006) }, { k: "74cb8665d33728d68e6cccd24585e6ae2d9c8717871ca2fddf9a799ef0923791", v: new $Int64(0, 6385) }, { k: "74d356382436077e6b426a258632ba32eb428e33781eaf33e3583ab73b4bd617", v: new $Int64(0, 4299) }, { k: "74d4ba2cf0fc348c648b4175f866642ec0ba75414b1a26d58275d4cd0b68baa4", v: new $Int64(0, 1044) }, { k: "74dd48e1a9111ba1d9ade5f91af8c04b04c4336c5635693a0365e8f004045d0c", v: new $Int64(0, 7139) }, { k: "74de76635ce72692ed484ffd2f4fde413198d9f3030a094dcbd3546944c5dd36", v: new $Int64(0, 3362) }, { k: "74e50d77237cb7f06528b0381c6f84e776e86da3f5930c86313794d6f24a3ba8", v: new $Int64(0, 1261) }, { k: "74e70a0d3059021afbde1f9e21e0918b2a0790ac8b81f11cc1e1efd2790e28ef", v: new $Int64(0, 2713) }, { k: "74eae2e63566ccb37c09c4fb0cf7ff72f55938f5ed66aab5085ad7487e04e13e", v: new $Int64(0, 1738) }, { k: "74ecc1b28cbee065fadda8f295b5f59475d7481b39fc7415d2aa07a201866738", v: new $Int64(0, 8389) }, { k: "74efb19512b58000244674bce8ca4dd6a7b8d9355b23d200ddc591624a65e6df", v: new $Int64(0, 2375) }, { k: "74f0c449095c4f636ed2fd5754cc5025a0c77eb038ff790dd097c54389a78fc4", v: new $Int64(0, 5720) }, { k: "74f490f30dd630a50892b54ca0f02fc9250ea3cdc59f4455d833bfd022e9dc87", v: new $Int64(0, 1426) }, { k: "74f728c658da5e1437170c597fbb1112ef16ccb48b27ace15a146b2c67fed59a", v: new $Int64(0, 7517) }, { k: "74f9ed28ebb0b05b5a7650bebe709535cbf4a4ae1361e228b9aa1d1c91ec8f54", v: new $Int64(0, 4412) }, { k: "74fb1238401ab26dbe1a880e28bf218b7348a713ba6a8dd012f8ac30a304d740", v: new $Int64(0, 3990) }, { k: "7500a1c90266776888a6daced0dfd9abd30cb2d3b4c45401f3f1d8a00ec687d7", v: new $Int64(0, 8637) }, { k: "75026dae8f8a00b066da1c471a35c9bab4c7ebbcc7fc7eaf897ab2c6b22685bb", v: new $Int64(0, 4967) }, { k: "75031e03857771c9a28c855818683ffdf7255361b46c885a4b22687a7cad1d11", v: new $Int64(0, 996) }, { k: "7505a42fe8edfabdc60272fbf29bb573e3e1430ea759db4460e651ee837c6c26", v: new $Int64(0, 3125) }, { k: "75065966b910382f203d662a675cd12285eddf3a902bfbd4badc13cf65728c5a", v: new $Int64(0, 591) }, { k: "7508cc838db0e074b80d29c92f3d7e108190b26880cea51d07abdf6e39327fe5", v: new $Int64(0, 9448) }, { k: "7513faefa6261f1460aa2d629c9fabb21b72496a48d1c0a99ef4328fd540d93a", v: new $Int64(0, 6537) }, { k: "75155f9802e20e7cbf46733a3702b3e38dfd61e7e1ed85a4826c13168c5a0ec2", v: new $Int64(0, 2702) }, { k: "75188e871f220b783ba828c68c0e14fc7266baae3d7334277597eed39bc15ed5", v: new $Int64(0, 3845) }, { k: "752bbffd6bbf334e18b1d212138612c66f180845492393a9860a27539140e43b", v: new $Int64(0, 7740) }, { k: "752d95eae7cb8cab3bc1a41b1abfd5938e26e27f53b2f1d99c7fd51a0d415a8b", v: new $Int64(0, 7854) }, { k: "752eb10e879ec768bec4da049af2813b56f36f7e99d8c5f469e2ce46842d7bff", v: new $Int64(0, 534) }, { k: "753a788751c56a3fa2c2a44a890c4bc627760640fa7efa8c663ad60573612522", v: new $Int64(0, 1062) }, { k: "7553bd6a3aadb050264a8e8ccd5d348aeaa7ab3c30b42496edba1744e766701a", v: new $Int64(0, 619) }, { k: "755828dd4f18e77262186ca629d7820e3bb0bc3e9913a74d8c76d2b75179a061", v: new $Int64(0, 5080) }, { k: "7561b1688d0bc277fbdf492571e8d1ed237b357a8db32a7c59c3a0abecab5596", v: new $Int64(0, 1176) }, { k: "75660316b530dce7193e418c0e38fde4ea1cc27c52f6816b7025dae099174694", v: new $Int64(0, 902) }, { k: "756eab6f9044d631d2d41ccd08e22a810e0e311f82e6b647288c305915706902", v: new $Int64(0, 9610) }, { k: "75725ad980ce7efc43e0b91692291682ec549b6221b36b6d578a013db28c7b70", v: new $Int64(0, 132) }, { k: "757b9239193508c88a899e46ce85ccc22dc1489d97abb6f1776027918b68daed", v: new $Int64(0, 7557) }, { k: "75931ff8879b4b738f28102c016ea147d7d12fddb079a13966298f9abd94d9b3", v: new $Int64(0, 8398) }, { k: "75a0521dfabb0ff91e96f0cb972a84fa7e13fdcfaa49031dcd1db8146ba554e2", v: new $Int64(0, 3251) }, { k: "75a39e3fb7b1ac307a1318788738057aa9ad0cc265ad9296f683524468e78106", v: new $Int64(0, 3575) }, { k: "75a697979fab87098cc3cf47963658c5f6ccdaea95b982509c915d710c1aeacd", v: new $Int64(0, 764) }, { k: "75b25f1c2bdf03b31540233794117e6f8145ff0743176a01941f5fc1c183885f", v: new $Int64(0, 9176) }, { k: "75b891bcbf03df20af7c6ae0478fb5404e4738c78425b9d96796fb7434f3a799", v: new $Int64(0, 1777) }, { k: "75bcde911d5c214cb51efe7c890aef16b371852a2a5b3284a0beb94e9c31534e", v: new $Int64(0, 9116) }, { k: "75bd5d2f3c4b1f6916d562f9ccadcdb9109516e0d6a8a2b7dbf41ad1e424719f", v: new $Int64(0, 9389) }, { k: "75c4a7d86c3521cafa4483c73b5e45f897e0c17c2ce36730a400e44e71a93469", v: new $Int64(0, 4065) }, { k: "75c9299cd683d9195186733ccd6cdce673e47ccbb9709277e2617beadc2e55b6", v: new $Int64(0, 8650) }, { k: "75cdeab19316d9660d8a2ce1bb0ccd743d102320ffd5203cb847bd307727e6c1", v: new $Int64(0, 4078) }, { k: "75d3d1ea05e0e9a865b4f2200ebc4da16e2a5acc6d49b35ddaaaafa674e9b49d", v: new $Int64(0, 8452) }, { k: "75d888cd7ed3e363e05233cec3359d330aec9b1d0958e2c9ff5ab2ce37926d96", v: new $Int64(0, 1440) }, { k: "75d9407378363887baae020fe72fd88444aae99239634706f9e0cfe0b5d7fee6", v: new $Int64(0, 1445) }, { k: "75dcafbdbef501ce3de358de210f9722694c7b013fdda82e37b82440680a0323", v: new $Int64(0, 5405) }, { k: "75de848fd3f1feb5430c99d7937314606068792dd58b78d746520591689ff867", v: new $Int64(0, 786) }, { k: "75e2fd49a972e2f392093d09ab19338791faa96153556a62634127d977bec9c0", v: new $Int64(0, 280) }, { k: "75ed1a3b1f36b47f6bd9b0190534ecb722b04bcbd707dffdaa19e7c23065669a", v: new $Int64(0, 686) }, { k: "75ee761f424c20ab407f9ebf21f9479cf0af368c4ca999efb666d9ceda93f8cf", v: new $Int64(0, 6957) }, { k: "75f42f7a0ce58b295ca1ade1c72f55b75abb86da117abf64d945c5a42ff5b9fe", v: new $Int64(0, 8022) }, { k: "75f4e97baa42bfcc3831d94e37b7ed5ea1e08e3018303c38052f68532fbd4ec2", v: new $Int64(0, 4803) }, { k: "75f8bceded50608cfd09cb33d05b09ba71dd3298eda4536dae72b2f7ec3e91c2", v: new $Int64(0, 1468) }, { k: "75f980128e7768e8d9ec7010809d5736feb5e938ba90a66aa1d56ac1c0b20bf6", v: new $Int64(0, 5315) }, { k: "75fe0c8dab7a333ad3619b50b624f23386b06a2cab6b984ee6f5d69e45ba5079", v: new $Int64(0, 679) }, { k: "76036dcb4025009889dddd3684951e5b8d913b4ae62ed568b383ba691a64939b", v: new $Int64(0, 4381) }, { k: "76063c55eb0ea431fa3a94e1f0a8518c0d8bdce920a7ce884d6c88a68db41eeb", v: new $Int64(0, 241) }, { k: "760960dcc589c92345430ed4e670a85e072a84837d7844b2e189dcde10fe480a", v: new $Int64(0, 945) }, { k: "761a9dfc102492d92e1993ed9d0e0ccf0f2956556f36ce2560bce97e497206b8", v: new $Int64(0, 2443) }, { k: "761b1b56ca4d0c4cc89efe2b606d4a2c14504b60e014a6d759c52202091a047c", v: new $Int64(0, 1727) }, { k: "7623efc5fa31ac17288f3346b3154b09384cee60ae1ddc30a82c11294a7cdb03", v: new $Int64(0, 2187) }, { k: "76269dc021dd12833ee664508faa94b32f80a79eea36f069ed8275f78dac5e07", v: new $Int64(0, 4954) }, { k: "763440444dcc1a076cdd5320d8bab1723f365e9ea16db6b42b91e36696c209ef", v: new $Int64(0, 4081) }, { k: "7641d8cbb756847c3ee143a7edc9a3042a2bb6474e38d0c4319e0d854080930c", v: new $Int64(0, 8081) }, { k: "764608be1046e4f440c3d60a051e8a5ba060547b19e022e741c6d4b78de47020", v: new $Int64(0, 9221) }, { k: "7647d3479d80cde8d66ec5dfa67dfeeadab921f8553a0a59397995d71bc43886", v: new $Int64(0, 9377) }, { k: "76480f1318bf0658716b6d168ab7e479252ea011d6642727e0c277711df0b0f0", v: new $Int64(0, 7379) }, { k: "7672faabebf8a7be66f54cfe287e57963a5c2edfee37e5f3e12b01fd2f6ca410", v: new $Int64(0, 2307) }, { k: "76836d5d4f50eecbbc0975d57b5cce223e1c440f71c937bce9749d5ed19e1ca3", v: new $Int64(0, 7766) }, { k: "7686f1d48de79833c7341a08ffb1c4abd49d60af19faccf69c01591b22bc1779", v: new $Int64(0, 7439) }, { k: "7687d07340ea4be8fc263014f80f634ad3c03d2c21fbe0f5a497b810e9778263", v: new $Int64(0, 1643) }, { k: "7688898957e2092338de3bd465e34b42b54b3e8d0455edc1aabd30093f29ba20", v: new $Int64(0, 7332) }, { k: "768ab75416ce2a7802311af7bf80050cb4d397930da7118d2530b0a3892b6f97", v: new $Int64(0, 1185) }, { k: "769a28acc2358882814134526d68f6d82abe9092ac476642a901894a13d93c9f", v: new $Int64(0, 2515) }, { k: "76a5f2bda8fb662e21ca9802fad9a4f8830c1527738fa20c4aa9fefe80fb1e35", v: new $Int64(0, 7467) }, { k: "76a6fab35e63c5600cad6a85816be0f93088898072dbaf72687c2628e8c8a874", v: new $Int64(0, 8653) }, { k: "76ba2f22608df5a7d469c33804693f5f974d5e7bff74688fddeddd181b4f3328", v: new $Int64(0, 1203) }, { k: "76bf79fe90e6e93df638f544f20b95259eace2a10e5a48f15fa92959613655f5", v: new $Int64(0, 9461) }, { k: "76ca27c11d7dbc40811244c36cf1d750c22c637420b0187e141a9dfed95b7970", v: new $Int64(0, 2242) }, { k: "76ced5446bf44157d1a8a78302e2b46be075467c415c503641104ed5c57dc835", v: new $Int64(0, 1972) }, { k: "76d2df5a3ef42ea0db271f763e7ed498f0b526fdb4e493bb6fc8e3863ab40afd", v: new $Int64(0, 2768) }, { k: "76da87f2e64fba28b155d021a9b8405e5b701fcb60f07a21fce45cc709bba702", v: new $Int64(0, 1409) }, { k: "76df917f900f1daa08c288865e873cb78fb13c494185adaf425852dcd9f4fcc1", v: new $Int64(0, 353) }, { k: "76e34461e4818fc2a52c7e2a9f76d9bea3dcf3dc65cdff42daa295b7045b44c5", v: new $Int64(0, 8214) }, { k: "76f1341c30a2205309ed07ed95efa4dd597803d1a97c3ff05bc39e85af50ab47", v: new $Int64(0, 2816) }, { k: "76fee1a706cc3f8eba62550b14d2f435a7575019198faef81f9b2eafd99108b4", v: new $Int64(0, 4051) }, { k: "770d7a156b7c1804ac08476cf402546aa6b2b5b9cf8979195a46f5ebd6189a7c", v: new $Int64(0, 153) }, { k: "770f649a5334c6c911d55e89f3b52c3fe04d2f12ff0f74edc22a42809bb030fe", v: new $Int64(0, 5879) }, { k: "77106138fd4ad07a20c52ea2b58959452316c7ce6612439b4afba1c7f056f50d", v: new $Int64(0, 567) }, { k: "7720d4a684fde4b80b07c29293865d68d6241e64566bdcab3af56198cc544adb", v: new $Int64(0, 7888) }, { k: "772615db3b8985bf25a7da4b0e5929e9e47049c910a782b4ef489719ad5897ad", v: new $Int64(0, 9598) }, { k: "7729e3c0f4fcd713b24ea81713e4b9d45ac14985095e0ba41223a82a447497ed", v: new $Int64(0, 9691) }, { k: "772ade6f619f25783af4b473c13ff4b9c31b7fd41f03e62faff9bd9820ad3c8e", v: new $Int64(0, 7915) }, { k: "772df2269141c2a45d091f0148f356f9de74fd7874b1f9d3440343e3ff97f4cb", v: new $Int64(0, 7853) }, { k: "77303fed4f7e7b09ead9e79e738080df4e28ce7aaec616d2f2e0dbdde44ad97e", v: new $Int64(0, 7201) }, { k: "7732b6e7e0226232523f46f045e16d54eb9c668da81aa06b1967a7d490f4283a", v: new $Int64(0, 4521) }, { k: "773ecc0d5184412d56677bb8a433f3ce78cb6164d5baac3b49bcb45f53eed27c", v: new $Int64(0, 2491) }, { k: "77413d224881de8ee1193b9d95953b07aaf42e3ee0d888f013ccd0daed4de18f", v: new $Int64(0, 7081) }, { k: "77428809a7b00b2399d0d2b3bd9899335fded1924c8507f2b9997087175ed9c5", v: new $Int64(0, 5872) }, { k: "774301d40a4816b5c532e49352162a72973a198453ada1a2cc3355ac81ac3b79", v: new $Int64(0, 3176) }, { k: "774b0c87c56244195f36c3923e929b66776a6e2d5868d8c6c561fa74c1d54de4", v: new $Int64(0, 8973) }, { k: "7761c00096035ce7c0135603f797fce74bdaa120153064d4d5f503976f35f406", v: new $Int64(0, 3624) }, { k: "776285dedfbfafc346c5f4c5b52af8951ac8ce937c71bb33dcf6d1bcb7e99c74", v: new $Int64(0, 9544) }, { k: "7777fbe2eac3047e86f7acc57c9a535a1b2b2c6b1c69fd482da135aa61204681", v: new $Int64(0, 6764) }, { k: "7778f521265ee8a1abb8b574d025984647593d15d1a4d5b37c12a31091aebbf6", v: new $Int64(0, 4624) }, { k: "777a09aed2682d18f0424691776399dc7191acea8d4af6fd708881bb04fc1214", v: new $Int64(0, 1991) }, { k: "777ce7493648cd8a3e80c1a64e5090666ae159213fdf6e3fccb7be7486aa8192", v: new $Int64(0, 4848) }, { k: "77907adb64e169cf089ac72b27e93605d62dff918d3ee24b1b25a90f193fc40c", v: new $Int64(0, 301) }, { k: "7791107caac5edc7cc9c8e5db06e62aeb3e61b8bc35692518fe3860f508c42b4", v: new $Int64(0, 6448) }, { k: "7796157838cff1bd7405065a96460704af47ddb87a8a290c0fa18192649ff29f", v: new $Int64(0, 5613) }, { k: "77a408dbb4a622a36681393207e3b1ec74bf4d5be44da45a5def3144b384cbb3", v: new $Int64(0, 2129) }, { k: "77a6a29bff9d6ff4926c54bc8872c4e8f1bf34243626b06534c131ad6815eea6", v: new $Int64(0, 5468) }, { k: "77b21373f5514f58aef7abb16ca00ae766a3ee13e3612d5a4e4f9a4db83472ea", v: new $Int64(0, 9818) }, { k: "77b7e27164a5d825871aaf71e92b83151ddbf47370bda148624030b3b6443abd", v: new $Int64(0, 3921) }, { k: "77c2e8efadd4a4caf2380d922b4fbed54592a920a0c3996bb22093ac5bf9df5a", v: new $Int64(0, 6955) }, { k: "77c9220d708a27f3522b9f8ddaa6c0400b1189d91ce96a4d1fad5dce253c9ba8", v: new $Int64(0, 4361) }, { k: "77d6f75003dd0c4ff7279a602009d2668577c3d5dbe55a37aa55bcb8ca10c478", v: new $Int64(0, 9996) }, { k: "77ec1bef63606fa00a158ce23dfec9dfe44769bd6b12baab5637c70e455e2e95", v: new $Int64(0, 4027) }, { k: "77ef8266a4e911e350133ef627ce292fb18428c2a1439848ccdc29f61ea33175", v: new $Int64(0, 1691) }, { k: "77efda47e271a064ecd9bb6aa7b28c61856640a1d7c9e600982aaf1379c38fef", v: new $Int64(0, 9082) }, { k: "77f102a2c503fd2f035075aa9d2124fe41ca89fd2ecd8e30fa0d1b64025732e3", v: new $Int64(0, 8013) }, { k: "77f209331e257d62ac4f38d89f7632f5ed78f22ec5a19bfa441bc719ff9e2066", v: new $Int64(0, 3010) }, { k: "77f2ab54a44117d9706f39ae64140bb688aaf65617aa53d2134eca21f1dc6dfa", v: new $Int64(0, 1083) }, { k: "77f3419be41114f646e6afcd1b9c1ff0f3e9f3e130f52a8ecd308be0cdb31116", v: new $Int64(0, 5329) }, { k: "77f5da2fc6b45b8af37ad0f1fccc7c172920b7d65a1e93e9e78cd56ecea5cbd0", v: new $Int64(0, 5822) }, { k: "77fc6eb62709c59216d7d4090993f613f71c862c9ac462ea2ed214ee1793f8d9", v: new $Int64(0, 1550) }, { k: "77fe2c0a2b22a2fd1a9ac3304723d40f79d85c73418d8809084ee24c3452d089", v: new $Int64(0, 7481) }, { k: "78021b25eb446235a4af5246fa0f72589a72c7d78f77da0bb35c8cefd541819a", v: new $Int64(0, 1002) }, { k: "780ac0083e1c7e67aaf295b795b1aabfff9786b32de60742074ae374e18c497a", v: new $Int64(0, 9594) }, { k: "7822953259a877fff24e93f86914d693a2eba7ac5a92fbb9c01ad9c5280c3513", v: new $Int64(0, 787) }, { k: "78366db6bd28ad31583622afc5773da926d2e6f3debb154477a1e91ece57a01a", v: new $Int64(0, 3001) }, { k: "7839228c604ee6a466061873bd239b4bd77701f93a412ecd7f8fd6110e01da5e", v: new $Int64(0, 6413) }, { k: "783ace3356b55e4c8e35e9bddc54c8589b57e65548e129c79decb8ae7be6fe7a", v: new $Int64(0, 6926) }, { k: "783b0a0e672e8570a6194631e2f95b26e0b10dae6479b1dc5dd6e55cc2d33c7b", v: new $Int64(0, 2744) }, { k: "783d86c92c4545ebb852bb7796a1d8ab5e309c403fb78d9e808f9a0d64c95d4b", v: new $Int64(0, 8840) }, { k: "7846533d0eb29937be42b60a6cf02dd4ff71f949dc36b4e6c55f99f4abbd51cb", v: new $Int64(0, 5296) }, { k: "7849987d2dfff91a728a50e9e612d27f17a8c4d5d70757ab6f7ac8f45f578687", v: new $Int64(0, 9792) }, { k: "784e763cdeacd508cc38c18555b06a4c260066b9116d87261e4e8eb0fd5cd9c3", v: new $Int64(0, 6944) }, { k: "78506c74dd28d67488b94ad768ec63ddb64848d62162fca51a65f8f4cf21fd5d", v: new $Int64(0, 7787) }, { k: "785071e575edd0ea7f0a669f002fc5061cef7f79f87c17a94d775114493d7e4d", v: new $Int64(0, 7447) }, { k: "7852181c0eb38ed9d15a8c8dda52075c7e06befa9636e1fe5609f52159b87736", v: new $Int64(0, 8804) }, { k: "7858abd7abdc8e27ff2a85bd3f0c4a9dc7a626e9530836c36eb369112af28a4d", v: new $Int64(0, 1866) }, { k: "785fa73ada3c0668b66c78016ae8a210f2c3b8334e32ccda697f095d27aab806", v: new $Int64(0, 1573) }, { k: "7862e5de2f23e466aae62b6aa006e3d46dd34b83390e7a64775644cd2839ef3b", v: new $Int64(0, 6109) }, { k: "786aec35105d94761e4ff60168bcbf04228a2184db155a24f641ebda3fd8a8ad", v: new $Int64(0, 7080) }, { k: "78726bade8b7bb365a49c7fb31acbca0139157d9895cb36646c184aea3a96072", v: new $Int64(0, 8427) }, { k: "7879c38ec4be1a4d5e335ebb554789676d08246ec8e02840e7bfa799cfa102dc", v: new $Int64(0, 3709) }, { k: "7879fd2976191b93c3991e7a26dddcdc06f092941d817fb733e9b70db9ba6e29", v: new $Int64(0, 2399) }, { k: "787a6776f24179d0c4ec77067a8858719a7815396e5425e9e0bf6306c0ed9894", v: new $Int64(0, 2326) }, { k: "78844fc4c3a79d4407c9deb512f2310eb501a269487fa45fc07fc0394d824e13", v: new $Int64(0, 781) }, { k: "78860752c5e553baa94d3b54408b9969f9ea0d4b9987c08dabf8e9be3949079e", v: new $Int64(0, 890) }, { k: "788c1b6b9ffa7bf86bb9436d875e8fb43e811187545c04b417bb867925cb645a", v: new $Int64(0, 2272) }, { k: "78910fb1ec2f86a89b1e6dd51ce19ed8ef36d518a862bf6abb6e8fe1254bbbcb", v: new $Int64(0, 6679) }, { k: "789967278c675df1a66e187db213397745cc46a357e1b83fc07ae34d4d139e64", v: new $Int64(0, 1966) }, { k: "789c238ea2e5a84cf2ffc9bb7cbf833629d259c9a7290b1195a67dcf25227f2c", v: new $Int64(0, 5804) }, { k: "78a429697ea84f0803bcb9a67429d6c10ec53c58bf1e15bc026d0630f5612e78", v: new $Int64(0, 3759) }, { k: "78a691317f9e9d3cb027c60a195f244b5502a798697f5f49d29791b91444b4b9", v: new $Int64(0, 7249) }, { k: "78a6c25de62637fb6be1dcd367d601786fb42afdaa733410b4c0d0a2690ff97b", v: new $Int64(0, 6735) }, { k: "78aca4f818c068ba6a509ce10e0898b67de9ba8ed6ef67aa47e7baa99b9ddac9", v: new $Int64(0, 4069) }, { k: "78b64b2d2270d8e89217a052638a91b6fe6d35f43013a27ae3f07550ccb2c18d", v: new $Int64(0, 6569) }, { k: "78b91c030909c5775514178dc2a4c8346513f28d3ca1e78c36e3da1355fd386a", v: new $Int64(0, 322) }, { k: "78bd16e3ec12baad7e865bdbdc513ff7059c2aeb7eb2dcacc1cbcc6659f80ee4", v: new $Int64(0, 5793) }, { k: "78bdebc5819fb6e0441e3bb5f72bf375be377082f5bdd40a9ce1b340ea08f171", v: new $Int64(0, 3841) }, { k: "78c74f5ea0b3f1f4c15e38e50f83f2f9ba86746a76024d30e8f2346f61363052", v: new $Int64(0, 2647) }, { k: "78ce0d1c38911c6cb99fc1666f507ce4d449ee6d705c4949cd80c89f4e09754b", v: new $Int64(0, 6933) }, { k: "79040d1af59424b628316e415ac58eeaac2fa7e5b0b9f1a23777a939cb767e17", v: new $Int64(0, 5959) }, { k: "79046a9313bd0473ee6f86ada193a99ea98ac1730c789076eb6782211982410f", v: new $Int64(0, 8783) }, { k: "7907c5a4deee5c529dce6fca28df78edb88b8423a3e3c7d8588a2529e971aacf", v: new $Int64(0, 9600) }, { k: "791992e868daf051ec8aabe611dc6928c51799e4901fcb8ca17be2aae316a456", v: new $Int64(0, 5456) }, { k: "791d167e85040c96816a238a4418b087d6c5f2ae72e6f714838db802c363f3b8", v: new $Int64(0, 196) }, { k: "7922de06c2e83726b2ce0c8f0f09f1c2e297cc8013e13a599786c393ced32701", v: new $Int64(0, 7430) }, { k: "792fe58f0701cd511699560239d819483382beb08cf1a0c75e1750df9383f0d4", v: new $Int64(0, 4655) }, { k: "79327116907c1f8957e685b5db9f3fe7369e5f3ba3657786305525fd992eac78", v: new $Int64(0, 5696) }, { k: "794768cb24cae026864da7b8862df770905bf802f45894163dd2979bba3fe475", v: new $Int64(0, 8236) }, { k: "7957c74fc777c499b5386674c2e829de9f2f2a6f93dc6636ac92602d6a604817", v: new $Int64(0, 9106) }, { k: "795bc4afb276dc112e81b8fee9b2d680b018e6f750b4d8a30c8eb7fa937a7700", v: new $Int64(0, 4860) }, { k: "795e38ded56b0b09d6c9e094d3aed5aec89918a78c03fa18e74009722b7586a1", v: new $Int64(0, 8746) }, { k: "795e478c7b1f27de7989ee201103929c03ed2d69c4db8df06397fc0a6a85fce8", v: new $Int64(0, 8121) }, { k: "796928cbfd2ad4e09dd6c7792b589dda5ec944835fa385d40215e731b258fb9e", v: new $Int64(0, 7263) }, { k: "79715338d6e15433344135d9cd7e610cdb4fb288548220e146d0ba7250796839", v: new $Int64(0, 4779) }, { k: "797a2687acb3385b30e6d5a4b1b641540d8b999cb79da9fcfbd3414968eb80b1", v: new $Int64(0, 9174) }, { k: "797dfc45de6e2d3bbe695362fd9e08bb29f99549c67963f4c2cc32407cd86c97", v: new $Int64(0, 6891) }, { k: "79820678662c35b7598a7e6bbeafda860461f9f40a88a0c197747ae84856539e", v: new $Int64(0, 5863) }, { k: "798b0daad9a3addea50949ce5fad6302030f0af686e4e294b6e5fce3ee62eb39", v: new $Int64(0, 5799) }, { k: "79991e1c669e8c8f4609bae4caa9c0fbe0c1d21aadaec383845ffa9ab63d2c3f", v: new $Int64(0, 4245) }, { k: "79a39dd8ef4cd19bc40a1a215337897c4b71d41cdf579a45508b7f72c8599795", v: new $Int64(0, 8842) }, { k: "79a5e837b0316a1d402b28ad2fffe5e7f8b88b222c025e7b555561e63f6f1f12", v: new $Int64(0, 106) }, { k: "79a6f67e161d2c94e732ecf86ea84523e68577ef03c227c90b239fdf21ba13a8", v: new $Int64(0, 7917) }, { k: "79c0ee95e9a42fb4dd20caaa9bddef9dae52b26089d8c079ded50bc440ad8e67", v: new $Int64(0, 592) }, { k: "79cfbc886b75806e7e129cd830dae602c2ea059d938bdc8875a083eb16549ec7", v: new $Int64(0, 3393) }, { k: "79d93ef48a572bf63a9276356b013fa36e64bb3f65c348692157193ebac5b635", v: new $Int64(0, 830) }, { k: "79d97939f0fd2a12da35c9a68d6ae3cbebb58210ee0dec57dc7acdf4d72f3f5f", v: new $Int64(0, 7076) }, { k: "79dafdd5bdf27d22d542c20fca34c8977eea47c7ecea5a5ad066059120ff525a", v: new $Int64(0, 2228) }, { k: "79f334395dedcf9060b53bf3cb4f84a1734eb98153d8cbbd9656533fe1deceee", v: new $Int64(0, 1055) }, { k: "79fe7fd3379b992b34f4c6890d259d66c42654e2b58b3c6443ff65bd584f3b7c", v: new $Int64(0, 3890) }, { k: "7a03726e67bf498865685a69427abf50d61d5700103defa3633e34e0d1e806cb", v: new $Int64(0, 3679) }, { k: "7a07934c0c9d0f60632af5db54991b2cc01376ad96580793f969a1d7cb6c0e2b", v: new $Int64(0, 511) }, { k: "7a08617f4cb4898d35ff9f29b311674efc7304c11ee2133d59d14830cc4dda6a", v: new $Int64(0, 3708) }, { k: "7a0dd53438c8103d2fd3c8cb4a83c2c64a4216de4600efd22680a5e73a049643", v: new $Int64(0, 9473) }, { k: "7a125e265ad02690794f46bb420aaa40a4570896e569b587d1f5eb17f26958bf", v: new $Int64(0, 9643) }, { k: "7a1aef1e04bbbaf6036688fdd9a3d65c887ac09ab628ac716e00fdd93710c460", v: new $Int64(0, 2486) }, { k: "7a20164aaa1d3bd74aadf3761438bb2c50d63897ae792310171fa090de8fcefa", v: new $Int64(0, 7574) }, { k: "7a26e42c80230a903334749fe948380604a18703635824cc985cec1b286d529a", v: new $Int64(0, 3765) }, { k: "7a2ed017415657ac7fef55ccab53c4ca27d2a5492fa81ffbfd7165beaf089095", v: new $Int64(0, 5607) }, { k: "7a30176fc533f55364bbe835ac55acb144d4c64ad8ac9398dd11522a733a2d4d", v: new $Int64(0, 4464) }, { k: "7a31e53b4dc32e39faf769747ac6c95ec5c5ef2399c1d46001d5707f0bf8e771", v: new $Int64(0, 4061) }, { k: "7a335dbc71ae5f951079482c3812cf4c4230fe4ab80335ba7373421f323accb9", v: new $Int64(0, 6190) }, { k: "7a4d18453109d3e9c0856dc85a959d1c19e0da3013ecccf2f622a16854fa1ae7", v: new $Int64(0, 2879) }, { k: "7a4d1df86d936965dd5bf1915e03b87b79f2bd7a1342c2d32c115ed36806e563", v: new $Int64(0, 3034) }, { k: "7a52d0c2fc52bbc4b447bc16ee5ae24802b0a6c53c6e1c9d633de713d66d6bbf", v: new $Int64(0, 2736) }, { k: "7a572f72ebc625602ed7cb29ea8f57a4bc90b98216e07b0aa55e955b7e7bdadf", v: new $Int64(0, 7169) }, { k: "7a7af2911add1d5a67a691ce99058cd02f379de86c2393cb2c54a35a8ba65937", v: new $Int64(0, 8300) }, { k: "7a7e0fd09a016b42343df78a331db0623a850edaa51f8a49b0a1ed2cea7c94ab", v: new $Int64(0, 5539) }, { k: "7a89840d6c83ace4d06c921108f52f97732e4a0c8ea7f680fb4b380afb078e07", v: new $Int64(0, 2890) }, { k: "7a952cffc5ac49b15e1d9f8e3933c5e5159ba4eea5eb820c4619c95aca15b6b8", v: new $Int64(0, 3791) }, { k: "7a9579b87fda8483aa965c8edc8b4ddfde673df20b5f69341a6d1faf67443e8d", v: new $Int64(0, 1589) }, { k: "7aa1443dbcd029bfcf010ca9b80b45ef2bf55b938894e02ec15947ace0d0318b", v: new $Int64(0, 1683) }, { k: "7aa1e9d9a3c846c5bd35e309f19e6ab2f06b42c3bb47c4152648fe3d67d0303a", v: new $Int64(0, 3731) }, { k: "7aa32205a1ad4006d380f56792bc579db49ce91ff0e7f68549e33b64091b0691", v: new $Int64(0, 8435) }, { k: "7aa7e4e47a65808d62d474d86ede152bd5dae1ca1d27897f5e31e2ca80f45ddd", v: new $Int64(0, 8524) }, { k: "7ab1a5df228ecc520d2da22893a1b3acb70b9da3641042c4bdd3b83cca89f45c", v: new $Int64(0, 7342) }, { k: "7ab6b9c61da451954fbf4cf51b231678fb5e4b7cd74f80a464f07f29cff3142d", v: new $Int64(0, 1911) }, { k: "7ab7294f5b28d42bba685bc873cd071174ecce79cdbb62702cb3107226fc468e", v: new $Int64(0, 4756) }, { k: "7ab880d400219208a6afa925ae781dce2609c497e33951a8b966b5b93f5cc6ff", v: new $Int64(0, 2538) }, { k: "7abb0f210550a38ab06f03f48343f804587d496dbd79fc7803a2474c8d1de62a", v: new $Int64(0, 5499) }, { k: "7abee74430d2d276909ed9efe0d2e6748e773db9d91d66a0266cfe20c532b4ad", v: new $Int64(0, 8536) }, { k: "7ac6358c5b7faaed71c7c29175a74c20d5d89c5c1b43009c44de641f4c9f4e54", v: new $Int64(0, 2012) }, { k: "7aca7acd65515691c75bafa384ea6afdebb0e158f55c2ee2c06d64c01f6c46f3", v: new $Int64(0, 420) }, { k: "7ace14546ec54d425bfe3d818b3ab4dea29413647796ab680a6d27d8aecf0cdb", v: new $Int64(0, 1488) }, { k: "7ad2cb3a6af1513fbfa07deb09f8905d0e00e3a0186f6262a02d5b3b75ceec58", v: new $Int64(0, 4555) }, { k: "7ad851d2b134415c6dbb6f82f643e52c852278070d4c79ba552774a583134121", v: new $Int64(0, 5712) }, { k: "7ada41804331e2e86c3a9998726b3a78cbaf7627fcdd8aa4d2452d6c9271b8a9", v: new $Int64(0, 3696) }, { k: "7ae065806116efec4663bdf8e1e7555337a76303ab8dc9f06604440ef71c4135", v: new $Int64(0, 879) }, { k: "7ae85b875e0cff262821faaed7d629955d8d84795ecccfe40467f85f10dc6b76", v: new $Int64(0, 2237) }, { k: "7af26bf5b94a0ae931a74d1ab3dd76f2da43f989ed866de38be9cbdd7653a766", v: new $Int64(0, 5263) }, { k: "7af7edd2834b9339c1f3bc116de8930b244ed326a03d8bf8b5524e0f3d7402e9", v: new $Int64(0, 405) }, { k: "7b064ece04bd01899c05e3c66b5e54d05157a03e597891b1b34df80d70c57783", v: new $Int64(0, 7579) }, { k: "7b09a05148f535c9103c58122ba44d6d35c9d97898e47d46f2afd23d2fa81d6d", v: new $Int64(0, 8150) }, { k: "7b0a06ac679d1d6c0f4426ed4b0ab234f76faa3d3976c937dffee6b4a186fc78", v: new $Int64(0, 1712) }, { k: "7b0ceb5da5eb0c4ae5db12fd5cb1463f2e08c2d6cc186de5f8bee27200357608", v: new $Int64(0, 1519) }, { k: "7b0ea5d0ade743e1809bdcea3eec2e95c1e62422931cd521d018c83e88b80571", v: new $Int64(0, 3148) }, { k: "7b0f068bdde1d396d95b97579ed07cc9cabc5af128b7fa3338f7aca485dc170b", v: new $Int64(0, 97) }, { k: "7b21e038e1d52ecf2f0b96d2144eb9960806c020051e4cce702d515d692f90c5", v: new $Int64(0, 217) }, { k: "7b3a08b8d952cb90f55546ffcf2ced14e1bf46325687e4538c80f79e27b7b543", v: new $Int64(0, 8015) }, { k: "7b43811e7d1c4bffd6bf3e444f56c9baaa0afeff942aefbe35f087554b438306", v: new $Int64(0, 1478) }, { k: "7b43b8f47e794a27b2d7bd7cbb6192f121d085079617f8560db9b068a26d624c", v: new $Int64(0, 9674) }, { k: "7b4ddf21ff7d3386d6019ba24e0f6e1d8fd1bb86b614177e6512abf3408861a4", v: new $Int64(0, 1190) }, { k: "7b535c99a16abbfe02858dde8874971f472b3f9bb68e4b978fafaf33b89026d6", v: new $Int64(0, 8476) }, { k: "7b53c1a0432bfe84127e974a90137112502df9655c108bcbf7ac0fca82c1ba5c", v: new $Int64(0, 208) }, { k: "7b56b3194e3976b20aa637b11dd097081214470893da2d5c1d145ac2679fa867", v: new $Int64(0, 4153) }, { k: "7b5c7f51acc062311ee02cc3315011cbce1b8a52604b36949895ebd15e4072cc", v: new $Int64(0, 2339) }, { k: "7b6236e417b4c6c72e525bc7b25c67af18313c68237b6f7990c0d124ba94a47f", v: new $Int64(0, 9335) }, { k: "7b6be66b12b5ab8b70f08ae7f649e02f48820acaf9adbef76448ba9bbb9442e6", v: new $Int64(0, 8328) }, { k: "7b6eff60d38007f205b88fa5917d07a04985018bf8265c8de9d84fe33b068a4e", v: new $Int64(0, 9981) }, { k: "7b726005c54fd03e56350e92c6d1df6874290a946116752ca213f9088c5be6c7", v: new $Int64(0, 4548) }, { k: "7b7aba9f055fcc714665d70a61288ed8b066eb7ff473e4281b9e97b03bfdddf8", v: new $Int64(0, 2473) }, { k: "7b82e013d39a13fd1eadaae46fcfdd779c58885d1089309fdcfd746127fbe8d9", v: new $Int64(0, 2880) }, { k: "7b842269976f15c8ac7e5f5cc65d1d3a4fc863d19dde913464069d400f545d2d", v: new $Int64(0, 9326) }, { k: "7b875947c404b0563f81cd9528463624a15dc674b1792b26b3cb6039cec5303d", v: new $Int64(0, 4165) }, { k: "7b8a3b1ed5b79c4a8fb3625201b233ad63635fade84865f419ba5b20ed65a185", v: new $Int64(0, 6087) }, { k: "7b8f665e45f1b453a9f3535fc510f3a7725f30bf9043b2064cd5be76b0e10072", v: new $Int64(0, 639) }, { k: "7b97a952de34f5114f9b540d874364fe9d4ba05ae614c61db34044b3262680b5", v: new $Int64(0, 1097) }, { k: "7b9f981393ffbb2154a63e5076a0cac720f28a038eadf35384760f919dfec6c7", v: new $Int64(0, 5966) }, { k: "7ba4ddf578eb5a2571949ceeb56388942dfa11d016a134afc8d00d3e4b69066e", v: new $Int64(0, 2190) }, { k: "7ba4f9b773bb842b25f269e2eeed38d3fde70318e3e70a676601de226b3032e2", v: new $Int64(0, 2446) }, { k: "7baf7734d23006c2517761f79e0ad6ce28d633e3d6c06cacd6409b38b9daea74", v: new $Int64(0, 147) }, { k: "7bb71c2374f88432bc8ac6f0d00df33c1a9cfad68b19907b6dff82b32d9abe60", v: new $Int64(0, 508) }, { k: "7bd812ae9852fd14f4548e4d7433bd808190af67f40f83098562cf1ee38e752b", v: new $Int64(0, 1754) }, { k: "7be631ffd902a06ce44cad98d77783a38237afeb88b1029189b0a01741eca6e2", v: new $Int64(0, 7427) }, { k: "7be9db17bb966d23a7a5fa9a8d288861e80f3f65622f06134f7f3c64dd200c59", v: new $Int64(0, 2815) }, { k: "7bede60abd4cf93b6bda42048511c98f0476c75fef8804996d28bfeda80efa79", v: new $Int64(0, 9099) }, { k: "7bfa31ba084f9602cb211253694e0526cfac4caa05abd74afd5124ab7dcfd6ff", v: new $Int64(0, 9383) }, { k: "7bfaecc501d1d7c02dcd53f504920036c7ca22230e8a1f8aff7d64ca79b97ed2", v: new $Int64(0, 2992) }, { k: "7bfcfb7c57870cc4c18fde1926ceeaa69454cffcfccab3ecd9f2cbd1aca2996d", v: new $Int64(0, 7193) }, { k: "7c016f1a9dd6c1871c98832a43878c1a3a72657a855d55ee3a91e26d991ee566", v: new $Int64(0, 9162) }, { k: "7c03ec6677ae3f2780ab971c856cd3e9428c0bbe1a12c002b95ae69082e2d052", v: new $Int64(0, 6193) }, { k: "7c08eb732e1ee37be2d2e31782fbe8239ea99d352016ed1a7d6433963ef922ff", v: new $Int64(0, 1113) }, { k: "7c0fbcb33010485dd612d0fc700d8bcc32081267f77402c12765543a9e56a70b", v: new $Int64(0, 6490) }, { k: "7c10e43890d0bbdc90c45676dc70deda0961f6be56ea0f83819847e2fdab4da2", v: new $Int64(0, 8562) }, { k: "7c15022814ad6e2dba456f9ce9daa60d20fdd75c35a46695f2b51dcfb71544d7", v: new $Int64(0, 7774) }, { k: "7c1dcf6d16b3696c38980cd5c6eeaab38abaf417d11ac2631250858286cda9e9", v: new $Int64(0, 3953) }, { k: "7c2775dcd94b25662d0521a2c886897d5a8ba1b4415a8cb66426f0d2fd6d0dbf", v: new $Int64(0, 9879) }, { k: "7c2c30484f1651443eac6ae5e6055a980e161b0c9e25734348b8356e058ab7a6", v: new $Int64(0, 1998) }, { k: "7c3346efabe832685c312fda48e8745a6badf8bffb84d5856fa12cf02196b368", v: new $Int64(0, 4554) }, { k: "7c3cfbb0d9512a5314adebea5a5c8968a83b2297d19e53cc55c829f7d1e717ba", v: new $Int64(0, 6724) }, { k: "7c4579c78d990fafe95168eaf916e3bd6ce56e6795285c665f53450a7a4aff2f", v: new $Int64(0, 9200) }, { k: "7c4c94eb4871d0e8f79fa11adb2bead56bc422f085ba06c0fcc182e565f8dda4", v: new $Int64(0, 9845) }, { k: "7c4da9e96dbebd23d63e16dd317e20f5d082f3677ed86c72c9716042993a0875", v: new $Int64(0, 2292) }, { k: "7c4f6e0273194a5e3d81f26971d0d1d8be010aaf3a20ca7afdeb9f790975fac6", v: new $Int64(0, 8004) }, { k: "7c5e131dd44e98a9ab576bf15f6fea482907a408402c2aa072ed4736dd2095bd", v: new $Int64(0, 1262) }, { k: "7c72134c0c255aab6e854cdf7c26fc010260026a54ce0afae2b82afbffb745f4", v: new $Int64(0, 9113) }, { k: "7c740f16fca6fd6323b2e3b7d1eb3274ae7fd10253614dba4f5bd750b27e5462", v: new $Int64(0, 1918) }, { k: "7c7d9f41597a9ca3dd7014535492489760064a950ea0aa1b4fd157407963ba27", v: new $Int64(0, 2608) }, { k: "7c7f0f8fafc761ce090d35be16edd5673e841eb34431bf44c0734a28fd00921b", v: new $Int64(0, 6890) }, { k: "7c85623bf2e3e10e87c06ce7ed3bcb97936acbef9f1f4466a93232615f742970", v: new $Int64(0, 7289) }, { k: "7c95550e6e2b20d677fb41ac00ceb9c628b32fa6a859326ef8b2dd942a8b84ca", v: new $Int64(0, 3978) }, { k: "7c9c3c48e209a8db74f6cd32f5fc19ea9895b9a1b1ea5215ff950a90503c70e2", v: new $Int64(0, 9497) }, { k: "7c9f43fcb7d1a4620f80f718c2dc7c20df621eb92ff6b4b8d6aa6365cf748f5d", v: new $Int64(0, 986) }, { k: "7ca3d120cec3bea902b7c170a37995ebeceece9fcc99841018f552964626a549", v: new $Int64(0, 598) }, { k: "7ca9518de150d19c64477d3b67bc8e40e39072e527a533ea99f1a9fa20ce450f", v: new $Int64(0, 5005) }, { k: "7cb17123ae22a963829e9c606b2fd6cbf3ce17b2c9afd55a5498cf0159b610ec", v: new $Int64(0, 2224) }, { k: "7cb7931cfeea40980c0756180844201d74389f5203b2fcae6376309f80e1c949", v: new $Int64(0, 1786) }, { k: "7cb90df9920007fa4db2c773d674a99547dea078de73535e5813a42fb90dd06e", v: new $Int64(0, 274) }, { k: "7cba93d11337179c32ec3aaf223fe041b488130dad75768b154a8854a4f10cfc", v: new $Int64(0, 1286) }, { k: "7cbfaa2bcf32d4be489ed39e99e8049447b0f1ddab15a431e41f7bab645bed9d", v: new $Int64(0, 540) }, { k: "7cc31583a1ee157997f234d04c18f24ef61f91421d2a8e388c6587afc8f4a896", v: new $Int64(0, 3651) }, { k: "7cc7e40bc24655d2584c262d8bc041dce2c701b491ae44300f61745b2d023bdc", v: new $Int64(0, 5831) }, { k: "7cd7a17e061d8238a20e76956d6723f58905e74e95fb38eccfb92f49db427bcc", v: new $Int64(0, 2656) }, { k: "7cd7d6c7f5b326a3df5c930db0e1389b8a0af76f11264a54519801371aea1e7c", v: new $Int64(0, 8963) }, { k: "7ce45116d48be1a7841b869aedf39b7c4f7bfe89e9ee7f54a9ca660ab032c3ee", v: new $Int64(0, 2474) }, { k: "7cf04aa66fc80e2113ddc9d6307a22be7bac946836d0a54452af572f0f19d64c", v: new $Int64(0, 7296) }, { k: "7cf41b6c0a4b0221e8928769828c6189bd448d358fc5eb1fa820271c43927006", v: new $Int64(0, 1225) }, { k: "7cf580f8951cd8967e96eaa6c9a81ca6757feb308d69cd6c495458f3b4c53eac", v: new $Int64(0, 7992) }, { k: "7cfa784504b320e386d72b7eb09cbf93854c8531099b6e867701bdfb4b054920", v: new $Int64(0, 4332) }, { k: "7cff3a76b8ae6b61582ef371d9abf0dd42d56ea436383501ad4ca631b5d56dc8", v: new $Int64(0, 2555) }, { k: "7d031578701ec95c1257ff1c8c02112209f636ebaad0a738d2a1634ae21de0cd", v: new $Int64(0, 3743) }, { k: "7d081139e8016f35709dc8336e997cc39c03aebd79029962edad5c2179df2f15", v: new $Int64(0, 8928) }, { k: "7d0f4c1d2771da78aa84491da364c206f881afd465de17a6a70be73a6af5092c", v: new $Int64(0, 3092) }, { k: "7d1c7f23826ec14b12e5dc521538e91eeefaf8c8f50d551d29a1982214b2ec0f", v: new $Int64(0, 5398) }, { k: "7d21dafa997321e6441497a91695a8d847f776835a547a4a1992450f8b9d65f5", v: new $Int64(0, 7069) }, { k: "7d26271826d07531c39c14798cac74c97402bb9ef28161dd399a1a93abeb2479", v: new $Int64(0, 1867) }, { k: "7d2c0891c522b8ffebf96de4a452a28719ad06621425fed73296b2337942352b", v: new $Int64(0, 3757) }, { k: "7d2cb7335d6160597142ec4f4b41880ac6a46cef640210f4bd203d92c64fcb80", v: new $Int64(0, 9057) }, { k: "7d30c3b84ba7f70cfe1af9ee8d45aa8f817c4f0dc139409acf57394c5e41462f", v: new $Int64(0, 3682) }, { k: "7d310d0e09a44821e7699ac44802825758ca21d1a4c5c526e925f9c7132f6483", v: new $Int64(0, 8050) }, { k: "7d31b3315c66604ecd59c6ce38be107b094efc16229bc7acd0a1500557fc3899", v: new $Int64(0, 6392) }, { k: "7d43a02abb31d0c903aa8d18f1a810a874af1953fd982a6a77b11abf9d21de19", v: new $Int64(0, 2166) }, { k: "7d4446b9d0cc8e46e6cfd021879c1cdb74bcab6d09d43c5b4b82c8a307e6a149", v: new $Int64(0, 2010) }, { k: "7d4c172116b7b5b59e3a5a34028289f8d4ee6a22086b0c879773c0a0a2111f59", v: new $Int64(0, 1912) }, { k: "7d53b14239f4675bbfed0c863fb7d2c8e4ce70de39f1c01986a9bbc51058e292", v: new $Int64(0, 2847) }, { k: "7d5a60a53b7c409c34eb432c9703f52a60981a55767b6593492ba4ff8dc8c4a1", v: new $Int64(0, 9901) }, { k: "7d5ae5eb40806f3645959561ff596b9713250de01bd4f79de1f6730904cc80f7", v: new $Int64(0, 2536) }, { k: "7d6065e8ad23585333cabf9e18e12cf373223856cadc3455fa72ba526528fe26", v: new $Int64(0, 5085) }, { k: "7d6327f721c4b24027797db96278466e6604d5d3c4f9f3c82959866169dc788e", v: new $Int64(0, 3490) }, { k: "7d6366136eaeddc34397898c13bb69376c418cc00f1cc0c7f79778794366c56e", v: new $Int64(0, 3627) }, { k: "7d692e46fcd6be12771da771ab50c055981d2f4d39c1b1e3757fdb633b8aa621", v: new $Int64(0, 9315) }, { k: "7d6978fc1404e7fb7c0f73b6eb2728eb9d9d9cd94e59e0236110bd2b1a65cafb", v: new $Int64(0, 6550) }, { k: "7d6ddb2f9ae4d294262a04781df72f743414cd3ede1900232d61b2f509257c20", v: new $Int64(0, 500) }, { k: "7d716be96b3fb3395f370f2670585e96b88176c3f5306a1db0a37f7cb13485f7", v: new $Int64(0, 1326) }, { k: "7d72d05cb63dc72275d49e633157b7f79f09187ef711198364c607958cd49bb6", v: new $Int64(0, 317) }, { k: "7d74ffb6c26a2c2ee8152728c0164ebf895154340a1636adead4bbe879e936ab", v: new $Int64(0, 8888) }, { k: "7d7aaad5beccb280bfc2637d0249b1728b6083e21d241af8d8c0baae415e421f", v: new $Int64(0, 1142) }, { k: "7d7f28f369053cf29c74ff0101516834286b418de75f36e25b1cc243dba698e3", v: new $Int64(0, 5015) }, { k: "7d819194f1eb958bcea195829c2bc3a2b7d4845833d399c6507e77cfadc0fefe", v: new $Int64(0, 7659) }, { k: "7d8385840b09ad1d22162333b7aa4c20f130c33225f0a6cba7755e063fb17a0f", v: new $Int64(0, 5938) }, { k: "7d84bbc47677315bbe23acc2cb6a116029e1d46f52d47dbf0c3f78c608d3430e", v: new $Int64(0, 9333) }, { k: "7d86b09e929202afee935823c67c7b402d9a80cdaae36e44ad6036915de274a3", v: new $Int64(0, 4871) }, { k: "7d93b295cf6126695b5540aed50ccb20ca4d120d14b384e74fb5628ee7a5a0df", v: new $Int64(0, 9856) }, { k: "7d9995cbbf630027c97ba3314e2481efac9c4858d6c9298f439c5de1e70e970d", v: new $Int64(0, 2329) }, { k: "7d9da80034985fde8e207390df3afee26419e721987e4967523da81bacd53fb8", v: new $Int64(0, 4917) }, { k: "7da141c3862661ef01743a91aafcbb4d4d2a61ad75f8291f17b48b351b172e6c", v: new $Int64(0, 4469) }, { k: "7da6701b949767c5bba07e2a15f2ae803966db3b4b7fbf83665d2e5dc05658ce", v: new $Int64(0, 8853) }, { k: "7da7be9852c50cba0bb6cccd6097a04f39a3bc4308ef266bd11f062e3bbe9667", v: new $Int64(0, 3211) }, { k: "7db31e432d1966d86ed47fcd838c591cb792e828e0316af4e065077d00cc1005", v: new $Int64(0, 2751) }, { k: "7db532c17ee873553e8d0ba867ad9b80e6f94b811e9b90cc805e634b2b36dc41", v: new $Int64(0, 9978) }, { k: "7db9163b4e558317b40f8117788141de9e590e476bde3f1f5595e410dc43f9fb", v: new $Int64(0, 1819) }, { k: "7ddca085d92278a208eb9f41e3a1e99796691d220534c0a063ea1ece9775d2e6", v: new $Int64(0, 4767) }, { k: "7ddccd642d4d22d8f9f5ea7678ea4e7b737ee68f4dc40ad050219100a932393d", v: new $Int64(0, 6141) }, { k: "7ddeebddd15f4a2a27ed5b4eeeef6e6a17868fffed23f961b142f908af5b4190", v: new $Int64(0, 8793) }, { k: "7de602a4ede8cab5f6d1cfb34517414384bda70710f9ff1c0a5837ad7c6a5ce5", v: new $Int64(0, 2650) }, { k: "7dea6d313ccdaf826f8d18b8042cee7f80ed7d9779f35a9ca2ca963125d2f5f7", v: new $Int64(0, 4115) }, { k: "7deb8877515da576eae7c3539c8a5c6eaa8c13b80d7116c0cbf42e1fee770978", v: new $Int64(0, 8012) }, { k: "7dec72ca9e4d50a61edd659b3d082d22c24bae8d6e0ebf6a66ca5a660457968f", v: new $Int64(0, 2782) }, { k: "7dee39ff06d0eeba77a85869736ba26fe015a7a6e0b8c96ceba95c312fd11b0c", v: new $Int64(0, 250) }, { k: "7dee5025306665018047113df40234d401c0233d6429959655ef2ab952b9e647", v: new $Int64(0, 4546) }, { k: "7deecd613a53e44958f35e0029921856fc68dc253e08bbcb08f8a92b18db2c73", v: new $Int64(0, 8811) }, { k: "7df11549b3b90f7789f87c2c965226b75b6839ad119d88298f20ab065d508b0c", v: new $Int64(0, 8280) }, { k: "7dfb8a3c7f87d6420974a5e65a58cd27156844a497e06847f2076607cfe06373", v: new $Int64(0, 1820) }, { k: "7e053a556ec843c91d7ce0f44a888f4328d154aa605644f94440f45d58be9f83", v: new $Int64(0, 4500) }, { k: "7e0840c702cc1a9b5dad339add62532077847071b161e89dfc58e9defa5262af", v: new $Int64(0, 2009) }, { k: "7e13a20793c9ad4fb8ecf9d357442c5f71797a5da9f921a3bcdffa375a26ae79", v: new $Int64(0, 4746) }, { k: "7e1619b1038cb5504deeb693a5c8e3d76a0f3bffd8f570dde05040a132b8517c", v: new $Int64(0, 1625) }, { k: "7e16e0158527d08c1adc22fe8c1f8e46485637f04ec798c097f4b98bd9bed6cd", v: new $Int64(0, 3361) }, { k: "7e17f434ca52f6c950475d6580a6727c47c32b1db3177161ab62348fd625d139", v: new $Int64(0, 9059) }, { k: "7e297c4c04b6d19867a3cc589bd420329d0d80e00fa1c772b45d83d8d0497b43", v: new $Int64(0, 2040) }, { k: "7e2cf102264ed4cf36060048e9b6ca986652fdc440be78d46b4f3ec204e1f6c3", v: new $Int64(0, 3270) }, { k: "7e324eef6086a3cab8a1953afed6c150925803e13980a5b72d11c02ce2caaeaf", v: new $Int64(0, 1491) }, { k: "7e39a2c5b8230df59c9bdecd0b73e66f973bec35da932c3f0ceb25dd3a869f61", v: new $Int64(0, 6682) }, { k: "7e40e705162bc450142cb3c72732bd9c4be6b93f7296da13c82eeb8efc30f1e9", v: new $Int64(0, 7695) }, { k: "7e46259081b7ac38754044369bdaafd50879377c7837def107000b8889d6aa53", v: new $Int64(0, 8074) }, { k: "7e52cb04e8fe23f34f87d743900d14ad67b096edd280e31f78cffeb3a339d8d0", v: new $Int64(0, 2328) }, { k: "7e54780f7f7ffda711562883e1823fde0822206d3cfa2b08d73c3c93f46303d6", v: new $Int64(0, 2533) }, { k: "7e56e480b5c6cc78471a59b5950de3ad70b86ebbab4b090c6949ba7a7de5af80", v: new $Int64(0, 7955) }, { k: "7e686b8d870cf87a2d448ace4df246ff1653e7d060499dea122ddb053654a5e3", v: new $Int64(0, 8602) }, { k: "7e6b9a688e13e02e2e1967ba489362e0c85c7e495d4ef7b46a2887c3912536b5", v: new $Int64(0, 7570) }, { k: "7e784ecae3ab45fca3bf81bf8d5b43a21368ae8c0a8c7acf92186dc27f56671c", v: new $Int64(0, 1170) }, { k: "7e800a02a378a8ceb9d700db1a3b1aea0d91872d5463dce95dd0acf1e75080a3", v: new $Int64(0, 8662) }, { k: "7e825cf1c41c8b92af2a1a06938bfa2eaefe847f0704a53ef2becee3b5fe3662", v: new $Int64(0, 6263) }, { k: "7eaa1419b2049cb7e08cdca68933eb151a9d357048c28357500edd80f8c70a69", v: new $Int64(0, 801) }, { k: "7ead73599675fc5b561c16d7d0d0637e3faba51e48f4a2fb969418de08a3a8f5", v: new $Int64(0, 6660) }, { k: "7eb827237a8b72076aa170036d15ac99ee7eaf25e50c0502c605d7d3b5167c6c", v: new $Int64(0, 2765) }, { k: "7eb82fc6fda35ffc6fd12fad7e555324e9ac78980f1d5b666fa572aa3679d63c", v: new $Int64(0, 2864) }, { k: "7ebe7c7127c642869f3f52cde33f7e45581e73336f694c9beed63d1ec7b82bc4", v: new $Int64(0, 5742) }, { k: "7ed39bd842cc299d83c87539466680cdbaa8ffa522190ccf541672de099110a2", v: new $Int64(0, 268) }, { k: "7ee1720bc5d84c6b251154a1129362023f777ba63d64a50d9bcc5d4926772fce", v: new $Int64(0, 2915) }, { k: "7ee98a38a693f4eb10d3699d8657cfc5af0e997a28083e7585b199ce851d0c92", v: new $Int64(0, 8779) }, { k: "7eeae5dd8bb8ad96bd3a47931e18932c2f6b26f08e812920d177dd3396818221", v: new $Int64(0, 4294) }, { k: "7eeb50e3b5dd171436b6eaf143260637926235348616c7e9b1bc583f629af1b9", v: new $Int64(0, 9773) }, { k: "7eeb749931364fbbcfb4b74b808d1a22d7c85d5fd63d95b8a9ae4c45873c481e", v: new $Int64(0, 724) }, { k: "7eee0de273d8ccd6b5735afc4f808d8af99ee079800d83d92c26236e49f73026", v: new $Int64(0, 3647) }, { k: "7f01734fc088df9c4342be971585acd6a8251935ac4de0cb396b4ce2ca40914f", v: new $Int64(0, 1506) }, { k: "7f040c3fbbcbccd1cc93bc500d6949259ebed984360092851deea74b45dca713", v: new $Int64(0, 6332) }, { k: "7f0cdad2c2a524c421cf62b6d43f841d33dd3b13767708d7ab2c46fa6eb0305c", v: new $Int64(0, 8404) }, { k: "7f13b82d962fcbbd24195a0efd4fffd4f2d000825f9cb172d82a9b6083ce8ab1", v: new $Int64(0, 5897) }, { k: "7f236a61f50fe5098abd1458d5b6ff9542716128e1ff2e6e94621336505ac045", v: new $Int64(0, 6415) }, { k: "7f25574198ef438b13a463496633ed537a9035e67e133955cb6b7d4e673e7437", v: new $Int64(0, 1701) }, { k: "7f27d56a979593398fb9a7fb4e543bf899902a76316a8b46ab3552057de58acc", v: new $Int64(0, 3546) }, { k: "7f3607fcb7df3c0e6f677ffbe5cbd09a119b611d6fbb8d4d3b029e5f2e7f032b", v: new $Int64(0, 3939) }, { k: "7f43bb5c42f37c8468060f4f25d9740d89749fb301bbe214a45bce86fb33c018", v: new $Int64(0, 9617) }, { k: "7f47be9ed54b036f9b9640a95f38ce06a8774e7d0a048baab94c8adf8b2c4459", v: new $Int64(0, 1948) }, { k: "7f4ca8bfa1bc41b56427f755de181c2ab67bd24d55b639fba877765bc2295bed", v: new $Int64(0, 2427) }, { k: "7f500a3fea14cc79c41f6fe965cddd921d42780dee85add0a987a36705eff148", v: new $Int64(0, 5845) }, { k: "7f53b2ff1a8f1769405462e06716931e73a191166a0ded99105e4d1e237c7e2a", v: new $Int64(0, 4276) }, { k: "7f53fc1fcb7de85a288f248fc7bfcf0147b1593530121ad6bacc3486fb471226", v: new $Int64(0, 4256) }, { k: "7f5839fe59dca0eee8faaeea14697ed7d2ea6e267321814ba3e4536c04738780", v: new $Int64(0, 3456) }, { k: "7f6f56dd6755864437bc9f0a05a0fd48c15f2c24c3172a251fbc601b8d335fa4", v: new $Int64(0, 7150) }, { k: "7f75c55a201720b005bfbc5bc7271f5cf1204b4c5e801104d882db855e39b7c1", v: new $Int64(0, 1945) }, { k: "7f77a1922aeb5de3442d68a6e106e22a30cc91febebd9df79156c6e8892c5a81", v: new $Int64(0, 6423) }, { k: "7f78e1537e91b191785f5f3446f7162f41f5c6d919963e2370e8b4f7875bb4c3", v: new $Int64(0, 1862) }, { k: "7f889624f9f2d6be4ca95ccde07182518c5cc5305b816fea17623e8952a5f8d5", v: new $Int64(0, 1590) }, { k: "7f9363b062ae3c6d1aecbdd48b23c275cca59da8ddacd5bfe104b8101b9dbb4f", v: new $Int64(0, 6981) }, { k: "7f998ba2cf47424dd12c0db282af2c2327e380853728f0df7aaebb4ff57ec765", v: new $Int64(0, 6309) }, { k: "7fa247d2a100a35e038fec19f80ceb344adcb26c0161373fb70a14ada7d17ab2", v: new $Int64(0, 3766) }, { k: "7fa4b386c765387bbdf3cdfe4beffa2e08822b5ecc9ca13f75435c8fc4f3034b", v: new $Int64(0, 3635) }, { k: "7faa695f7081c86249d03be28444c424319151e1be627cc2c60e98da6d9e301b", v: new $Int64(0, 2239) }, { k: "7fb069b8ad1a249948e89d846dcb8e254273d9ade926c39494a71d40dc6f0b1a", v: new $Int64(0, 6158) }, { k: "7fb2ba7a97727903a32f3d39284a3ac1b138611636375c91381e0485c65faf6e", v: new $Int64(0, 2973) }, { k: "7fc9a67572f582fd8739e68f63c36a7668880b47b003e9b762f443bf22ed0c90", v: new $Int64(0, 5874) }, { k: "7fcb0ea5f36adba945108288abc26275bfb5cf123e7d8d6c8303e5199cb1ba9e", v: new $Int64(0, 7159) }, { k: "7fcdabbe90a2ef0d71d6e3e8d2303ccd8acc44e169971ddc4f255dd27cc914ad", v: new $Int64(0, 622) }, { k: "7fcfcfd9067b029b009f1b2b45705ecb285462e1a14e41fc2f3dd23eddfce1df", v: new $Int64(0, 4634) }, { k: "7fd00ae4c122939727488f0a74250ba6c15c9562f9b841183c4d256807b48c0a", v: new $Int64(0, 6491) }, { k: "7fd691beb1838900d712e2ba79bab49b3f9d446ca239fa664ed1fbeab234e8ae", v: new $Int64(0, 5574) }, { k: "7fd79b9930e970bbfa70f8ae08fc44a17461f556816a8781f6880f931c1e49af", v: new $Int64(0, 9202) }, { k: "7ff1eb5a5cb6ccf61e4da0bf26d06dd776890ab5d4ad1bff1aa9c14b852f6f97", v: new $Int64(0, 628) }, { k: "7ffa445f1409a2cf684e127003df26b04c25ed2cc964e1b2a28844b391f2a232", v: new $Int64(0, 5319) }, { k: "800e2c35845237b7e89e9917d5f705b5286b49edca36aab5c954fbe9ca62ece2", v: new $Int64(0, 9166) }, { k: "80186035ebf4e6ff7c8f8c7206ab3dadebcc0304c9f8e4e0e6edbee079b07f71", v: new $Int64(0, 1815) }, { k: "80195cf524f0c2829f07e8e8a0efc79c22771a179a12b077309d6ca7601abc0d", v: new $Int64(0, 6728) }, { k: "801a5595825d2cd458da0ba82176af70b91f02aaf6b9bc6772edbe85530ef5cd", v: new $Int64(0, 3253) }, { k: "801e770b49638329da42ba3ebf88abec7183b26e902be782f85ffe996b54b029", v: new $Int64(0, 4527) }, { k: "801f40eaaee1ef8723279a28b2cf4037b889dad222604678748b53ed0db0db92", v: new $Int64(0, 13) }, { k: "80225293fe99802122e9db2ee5b0000316bbab1fd9520173cec4b1073d019b1b", v: new $Int64(0, 7327) }, { k: "8028aca0e65583f1d43817b6c139350aced768e21a47c17339adda1d77b6a6ef", v: new $Int64(0, 8867) }, { k: "8029e9a677f2576dcd486398bc7594cda28fd48070ef7b52e3a11fbee91b2d23", v: new $Int64(0, 9894) }, { k: "80472967647e707f65cee9280d7516b5fbc0ad33b6c3ae236f2d05361c9f29cc", v: new $Int64(0, 4143) }, { k: "804db8f952bee521ca4bd5170f53df81f6a410ab33b2151f358d36b0a010b909", v: new $Int64(0, 9653) }, { k: "805c15bf9262accc55a7bc339904c84a27c2c98a1a799c507aa2de41b30d9c4c", v: new $Int64(0, 5144) }, { k: "805cc20614461826481c8286465b0157fb8031f67c4149382d5c02b08fa2d990", v: new $Int64(0, 7382) }, { k: "806f65c563e325dc617fe5cb07071c529302947166ec75f6c280b379a0cc897e", v: new $Int64(0, 7564) }, { k: "8070521a81d6b796904ba3ddcc3e54973567308ff8c4d20c133dea4c34c2e849", v: new $Int64(0, 9132) }, { k: "8071163d04042b56889ae094860d568e7247ff1be679956776e02e0dcbc7d431", v: new $Int64(0, 7125) }, { k: "8081a313b092186412106e54e28acea044bb5614156b1e193a1fca6908730e49", v: new $Int64(0, 7448) }, { k: "808aef4212aa40cf050aca76cc71028668948734796fd4bc348956c4f8ca4786", v: new $Int64(0, 497) }, { k: "8095a98a849a5e492612ef94326de8bf89f7ac44900dd2995e65f98b8c074ed4", v: new $Int64(0, 6916) }, { k: "809c573f93c52ccc632c1d924cd3f8ed49b37459d3608fffea8156d8d7194b74", v: new $Int64(0, 4661) }, { k: "809c62f6e01be08a051d302ea51c0d221088fc6f66b592ec592550621e606ea4", v: new $Int64(0, 9871) }, { k: "80a4154880d20e3f7cd8bf66d82e60a5103322e7d3247db28dfcf3c44ee358cd", v: new $Int64(0, 1499) }, { k: "80a618401c24f51075fe15724c47cae48d1e1ca0af40b77aa720f43c2c8f3e90", v: new $Int64(0, 9884) }, { k: "80acd854e696ee0caf7360366d1767fe581001ffc8e8151edd622e94edc89613", v: new $Int64(0, 2398) }, { k: "80af8ab5827b8717708fce6421467020cb9ff80b74d8b006b1f7f237c1ef8805", v: new $Int64(0, 6216) }, { k: "80b19b7cc4ad0b06027684f5d9f3d830694b46a8ff2e9d97472f335c401b905e", v: new $Int64(0, 6576) }, { k: "80b1ef933979285617652d51222d6f8498bac1ebdc165c5447ed52e6da3258db", v: new $Int64(0, 9433) }, { k: "80b6b7474720c8716b942ecd7eaafa694551b57a9c1a5844949ff14cb8d4eb57", v: new $Int64(0, 3967) }, { k: "80b8280a47dee4e626875edd34a615bff37a3934241c758457e970c40399769b", v: new $Int64(0, 9495) }, { k: "80ba9aabb050061c0695dd2267aeada4fca0c5844f60c3c609489f7c26071c3d", v: new $Int64(0, 4128) }, { k: "80bab4a85bf9b8497067b5a06b647b795f85f6037f71dda0759a7a3478839cd7", v: new $Int64(0, 9001) }, { k: "80cbb82d8512447aa9d55f2648ae55b9d7ef9f9a8bf3efe52e502a10842195fc", v: new $Int64(0, 1023) }, { k: "80e88546259222d4f4ce84d4dd52d3f3c2ec44b9054c1ab5f1b5761355440a10", v: new $Int64(0, 2337) }, { k: "80eedb2b10fb4bf8664cab92efa48359ca1af5f8fdcb7304396150b53bb27599", v: new $Int64(0, 6025) }, { k: "80f7d3555787cd6ac2cd48f2c44d24416a4a0bc1e4ed04571639e0a6f9c610ff", v: new $Int64(0, 392) }, { k: "811469e1437c0efb76c24e7478df36b825e12e0fce40628723b69fe6ec6d3888", v: new $Int64(0, 2891) }, { k: "8117de481931a36ab4d0c5781b108c63b28f1adf7dc0e7cf0c1a8d98615e71ed", v: new $Int64(0, 5301) }, { k: "81262815de52b47be3fde590f5b63cdfc2e73cfa0d3fdce73bd07201ffcf5fcc", v: new $Int64(0, 4329) }, { k: "812f57bd41ed33587562fe235090bee01607d10f9473c3cf9ef25616a485bef8", v: new $Int64(0, 2803) }, { k: "813703dd226f573136f5323b655bd529956470c81ad6add9476d6b1f5134a47f", v: new $Int64(0, 4902) }, { k: "8157a4e62fcde37830d70aa5712e81e061adbf385e669af77ab643d9294db5f6", v: new $Int64(0, 5583) }, { k: "8159ee56a7cfaeef3076aeb97ad297c90d45dfeca29f2c875377011d66a86259", v: new $Int64(0, 2715) }, { k: "815c1b55826e6da1e09ce5d408b4d4df11483d4f22dd5d29fabd71adf46dadb6", v: new $Int64(0, 5452) }, { k: "815dd5fe47a895fddd3d7bf98c3b4d88ae758d23ddf687c04027e9d22aa22276", v: new $Int64(0, 2289) }, { k: "8170fa0551a334f6b251679173c963614beaf747226fa57e021c9d50701d524e", v: new $Int64(0, 2916) }, { k: "817ed54ef9eaa15054dd08ff5ae97a5f54d7b76b4f90d4c6022a4cbfd5914d43", v: new $Int64(0, 86) }, { k: "818799ece0d683fc3556e6f221929ae4ea8d16c6a972081fdd43f4c5e3f834bf", v: new $Int64(0, 1774) }, { k: "8187f7109da31951ae1ba300ac5e0e17cc3019e797d0cb7ac9643fd3954ed8bd", v: new $Int64(0, 510) }, { k: "818b87f0f890ba4b5817fd6462ac818dd6c758293b9e89e3b3abadaa32c769fd", v: new $Int64(0, 5148) }, { k: "8190f64944f31746684f7318ac0ae94b6f79eafdd8e58271f9ab921c73bb7d86", v: new $Int64(0, 8424) }, { k: "819ae5d5bfb2bda30a86efd8a2b3aefedd42c1caec999459b54d577ddb26ecb5", v: new $Int64(0, 1418) }, { k: "819cdafd47192f210d82404be3427a43e8d4280d57c86fd4773db541ed7bd819", v: new $Int64(0, 9404) }, { k: "819e6e3a9e784b0d6796cbb0b8318a937c536f882d8dd497fa067f3918723c04", v: new $Int64(0, 3124) }, { k: "81a28da98e8814c322c6bc0f992693290bede2dd41adf7102a301e909710427d", v: new $Int64(0, 327) }, { k: "81a2cc73f633dde4654df87cea26ad9132e382d7baf933466f01d7fe91f41da0", v: new $Int64(0, 5971) }, { k: "81a52fae0f015651b21438cc6708c470274075be91992650830e1ffeea09a09d", v: new $Int64(0, 553) }, { k: "81b1c6d6b0031e6d0309e1578e6986b1b63d7d607765835d45de9f698a198a6c", v: new $Int64(0, 1934) }, { k: "81bbeff1bc69b60d22368752a17eda1f350c6f9137491639ef0b41b7d06fc8fd", v: new $Int64(0, 7387) }, { k: "81bc97ce0f527ff6bcc24abdad6d136df39973a6032c4fcd65fafadf0024235a", v: new $Int64(0, 9313) }, { k: "81c0539fe6fef7ade87e0c90a8956c0f3143bbe87a606766152aff92693adb26", v: new $Int64(0, 1658) }, { k: "81c30d79dbebe8db6673de3a85da86d1a61773dd66cb9f2ea2b6e7e8b8b6378d", v: new $Int64(0, 1441) }, { k: "81c7720aeac3cf0361b661d13f52623d1485e2345966c14dd9a1388c5e3d0205", v: new $Int64(0, 7772) }, { k: "81cac415537fffa29b16de4d4c85f661fe9813a504d1978c05b6c6add4c43c87", v: new $Int64(0, 5647) }, { k: "81cf736426de8b1333cca50c6cfbf0ec4d9bd598faa818a1ccbfcc631c9ffd8d", v: new $Int64(0, 1381) }, { k: "81d80bbf9e9eb253872463d66d037f5099bc8404ee65767c7b266c7bd394fc13", v: new $Int64(0, 2968) }, { k: "81dbf12fce5aabe6775ca3b0690b54570ab82c962a1c982f9c312df6b0aabc91", v: new $Int64(0, 6386) }, { k: "81e9cd832af3a47e6bc48d9530e83344767213e5d03f5587bb929a7498d89d50", v: new $Int64(0, 5663) }, { k: "81ecdd7af2249f3628fb42c8f23abfa26d9931b491dd0057cb54b96bee4ec570", v: new $Int64(0, 7959) }, { k: "81eec0daca44d5d1da85b95bc31051b1cb8b454e81fde62efc36b12d7813e7d4", v: new $Int64(0, 6021) }, { k: "81eeec694329fb761ce40c9a94eec1643d90bc02b8cfe0c0aaf10d6c6e980a15", v: new $Int64(0, 9842) }, { k: "81f1ca3511fc70a712a68b54d54541d8b68686b67253033617a59b019c93259b", v: new $Int64(0, 2077) }, { k: "8207a3b5a26eb4473710e7f6e7b8cd86b834eebc7fac04c9608b23bcb41e827a", v: new $Int64(0, 8207) }, { k: "8211c9f27e2913dfdc40293cd809d0170ed28eb8898e29d3d8b536003fac9d97", v: new $Int64(0, 7758) }, { k: "821f85073d1b9626cd8a62780ef62aead1907c4c699853b21eb270f42d19134c", v: new $Int64(0, 6778) }, { k: "822a988187f2672f9caf14f40a360fd5f6aa57bd5330038a8c0bbb2a8f020195", v: new $Int64(0, 5730) }, { k: "822dbaee3c6b264601d48e95b3174a650bbb5a7cf2b54fabe752ee22b0e30b89", v: new $Int64(0, 6079) }, { k: "82367b9a0cdbe34c917fbf895b692834350ca8f68457724a5a4c6559f485605e", v: new $Int64(0, 5340) }, { k: "82455e70783f09758c62b353c3467a93606ac076187a3736d9523f36c2c739dc", v: new $Int64(0, 3903) }, { k: "824abdab6dc5ff804774cb3599132205bce90ce2b8cd4c3d78903bea0e385aa4", v: new $Int64(0, 8350) }, { k: "82529c211cece03b8b349db87a8e734db8a51411b5eb2fc0d8965d7430a998c3", v: new $Int64(0, 9306) }, { k: "825e0ef899efe469a7b2e8ad4850d8c9b6494c2002fa121e44ab8ffeccdc08ac", v: new $Int64(0, 1103) }, { k: "825f8d8f628cb55539336802ef6e68678d6b96d350dc37f3f7c5b04131ad20c5", v: new $Int64(0, 2021) }, { k: "8273d0787fc48753cc3daa0e137759434fa80bb7d8f986bef4efb63273068e24", v: new $Int64(0, 1551) }, { k: "827563857e0f6d7cb876b2f6348ccc8f19c9b7cc64039ddfeeca341c1480bd2e", v: new $Int64(0, 1700) }, { k: "828d32e411914fb4ece49330d64de86a53be194f1d3972ba6ad083b9930488bc", v: new $Int64(0, 9324) }, { k: "828eb0dedffa1a0ec5829abe8982f0cb9ad74989e3c56648a5550f865d6c5640", v: new $Int64(0, 3659) }, { k: "829118544b0790e4db5b59ef5f4911cc8f5b707598586ea07cccdf54b13c6249", v: new $Int64(0, 825) }, { k: "8294056742065afaa46666d2de5b7ec27f15da88d49d0389af392dc370381c72", v: new $Int64(0, 918) }, { k: "8294bced43a6e1791b3320e242c029f45b98a5707a190b4cdbd90c742811b969", v: new $Int64(0, 5630) }, { k: "82977210e25b2c84bc26bb8fdac9f67e4987e53b407aa7344b88015873219477", v: new $Int64(0, 8485) }, { k: "829e8bf380ba0bd38ce8c871ba47271f9ad56413b3f8aea21d64a9caa2ebe01c", v: new $Int64(0, 8384) }, { k: "82a95e5cfeba2b4b8948c4cbda1f46e07e0fa9680c1a77d16e2893dc9fc6a1d0", v: new $Int64(0, 8385) }, { k: "82a9a9c20ea371ae384193812820b2a84eca913f0444c0d7d87231e2ec3785a9", v: new $Int64(0, 3106) }, { k: "82aaf782d88c1213b9d2ac18fff34aad65de1392ac116045c1959fd5cfcc57e4", v: new $Int64(0, 6100) }, { k: "82ab5cdfc2010eb0c6f40d24bfff8352be662d51e0fbe83df069feb8c63c77a3", v: new $Int64(0, 7513) }, { k: "82ac6b7d17188c657033ca4cd09224feee021d47a806ddcaca26e8da4399fcfe", v: new $Int64(0, 4664) }, { k: "82c8dc64352ae8540b13962bd249a99c92e3a4b63e6e0d641f3c115cb60a1f8b", v: new $Int64(0, 9930) }, { k: "82ce0a7d424851596ced262f841e1799e02dd1567bb112cce46c622a2d9bef08", v: new $Int64(0, 4106) }, { k: "82cf123badf80698be90b3faddd37733433fead400e3bbeeb7c5f2cddcfc06b9", v: new $Int64(0, 8421) }, { k: "82d2e95f23894345e35b1911b3c1f53f467d41c413a6865441d41c0295553178", v: new $Int64(0, 3104) }, { k: "82d70a60831d8baac0e3a937e04fe102dcf659cfaebe68c278221e3188035c0e", v: new $Int64(0, 1908) }, { k: "82df7e28cc53a5080914de23d1f69a84dbc81f26814e71b47850826baddb1bd7", v: new $Int64(0, 2874) }, { k: "82e211c5113554e8f327bbcd230a8db3f869126e28a1a2bd0218b44e271dc311", v: new $Int64(0, 2370) }, { k: "82ef14c91094f1df88ab15cbe98942c64a419a9a949903d7a33dc13a517ecac7", v: new $Int64(0, 9810) }, { k: "82f1538ef1bc722892895f8b95715bf586e13f4e1325e4a3735138d9007d1645", v: new $Int64(0, 6645) }, { k: "82f845de1c262c30383ca57eaae23c89e690ac0e5201453f290e8ce56bdf8702", v: new $Int64(0, 3384) }, { k: "82f8dbcccc123001c100aa3eb68e7dbb0758e4dbd9a02b134c0feec03c46c3ac", v: new $Int64(0, 4343) }, { k: "82ffe6269c1970df8162fd6441dd971b2c47ff552829643876ddd247ed55cb74", v: new $Int64(0, 5108) }, { k: "830492828b79ca37bc50221f0e17c6a643fc7ae141df1554951ea76d84e77b7a", v: new $Int64(0, 6531) }, { k: "8307bb4252d2b6f60461e84801deedaba707b7d2fd14bba5640856d655f0f557", v: new $Int64(0, 7815) }, { k: "8315d53780549a4bf748320f6271ec1e1be9d814d883bb152a3a51f546e7a350", v: new $Int64(0, 1648) }, { k: "831c8d65f3644fd9fb099ef2b187f6e96c75f894ed9f2529564405f658523649", v: new $Int64(0, 934) }, { k: "8320887d89af0f557a138cb851c3dac09c3d44a7f0563ce56a34ef4e0f659e20", v: new $Int64(0, 7973) }, { k: "832f64e1094dac35abd3536446c6fb44cfca3f364e1516870b09354aefe78a33", v: new $Int64(0, 3847) }, { k: "83356914b0baec88d1925d76e4296ce1438e62dd8f81fea43b6452b78ebeacd7", v: new $Int64(0, 8659) }, { k: "8338e2f0f96a92e65b50290727fc3c177fdca39895f445aa6ec44270ef040e0f", v: new $Int64(0, 2834) }, { k: "83442ab315d5fbf596384e19e1fa2dcce47a4778b51494098cccccccfdaaee77", v: new $Int64(0, 9279) }, { k: "8344a853022bdc7d1404c52397eaa7c493ef32be75f54f8a82f3b47a8750e795", v: new $Int64(0, 2624) }, { k: "8351f9a52f344bdbc2b4428a39464837f904751a0e24f9030c2ae39ff10c6b57", v: new $Int64(0, 4279) }, { k: "836365d7104d6573f0cf5d73b315c799128b997a8ff63e13fa180627c4a4e684", v: new $Int64(0, 6219) }, { k: "836b7fef135b3c915ef2580fd2ab37e4712d2e09e72fb30f7e23fc5595a71519", v: new $Int64(0, 4906) }, { k: "837245bc74daa3a56d475b3abfe8bc197ad251e6f52180cd5f77cd26dc8d8d03", v: new $Int64(0, 8986) }, { k: "837513a908846f2f167a25a36c089c79f1902e26535e0306773ff3569821ec9f", v: new $Int64(0, 8470) }, { k: "837a1595a6aabfc93aa8e45683418833069773a73f1385c139b15e3964d1aee6", v: new $Int64(0, 5792) }, { k: "837b8bc4db9bf9820f8f8b055a3a56d1e9cc805988f11148dbc2865d4ed09d31", v: new $Int64(0, 4563) }, { k: "837d5c66d0896a56bbdc027d9421f8e9992bce0e9bd7edfd4ff3e1558690049c", v: new $Int64(0, 3898) }, { k: "838dc6e9cdd6007ed25ab5ab80a1038a1b690a0a9ea4517afcf14539879cef8b", v: new $Int64(0, 1723) }, { k: "8398204ed448a41ecd01b349d381c3ed2da89b7c80e51fd51360c5fb8359dbd2", v: new $Int64(0, 736) }, { k: "83a7c938927c1fd1ecb30fc306e6cbbeefa95908d8c4738a2b52bbc90781637a", v: new $Int64(0, 5167) }, { k: "83acb81456d830f61e3bb2324674eb4837cbd9660dc29ab52b780fdc227d7c2b", v: new $Int64(0, 1677) }, { k: "83adc3c010bc5752e42ea3454e7a2ba45e0f1c11a2f74dcada0a5789d818728b", v: new $Int64(0, 4523) }, { k: "83aed21336bb0292c7e54f165097a2c5c6b61608b1391cfa3c5b8049bbaa4177", v: new $Int64(0, 7110) }, { k: "83b6378b7f28dd9ccef5ca833d3d7450731d84e589fd40094e22570aa082f222", v: new $Int64(0, 5051) }, { k: "83bb5b38aad8fa2a9273f5b795f84ca93d0c9afeafdd1622a3d5885eef78be7d", v: new $Int64(0, 7411) }, { k: "83c261f3a9c1c44c7911fddc6349c511ca338ec1cdb4b71ab88d339345cee197", v: new $Int64(0, 6494) }, { k: "83dd9d47af61de8ebf3e9101ec058433bd442e8fa1a8c309840bc8ea966667b7", v: new $Int64(0, 3472) }, { k: "83e1e7c19e7aecab3e63c824ef99208dd4d90fd21997638cad44a939c85cb774", v: new $Int64(0, 121) }, { k: "83e724f19df7a0e88d38c8adbb3f58bef38e40474e99bb49cc5c840c1e993fa4", v: new $Int64(0, 7453) }, { k: "83ef1ce17d6ebf057a45f7ea64897284aa19b62f3753fcc5b2ae9d6fce1e4c79", v: new $Int64(0, 7714) }, { k: "83ef7afb796cce20530af5cb47fde9fe815e8c9ffc841a917146f52ba4861934", v: new $Int64(0, 715) }, { k: "83f09f34e9e750ebe857c4aeb01d08df1523d6de12c2266f115a3bbc69a07e52", v: new $Int64(0, 8188) }, { k: "83f13c7755b0f8feba9e0c7c94d4cec2a0e6a5dc938f340993b2f5e8cf357e55", v: new $Int64(0, 5581) }, { k: "83f3cf56954499b34ed88b6a43624b9b4506a2820c4086f9e1443eeaf5cff176", v: new $Int64(0, 8651) }, { k: "83f6628593d0979ba3ce1297bfc9a7bdd2a8c12c7aab91fad33c75c81ef78f1b", v: new $Int64(0, 7742) }, { k: "83f6ab7c8358f9ee63f68d9184ec1b2d03630365b7af721e7d4df141890a6565", v: new $Int64(0, 7875) }, { k: "840021938c2d2626318fa2e11a797e4af4ca0c0b7e1ef317a689aa09e84944ba", v: new $Int64(0, 9134) }, { k: "8403c5cf7babc85224c561d78f03fb04ccd4fc8ae90e779b6272bdd8be4c4351", v: new $Int64(0, 5434) }, { k: "84182022cafc2d1ea755d80187fd48d266918fb524fa520f39d3a12e990fa5c4", v: new $Int64(0, 3369) }, { k: "842168aecbb72002aaad143df40817ced0e2ca07ed32bf7501d7ef85b1524fdb", v: new $Int64(0, 513) }, { k: "842c761056cd173465c904c234d6098377c31f2937b8d70d3642af9ea7d5daa5", v: new $Int64(0, 78) }, { k: "84309586861f7c6de5dd0b388e60066c007a66f41da64dea0b6b6e643409a976", v: new $Int64(0, 8514) }, { k: "84309f9fab623d9c9e011fe19fd1fc85b134f5411b7eb53d00eee3ddd8da23cb", v: new $Int64(0, 645) }, { k: "84320a60d3c7ea9de6c178b8ae0e786c0e1e061126d4dafa42e9807d88cde9a2", v: new $Int64(0, 6810) }, { k: "84385e71b9c0eeceb8de48a660427576a27361dc190f8dd0c2a28a034d90795f", v: new $Int64(0, 8741) }, { k: "843e04e339165d35bde7f1d611f93427090e14c64965c5183c065e0292b07dfa", v: new $Int64(0, 1302) }, { k: "843ef3bc6809ad3637158d80c05ff0bb6e4c905d9df81d91f3784b8fabaee0ae", v: new $Int64(0, 8834) }, { k: "8443220ddc27179cfef67b05e9f4b20dfd66d37fc5f006f3f24ab9955bbac170", v: new $Int64(0, 8347) }, { k: "844dae72463f921d423ca6250bf210c4b227eff6d26a0b95c142c81b4adfc12a", v: new $Int64(0, 4067) }, { k: "84527db89c9a2f7c222c6fa6b22e898247679d395cc73ced5e2de19aa1b01578", v: new $Int64(0, 6250) }, { k: "84548a22c025b138d445afdae455831d38e70753d183fda824f77c4d2cd344ac", v: new $Int64(0, 2792) }, { k: "8459db7d119d5944323641465dab111581ce19ed33632f5bf18ca6dfeede7b21", v: new $Int64(0, 2169) }, { k: "8464bdd1942889aacdef82e5630bbe37cdfbc43e351fff70e2ed9dfdeca22b6d", v: new $Int64(0, 4748) }, { k: "8471e3bacbc091ab6540b2e6d1eb90e3305776cc71b2fd09b89962b3d4674906", v: new $Int64(0, 6892) }, { k: "8472f85f2bb500b6435421a5801182b743875b59d6516e833ee78919b1826cf9", v: new $Int64(0, 2770) }, { k: "847669e9f5bc70274e7d923ab1f73d60d15499200e5b6283d03ff5e7adb05f12", v: new $Int64(0, 6867) }, { k: "8476b3d0d28e6b939b9279f3fbd2a1a20892d015cc6a92f766c43f3f97fdbcab", v: new $Int64(0, 3142) }, { k: "8478209db66374355e4a5633fcc8475d469acb55dbba086708eb899744e05ad2", v: new $Int64(0, 9551) }, { k: "847c26b9ee03775b4a84ca396b09eacd02f6d0d84d23b4f7b632a36fa74914aa", v: new $Int64(0, 6699) }, { k: "848a542e06dd8e364e2441a1c73cc48baeedd0a3ee5729f28f01893f6c2e4378", v: new $Int64(0, 460) }, { k: "848da8e3624ff4c3ae1899847d01fafcc402960e5f22449647d51df224600beb", v: new $Int64(0, 6823) }, { k: "848ef025c0bd18ae533d1a135177f1af00551f30be635ad79bc5b23a5f47c6ef", v: new $Int64(0, 7190) }, { k: "849107b78775804bbdd384ef02f6e61726014bc78a824a46b7e5ed4cbc520a9a", v: new $Int64(0, 9260) }, { k: "84956e9ea2f9e520adeb1d6ba84e14e02e8f635bb3399aae78c62e1b8172e2fa", v: new $Int64(0, 1697) }, { k: "84a2fe2a5251fd62d3206da8bb4c1175aac4965c76763522c2fcf5ca2050dd02", v: new $Int64(0, 9780) }, { k: "84b1ed339b1cc560b9d1f2307bc0c09b357745ecf1ca3f1473955edbad64e578", v: new $Int64(0, 557) }, { k: "84b5b6fcc1d15e858650e5ca20c506645ba2b51b215029e5c7be51f529bf8d89", v: new $Int64(0, 2163) }, { k: "84c1d3a138fa40c92866c311f8327a1b1ac238f44a16ea96852d5638001657f5", v: new $Int64(0, 5257) }, { k: "84cd3896cc799ba23cdb2092d80c724b62265681ac8137ae3bfa39ba148e256b", v: new $Int64(0, 5672) }, { k: "84d0e56560fb94735c0895763e570e8e5e396b08d2cdbc24a9bb483415520a1f", v: new $Int64(0, 6807) }, { k: "84e451b08ea91b4777a4e25e68d65a1db13e0c296f3542bb742d2c7808712095", v: new $Int64(0, 8839) }, { k: "84f77d3794ade2d34e39271d20b1f77afc7e036753a5483bab033e09f1f19b47", v: new $Int64(0, 4030) }, { k: "85024842c06ebe507e6f9b0047ad2bf26d84d802c24243164074ad10f5b9f203", v: new $Int64(0, 7824) }, { k: "8505868667ef6d402a4bb01ba86cd39958b0dca45e246c6791f35d6ffb7ceec7", v: new $Int64(0, 3973) }, { k: "850c2a1e5e6b8e540e5994f961e52a5b4bd36f0caf05c88f5635e36a75ce4036", v: new $Int64(0, 712) }, { k: "851016629c522ed3c67df1b569a13a01cbc08782b0fc856c3bb4f6388fbae501", v: new $Int64(0, 5823) }, { k: "8510df9a99925f5bd727c7208f8e42e05a0f106f3cdeef8bd9b17a09d3b9b536", v: new $Int64(0, 3069) }, { k: "85199f189297ad58f2b978ccae2383ae3331b47e146be53e5269a11f6fd612f8", v: new $Int64(0, 9073) }, { k: "8526e14700ac08c7cc569285367b7996b69b2bc74ff72d8bc99b450bb4c590b1", v: new $Int64(0, 5710) }, { k: "852e389c95ff113aa481ab53997778d3f7e76626f4857abda74b47e2649c0e3f", v: new $Int64(0, 9225) }, { k: "85302f8385cadb5432f586c3c1b1a03d106fc11a4b26d826f51dd221249af00f", v: new $Int64(0, 4205) }, { k: "8536a8d1fa9738835bcf17612eb9b0a75b714c0bab14a5a233ca32b90a102a90", v: new $Int64(0, 5058) }, { k: "854245317bfeb07366bce8c5b375a158603c6a362195c83c990a5f0eb42dc3e6", v: new $Int64(0, 3365) }, { k: "854271b0527493bb0599258a8344dc28d91029e141719d749b6deac0fc8cfd98", v: new $Int64(0, 2134) }, { k: "854326043daa6844f7a9ab5451172040b3d17b54e78e8fa61d4e99eb775c6d95", v: new $Int64(0, 698) }, { k: "855510e9d11702c6602e5bf9f398ee77d8f1eee27adc2a88d3811b43250a1657", v: new $Int64(0, 6022) }, { k: "8556cbf1ecfde9bc1cb13338b66bab156e3525feeab0a1245ebb67c2e00db9c8", v: new $Int64(0, 1397) }, { k: "85584aaf8b1244c0741680d438140e21e39b05f079b8da9703d4dd03996df501", v: new $Int64(0, 8708) }, { k: "855a4d2e209e5795fd80959d1111d645e34db4e653007672fa8b3f7c684ba3bc", v: new $Int64(0, 3296) }, { k: "856085b4c1be7c4559d999a4771f1e25e15bdf1eeabdc2add16daab7760ca551", v: new $Int64(0, 8795) }, { k: "8568216a8efe1889fc45eb4163ba5d7f0fd34678ed050817dc5d53d8fc8e2403", v: new $Int64(0, 5356) }, { k: "856e5ee3dfc6d228d3d794f543034dcb2afe747149fa398a8e9537d13027eed1", v: new $Int64(0, 9360) }, { k: "857424a7b4c3defed9dc40df84cb09a8c511a6d558e03a7429d07df716bd38ea", v: new $Int64(0, 2435) }, { k: "858e658cbbd69cdcfef8a88b77ef3f817dbeccbc326686578541b885303e764b", v: new $Int64(0, 146) }, { k: "859313bee130a905ec80fa460636d8950bfa51582ef76d936951c0435ee8827a", v: new $Int64(0, 3620) }, { k: "8593a3cacd933a1841b169258617c9d86bde5be17433328634aa0a3166416ca3", v: new $Int64(0, 9193) }, { k: "85991b92fa19cd53e3d70ba9cde3f59c4795d02d0829ff278fd4d24cd7e449dd", v: new $Int64(0, 2509) }, { k: "859a9fcd321ecdce7fda1c98d817794e4afaefa75bbcfaa1fb92161d86e734f2", v: new $Int64(0, 4461) }, { k: "859cb8c8f5e963902103896b317a690a79e8b448729f82809ccb78ad4059babf", v: new $Int64(0, 306) }, { k: "85a2228a446f097444438cf43f3f2b934572e72dd3270f7346535dbe95036a24", v: new $Int64(0, 9679) }, { k: "85a67ffcfc3364e8051652198d5bcb6cae1ff6d61ef3a660c07e55a2289b151f", v: new $Int64(0, 920) }, { k: "85b24dcf41cc28aeb7027404ef89dee44d347ef60e6dc420f75bce37be3fb870", v: new $Int64(0, 7057) }, { k: "85b926bd8e07ccf68e5bf8acdf8bf964755e3a0bdd7ddaa7e6931478a9743374", v: new $Int64(0, 7813) }, { k: "85c176afcf9d74d92f76fa572401a78b26169eb3a4cb9d7423a43b3ead40c207", v: new $Int64(0, 5949) }, { k: "85c72f92228ea6a27a4db359ce908da5c4fb79cf3d671ae8f4b7ac93d4c7e158", v: new $Int64(0, 7660) }, { k: "85cd456bba7e91cfdacf7741eeaef9ed0976d24d657d1ab040cd794f2b2eb6a4", v: new $Int64(0, 6819) }, { k: "85d3c3c50079a4e846862a9b2c5e12378eea724b6af5af040dcd1bdaecbe99c0", v: new $Int64(0, 9437) }, { k: "85e77afd3e6250e465c09790e275e09c3d75d5dec52be81815d02d995f85ff1d", v: new $Int64(0, 6431) }, { k: "85efb317e2ce32513ff703dff2751d47e8eee8c1d4b28ba4cfa77a4a50929e2a", v: new $Int64(0, 8480) }, { k: "85f19b049fe1b2499dd5ee9901935ca60851dedbb531bbade01550e48d129672", v: new $Int64(0, 9753) }, { k: "85f24d15571ab956e9853a0cfc0d88d04d8524c692013805ad2a0aed4770eb9b", v: new $Int64(0, 5217) }, { k: "85f8a798c389b2c474d415257b186f06e8a5715f28f8ddb0b171c5776f2f0ff7", v: new $Int64(0, 5440) }, { k: "85fb0980f3d152c887c4f353b726c7bceb00195e78080a8459e8ee598c4bcd47", v: new $Int64(0, 1756) }, { k: "8601cedef31027c7a303e62607facaa7420f701b22836304b4ed9fb06f1c89c0", v: new $Int64(0, 7610) }, { k: "8601cf67282f9c47a332050e2c0285446bf0b027a151683e9034e71fb919febe", v: new $Int64(0, 8921) }, { k: "8616878abad59fef880b94c86edfa2d2df7c3e69cac92eb0a39eb31303f53a08", v: new $Int64(0, 4639) }, { k: "8617d1c51af77f8611fd57ae0ff38e1cd06ede88b60e0b25549c3c31eafe9843", v: new $Int64(0, 5162) }, { k: "86181711c50a00eaf6fa052f689dbdf4f6e54f6cdeff6f64daccd1466bb1e830", v: new $Int64(0, 8230) }, { k: "8621643d7435d7f0c272b7a8547fbed3cad3a36695ea7c00a8b9e0366afe7fd7", v: new $Int64(0, 2082) }, { k: "862493fad31146763abffd0f0323b3d0469b55ccd09f3243a77c4513ed5473ca", v: new $Int64(0, 8076) }, { k: "862bd4f80e9529aa82a89a85e136d283cc2df99152356ab1860f9b3f562d1631", v: new $Int64(0, 8630) }, { k: "862c079a7631a26bced74088ba35de2d8b9214a8e87b16c10372e47412e87b67", v: new $Int64(0, 958) }, { k: "86333c012015d288b93ab1ac59ba09cc6e8b4aa0b1ac25cb5b60216b68a77893", v: new $Int64(0, 772) }, { k: "8636df4df3d0e7f8b353df499133acfbab4323addd20f9091e90fbfe220b08c8", v: new $Int64(0, 2378) }, { k: "86407f505068f60239096b050a06ca7001a1425d37ea1dc330512751e898881e", v: new $Int64(0, 3359) }, { k: "86452deddfeb90acc51a59d2815aa2e4086c80c697c06084e86d4a6475e0772e", v: new $Int64(0, 6289) }, { k: "8655cd8d056307330fc3f78e7dc6c587e1d376ef4486ab4541e9a6ceb99d0d84", v: new $Int64(0, 4723) }, { k: "8659570e827b9d3ac3e255de059f2797298acd750514de4485b00b73bea23fc5", v: new $Int64(0, 2200) }, { k: "86639ad84d2964ee3caef95e9d8ac43fa253587447820fcdf63f7cb28139c302", v: new $Int64(0, 7749) }, { k: "867329ca86fda577cdfe3e391a1f30ee6bef37555bb1a7757d017f5212dbc287", v: new $Int64(0, 6028) }, { k: "867d8769afa58620a705d36cf2e59caebf35433f2b6fcf623a0ef2fd5c20393a", v: new $Int64(0, 8680) }, { k: "86811274ae1896e720142bbd0cac9e6ea2c3a891fed291590a36b4e515ce0fbb", v: new $Int64(0, 4844) }, { k: "868321f95ddcc58c2c730ad92d0ca41796e42d0a01c2fcc425f816836a13be7c", v: new $Int64(0, 3716) }, { k: "8691d84cb6d3975a2b18b0fe3ea934d37cefb6cf39122e9547fa588fd043527c", v: new $Int64(0, 6452) }, { k: "869752da291b66f8bfcb90fee875305c6b6a9ffa1351f7124231ca52e230a4f4", v: new $Int64(0, 9798) }, { k: "86ab938cd7765ac59683552db1ce76983f5e68a16bac3af55e92de3c5e3c498a", v: new $Int64(0, 1796) }, { k: "86ae74382a9e3f9462832d115a81826325b69af2a3d95c0c6f62f7dc8dae7938", v: new $Int64(0, 3399) }, { k: "86b41885d549e76dee2bc7c81dfbb6cf3ca6b530f96bbdcf9ccfc79becd4f9ac", v: new $Int64(0, 5113) }, { k: "86b9def37f2bda3a05ed52a1d5415fd22c790394fbc3e699fddf4ff4c3fff45e", v: new $Int64(0, 3963) }, { k: "86c10020afb4204e5c2030da99db0f09295c5554ed060b2b646ecb463622a8dd", v: new $Int64(0, 7960) }, { k: "86c2d25ae3ad671ae92fe47803a419da7eb8706ca1d0eb8e5f2144585aec1aa9", v: new $Int64(0, 3198) }, { k: "86c4c2c47f5f964fa8e33ef936c8fc4bd279befb423bcd1fba83efa1f3d2f123", v: new $Int64(0, 9905) }, { k: "86c65597ab507e44d5c62d35e71c7fe43d4cbd510fee1097449c4f64a4b3e93c", v: new $Int64(0, 2400) }, { k: "86cf475e4f69cc385addc36463bfd2b89b5433999f5b5adf6dcf3cea82f4059e", v: new $Int64(0, 4591) }, { k: "86d38a85f14f7ef75f71c65874617bb406ff39819de959206d649a1399f222d2", v: new $Int64(0, 9323) }, { k: "86ee5dfb0d8274c1c3da5f965df5fe403bcd83a367d8b790518d4b5ae5e43253", v: new $Int64(0, 9048) }, { k: "86f2d51b3157be8ad92db5aeeaed74ab1713ab40b8e25446cb8b7332831f08ba", v: new $Int64(0, 3817) }, { k: "86f7d1afcfe4d1cba18680a9590e4361d76317f0146407d02580c1d513363a77", v: new $Int64(0, 3851) }, { k: "86fdef387d32826102e4affca5994e5dc4f574e070fa67c16b00a788ad1c483d", v: new $Int64(0, 9350) }, { k: "8709efbd3feac10af729a964319210264e6aabec08e738639865d4f15dab75f1", v: new $Int64(0, 6335) }, { k: "870f5cb451ac5112cc7b4bee40265553fefdbf80d7708a5f9b5a501cc9726a2d", v: new $Int64(0, 4665) }, { k: "871342ba0da84e6fdf48f958dcc84ccd2ab6345506893019141b2d6d2aaead39", v: new $Int64(0, 7120) }, { k: "8726048c9b842993baecb2225ca1dd77aff33fd3e6cd4d19319e2da2a1e4ebea", v: new $Int64(0, 109) }, { k: "872ed9dc1577a4d60bdca36cc86e38183eed1558fc18523aad95293931bbae1f", v: new $Int64(0, 5426) }, { k: "872eeca6efda793d578a244a964da15a84ac149f75829402cfdb50f7640b7020", v: new $Int64(0, 5070) }, { k: "873621ab8a806f976efc7589d24e63063f95bf098163a516c15e4dcce406b791", v: new $Int64(0, 9250) }, { k: "8741fc7ea3a600afd5b1e7f7dd7e47977e0ca926fc9ef085f67a812ad6b939a3", v: new $Int64(0, 7899) }, { k: "8743f5261da0638c35341e33f4c9ed4e53e57eacdb97b484a1847fc90cf81beb", v: new $Int64(0, 940) }, { k: "8749159b561913955ffd32c26675525d4f52931ea15822151f9df2dac578847a", v: new $Int64(0, 6202) }, { k: "8749698e1d5b01d3e9239adda6cd9d566020722ef51e7d4a859face551875a9c", v: new $Int64(0, 2095) }, { k: "874a90994d6ef2f0149db2fd394563c9c7df77ea5c972cd5811f8bf1ee3b1d58", v: new $Int64(0, 6467) }, { k: "874ceac12b4ed85108dc82d803715fbb6e591db3b3ac97248ddd72cfaf447970", v: new $Int64(0, 4023) }, { k: "874eb28c3f85289970ec5c1ee84b5d87527e797dbbb7ec3c0e907231fd0e9a78", v: new $Int64(0, 9564) }, { k: "874f65f9b9c682b38e09e4c3fad99f1edb71cf343797b9c410a98f06114ea27b", v: new $Int64(0, 2786) }, { k: "8751261495a88ffbebc4880f7b248545cbce412b275b1756df863fe101abbbc9", v: new $Int64(0, 6518) }, { k: "875188cd7b3fc6a6c2e74f05eec77bf1bb5d4d9d3013395fc4ad09f68fcb2056", v: new $Int64(0, 4780) }, { k: "8755f8792f300761fcd8208bc1101ea87cfbcc3f2166742c00b3b3e448535d54", v: new $Int64(0, 705) }, { k: "875623f1b347ec83f581c96c39349e1d1d90d7299d49fe46e8d130e48bba8556", v: new $Int64(0, 7841) }, { k: "875e3291ccc69e597c7ece9c5d5e4ab37c17dd356f2f73d4eb7e1f982eec96b0", v: new $Int64(0, 7178) }, { k: "8761185ac10bd274d193d708e68be130f2ee0fac7e80c65bff628f8092f2d713", v: new $Int64(0, 2503) }, { k: "8762e60df1ed13f32503e20742af496b3d18a0ef1ec6bf6c7b86887dcdaacf02", v: new $Int64(0, 5227) }, { k: "876cbdcc87ddac89c08129d257c00b0fe368e8e0aaa12a7fb8daf3c22f571862", v: new $Int64(0, 6112) }, { k: "876d499474a342b1ceb6cb0f6d8ab800e7430b9057acd663a43ed006251b1b0e", v: new $Int64(0, 7279) }, { k: "8771b7fb750f09431754c0285f591f8835bc3f2a16251341989b24c1dadc16d6", v: new $Int64(0, 5973) }, { k: "8779c4e869549a7f9262e4f770b1ab576527e2b388d60d9a7bb8bc746d7eae5a", v: new $Int64(0, 9121) }, { k: "877b5ebb224d431f5d45b0bf0f699f0bac5ea364c31556a1eb8b45b39162f78e", v: new $Int64(0, 9224) }, { k: "877efd7c34955c8a94935d17928fee7fad611ccae47160b84e61187380abebe8", v: new $Int64(0, 5261) }, { k: "878010af3f9e55daf1605e60a9df6c137fe486d3fb858331b74488643f25b30b", v: new $Int64(0, 7981) }, { k: "878597a3b06ab19d812085d0f1d825ed444561412b76e60fb8d167fd44f2d4d5", v: new $Int64(0, 9949) }, { k: "87889456e9bf234c061b15af362afdf4e6469fc2983a6ef91e37c65324ec0028", v: new $Int64(0, 7309) }, { k: "878ddb9d40fd70e135f3cf8c62fd8530bf9737c34fb528380d65b6022da7dd53", v: new $Int64(0, 8743) }, { k: "8792dca37be49f6f61e3b1272264b78976c5646c783e610a989a7cff05e5490d", v: new $Int64(0, 3595) }, { k: "879ec9ca2500d440733d6be1c9da77d29ec2f827f5b2aec18d1eef47d94d4779", v: new $Int64(0, 2971) }, { k: "87a645d403a83a5cd0754f92058ae22e3447dc51c30d01aec6adb5f2a15a031f", v: new $Int64(0, 9411) }, { k: "87a9100b9ddd9244f8f349eb1426bdf2a5514dd77a96ccfc7f16843469495402", v: new $Int64(0, 6975) }, { k: "87b15e1463efa69cfa1a98782213782bb8f4d0ad07f0427edb1057dfde64f1f6", v: new $Int64(0, 2548) }, { k: "87b2f4b00beca3d87875b77bd5be56471b265a5a0f8a955f56dae6212ec1493f", v: new $Int64(0, 8028) }, { k: "87b5558b9f9d3388c91eac69d39ec2bec5accfbdebb24d2374c699246e3d63c7", v: new $Int64(0, 3071) }, { k: "87b966ccc013623ab83b76dda0bcf0e974f1759ab6fc83681e0ed44463ff505b", v: new $Int64(0, 6185) }, { k: "87ba90c6cc95b1e81650e0db3220e6896006334f95e58dbf2909efd63cf75987", v: new $Int64(0, 4224) }, { k: "87bd81a5b6cf231d18fe88420b6379307815445af410b3783681ea219f68bada", v: new $Int64(0, 6365) }, { k: "87c177922f7a61db578da69bd57daf0bc7e4c0c623c129323b240495f6354841", v: new $Int64(0, 3884) }, { k: "87ca5c8f8f6c84c0f4c94bc07174913b5166ea12461f61297043dee487386a62", v: new $Int64(0, 3458) }, { k: "87d68fe348a5fe3a3e18edb89562b9677c848379299eb05df8f446ae59f1097c", v: new $Int64(0, 5277) }, { k: "87dc079422dd4a46116aec6d3f95199b466c4c9125832b2d69994d2d6ef7a37d", v: new $Int64(0, 3035) }, { k: "87e3e4d6cdb322af13a71b89613460aef9bd2aa2fb035644399d2387fd341df3", v: new $Int64(0, 5811) }, { k: "87f475b6a6eb294c6e79e1ba27c48f6de91bbac9b7a91bef6669261e0bc7821b", v: new $Int64(0, 218) }, { k: "87fe2eb4adbb0f5abf491fda70ff8b6e645247e1bc142e3a55641ee8684e321e", v: new $Int64(0, 1125) }, { k: "8805e82c60db60203a8c154020ede3c708252f5922a15260ded064522c26e839", v: new $Int64(0, 7147) }, { k: "88071c91ffd73f1738244927fc7239cdda744a42ba03bf69cb771e27b0327748", v: new $Int64(0, 5673) }, { k: "880d93c5baac73e6027cb8050980c3e4defd63818c3cd5b7d25cd6b673f961d9", v: new $Int64(0, 3804) }, { k: "881e195eb7d585b755c8b99d7beac0a974096e94c9cee2972a880985cb9114a6", v: new $Int64(0, 4270) }, { k: "883bfe202cdbab3b88f328559e01dd83baede68c48cbf1ab219eb09df9403ece", v: new $Int64(0, 9833) }, { k: "883cd1e927c4fecd3fb87e2984b230570d6a09f97c88b0d7e465845d250dc9ee", v: new $Int64(0, 479) }, { k: "883e415f04ce8b1bd8853ccb35b864d0dfa6308896431e235c2a7b07baba1096", v: new $Int64(0, 4269) }, { k: "88429d6b83180d8e77d9b8df49b107f2914004b45bca2e9831f2f025ee1af285", v: new $Int64(0, 2641) }, { k: "884bdf1c8e1233bc96a7e61e291da23f188cdea35b2c3419681c5ef4ce9bca7c", v: new $Int64(0, 3878) }, { k: "884ef171cade9ed588d27e9d922f8d285d24c18014514b3fe6eec289b861f27f", v: new $Int64(0, 713) }, { k: "885f952633a51d47d285015fc43c3be9470aea6eb94b13b9f7be810baa9c0874", v: new $Int64(0, 7877) }, { k: "886ffdeecdaba2baae235b001bd70db49ce468903d8ce5468ffd9e8d85af3785", v: new $Int64(0, 6368) }, { k: "88750fa9ed88b6cdafcacd5db82810a9c98dab8690e06559d3d13e8a485ddc3c", v: new $Int64(0, 4422) }, { k: "887526bdb905928028be3e656e9215cedec3a435e5c5352c3903e4698ba93180", v: new $Int64(0, 2665) }, { k: "8875ffda7311e8f773243fcdfa3a988978b2293b765a1640080a5bb057e6c773", v: new $Int64(0, 4035) }, { k: "887ae2eaf627ba9ce9b913574806322fec73dc2bb6feda2404f799d99446ef52", v: new $Int64(0, 8494) }, { k: "888131a1cd35ac9b626bd5e30790a0064d51a6a714425c76d3d1eb4b4d0155dd", v: new $Int64(0, 7311) }, { k: "888144a44891a4798a1e496f4ceadc196433cef6fe883ba7ca62297d83fa2ea7", v: new $Int64(0, 2789) }, { k: "88894b5142cc3f19bce2011f14b57bcb69b5a3b3d0dd80bb7be49c9dd21b8f53", v: new $Int64(0, 3429) }, { k: "888a73b3c4aaa52c036b2ca1828ad326fec3940ae6afa744a0711336afb98170", v: new $Int64(0, 3448) }, { k: "8899d35175067b28d5cc4e6dee18201bdd7a7262d607b25aebd5d3a7cc41457e", v: new $Int64(0, 9398) }, { k: "88a845fb877f32a74bcb30b4193f154cae3b506a83d8ad6abe3e4519aa3493fb", v: new $Int64(0, 3916) }, { k: "88b994e7596f87e677cdcd59cbd30cda51729d044bbabe158b3cd5af7f0531e0", v: new $Int64(0, 8449) }, { k: "88c4693581f2af4032ebdd123bea7b8489f8ca8b9c1957ae1a9e93958af20296", v: new $Int64(0, 345) }, { k: "88c4c6f3e59522acd6f266ab6829b8d375c1f57b5dadd276294366b1187bbcdd", v: new $Int64(0, 3319) }, { k: "88c5fc92bdb6c1d054b4cc842c2f5895ccd7f16244c3ed0d12e280411201878b", v: new $Int64(0, 2763) }, { k: "88c9b1b9c61319a0a8f8aa271f3d8d7df548a573d8933f948af6776475e380e2", v: new $Int64(0, 8724) }, { k: "88cacfdc730fe73b5eace11b74cc9630d45778665da9b53050d0b6ab206c2059", v: new $Int64(0, 6663) }, { k: "88d06d66e3491edcb7861bc5f30715040dac874cc186613a163f4d0666b7cc99", v: new $Int64(0, 5450) }, { k: "88d118668c42afd7323c028e77765fbdec5e9b98738082ed4703ab7e44f9bc64", v: new $Int64(0, 9941) }, { k: "88d4bb7caf61b20bdc7d8b6e86351642c5fc7ea485416fc06d1f381d1abe6763", v: new $Int64(0, 6669) }, { k: "88d8ed6c932ff85f31e710d56be63904d3ddd913ac175ae9e4ade479192f319e", v: new $Int64(0, 4127) }, { k: "88da636495312d13896fa53a3cab6b0742ed25d43c2da2a6a8f53c6317653e98", v: new $Int64(0, 267) }, { k: "88dfedddb9aa59fdd0380d7919e68d7f0f037c280fe3c7ccc78541c1b68c9687", v: new $Int64(0, 4142) }, { k: "88e19dd7881284fc1848aae271bd60e6f9303e96cd5f8816e7dd0c92f3b355de", v: new $Int64(0, 8441) }, { k: "88e7869589c53c873e65d9d5ab0ee70427e4a7cbcce4d8d59db207e1f0535f4f", v: new $Int64(0, 990) }, { k: "88ead62973a9c8f087b0d2fea061237fbd7138695a1374b02c5e56a155b6c132", v: new $Int64(0, 6965) }, { k: "88edc90f4fddc9d323498ae69642078dca0db3ea755fa423ef28851ec2932770", v: new $Int64(0, 3242) }, { k: "88eff43ef718b2d37d0e30a125cbdec75411c1d4fd53ab8393c020d6e4b848c0", v: new $Int64(0, 3460) }, { k: "88f15ac09853ee5c864a336b0cc66189ab0f93e405ee7456a9d2b728803e01d4", v: new $Int64(0, 3055) }, { k: "88fae222ab6db3913db16461f5e42817a8a4cebb66e3820ea9534e9609914af4", v: new $Int64(0, 395) }, { k: "88fc46f129be858d1b29465dc72e4de9a063186378e4cb673e26ea6c11da0318", v: new $Int64(0, 8413) }, { k: "89019b254bf7de4096726cf8dd946666371d3e26d2a363521bbd2cc5e6db2b71", v: new $Int64(0, 854) }, { k: "8902b7ca1a1e1fead956bdb21c84410a25ca0caa959e92a27a1c7fe385577e2f", v: new $Int64(0, 7008) }, { k: "8902cdfab8d481e0293e732a1e8e4d57cabafa5b063c8e5b20af1593293a16f5", v: new $Int64(0, 8126) }, { k: "89049defc28436fcc6a6b9e3c995038cbe0d7d6f7c036a5c9f0dc0aed8156bb5", v: new $Int64(0, 7329) }, { k: "89091cf0d7583ead58df0c3b1910f47e6321fc4b9b7ef10e8ac545e15e2211a2", v: new $Int64(0, 4988) }, { k: "89153530611e5aee7deab481e6e28ff6224d1b314617fc5abf47b84999c22ffa", v: new $Int64(0, 1839) }, { k: "891fc7b59b62ef0bbb5b5423c249006d409cc074e094919753cce08168d82925", v: new $Int64(0, 925) }, { k: "892e32bddee5bb32bc7975c217f6d6b430ca4ff9e23822518d013d0c814a26a0", v: new $Int64(0, 6782) }, { k: "8930c22b77cb05f145ef643f942cb26f19c3a0facd81d907ec7ea89525e6b310", v: new $Int64(0, 1093) }, { k: "893d8f33280b17d6cb9f281c18fde5e8214961a43c77a5f2a89becf7f715d1df", v: new $Int64(0, 788) }, { k: "893e5222cf4300d9a09b271cb75ff364bd324da80d141ce216fc7d8e274c9df3", v: new $Int64(0, 8467) }, { k: "8942779b4eb47dce409571976de709b103bf6409f119560dbc4e90a0f8f27a76", v: new $Int64(0, 8276) }, { k: "894da273427521cd22280e70a3d1d7de3699df32996bdf9f87c7cdc1177d8481", v: new $Int64(0, 5958) }, { k: "894e4c353f0232ee97454dcd37598da5ed7511acf6e2a0faf859f4ab074cc1cf", v: new $Int64(0, 6474) }, { k: "8959b56f28677fb1e824f0c522d46e6ac99a722fa0f404111e5339c55ec0121c", v: new $Int64(0, 4636) }, { k: "895fcaabd235bdc6fa56f07e4c99a603fbcf903046a94d9bc888102432d3786a", v: new $Int64(0, 3141) }, { k: "8962ae01d7e307187196f632231c181f47e00620a2bcd8f3bc911d94f69c96d2", v: new $Int64(0, 6336) }, { k: "896b95a14670a39f6f670330ba264522f68677c8a31754c7d90e4a2f3945951b", v: new $Int64(0, 3922) }, { k: "89733bb685e756f01de40c6142ca69a5de8e134845c53c401f894a10e65bf54d", v: new $Int64(0, 5348) }, { k: "8974e123bdded46e931469daf023b415eed67a149681728af5053cc86b9f7d2e", v: new $Int64(0, 6504) }, { k: "897d8021d9d3d0aa9f0c3e7e6884159dda92d546e9b53867d408f8047ddc55d7", v: new $Int64(0, 1795) }, { k: "897da2dcbf3959ccc17ffa759ec847dbfc511def077dfe0f2cae99e18f5efe56", v: new $Int64(0, 4510) }, { k: "897f2cde8c65b55cb418ba249dea6bd35e06b1116a73f1dcf4b65a9baecb8233", v: new $Int64(0, 3363) }, { k: "898658643ed9d9e76af11c20d108b1eac28a4a4528bc4df089fd64c6b628f8d3", v: new $Int64(0, 6217) }, { k: "898c44a5e43386441da8d4b8047b94d431a12e13e8a4da0190b5d6912fcc6cda", v: new $Int64(0, 9693) }, { k: "899ceb0bf3c4911e141f11335332747cf18002316ff408d211addef9b60852f2", v: new $Int64(0, 5424) }, { k: "899e0d755032d548ae2b2ac8c6dc8faa936fade64d89bab8bae43f3a8dbc11f6", v: new $Int64(0, 539) }, { k: "89a03e40c5ecba634d907cea90d4fd2fcfc9c6295da9cdd823a28a7f4b82cf98", v: new $Int64(0, 8732) }, { k: "89ac275cea3bd0a0a298956c01c9b288d7ab568ea194d89ecc9338fda15d77d4", v: new $Int64(0, 8556) }, { k: "89ae65cc9402903351e5f43f01aad2185804f7035d71d93b43314b15b4fd7ab3", v: new $Int64(0, 611) }, { k: "89aff6a464d510e01dadef44bdda83ac7aa8f01c07f9c3436c3fb7d387220273", v: new $Int64(0, 8192) }, { k: "89b9461ec1425fc273fc6953360da65b596230bebda4d46c7f24eefa68ebb687", v: new $Int64(0, 246) }, { k: "89ba62799af91227e7dc02abdee1057fd2a0ad06e8e3670c2ac0f82275bd1ad2", v: new $Int64(0, 9922) }, { k: "89c71496398b87b6217ba094f5aed3fbb6d454e0cf1f3c9f39e2aea24a1c3cf2", v: new $Int64(0, 723) }, { k: "89ce4cf1304057149324a732fb263020fddaceb8792de991a84b0b2c1244d43f", v: new $Int64(0, 2931) }, { k: "89df71f02db353faf1d7fe5d49ef19d094d15d5b91c519894e0bbd4852431b3f", v: new $Int64(0, 522) }, { k: "89e605cdcdd4bfb684f5c72a8cd9aa67d67d00b9a93c3214db3bf1e593a34d75", v: new $Int64(0, 8751) }, { k: "89e7b8b80b012ca94e8ee9650442ef1d3ed1fffab5bae37d4eba81361ee2e7b5", v: new $Int64(0, 262) }, { k: "89e966c05c1232818630b048a3f867660379c07ff22fdf56749222c113994a82", v: new $Int64(0, 2717) }, { k: "89ef8b8e4bb8d80e93fcf0455077d5e64b6fb1e8fdb57e62f32f036a68531a1c", v: new $Int64(0, 400) }, { k: "89f6565fe322f4a47062b1c154c5081a0831a758eec768d1d38524581fedb4a5", v: new $Int64(0, 5686) }, { k: "89f76c567af3998e295ee7c90f8755bb72e0355cea40ad8f6f3124efcc60170c", v: new $Int64(0, 5809) }, { k: "89f917e289618a3e85ead4084339aeecbbaa390855445e0dfb2dced5941721db", v: new $Int64(0, 4566) }, { k: "89fde8bdec3587481023e1044802333fb50762ac81be945397ceee336b31875f", v: new $Int64(0, 9024) }, { k: "8a172e99f485a49daac4b11917131916bd510518a99011a9b0134cf955c732c8", v: new $Int64(0, 3924) }, { k: "8a1f5df946c909d72840a94726aa988f1281fcdfdf6593d88a67b4bf11c88557", v: new $Int64(0, 2766) }, { k: "8a29a588d5bc4049ba7288f8b64a76fa6a889fe1a2a8407603b8a16b32155488", v: new $Int64(0, 8255) }, { k: "8a29f83ab0c9b021b5a9adce7f5bf200c5d2bd241ead6c16a20db52ebfb149e4", v: new $Int64(0, 5415) }, { k: "8a37bb3838372b6b9b0101cb1060a25a90dc0bd3618d73bb2d52b0a673c6aac8", v: new $Int64(0, 7969) }, { k: "8a3b6f15a697322e1f8d26edd8734d4fdc99702b73328064b4ac9120088ba7e1", v: new $Int64(0, 9319) }, { k: "8a40fdabcf061aed0f4b409b437e5a00213f11c7dc0d414cf7a1b820ebba3903", v: new $Int64(0, 1228) }, { k: "8a4c9a4a931fe1f3f114259f598f88e53be76ebe5c23ba02dc392e1f86a2dff1", v: new $Int64(0, 6744) }, { k: "8a5706923267eb736183958360e9049b2b258c611865234c56b2b71c97fd26d9", v: new $Int64(0, 4055) }, { k: "8a58818e76b15313340cc182fce18a847fdebb94348cc2b26bfc01df4df68c5d", v: new $Int64(0, 7004) }, { k: "8a71f78ace2536d308ff12bad3676f148c7184d2cc67dcc908863ac5aed4ba99", v: new $Int64(0, 4198) }, { k: "8a7a2571013111afdc74fca4d29a4afef401387f416d6ba0972f41ba498edb9b", v: new $Int64(0, 3373) }, { k: "8a80f68fec5da548c2a320655f83b47af8cc167461cd5584a4dcbd0e7ee7cbf6", v: new $Int64(0, 1278) }, { k: "8a881c0ade4eaad8cd64f481a832c428d4fcf151cc28d520e8a777f50523d0bf", v: new $Int64(0, 3346) }, { k: "8a8d9ea82d5fd5abe4e9be050183100ae844f4e5b5b1d924829617e3d013c1ea", v: new $Int64(0, 1287) }, { k: "8a935e9fd498a73c2102742b090db9651fa0a9b7a8d534e0f4496c3cb69ac02c", v: new $Int64(0, 2384) }, { k: "8aa234f6865025bdc30ae12d5fcb9562eb5ea0ed0f8943c6f49425e2116fd7a0", v: new $Int64(0, 3318) }, { k: "8aab814a80fba359279002586fd057a15c8592ead77c0b509d5b67669a40486f", v: new $Int64(0, 6988) }, { k: "8ab6aa89292ed81bdd1a5bc89688e3f86bfb360f9cece6dc88ba8af42ea24d77", v: new $Int64(0, 9812) }, { k: "8ac915f9eb4471ac19d26a91c9254e8362499e56d1e9da8f0e22c81dae5ea335", v: new $Int64(0, 8464) }, { k: "8acd1701ca12c1dbaec19adce6add267ac9c626cb73c2d841c9be110587e290b", v: new $Int64(0, 7028) }, { k: "8ad33f51a236b5b2672aa7ee547330a1fc3542ccbf2efdbca4ed0ddc36d9ed9b", v: new $Int64(0, 1816) }, { k: "8ada2f7a7afe7025bb0159ce0152e89fba152de5a844e7c74627b2265c6c0c64", v: new $Int64(0, 7415) }, { k: "8ae1c2af4feda5842e3e7754d99cc2fad7e51ccd9ed7c4a12e6c8327d8b02e9e", v: new $Int64(0, 3330) }, { k: "8ae60e2527d664450cc414a7e88061d1ada8c7af2b6b33947d7ae9fb6235c676", v: new $Int64(0, 8549) }, { k: "8b0fa2a3eccb2c27a58109ffec934053bb5f440bf2a3b8d59e992180d0e4cf22", v: new $Int64(0, 971) }, { k: "8b12ee7fd0b07332fab86a2f12851af7e042c5c8f723bf9256a4c3bb3577766c", v: new $Int64(0, 4784) }, { k: "8b1a77ff211a8820b159f4a14852cdecd715de5c7a835a3b61db90609ddf1502", v: new $Int64(0, 2409) }, { k: "8b1bcc2358032b6911bfbda168bf234abc589a53d1bcb765bf2fa428359d8fe1", v: new $Int64(0, 4164) }, { k: "8b1e1de8e57317acd1209b3caa0cb21f0b5508f022e795b5066c27a1721ae234", v: new $Int64(0, 1325) }, { k: "8b20faddb6ad85fcbcc4bf9d37220b66561f1d75dbb0c1970adb027f54b94c88", v: new $Int64(0, 3368) }, { k: "8b252b098408195c87d45e9e4f78f93c3d39906f3b779171787c4d5dd524a091", v: new $Int64(0, 8807) }, { k: "8b25e8c2becb14e1d3e7c7618719b6c87134221dde0a768c7715efbb7da27b6a", v: new $Int64(0, 4255) }, { k: "8b31956fcb7ac8fa6a8bb62925486cafa97029e957372d7864de16bac29b68b7", v: new $Int64(0, 8443) }, { k: "8b36c55c640624acf536c28f663c62eaa2fea6b93f38f8fbf6266f14f8fa3619", v: new $Int64(0, 102) }, { k: "8b3debc8909d808d6d2d9f66ed23f76ddba20671ac0a6894acb497cd48239a10", v: new $Int64(0, 5779) }, { k: "8b3dff11b178e2760bc2fa62d853bde868cd314a317eb9b6eaf6f6981ab31af4", v: new $Int64(0, 319) }, { k: "8b3fa8ddc8d28b0beb56a660ec6f29f217d76711d8cac8ada9627f686919cdb0", v: new $Int64(0, 7092) }, { k: "8b442fa0c4d919b5949e02bc318f2235b90e4fbc77c587aa7d3751ce18ed1010", v: new $Int64(0, 2025) }, { k: "8b531fd09fc8236d61bf8bc23de2ef09c8789c0a1cfed7abdd7c354b19dc45bd", v: new $Int64(0, 2484) }, { k: "8b55ecadba9b5bf97ff287586ae58812b4436a2e8db1ad333d14b31f0889b140", v: new $Int64(0, 9298) }, { k: "8b5dbd1953cb5a2ea9e2fbec633d2eeca0bf969eb33dacc649c28db7a90eb387", v: new $Int64(0, 4863) }, { k: "8b70a5a0196e10f727563f510efa6cab48d74db0c6de15e01ed92d9e7bc1498c", v: new $Int64(0, 3993) }, { k: "8b72d9edff71a0590baed3e732ed786aff79b4e92a75926b2def1c28c54b8162", v: new $Int64(0, 2773) }, { k: "8b7cd0051ae3c6eebb3448976bcb11c8dc480d19cac31130195f30e8208f9d49", v: new $Int64(0, 4687) }, { k: "8b7d797ea78dba4bf8160db2052f7d55d96884094c9216fbcd5cc2d2c651eca9", v: new $Int64(0, 3806) }, { k: "8b81010a189768dcdc08d359d4a6eebde3f39bd120b2de7844e6b5bbf0dbb724", v: new $Int64(0, 3680) }, { k: "8b8817a775fce5f470a3b8fd73d88316f74176abe3b367b3a8e4661d69f92435", v: new $Int64(0, 4204) }, { k: "8b9445cb19ac72d071c19adcbdc6dce2be7539c6b2a7d570d7461a491efa8093", v: new $Int64(0, 1571) }, { k: "8b963e0ed30f612c01e90cf99a61b28064f2f0715e549c8a7c4678d185be6c42", v: new $Int64(0, 9669) }, { k: "8b989e533588d6d823cff0886079e14f9c4adf1842aeab6077a20d9eca12226a", v: new $Int64(0, 6523) }, { k: "8b9a73eb8393864d1489499089cfcaa422d22b30ea6dd88305d2edcb9232c9aa", v: new $Int64(0, 2045) }, { k: "8b9da6043fbf68ba548c8b9b8d98febbfe77fe50212e65108b9d636f3a8f2722", v: new $Int64(0, 6061) }, { k: "8ba2686420a9f944be29dd1d128ebbb74a90bd006eacbb70edc14a4f63a50184", v: new $Int64(0, 5176) }, { k: "8ba6f91e5e668ebc6b9a98021abd0f1c2875ad5d63a0bcb7ba360c1ea521cfff", v: new $Int64(0, 9032) }, { k: "8bb81d549bb8cc09ab6ec0367a72d56f7885d21b43baf64e22ff10d4e68c1420", v: new $Int64(0, 2364) }, { k: "8bcaae2cd7a3d4987ddaeac1fd826eef3a4632477ee741ccd1dc898390b4f9aa", v: new $Int64(0, 6544) }, { k: "8be2e3aa0cf393ad648c610dd9913d42cd17c538d60784636b88f85252deaa79", v: new $Int64(0, 5299) }, { k: "8be885c6ff092db949976479e3c5673d9ba28684ea4b138bf52ddb53f3c66706", v: new $Int64(0, 5421) }, { k: "8beb09bb459784ef3ad2e4b4771b87749f6f907960d8a34e7133284d2357b173", v: new $Int64(0, 6282) }, { k: "8bed003df02513b1f3ba1ce8021f4437973ec33d1a9c4181b692609af2108d84", v: new $Int64(0, 1926) }, { k: "8bfc597ff582dd6362611ed7d58b95ed514e9ce241c4a121e24be62e1ca48550", v: new $Int64(0, 1865) }, { k: "8bff8ceb49445e5d5044fecc6f5d847c34536d5303bd19356c42b101d97d7a6c", v: new $Int64(0, 2923) }, { k: "8c00aedf80c554f05ac88a85623b558570a7a8307814ef03ce8a87e02f8cd3dd", v: new $Int64(0, 3670) }, { k: "8c00d2c877727050e909ed9f638e41672618154371612b4a485078dfd5c529b0", v: new $Int64(0, 6905) }, { k: "8c0e52171b5ed5a77a63482424eb1966b18027863e9f526fdc1236b9183bee88", v: new $Int64(0, 9375) }, { k: "8c0ea32d8f3c8454dd2c06f33104f25b250b38f9949ba87c679135f47ed7db9e", v: new $Int64(0, 1317) }, { k: "8c13b885bdccbdfc876adf4285354b789d9d9f9a01c3b131da5262d2e252b284", v: new $Int64(0, 295) }, { k: "8c18eb44ff5f9e59b2fd2a2ae7feb0fede4b1b567befd631b0407c9cda9e76f3", v: new $Int64(0, 1182) }, { k: "8c1c9449bf1952a451fc870c44152e6025597fcdc0470ef93674df8f9695d022", v: new $Int64(0, 6138) }, { k: "8c1ed8e1d1641f0da24f41ca8b242abe9218ef5fea9fd05943f743a472668c55", v: new $Int64(0, 178) }, { k: "8c1f448430244ce6f93e1c08d75ace0e8d554c6af0dd80a32d1d9858ec79d86f", v: new $Int64(0, 5978) }, { k: "8c29ecae1197b8a589ec0b9cbd9837fead699d408ed8f2bd3d45daa8545cbd24", v: new $Int64(0, 6277) }, { k: "8c33144472cab693d5e0760663a1faf4126ddd938815de0b643cf845cfaa7562", v: new $Int64(0, 1163) }, { k: "8c38d515157b965a7f308f949145dc53bb562c9949aa58c52f205fa7d2e7e2c5", v: new $Int64(0, 5044) }, { k: "8c395f3b972285da4a50ef45332e719eedb6f3fd04600dff4b03bdab5d154195", v: new $Int64(0, 4724) }, { k: "8c397b0337d0fb32ece3f1a1de8030022927d3aeb15bff08001b28c88e3dbba4", v: new $Int64(0, 2184) }, { k: "8c3baab90b61f97e034611d3829b2cd97f69ac50b7b1a7fd43eeacee018027ad", v: new $Int64(0, 1932) }, { k: "8c45b3ffbb1d16e2d57f6a6d90f9a65d456130ffbc20792db5e98a860edc9997", v: new $Int64(0, 3749) }, { k: "8c496231ac518590517a625ea6eb6b8ba1d2a2a138207a1a5699146f3ecda522", v: new $Int64(0, 7096) }, { k: "8c569a54b7b0aaec13b55873c84ebbe5d04d02a5b5a98da13e260d7c010d5676", v: new $Int64(0, 8321) }, { k: "8c57c275425e956a2ea35c08f1a18f8d4ccbc1b3ed70847efbd2198974873ebd", v: new $Int64(0, 7539) }, { k: "8c60cac33e66c03968c43daf446d28ae3a5c671219c34f5483c635f8b32c3d41", v: new $Int64(0, 2356) }, { k: "8c642d3fe34a74e5336731ef160ad23be4ccc761dd3142b4eb6cb28b614d130f", v: new $Int64(0, 1043) }, { k: "8c666fc4295d8b3dc47323afd468118f8bba523d01548b23557a8bc5263fe5a3", v: new $Int64(0, 818) }, { k: "8c67e5449c94426fde6f91eb31c38bf8bf0816a1740bf1e64acba66443122b09", v: new $Int64(0, 3327) }, { k: "8c6f3aa94e5ca6bc0fc892b165489c83a8267d9aa175693d653ab0b8698b8a35", v: new $Int64(0, 3702) }, { k: "8c70e5e73b093c96aad98abcd1172545015adc08d1ce799132dc9a4952ec51b7", v: new $Int64(0, 2788) }, { k: "8c7aab552175ade5bedccea26c7c3755e07aaa2c45dc9ca4630d116dfb521ec9", v: new $Int64(0, 3856) }, { k: "8c7d98210749f644ca15b497dd2ef7545524d8e471ddfa398240b9e92af784a2", v: new $Int64(0, 3166) }, { k: "8c805ac84e59471530251701ac7c63818d22535b8cb1e0099a2fb73de9cec1c1", v: new $Int64(0, 2008) }, { k: "8c8b1060ab5f413eb15af1e0d103148825b85cf436eb9b74c04d2ca8cb916fbb", v: new $Int64(0, 3662) }, { k: "8c920b8ac39663329a9368cfdb6f740543f64229ea6a14a7afdc9eadb838e36f", v: new $Int64(0, 7617) }, { k: "8c9df8c9391e7b42357f3605b4387c27e028c01dcbbfb5bb561ed9be8bd8e6b2", v: new $Int64(0, 6612) }, { k: "8ca0d0c7afd599ddf3f86a345c1c3966a1ff889099dc695478f3bfc5f707b498", v: new $Int64(0, 8220) }, { k: "8ca1735b1658143289d86f3d89d88532000e9a4b83eb6a0852c4c14f166cf6ef", v: new $Int64(0, 6657) }, { k: "8ca7cdf5a0a498cf81fd06b78c887e3673d7ee4f921e813e473c248cad621222", v: new $Int64(0, 4907) }, { k: "8caac1f29a9f37095e3d4cc2eedea5526a6f047de1425f2a29a029233841fc69", v: new $Int64(0, 6917) }, { k: "8cace9f3e8af2aeb841ace8ef395ed3fe91e2d7b5f37a6770e73ca623de9d635", v: new $Int64(0, 7965) }, { k: "8caf7afe0111870d8a44ad870e3413841c4e2e919f4a795511b7e9fcb259de6c", v: new $Int64(0, 9993) }, { k: "8cb001e7c731f2e5dd6bfa880fd1f5fd361df26cdbdff2a4f8ceae0130dc9fd0", v: new $Int64(0, 2995) }, { k: "8cb77fcb12b293e9a11984eedbf88254ddd02810647e88e45f1007be009dc5c1", v: new $Int64(0, 8054) }, { k: "8cbbd72ca805f362d4dea9230c0e51fd7bf7a7f4a045da2b96bf38a192404df7", v: new $Int64(0, 9378) }, { k: "8cbea277628bcf82d04cc96131abe4a88b039ad3917e5437a9ce84e5af7694c2", v: new $Int64(0, 6174) }, { k: "8cc209cc592c9179843570179939d64dbe4cec45b857a46bdbbe80a590abb99f", v: new $Int64(0, 8080) }, { k: "8cc3e1818d3ef93fda9fd5e1f6eb98da17cdfb72b9fc724ef2e0257f78b489fd", v: new $Int64(0, 2649) }, { k: "8cca6c3363b5137dfab048c7cc5132e81efc882d3e17e59a2b8e09c12ba9399b", v: new $Int64(0, 2752) }, { k: "8ccae54ffef45c98ee340473494b0d2d93661820709243b2cc11145bb7ba5b1e", v: new $Int64(0, 9827) }, { k: "8ccdd6178837207d2f751d171f5a4430a9dc52c544a3659e316d22b70e526702", v: new $Int64(0, 4230) }, { k: "8ccf3c608f1094c7acaf3c3d6be69b82294a287a7ba95cb77a7a519743fd3407", v: new $Int64(0, 1457) }, { k: "8cd048320e6ce8d3893f1ff6ae714465b92bf5b61262e94451c504f3f8f10320", v: new $Int64(0, 6861) }, { k: "8cd1e00448fbe595174ee6766ed5547b3d3d7438fdbb50478b35591cd9d6ef11", v: new $Int64(0, 7457) }, { k: "8cdac9e36a119b3e93f8f005f5c3f727863a17cabf4f7a2383cce4da30451226", v: new $Int64(0, 1371) }, { k: "8ce467eaaa4a5bd8d1564b5111bd235b2c04a7ad9c41f1a2df3f7f6fa6d68f63", v: new $Int64(0, 7104) }, { k: "8cfb088b8c0e192f01c3da3d8c702a3411db37a666f42b3aa5eba2eaa6c5b374", v: new $Int64(0, 7977) }, { k: "8d1086ba528f4c4b7943b39bb6cfde16bcbdde624ec013cbddfc77dbc4d29e5f", v: new $Int64(0, 2215) }, { k: "8d12a5c97b79dcd54490748e2b147d1a92fa3b7d0a029f9765206dff6cb3204e", v: new $Int64(0, 4926) }, { k: "8d1377e1d4c378dfa167738507786f9eb5efca50b6e88531790072d3ef5c2f62", v: new $Int64(0, 7596) }, { k: "8d15a2b86415e0e881da8ecba5feef13ac3ed91c89b9edee586f1580beae20ff", v: new $Int64(0, 1806) }, { k: "8d2466bbcf06ffb6fbf7c2070d853104f91e7a18e2ea32fc97b0e5bc4715a254", v: new $Int64(0, 8484) }, { k: "8d27184f3a759229dc4e93201d6879251db4f760343c3103f8899817f0515e62", v: new $Int64(0, 7071) }, { k: "8d387ce083b3d5a4bf7e6eb3dcf48a464c20252b1468aa79d92a545662cad39b", v: new $Int64(0, 8114) }, { k: "8d415d94e4fcc56d59cf43e47581754c670daac3c3ac214e20f2678d2d3f7b70", v: new $Int64(0, 2868) }, { k: "8d453b5c2d2f032fd75ffd59ced7e38bb5203abe3f17691b9d22291b8c0b4791", v: new $Int64(0, 2674) }, { k: "8d4b18ea753b78600bdfd33f6e66f4136d6c5b46462b2e700633e92fef1c570c", v: new $Int64(0, 8924) }, { k: "8d4dca0caa92dbf876581db6f9c9b31e193fc2e7ef4f3b6749282ffe30fce025", v: new $Int64(0, 8411) }, { k: "8d50e342c6759155aa0f5e3e809abcba5d909f203b2e4555e57d308ec2ea2bf6", v: new $Int64(0, 4726) }, { k: "8d5f46d0b3e97536efa7c43fc0d1d01c91a0eb2e58a03275141e30faabef7d90", v: new $Int64(0, 1742) }, { k: "8d681342270c2b1fcca1867a727e71f3b63c9350177bd82c34d05875aa45c1fe", v: new $Int64(0, 197) }, { k: "8d6c279c992c22cc3d6d24f3e2871923e814ee2780c86f92eac9395aedc82cbe", v: new $Int64(0, 9090) }, { k: "8d6f611f5058908d94c0ef53151f81ba2f80e15acf3f567f57a8fd6e469cbd54", v: new $Int64(0, 3775) }, { k: "8d826d422ba58092ff75a3d1d7e8b69116ed5066ec39fb554b0b11d5d114ee8b", v: new $Int64(0, 1363) }, { k: "8d872dfc39bc5e97e5612a7f4ff93f6c2363db2387dfee7654c077649a1767f8", v: new $Int64(0, 2704) }, { k: "8d8d2da5dfa92b2d6e77158cefeb8294c30e3cbed2058f7a574d89473a825106", v: new $Int64(0, 2955) }, { k: "8d8e5274522b790874381c5fbee2975b0025c516c5638a7d5b92612ee6d6fd58", v: new $Int64(0, 7302) }, { k: "8d95c6ee6a827682b46c4543a61b6f933fd1e63cf148dc1dda2ac508691816ba", v: new $Int64(0, 8985) }, { k: "8da0023604c464da5abe40b97430849d71e29fcaa16fdb4fdfb1e22ed2456c81", v: new $Int64(0, 3578) }, { k: "8da2a9699d7bfbcc4c0c8bd2ccc327e2dc9639946b4eeeca79d920861bb5abd9", v: new $Int64(0, 6830) }, { k: "8daaf78bf639f5bee0097f53f306a929ba8b4b9ca32a2d51024fc391dbe5f45d", v: new $Int64(0, 6298) }, { k: "8db176a46e855caf25c7b16fa2da7ab7ab70db7e959c889b2350002382b0c121", v: new $Int64(0, 9917) }, { k: "8db2ef953e69bc96efe518ac9d887809aec2c310a654625272f9ad3fdb48b072", v: new $Int64(0, 4599) }, { k: "8db796353b232437dacc7c132f400c0f516d86bd1c63160527d002d9238966f0", v: new $Int64(0, 2757) }, { k: "8dbcb8fccb8ebe59c902472a85880ac667a1a0df94e75e0144e981d1215dd550", v: new $Int64(0, 6918) }, { k: "8dc344ad527e3752b7ad553ccaee72748e91d0442f67f314d68c33978a3a6e72", v: new $Int64(0, 2694) }, { k: "8dc6fb96daaa723f956d9b7941589e87f1a951468f8acf50bedff49d836f02cf", v: new $Int64(0, 5364) }, { k: "8dc90ea204e337bbc1caf7419ccca6fbda7ff74b8bd75c72887e87a97a0f67e6", v: new $Int64(0, 2700) }, { k: "8dd18fab07d9114cd48d5b5514bc2d69d61a64d3e7bc2314e85a9530b147c98c", v: new $Int64(0, 8693) }, { k: "8dd3080e58704a105d79e896d3e758e6902f13311ce806022e884b663f19464a", v: new $Int64(0, 8883) }, { k: "8dd33b1f2a1d93414fe4eb7028d3634cfa29d3ddb1e81c983297d160a1abf59f", v: new $Int64(0, 2587) }, { k: "8dd67f32c336e95854901df46ddd8444886e310b6a001a5593cd753c82cf5d5e", v: new $Int64(0, 3698) }, { k: "8dde3bc2afa988cbe92c9fe1aa6f376c0774dad06db9912f2f0375f008e340e6", v: new $Int64(0, 7090) }, { k: "8de770c7f5e360afb1fc5f4b244e81093374546c2d40007ce86f91a40f00d604", v: new $Int64(0, 4905) }, { k: "8ded5fa2f7a588cd462880b4bdd4973668881c81e1581db923ccc53051fcc527", v: new $Int64(0, 1944) }, { k: "8dfc2caf77ed07ed885527ae796b02f3ef6b2bf80d4c0ca915c85acf43ef5cfb", v: new $Int64(0, 3773) }, { k: "8dfcb16f84dccfbb6d9f7cd27bf4fac03b580b4a079f14af8014f13bfa871cc2", v: new $Int64(0, 5457) }, { k: "8e028540ca2f6c755a6a124d9f3afd05507b256677ab638fe16d50bcbc7bf951", v: new $Int64(0, 3395) }, { k: "8e037975d68c4846827ba9652a51c58cb61310c9a96cdf2ea90928546f69097e", v: new $Int64(0, 5492) }, { k: "8e042647a792279bf9ea80d1df8c77cf852da0371e588d8dca493a4a8392c4cc", v: new $Int64(0, 3100) }, { k: "8e068b074abc7acd88cee7f936add04f786f55b21df088979ab27105dde94c65", v: new $Int64(0, 8669) }, { k: "8e0b4f21d9525509e93577f20aa5c4a23778a8e6973e829eaafc437c4169ba9b", v: new $Int64(0, 7098) }, { k: "8e0c1c651d3a691392d13f6d3457b57fc7891226c63d903cd02965f98353b52f", v: new $Int64(0, 4456) }, { k: "8e1043ce31d1b242cc5315a448e699e301a5c2f4b69da6fcdcee64a4d61db3c7", v: new $Int64(0, 8128) }, { k: "8e131ed4c5978d4ea7b91ed256d4b44d8de07f9bd1e0c3d999a9d3e45860f5b6", v: new $Int64(0, 7997) }, { k: "8e1ce41830800611bfadda1d5fc3b244d0a6b42849d5fb77070a75fa3ff65074", v: new $Int64(0, 5656) }, { k: "8e1e3e8a8360a98657b628fc5dd05ba1da9a2fe7373065ebaa1e80a559b94325", v: new $Int64(0, 1996) }, { k: "8e2676d432a27559df00eb894d7295f0344ba3645b5054104cc66e06536636de", v: new $Int64(0, 8482) }, { k: "8e2f308741dfeacad71e125d7b2355223f09a6ee03708d604913856bc6015746", v: new $Int64(0, 665) }, { k: "8e35bbe671ca3fe933c70941ce75842b8aa0d29446415048aff05f6a0d8842b7", v: new $Int64(0, 6752) }, { k: "8e43a08c1de565e98aa487edc54b42440f65c13c7f8a46225e6e8448d6e26c61", v: new $Int64(0, 9480) }, { k: "8e4b811829ecd870bcec742cacb0cf8dc0a3c2f52ed4773b39cd2ac32f7b7c5e", v: new $Int64(0, 9900) }, { k: "8e50797d4fc4c8177180161187d593176b012827c7503cf8878f87989162fa4a", v: new $Int64(0, 2148) }, { k: "8e5bd9675670203637b995db1713a5d185d9b42da0c0504022fd72ad498373a2", v: new $Int64(0, 3868) }, { k: "8e6c0205698028d579e6f872634c9a722ce172fe1197d3ee8edd6ef15dc93ec8", v: new $Int64(0, 2135) }, { k: "8e6e0cf923634fd8c0b4e594021747cd734932126a77c96eef5b228dcef8d821", v: new $Int64(0, 860) }, { k: "8e74e1c8c4af4b13a14cbf7baad4008d98de3a87ce956667e2b8a2492b74d9a6", v: new $Int64(0, 643) }, { k: "8e7bf5710933ec4ca9d7586d693654fa03f2b067623ad191c7f6d7378803133b", v: new $Int64(0, 805) }, { k: "8e7d92266bf8e2b3bb0d0999116a6850026a024b3b046867f25063bbc536bcb7", v: new $Int64(0, 8884) }, { k: "8e8af9d002d2c6ffba2c9fb1d10e252e8f1d752a46ca64a3b57ac44574a2f866", v: new $Int64(0, 7653) }, { k: "8e8c5c0b6c10b514dbd8d75708c38418cab6555d4ce6de6885914efcb355b16b", v: new $Int64(0, 8817) }, { k: "8e95be73a68459c851d79a77aa50de4c9548209978b237ef34e630dfeaa058a4", v: new $Int64(0, 5664) }, { k: "8e96539d819eb468094824c4acde445a865a6ced4c65b0f587630751cd7cb570", v: new $Int64(0, 3221) }, { k: "8e9d717dd8dc999acd86caa8e22584ae56173e301f42979942eefd2480910d3c", v: new $Int64(0, 6129) }, { k: "8ea20e7f6cf2f8866d84dcf6caaa6d87ae031ada064b115f366484da67eb410e", v: new $Int64(0, 4185) }, { k: "8eada68901a6474b16a182b5f2f62164d2d626ee4db67699b2fb3175446f43c5", v: new $Int64(0, 7207) }, { k: "8eb0555350576151a764b9cdb873f64bb3221d67203e0f09bf85223e331e91b7", v: new $Int64(0, 2956) }, { k: "8ec32b37f1bd7d53c392580aeeb15ced3b9989db109ae105baaffbd14fb38641", v: new $Int64(0, 1735) }, { k: "8ecb461972f6e59dcbda411a7f5b5cf4a7ecda9bf6d83c66f3f0bbe414d643b1", v: new $Int64(0, 9969) }, { k: "8ecdebdcb2e7dfbb21c330dee581267075bfcc5001b45d30d947124a246632f7", v: new $Int64(0, 8873) }, { k: "8ed49f778b4ff9ae9f4d452b1a67c4a6e46b9dfe4956a41c5dd006180c2524ae", v: new $Int64(0, 6863) }, { k: "8ed7e6a5a07dd0413ae0047234bc023174ef0b46541d139c9346c36b984990f0", v: new $Int64(0, 9520) }, { k: "8ed85902c7c2a23e4cf9d14ad99f9925c70d9fe4c556ea8be15515ea74dba9b2", v: new $Int64(0, 2720) }, { k: "8edc868c0d96fe91b0d0fd5486335813c2902a4c9a732590b4fec822122ae7e2", v: new $Int64(0, 7410) }, { k: "8ee97cba0cb529f33853bd2649146802c6b420e296909331343ef3f5d1df4818", v: new $Int64(0, 2207) }, { k: "8ef45bfa423c4a2553ed5a2403e0dc9508639a05cb0774b259b419b7d29581b3", v: new $Int64(0, 3007) }, { k: "8ef613ecbac5a3c3516f0b9ec24e2b2562830d6894ff92cbfb22e9cdf01da472", v: new $Int64(0, 9133) }, { k: "8ef84fdd64d26f190e336dfbd853947a0ca39fea623435ed93965f3d347eb273", v: new $Int64(0, 1290) }, { k: "8f06e1236dd4228b07f88a227c66d4c6171409a3f99f4a03f8faa071c5c6420c", v: new $Int64(0, 5012) }, { k: "8f07b9bdd64af2e5e814c41a4fe3c39953191bbedc4488da9b549b3aeaa787fd", v: new $Int64(0, 6326) }, { k: "8f09b32cc969db500947fcbe7a75701a82f4445194b430e2b8a2082be974fba9", v: new $Int64(0, 7441) }, { k: "8f0de95ef626b9fcacf4977fac32d1b158a6d4a79ba4b4cf03cf72e70a448aa0", v: new $Int64(0, 6145) }, { k: "8f11bf4cfa68250a290a03a9b57f4559a54c2eb06cbc3a4c0d10ae6e440be6b4", v: new $Int64(0, 175) }, { k: "8f12eae2bab1993fc557a36808ccfded472243938c2d5e139a455742bcf514ca", v: new $Int64(0, 398) }, { k: "8f14b0d4c734f98f7bc11340376fbd69e9c5630da2026917a7bceee792644ada", v: new $Int64(0, 4173) }, { k: "8f179ff085227a657d7191c50cd30f3a7d8c008ae977dca4f8e90dee9717630c", v: new $Int64(0, 4700) }, { k: "8f1a932dba04cf13c0165aca981b2e753dafc1ccfd87b18a94069ffff3d9332f", v: new $Int64(0, 9396) }, { k: "8f1aa0bdbc10c7a65662f46832e3ba26d5549223b6e471dc704ed83042ce243f", v: new $Int64(0, 7459) }, { k: "8f2bad8e4a75c0f94f3877a1c3e0c7039944e1923cbd7c02052cd3a1fc149d3e", v: new $Int64(0, 6194) }, { k: "8f3212db1ab1c47e84008ca011ace0205dc170b054779ffa4bf723bb675239ff", v: new $Int64(0, 463) }, { k: "8f3ff7ec04409445671e54e1dd285b9ccb0e180937fe1aabb3325f82143d5776", v: new $Int64(0, 5516) }, { k: "8f506516724da637bf649ae063593268b6a90dc04c523d3404ea30e88e2dbac1", v: new $Int64(0, 7500) }, { k: "8f5397e8d3bf50724f2cc234f5f9e503074c5ca6c8439fef8d35c0ae62c77f08", v: new $Int64(0, 9295) }, { k: "8f6379294ad52e3f79e28df1308df9139790dba454105319563cf0f34fa555fe", v: new $Int64(0, 9217) }, { k: "8f6b40777b12ba42542605181e20c03c4240c6333e7f0f8cb5f0c5d4df796cd4", v: new $Int64(0, 3934) }, { k: "8f6fa95868e3dbdcac0f7df22c5c1125caf490d2d6adc651f23022fb331f8f45", v: new $Int64(0, 2388) }, { k: "8f6fcc9e014c30a9529a39e60ab6adb7d1a64a7ead41d5f4abb8f57511f3ea60", v: new $Int64(0, 6566) }, { k: "8f70f415983d1e31afb412bcdc159beaa22aa9d0d28ad8619cbccfd320b31509", v: new $Int64(0, 2523) }, { k: "8f73e9e9799244ee57f34ab4f06551dc9404b5cdef82dec9c17cc6a48890f98d", v: new $Int64(0, 5246) }, { k: "8f7f4484d50812f32d37404ae4baf9f30895c50ab1fbb13ee50118e50f7a41f3", v: new $Int64(0, 5052) }, { k: "8f872020dfcad8a2d7b7ea3ff83f2483201e1dae97e1d4d7705bd4b8a96dcdcb", v: new $Int64(0, 9407) }, { k: "8f9d228ae3913715fb00eb6ba5022ef2a3ebcfb84493aa8e69a29fb662b544bc", v: new $Int64(0, 3057) }, { k: "8f9e109e3b519d00db85df620913fd2f32609a7ff4ecb98db89b889baaf88910", v: new $Int64(0, 414) }, { k: "8fa064da8870283dbc16e047dd08d5c0a0fd0a218fce3c942282ccf82ffd9f03", v: new $Int64(0, 4465) }, { k: "8fa97bf5dd5628d65bb15833e9475918853f412f41411b412c4256bd51004401", v: new $Int64(0, 4541) }, { k: "8fa9ddbd109d1e9ace586423e642430ae96f5f40097ee01e6b74b2d5f5b9f672", v: new $Int64(0, 4148) }, { k: "8faa55a9313a52e11e6a90f37b348e373d2378c73364a2922f9e03de7e801266", v: new $Int64(0, 6948) }, { k: "8fb33e7569507b8148990fc4e2f8c958a57321dcaa704db827c413f300fc1af8", v: new $Int64(0, 3895) }, { k: "8fb53fa56167fdf6e903ea8f349b86977243e80edf768f685b2f691a49bf77e7", v: new $Int64(0, 3873) }, { k: "8fbf1934e7647fec5836473c0a389c050aad02f677224c4ddc6218c4018dba29", v: new $Int64(0, 3960) }, { k: "8fc1712b158b76ec550aa325e1f3a452859f0d683f64d26ca175aca84b3b36b6", v: new $Int64(0, 6902) }, { k: "8fc1953554d83f5db757ad6f05bda853f11480bbe96904b5e54ad7c99743ab21", v: new $Int64(0, 7612) }, { k: "8fc7f6ed3e6fe2ca86111e89b786e95d13c43555806e7c8a9ee121b67685d649", v: new $Int64(0, 4901) }, { k: "8fc9866716f30c1dfe878f500ba3e94fe94602c1c9b8c623a8c28fbd75d2621c", v: new $Int64(0, 8473) }, { k: "8fdc0d1c9153017ca86ba54ec3c24e50a2eac426c86310adc73f9489aa2d36aa", v: new $Int64(0, 9197) }, { k: "8fe2ab6458c0b49d3c1b93e12ffc948ef2a07292e392c122159b9fe6a172b10b", v: new $Int64(0, 3423) }, { k: "8feab20c963ff8a0c52ea7d4fb058f2887a6f15d470b7be855a69c34f0dd720d", v: new $Int64(0, 5288) }, { k: "8ff100247e7afd950944cc0857c2ed886bcd6ef13f437eb005adf5ca3eb07747", v: new $Int64(0, 2716) }, { k: "8ff1c1fafb9ff8dba349aedcd7b1caaf82593936889884d45d0ceae0a5204476", v: new $Int64(0, 9642) }, { k: "8ff91b24b7a51d61b38b035f6fd99cd7ee9e0b914f062e78fa48e6c2ce011829", v: new $Int64(0, 6520) }, { k: "8ff949dc66ac7b99f0d93ace88d54a9367d68a5f44de151f917a58b14f330c6d", v: new $Int64(0, 7167) }, { k: "8ffa3a4ba33dd126a8c17d4f80618482a975835555a70be2a74c1ef1e09f2e75", v: new $Int64(0, 5668) }, { k: "90056353a59275f0b02fb0ae884a79af844078f025cf8663e3124bb5c2e6591b", v: new $Int64(0, 8039) }, { k: "90078bb1b5e5e6d948e48f00a8824ea34f2486ada7fa613a810df02b641ef801", v: new $Int64(0, 8747) }, { k: "9015a7b7c645c7ba619822283f9cd59a53ea23202bf0ac8bef8917d3f3a4c1ad", v: new $Int64(0, 9198) }, { k: "9016ab1e42b8c9dd873c9209f858a36d118b64d1634bbae312d5fc0f2de45582", v: new $Int64(0, 9012) }, { k: "901e07560d84e487277edf89d531c257f6f913a6bccc621176af903f02408f7d", v: new $Int64(0, 8809) }, { k: "9020ccfcfb08e6d32417c66d84eb8330c5fb370568c78c493db1cae19ac31b4a", v: new $Int64(0, 9439) }, { k: "90270ae009d3463f9cbf4606f43823f9e1088a4c55dc6ece6bc55cc23686ac3d", v: new $Int64(0, 6535) }, { k: "90311824f6e251d4f9905a409a61f4163667e26125552d635680d62e5fc3946f", v: new $Int64(0, 1973) }, { k: "904084538a5b3567ee8216f21de6197ce59451b3b7486c26bcc4a582e8c9255e", v: new $Int64(0, 1335) }, { k: "90415ea8f9802ba272cb762a5f94b55b1f15b108f2270bbf63e9b56f2d007981", v: new $Int64(0, 5510) }, { k: "9044d85b2b0a448e303b8ebfe5694f655f8dfc0a9e5a0738b718bafa492f0e11", v: new $Int64(0, 5573) }, { k: "9049e1aa39c03bf37cec86d85078be4be042fdfeb4006acca8c34dc7a621265b", v: new $Int64(0, 7423) }, { k: "904a29ed4d6c3b3f6456142bbb805addf2bf03940a2dda854273b98ae2fa3215", v: new $Int64(0, 2161) }, { k: "90562643d58ca37a56f70b12b9d2ea31d22a78e3b66fdf4338584c100ee278f6", v: new $Int64(0, 6740) }, { k: "9056ab6e82091aeec1d721adb8e4375a033030ac31336072673d615f20a08695", v: new $Int64(0, 8179) }, { k: "905995857aea8fb01feed7ee622fc799dd21771e61429995157391175720cc6b", v: new $Int64(0, 3182) }, { k: "905a1d4797c5f4523ece727dc03f7c41b4924ec273f69639dc0ee1049ae78a7e", v: new $Int64(0, 8625) }, { k: "905dc7bf12d42987f6a7376ae6c955cd883e78a29de5419351687e1def711f7f", v: new $Int64(0, 9648) }, { k: "905f03683a2563fbc09755e685cd79a62d8910d14ae24fb80e04aaa28e356c33", v: new $Int64(0, 8288) }, { k: "9062dbbf8a71f84d934ea002b6a93e067a8e841aab476ee93e52d80163a1db21", v: new $Int64(0, 7398) }, { k: "9069196550a01a123acfc0679fcf4169b779404a09ee8c8c2b03162910dffe67", v: new $Int64(0, 3428) }, { k: "906a19155d540ae9740effc772af997542eddb6c1cc545c316bafea287656caf", v: new $Int64(0, 2606) }, { k: "906a560769df9f44674428d3f434ef3b8c11d95c38f062461d3f8bf4292f5855", v: new $Int64(0, 6961) }, { k: "9071f27cbd2d69e975282e1085c8a0238febf83d79511b4875657973cda99f61", v: new $Int64(0, 4369) }, { k: "9072e7a3c88236e43bc8ae343945ff143c0859066f2f1e9e98c26b9f9ca6771b", v: new $Int64(0, 3582) }, { k: "908d3c6c52748eb36b997ae0835596b9d0ebe4b09996f11afc762dfb785050ba", v: new $Int64(0, 5963) }, { k: "90934e6379229cacb424b442956609fcd79bd3269284db30e65650e4aa04b0d5", v: new $Int64(0, 4939) }, { k: "9098c1fd7f8d01b2a336b1d40d611821b3d9545a29ad0fe75931acaaf29adae9", v: new $Int64(0, 4854) }, { k: "909a28c2513439fd2e0c43caff063b8cf826f4f1d1277be4a6db87a49af159a3", v: new $Int64(0, 6196) }, { k: "909b22429eec702e7201bf5e7aeaf63f16c389baf6754df8b859458a4426b911", v: new $Int64(0, 3464) }, { k: "909ece58817388bb88372dcdc140d42e047c2f4b0b14204a284656dfadcff9c6", v: new $Int64(0, 4741) }, { k: "909edd815f1dfffe7917cf63afd7c7a89b22c9ec87222172f365ad71439890c7", v: new $Int64(0, 910) }, { k: "90ae541a60da65108f99ef672d65b80b6bf66921fbcbbd779f842e5216649fd4", v: new $Int64(0, 5095) }, { k: "90b149999b286ae60d0ae24808e311ed0fc4e6903ac5efae8bbe4f476920d5b1", v: new $Int64(0, 8297) }, { k: "90b3ff4129c33880b0a8dd353e22b431d3575be080dbdd0514904d6b74fcfe4b", v: new $Int64(0, 1710) }, { k: "90b4c038ba542fb97df562834c4d2faa8828d22bbc2f40a19b54cf2f7a7bd114", v: new $Int64(0, 4766) }, { k: "90bb878dc481f652b6ecb50505801a41ff9ea906cef9fbd05a7edf3b7ab1016b", v: new $Int64(0, 5003) }, { k: "90ceb5b96ce64ff8b0a7ef6d183b0a2e96e1822698f92c65e453e0dcc86aad12", v: new $Int64(0, 3831) }, { k: "90d8a5b2754dba3d8aa1bedd1efdbf6c317b499cf916e3b674c52143bd6b3a81", v: new $Int64(0, 8444) }, { k: "90e57baf1c59d0dc3f54da2ec62cb9e0efada1fc6ec1adfbba1ea6a54f106530", v: new $Int64(0, 1567) }, { k: "90f90461cd6298a03c11ae43c62bda0f5197febc7836aa000eafad1f59a48cde", v: new $Int64(0, 1957) }, { k: "90fc710a12de82a1ffd8a5ec4532dc7eca20ba70349eeef7f979e2231383d142", v: new $Int64(0, 81) }, { k: "90fc7560fdd4dfbd268c91b1852e92a0b8c7702153cf7326b25a2a8e4aeba0e8", v: new $Int64(0, 9359) }, { k: "90fd82620079591503dac1a64af2233f4da513e13246ef93d146ba4b53b25c2d", v: new $Int64(0, 1005) }, { k: "90ff254792ddac60e540c9282e9230acf17e7ab8be2744f9936c683d86577832", v: new $Int64(0, 6075) }, { k: "910a7c65759f4e329d0b6b597db4a0491df8752220678472d7ef83c952e5a5ad", v: new $Int64(0, 3382) }, { k: "910c8c8736e192286afae755f1e420bbb139c2718af53afcac1c492296bb731b", v: new $Int64(0, 1126) }, { k: "9113c63e02ba887677e13d8a0ce5bf201dc40b5a436f2e9e5612c7cdb3459f5c", v: new $Int64(0, 995) }, { k: "911646dfc4b61e55fa7e9dc50a0a8bb65dbbb8bc86c47ae042e74a35e6815cba", v: new $Int64(0, 8615) }, { k: "9118686ffb909255012b577d8c9bba9e854539bc784fc32e85abc96a37175fa8", v: new $Int64(0, 9060) }, { k: "911a3c3fb04e44a31b23445c50a215fae04b0c825099b8da921b1b0b7416a173", v: new $Int64(0, 7784) }, { k: "911c02697d7da07485849018f784417ab337d0e6b5a84962b65cb43b08b5e5d3", v: new $Int64(0, 9851) }, { k: "912873c4aaaf2929728d7a9df8d0f6de396d2cc74f5d6989c805e8fe628eccc0", v: new $Int64(0, 4987) }, { k: "9129ea8e70dbad8c4b57299e0e5535619e1f6dbd8ed979bcd588c0b52964dfab", v: new $Int64(0, 92) }, { k: "912ca519d5157ee9f7ec9c24eb1eb284c3b6e60a4446ce3124075665e69f44dd", v: new $Int64(0, 8405) }, { k: "9135eb6d4dd6fb53ebbf1f6ee9c2fc42c6cd2f3ba9f174d2c42e8a0ba583cbc3", v: new $Int64(0, 9329) }, { k: "9142976bb50805671a6854a5cbb2f5e709f678371701f8ce6705b4cd1b8b185f", v: new $Int64(0, 6359) }, { k: "9146a5ed9debc5a9c0d8b48de9d2d6bfc25fcc763a884d360ed84002230deb6c", v: new $Int64(0, 4912) }, { k: "9148487544e4488d53dbbd22e373ad2a58a7bb63ce0a5f061e41012c9f7e28a6", v: new $Int64(0, 7062) }, { k: "9149ef83fdd5f9dbf280cdfc8313e1bc48fddff804a92fd3253ad8321ac32beb", v: new $Int64(0, 3156) }, { k: "9156a6ddef58a0821b6e3feb97a68afa528b428a1445da6cb35b271031fb32cf", v: new $Int64(0, 2464) }, { k: "915f20a0bac8e4d7b7f9e3d467827078e7fbf8fef89c3c3fce147126af86b492", v: new $Int64(0, 2057) }, { k: "9162c3798b9c43098c147d57dff9a743e670870c6a89a17fe424d8dd3a97ebec", v: new $Int64(0, 3435) }, { k: "916fb50b51b55124f51bcbe7d0b7e0ae31957ed838cce2e882275aea688d234e", v: new $Int64(0, 1940) }, { k: "9171163dc1392f89d81bbd2a672c980ab56c0f4bd7e8277d5c4bc54aaa216410", v: new $Int64(0, 9532) }, { k: "9171704e41f97e96a8a346afd250266bbf1c8d78ac1541b06045b0241fed1173", v: new $Int64(0, 5676) }, { k: "9183e6fece9dbd065dfc3135177b30e788058f8c0b5e7d4f92b6aec11007f738", v: new $Int64(0, 8235) }, { k: "9186572f0c1ab040aa8835a41f2acf7d94698292c366501e7a7a5b510472772a", v: new $Int64(0, 6124) }, { k: "91893a0419e354b09a0f852df6eb13cae163014ebf4520dc1216125c52c3f23f", v: new $Int64(0, 5819) }, { k: "9189c06e6be578b3dff36025d758b93b36ff5950192752e02627bb1cd878d467", v: new $Int64(0, 4507) }, { k: "919703129a9786e4cb7437a7052193da2abe0b9a8bb24aa91939cff7fbbf6324", v: new $Int64(0, 5617) }, { k: "9197f5e8dcdf2f95b7a93b39e78572f52cfe7aed7719a9ecbd7d7c7e515ab83d", v: new $Int64(0, 3243) }, { k: "919986ee45404e862a3627b9025909a90c772125e1728d5496d60d263ea11645", v: new $Int64(0, 6052) }, { k: "919c6a69143cc4aea623730bb6cc636c8c38f85b909ec9ace0fe2db49a196ce9", v: new $Int64(0, 9103) }, { k: "91a0d59c92a0759a58b0e658cd81a588e4d7576276952668ab070a4150399fa5", v: new $Int64(0, 5391) }, { k: "91a3df780ab137aa48e45c160f96c2fb1a4b2f12970ee94c68853b293fcc990a", v: new $Int64(0, 1861) }, { k: "91a5cadd44bc92208c58ee06774175e13af980134b740d9fd52bc62784a9d966", v: new $Int64(0, 3965) }, { k: "91a8d2a1a346e4d75026d3d820426f1ab891d2830dd49c80e3d9cccd1ee76182", v: new $Int64(0, 9136) }, { k: "91ae2264082a30ded3601ad6a7c43ce10e6b8eb596c07409a04567e175805fd7", v: new $Int64(0, 6245) }, { k: "91b2f9c59bd11665c4608dc54fc92392d8dadc29a4d727e933c01e101032592e", v: new $Int64(0, 401) }, { k: "91c4675d7103d26d13235834af163c80dc450001a09cafa1c9f1c15d67544ccd", v: new $Int64(0, 29) }, { k: "91c65e0b5b170af3b7d6643512b1e10adc6a1b0ff3d5f4091a26d168ca2635de", v: new $Int64(0, 1875) }, { k: "91c8e34f574b5f3bae014a5dda89e180dc4086013317352c3ba87e8486e85f1d", v: new $Int64(0, 554) }, { k: "91ccdf02fea3dfd60aa634ad138d8b87fe9d893b6815fac8e047c13348672d56", v: new $Int64(0, 5976) }, { k: "91d7a7d1c717659a721a3ded92771d2b7a1f65e6f34fbee35f2a6cf36575cdf3", v: new $Int64(0, 8386) }, { k: "91d86c8140acf0474dea2a445d0424535487ecfd5e23c58629e70ff4d8843fce", v: new $Int64(0, 8059) }, { k: "91df44021f0f2d0679154eea7dd3b0174850c058373c451294ce706bff42c169", v: new $Int64(0, 7429) }, { k: "91dfec3ed64f5ef2c69a23bcfc1a2098243fa305ed41f7186766e5d854ae0c92", v: new $Int64(0, 2263) }, { k: "91e06aad9f09a6323c5ab45fe1ad176305e9087a8bdf434b09e5722a407f26d9", v: new $Int64(0, 3241) }, { k: "91f264ec04200e0245e4b3a633be2660687c68d94fbb5f8f0c922eef18223205", v: new $Int64(0, 3971) }, { k: "91f7a0d274bfca97b9ccb8169fd293dd80cf09c792a513ca2c310a92c18f2b2c", v: new $Int64(0, 606) }, { k: "91fcb3b0c1093f0bf5654429c0830e99584bdaf35e23bbd0b5444e2f21431dc1", v: new $Int64(0, 9789) }, { k: "9202209e1d2cd2efaa25e3e6afd211ee48b08dcdb273c575552229343a2c84cf", v: new $Int64(0, 1809) }, { k: "9205d21bd43281edb72342dcc7f1971c97ac7c2fd6eaeb992bccd8c6bdcbd239", v: new $Int64(0, 2645) }, { k: "92064ab15cb76a821b302f67b1aadfba352b7f6532b54a11463cf22339537c94", v: new $Int64(0, 4007) }, { k: "9208a8f938397408043de87919e6996328dd8514c46976b77783226699d61d5c", v: new $Int64(0, 4144) }, { k: "92205e766100f1891cab6f1d28fe716c535338778fc03e84715c789211f5ef16", v: new $Int64(0, 9485) }, { k: "9224623679829f3cb09e434a0af2e07fbb92e4193a9737c2373aa048ba75f7d3", v: new $Int64(0, 9164) }, { k: "923f07d716b060dfa69fd3efce3533b86b8a812f48136e1b01f748b7acddad30", v: new $Int64(0, 894) }, { k: "9247c64dfa18fb394042db85377277e13ae617e6ec34e384bb113ee3d9153ec2", v: new $Int64(0, 6486) }, { k: "924c37117336b35d1dab3bd14856414c0d9c9a62e9f6673de2a3118dc11bf0dc", v: new $Int64(0, 4934) }, { k: "924d4a3e5857583a3c1e1655547b117baae75dc46f1d90f3d58e657cee23bdc6", v: new $Int64(0, 861) }, { k: "9250c8a9c7441d661819ddea455e7dd3dbfde5dc7aaaecc60047b4be41175ad2", v: new $Int64(0, 3950) }, { k: "92531f07d9b20a33ad9a141d5eae449f8dd64c901f0372c24821b0dd4fd4afa4", v: new $Int64(0, 3543) }, { k: "9254613a351f755d8afb5c4219cddecab3f45dbcb3d4823bde71bc64d5af8cf8", v: new $Int64(0, 3567) }, { k: "9258e664b9a801e6001c745e35daa0c4138795318ab85f88f52bc4c6b50f8ccd", v: new $Int64(0, 7734) }, { k: "926058131aba05c463a5e4f2d8290518ad149a40208a250f212d301fe786a77c", v: new $Int64(0, 5714) }, { k: "92607b192cb8d60cc45503ef07ec1c66c7f5110297d74977ba3e1c766a89b427", v: new $Int64(0, 2532) }, { k: "9261592dadc582688ed56c48cd2ed7ff2e1e5fa83298826e5f356ddb373bb8c5", v: new $Int64(0, 1543) }, { k: "92647e125f7376e2b7cef685131d04d5def7dcbea0092ddc4653e947ce1b9405", v: new $Int64(0, 3431) }, { k: "9266a6eb9db5daa65db2e4b36638f1128a6e6c259cb05b6c3621363f192a70cb", v: new $Int64(0, 9705) }, { k: "926d1b46811a2c030bea8602ef0109d9e3904552cf3709b0d221220347052e5f", v: new $Int64(0, 215) }, { k: "9271f3d3c61e768ba267b9a2aa4bd66c421d773048adf87cf003417032347275", v: new $Int64(0, 360) }, { k: "927c77f53e6eb0d928f5236600b23eaec6ef696572081bd0036aa82c1687651d", v: new $Int64(0, 8881) }, { k: "9280d84c6ec05e8a61e1987b707b106ecdce8bf4e11ab2300ebdfdb36f155d19", v: new $Int64(0, 2662) }, { k: "9284255341ca389f6b349950562ab8a8981ab45023044ea57a04443b8ea69b7b", v: new $Int64(0, 8791) }, { k: "928b6207378b9d54fb4f25bc782016328368c009283ac7e2122128a1d0348998", v: new $Int64(0, 1733) }, { k: "928db4e1c2f123f4733c48ed4379ca24b64ddd3a435097c5aaba19271b4b7faa", v: new $Int64(0, 6136) }, { k: "92a1eadc7b403462179d0b21509fbb057054821982fb50085abe3e7a76e89594", v: new $Int64(0, 1455) }, { k: "92aea5909291217bd33edaa4bf7852c45714b3dfcfc77fe803c2e31f4b52afc4", v: new $Int64(0, 7805) }, { k: "92b3031a87f99b2de19bbb46666d5da2d773e4bc47b6f6707656a34e8cee9966", v: new $Int64(0, 9959) }, { k: "92b4175fe688b8ffd0b381eb5916f44bd020225615909806f4d482b595af2fcc", v: new $Int64(0, 1547) }, { k: "92b783226421735229f47e23a836b964e27fadda86704c69c834eb1f1a817ebe", v: new $Int64(0, 1882) }, { k: "92c15fd6f0403ce3ccbf71f65d518dbe4b917a6b0d42f14f68ae768f0391a162", v: new $Int64(0, 8125) }, { k: "92cc7d8366c860616a24e4c3b03c41e14759b8ddbf3fdeed6277d378b3c78d71", v: new $Int64(0, 5392) }, { k: "92cd2a065fd376177d49565b7fda4339525047b8bf6d358e46f2677f17984f89", v: new $Int64(0, 7521) }, { k: "92d0bb0466532c95a0ed6898bd6d1518533401907c9ac55fa3866642b704b050", v: new $Int64(0, 281) }, { k: "92d70e92b5597b83e2040904c1174e1056f2c81c32dcb2d2f85e870a52911bca", v: new $Int64(0, 2989) }, { k: "92e83b88fa1a5560aac60572c12832ae34bf1d90bd8e34cff3b2e4da93c2f97c", v: new $Int64(0, 7129) }, { k: "92e891456f9111afafd79132b1e0d6edfa1f40c925c231513f655654f1718319", v: new $Int64(0, 2531) }, { k: "92ec1f35bad848c3ed29419ec99dc3045e82eb5a0905a62db3cd4a7a2ef03dc4", v: new $Int64(0, 2832) }, { k: "92ed33225ab327e9296a2139c19ba359d6ce88d28006d855d24d819ce6f15f3b", v: new $Int64(0, 3812) }, { k: "92ed4b6b689fa3f5fc8d308e9cc238e94aa87f7aa5e24e11c9ccf34a4bf2c25f", v: new $Int64(0, 9732) }, { k: "93006b040844a3c93fd7fdb5efb2f4c94378a584f46fc481772a571a2c1b6ebf", v: new $Int64(0, 7299) }, { k: "9300ec85073968b5cee6c16cca1f49e96e50eea247abe90b50528dbd2a1aec2b", v: new $Int64(0, 9186) }, { k: "930816bcd2573ba2804b534802cecf0a5604a92ff29b5876f0b337d2401a7340", v: new $Int64(0, 9972) }, { k: "930ed2fe55c5174317f427fe2f861dc429049eb37ea4a46fd4fdda6d6e43b4a4", v: new $Int64(0, 3383) }, { k: "93166ed79c7e2a24e0da914781c1ee824f26fbda81f31a07b634561264d3ca2c", v: new $Int64(0, 3944) }, { k: "93265a1965a72719245d7b0d014a763e5e0dc2915d875c2d2e634229d4e29739", v: new $Int64(0, 1581) }, { k: "932afc349fc16082fed99a1a036307f406d4edcbb7d5b519a99306f68f1ca8a4", v: new $Int64(0, 6674) }, { k: "932e1b38b6bf899ab46b28352c07b916c9a05bd8c2ada6bf0b1d1721579c6e18", v: new $Int64(0, 5284) }, { k: "93311fb53f66ac5c8e374ed10a0083d70481b87a8576fc10cfa09c03bb2473c3", v: new $Int64(0, 4260) }, { k: "933333622da9efdbe3dbdb39312c98da799b2d1f1ba7f42596fa7aa4f9daeb0a", v: new $Int64(0, 34) }, { k: "9334219258e20ff429f4a0aa450ab32ea245f3f1b54843c4e5b1a3ab2d842f31", v: new $Int64(0, 3678) }, { k: "9335c715ca8ba513b8f3c764d206543ab4f1770b769c38b76d4f8c5dc9257be3", v: new $Int64(0, 1303) }, { k: "933f16ccb0126727e09cf5c054bedf8706ef8e0b65fcbb6d0f1318abcb79b647", v: new $Int64(0, 7371) }, { k: "9348ae4042653bf47cb98c596d80098faf023547d4cd7d8b5a949ab3ddc40a7d", v: new $Int64(0, 4147) }, { k: "934b448a178f42ff5df0c7b7cb280ec0da9bb58eab7fbb27d1a60df32779b4cd", v: new $Int64(0, 431) }, { k: "934f92eb8d2a75fcb0680e601a10fe3a446894092bcf040b13ead49fe9eb2efd", v: new $Int64(0, 4108) }, { k: "9358b6d0c85d132124958567cf113a2764745471e49a1aaa522e9da5f77f2b41", v: new $Int64(0, 6751) }, { k: "935a7ef79e39b76ec9e6db0395c6be3f307bf3f433ce8547ea0bfb31f3e9058a", v: new $Int64(0, 380) }, { k: "935e4b9445cde1f8b26234bb780d6e941c4439a509326a874971c2270a10a493", v: new $Int64(0, 451) }, { k: "935f5741cb6a70f2e0c3902bf00f5c45904a08e88210bf1c6dde5d04ba96c6bc", v: new $Int64(0, 9031) }, { k: "935fe57450ad5591b6fcb027216fbefbccb5bb60d98d6118bd6bfa1c9a4a2210", v: new $Int64(0, 4112) }, { k: "9360d1a2bf9db7bb70abb59d03b1f0cc7c4502f7cd700bce0361d27cce5a0396", v: new $Int64(0, 6115) }, { k: "93645f9adab1aa1c2f6c61bc4f39f5631a135cf63586f5d6b0d944fa20a51651", v: new $Int64(0, 4586) }, { k: "93683f578374eed1117022ebcd78ae1c231062b3579316be6f4fa87c76cc3d14", v: new $Int64(0, 5407) }, { k: "936ba22817d2a7700fe0e5c1d1a41629a72ad0efddfcfd64deae1871824f2e12", v: new $Int64(0, 1601) }, { k: "93727587f9aa448ede4c45387a5f2afccb121e758255f57ba6040909453251af", v: new $Int64(0, 3539) }, { k: "93732392ac6149d36278439cc9f6bdd292e91598e3d4af481d6cdd70bde73a63", v: new $Int64(0, 5916) }, { k: "9373ee0fda623d47090f43abadf8bc42246882e749b786c39b0b98040abf0082", v: new $Int64(0, 6376) }, { k: "93765d2b8390d674af12833c6e063652c950fdf7ddc6cc4c33290cc4894baabe", v: new $Int64(0, 6286) }, { k: "93793c940c20e96233f729a6b787acf6597e3d93749dcc719e357b67460e3d9b", v: new $Int64(0, 8578) }, { k: "937e73871e5cc7dbe83915e9a33e670f7c1c666f1e1a6534c21abefc5150371b", v: new $Int64(0, 4743) }, { k: "938224a6dd633b433e7b5628db3ced76bf2ae84626921a02b2965779a76aef19", v: new $Int64(0, 1921) }, { k: "9383607d2e8ebadbac9fcbd57feddc0298a8cdbbaa5e98d059d1ab2bebe41629", v: new $Int64(0, 585) }, { k: "9387fb7c5b2d30240596b32f176f1f9192f1eed0aee05630c4388e8e509b77f8", v: new $Int64(0, 3824) }, { k: "93899f788e2674f0987058c72cb0a89432fe169d1b8b01062d3ca6a85911d270", v: new $Int64(0, 226) }, { k: "938ee4619b0e1d9ba452154ff0f38d1c271e2d1f77378e325975e357e0e4e243", v: new $Int64(0, 5054) }, { k: "93a288df0de92ca3aa763fb7223efa36d42ca8a719c01285aa86158f61f5408d", v: new $Int64(0, 714) }, { k: "93a298bf1641a619e48b8853fcac731e0d8e136eaad13439b2669f8a51793b20", v: new $Int64(0, 7821) }, { k: "93b879409ebb165cbf016f410b2b2d0471f2230bfd932dd5af51278ced910dfa", v: new $Int64(0, 7911) }, { k: "93c0541058d1a1ca0c21d4a010fcae54216645b03ac1acc43cc4267b1a311a0d", v: new $Int64(0, 7187) }, { k: "93c06c570a02a904c493a1a24dd7dd9820c1148c61231da1ff3117be341fb4bc", v: new $Int64(0, 7883) }, { k: "93c1860b5684d38e9f89a6ae4bee1c0ee18d43899ab2b5befda23f91d2b793eb", v: new $Int64(0, 88) }, { k: "93c545aa310cb1b2c1a0f4f393512713346f87d57b08f8b30fd370a631839f0d", v: new $Int64(0, 3553) }, { k: "93c6ac876871f0af3b47affae3f31201bc5410f4fa7d04a2735cd6589868a578", v: new $Int64(0, 9534) }, { k: "93d5643fbe10d1bc7bc156ee9dd2c3926236a1c2437c67b103c3b32d07a6ad18", v: new $Int64(0, 3089) }, { k: "93dd7101a9db21a12198509d66f421901565d97b5052fbd8286357c477a92ce4", v: new $Int64(0, 4077) }, { k: "93ef8d3c49a32b839f1bf3ce4f8607e45bd753abc0f78fb461a5b47324518f00", v: new $Int64(0, 519) }, { k: "93f313d33d5b95e37b593ba2b849d8f6a4beab0994d23e091c1731f5a339077b", v: new $Int64(0, 3295) }, { k: "93fcadb9c50bfb1deaef0b8c791b2b6312533d3726148f3a2a5ce56bde6609d6", v: new $Int64(0, 2181) }, { k: "94030409c6c56f5df6e7a31dfd90a6be2800698b8bcd1e6816b30cd7403a7323", v: new $Int64(0, 7569) }, { k: "940b2cc0186801dd583b6e6e9122e2aff1b8bf9bd3edf1600c2caacc04168698", v: new $Int64(0, 6329) }, { k: "940fdb546f93433d80f259510ef92cd6e8cd5023c49445eb51134bd6d0b37dc6", v: new $Int64(0, 4342) }, { k: "9414217fd630ff0be40fa4706b169b9c9df58e5e6d1e8178ceb39eb30f730598", v: new $Int64(0, 7083) }, { k: "9418b7e8db9a001670eaf969b57f9846e9aae6a8a96506e731ab3634dd02a3d3", v: new $Int64(0, 1709) }, { k: "941d4bdebf73f3351ba9be1bd3a9bddb672a7d1f4852d2d64434eb86c9cca811", v: new $Int64(0, 1878) }, { k: "941e378c65553006a935eba0111d2d0923e1355c7faf453a2b4973633e3bb9e3", v: new $Int64(0, 7991) }, { k: "943d79cdad1bf37870efbccd5d360198b995c87305fd5655b9890bba26c96386", v: new $Int64(0, 7211) }, { k: "9440d23d76a25be8da1d5e67f5f2b93324ba9419ebcb4993857fae3072cd1302", v: new $Int64(0, 7475) }, { k: "9444376fca7360bbc4cd3c021ff401a3b77169de5ccc4cb6559b5ad3a1e7e9b5", v: new $Int64(0, 2056) }, { k: "9445f8420a2ab2dd5c48ca6e63c27a4ab09c08beb0af4571b035d2323fa56cc7", v: new $Int64(0, 9714) }, { k: "9454ad13de676a197b03f0f236436090644636c91a5b0a16f6b13bfcfbaf6616", v: new $Int64(0, 6564) }, { k: "94595694da44fcdeeef8863c2805ea811889352f6a22b7116cdd53fa0e73b203", v: new $Int64(0, 2108) }, { k: "94603b1b746d52338dab478c004c0ead52693769e47985fe0fb9a9eebe2982d9", v: new $Int64(0, 6265) }, { k: "9464973993c16d819aa3beb6d9af5663cc30bc352e9381f59a391a2766c89954", v: new $Int64(0, 5300) }, { k: "946583c0b01ef9d4baab20222ec32ca4ab02b8c446d69a15e8f27872ae2a983d", v: new $Int64(0, 7293) }, { k: "946fb7226a65d240768511634468fc3ce3349ec3b45317c83dedf07e7250267f", v: new $Int64(0, 6429) }, { k: "9481eff795810f54c87c9c198d7bb811cb2db8c789e6ec44fcc26645dd01a39e", v: new $Int64(0, 8912) }, { k: "9493905076d375811b24e7e8a96120c9387a1381b638dd458f9bfd5805b5ab59", v: new $Int64(0, 2648) }, { k: "94993c202ff78ab5dd7f2492b75bd7b15fa68a8d416af53687cc36514791420c", v: new $Int64(0, 6667) }, { k: "9499d19a5500c469d9cbf88489c553cb6451f58847f8098e8ae13cd547b55836", v: new $Int64(0, 7431) }, { k: "949bca94f17cbdf6d53bccc2f66cb2f5c2c457c379226549659e897f1e793f94", v: new $Int64(0, 548) }, { k: "94a43ad735d08eae87c5daadd189a0083b96a896766d13a27f4a6b772c1757cc", v: new $Int64(0, 3046) }, { k: "94a66a104008ec79c6c590d82e27a093593c41350f66ecaf2e96b9754650d78e", v: new $Int64(0, 9291) }, { k: "94acdd8965db4c7b013d2179654dfcb16ab6f9c8ec4f4694aac788c14295148a", v: new $Int64(0, 2643) }, { k: "94af7ee886d795ffc4ae0261b62ec54840b05152f5295b619a4acbf09f5ef2e9", v: new $Int64(0, 6462) }, { k: "94b367cbebbe9f22caf381284770a6012b92119c3818a3368672c6cdb5630bc2", v: new $Int64(0, 40) }, { k: "94bfeb505e7ee72492a5e13b5b9e3e4bab342f0456e4b729fe5dfb465a9dbe72", v: new $Int64(0, 5993) }, { k: "94c367ca010d3b3673b48684c94b02268132ce0090d81f52939c0096a55a7f78", v: new $Int64(0, 3323) }, { k: "94c4c10e997b4203a112e264de9295559e4be4e4d70cd96f0c75617d52f75aba", v: new $Int64(0, 4376) }, { k: "94dd8a99f3496776e09caec0af0006c0e95fbf060a9abd64f62e58464d63a84a", v: new $Int64(0, 8847) }, { k: "94ded814ccc77754be081d7231a2e2921632f257e8165fcef8d268663ae944e2", v: new $Int64(0, 6212) }, { k: "94e168fedd32d4d6dd98ac1bd7549fde9d0f5f978bc2ed3bd8c21727d4a1dba8", v: new $Int64(0, 5230) }, { k: "94e4589f8c624c3d9b53ef23372cbb041c50daf50774ba2071670ddb4d632396", v: new $Int64(0, 7984) }, { k: "94e5e559e317ba33fc5b11ae1f89b7650e40df9a89abed5dc4f10fe604fa9518", v: new $Int64(0, 7351) }, { k: "94e79d0b59d432604a6c92789d9ece3a4cfb11608e4a2799180eba8f342e7a31", v: new $Int64(0, 3335) }, { k: "94f40642175750b8529575d2555bd964317ff2085e5afadfd4447e42ec2f2b44", v: new $Int64(0, 4135) }, { k: "94f6e9bbf8600c2ec20ce8ebcd7e571fcfad362d1a6f00cc7d5e453ee9bbec52", v: new $Int64(0, 4166) }, { k: "94fa7cc5a4a9259345abd7ad5ec0889c583673bb089a623e152ed76dc2c2529d", v: new $Int64(0, 7036) }, { k: "94fc1597d2a36dcc2e8c9e83fa4164852e66ec59877e067f03bf4bde35d6f2fb", v: new $Int64(0, 5169) }, { k: "950e98295e7bbeaddb4fe9fcc3b99e4a16f8a73489156007fe0860cf2b703029", v: new $Int64(0, 7918) }, { k: "951245c446223e7b9a768be0e75f43b517009a9035290ba3e007cd56aa61c94c", v: new $Int64(0, 579) }, { k: "95159b1d35755193a332d1b9541940907a2bfcaa02f40163abfdf563e6e2ac05", v: new $Int64(0, 1650) }, { k: "951be2323d8b3983c55c3b9a88175dbb323eb819fcc30d54a44089c8e04fb694", v: new $Int64(0, 3493) }, { k: "951e29cac6a14b7563638802f925c986002c3c0942996da15e88d470dac8d2d8", v: new $Int64(0, 8713) }, { k: "95223f701f514c561a83e76e8663a2fbafe76e9f23b9073eae10c2300019c2ea", v: new $Int64(0, 101) }, { k: "95233d21df4d7a0020e51ef81b5cf7160472b7972ffec60c8515b1a628af5967", v: new $Int64(0, 6315) }, { k: "952a5dd0556dca9148872339613a7e9222c0e133ce537108add4cd41884e121e", v: new $Int64(0, 8451) }, { k: "9538716501846250abb9795567c8a0c8d69e038a88c74995f0a98e286e2743e1", v: new $Int64(0, 1553) }, { k: "95387987a75525d5005f849dfc8ca1a26c95cbc62e224d08d5425a98bddead01", v: new $Int64(0, 8123) }, { k: "953a2c9eb3cce1edf926c54a35ada4573663bff606e0be4dc3ec77a2625a1d8b", v: new $Int64(0, 8102) }, { k: "953a5babf2c86ddd3f227f26ca8b1fa095afc28286aea5c4478a0f84ce1dd4d4", v: new $Int64(0, 6837) }, { k: "953aef3dd1e40fc773a75f4e2b2ecd0f0ad7e7be7a5f875ea482b382063dbaab", v: new $Int64(0, 7041) }, { k: "953da0866dac2a24399b47f5b55b52eebec9100c9ec1d09c46685f4a72fe88c0", v: new $Int64(0, 7862) }, { k: "953fd547102821bf17549e6026a8158dfd852e94c402ec23f356e035dc9ca57a", v: new $Int64(0, 8851) }, { k: "95419fd5c1c67e3ba5fa58ab77291e28faa48208d5a55690e2c908054ceb099f", v: new $Int64(0, 9508) }, { k: "955442c544d6eb17aa7bc91334dcf4d16ec67971e19343f367d90d7c499fb72c", v: new $Int64(0, 6743) }, { k: "95579848688e14550a5b5ac1b9bff1a37e5d4272ee00358825c2b167feaf9980", v: new $Int64(0, 1730) }, { k: "955a1a8920fc568ba8b7141da177cfb8cb953788365f06e152e00f8c7f8395fd", v: new $Int64(0, 2299) }, { k: "955c7a672b0ddbb03b15306cfd30fa2f63ab8e373024e910e68fc9935355b6f1", v: new $Int64(0, 2760) }, { k: "9562a926a8c93dbd20d6a8e3ebc6b918b642f56d4e58032318aac25c19db58a9", v: new $Int64(0, 1276) }, { k: "956582e9785b168f56e5e1273ecd0d893dbc04160028c22ed36e3f081151b9b8", v: new $Int64(0, 8458) }, { k: "9569646277a5261f88eb6286526f6858414fd2e8c22f7d1e3632eee89236af6c", v: new $Int64(0, 9586) }, { k: "956aa044db67e754a5fc3281835df72c5ac39b55a8a204e1096e7b8011eb6180", v: new $Int64(0, 2686) }, { k: "957018bc60638ded688e0aa9eba4d312611f744334b0a93f99169c7597bc22a9", v: new $Int64(0, 2508) }, { k: "9576fdd728f7803602d46390fa74fd307f59a19cac267fb98d2569b13a297e9c", v: new $Int64(0, 5867) }, { k: "95774f35788a5223db356c18593d1c5c710b519450c4a90583a601a9d3d0c709", v: new $Int64(0, 62) }, { k: "95826fdab23044234ba52e29ab69a31939027b4644f32d14a616c44cbfbf316f", v: new $Int64(0, 394) }, { k: "95854af99e87ee1cd5aef132e94b6a3aec7447d45e885c60e750a11b350dac2d", v: new $Int64(0, 6399) }, { k: "95856fb616dd4ca907501465dd24c9fb18088ad79c030270b427524c7cd4a8ad", v: new $Int64(0, 5764) }, { k: "95871a954a5c25c836df2d65bc40c34826f1519280b16c42693ff10f50efbe65", v: new $Int64(0, 9209) }, { k: "958ff3afa7c88ba5310f3d8d49852940039ac4e090ee39569b1b93a48802d118", v: new $Int64(0, 4467) }, { k: "95927b5b029511d9f78a64232494e4086ebee57119167ed8cc83e19d590cdbde", v: new $Int64(0, 8269) }, { k: "95a9c4aef68996e9b1a3be98cd348cdaa366d0c4cee777f42f19aa75e5ed129b", v: new $Int64(0, 7189) }, { k: "95b4e70c2af01c4401d6841ee7286510c9445fa7cc16f30f1d6f8ea706414914", v: new $Int64(0, 1460) }, { k: "95c5e67e86544411427094bd138d7c60edbe80764b73c8491f7e51702327a459", v: new $Int64(0, 3312) }, { k: "95c9b096aa2b2773e801595172ba38cd3486ba2e14a45e277f48ac2cc3d383f8", v: new $Int64(0, 7011) }, { k: "95cfc188a38d6b946bd7612c15407b3886be84271f211668275f7d726df8792a", v: new $Int64(0, 3892) }, { k: "95d046b05875bdc8de468f8dd4c29df521834749bb411539454f00cc35deac55", v: new $Int64(0, 926) }, { k: "95d07d4266ab6a5f7e276b4acc14353269edbeb5763c6ebf5e91b4d44413704e", v: new $Int64(0, 4263) }, { k: "95d2dfea5271038e31c29e1226e7f171e29fd5c94eb58445e0b1272871979faf", v: new $Int64(0, 3611) }, { k: "95dbde37cf554e395300eee793f3434a55fbb6eacedd7601ad2021cad8741f4d", v: new $Int64(0, 7590) }, { k: "95df43167b5ab987feffbb13de475bdc83fd7e0ae14d5eed7325204bf7a9eb0a", v: new $Int64(0, 2560) }, { k: "95e5932814e04f2bfc228f341bba4f662976cac41d15cbf7332dabba9dad6fc5", v: new $Int64(0, 8736) }, { k: "95e648333767c3c4fc12040b12429f871f828b53feed26b976c517c46d43e0d4", v: new $Int64(0, 4947) }, { k: "95e87c3572b5c6bef473210ef3aa2f017be70137bb682516a5e22e9cabcf7e37", v: new $Int64(0, 3397) }, { k: "95eb8be46829494b7c3875f2418873e76350edd7a72dfbcc305fa643ab99971d", v: new $Int64(0, 9237) }, { k: "95efac10b0b56feed1e82697bc788fcadfc0d8b4c8da0544cf74e66f5a7ca061", v: new $Int64(0, 6596) }, { k: "95f331a9788d15f1e38ddea414734cb035a8cc3e85f63930fa46100a2c6c7711", v: new $Int64(0, 765) }, { k: "95f7e5ac2b5dbf7ff235fe02c9752e34af9b30c4a82f7ddfb24c4e77c282bb2a", v: new $Int64(0, 3951) }, { k: "95fa1211d363828edf97ce3dca8f445be7675b460c5b1c936fb1b4329b1e68dc", v: new $Int64(0, 3902) }, { k: "95ff0b1febeecafa7319d45e88a61fbf1e2669cc09b8e1cfceb845cce95a9b90", v: new $Int64(0, 3966) }, { k: "9603ff4d8d9305d456efc877ee3c009550e8e93c2a2148a8317a0dccb7a4c59b", v: new $Int64(0, 6242) }, { k: "960a94ba75fe1802f6cb2c47a34e3021952d035aca5ad2758c70944148fb5e69", v: new $Int64(0, 9976) }, { k: "960d3348951bea94e3905f68976f0a4e492226e43794bf8b0d0d43fa555e0926", v: new $Int64(0, 7303) }, { k: "96174c8b398b207a187b9396d069587e6041de1fb641d5653b6acc0c9ba90e6f", v: new $Int64(0, 1006) }, { k: "961fda0958dbaa13ad99a1d57430167a22fcad7af39d57338f8901a8b1bfc1bb", v: new $Int64(0, 1853) }, { k: "96218253b5290b699330942d43c48375e4b028438cd291d1b27340c31bde3aaa", v: new $Int64(0, 6585) }, { k: "96268a9aee0957f8601a809ea050f34ed2d16ad440a519c29d0d4d2c3dfc3c3d", v: new $Int64(0, 7137) }, { k: "962738998bb145ee51feef5c80082cd446631f4c3d970ff2e28b7e184dd79990", v: new $Int64(0, 4672) }, { k: "962a2f07d12bf82467cde9051c5b9655303c06620be3f14f4adbe2f6e7987b61", v: new $Int64(0, 9391) }, { k: "962e2e6ed0896822f1435d81487064d12411cacbeb78dcd693eb565914329825", v: new $Int64(0, 9055) }, { k: "9636b405afc125345203d56edc857fe69330bde63c04452178a3370a1a17e9af", v: new $Int64(0, 4410) }, { k: "9637a38598efc39e71a59333af272c83cb4331cd8311384c90f4422dc742b597", v: new $Int64(0, 7341) }, { k: "9640706a64f347f44b0782082f4e6eb66554556c28e7c8a7fb40a6ee5e40b1c0", v: new $Int64(0, 5744) }, { k: "964328f17008606db1054d1130318b76a36137eec5e38701c44af57c1ba20264", v: new $Int64(0, 1053) }, { k: "964f9be83078263b4ce4408ba27f3f3e23c4d8c4739ebea0c58399df13bf7cc0", v: new $Int64(0, 184) }, { k: "9658716f8873770023ea283ae4fc379f99f56dd4cb41b7a0c13b718ee9384196", v: new $Int64(0, 2623) }, { k: "9659526d6b57438409749f6d0f4ccb0950ef00aff2477ee8b6e1955f9f8f7ddf", v: new $Int64(0, 7759) }, { k: "965b1df3879600b412806924467b4aa5406c30d5be27adb8f182f037c7a68800", v: new $Int64(0, 452) }, { k: "965c3348db626ee12176f378370d77ee655f3ae34ef6a4f240c47e8c1c0963aa", v: new $Int64(0, 2450) }, { k: "966485ce15dd0bc9682462a0e3b5c01ebb85e1267245454fe1c700d1fd048caf", v: new $Int64(0, 653) }, { k: "9668cdc02b13859634828ec0a9ad85dfcb6ed1a21f27ac638550c266d2685a0f", v: new $Int64(0, 5098) }, { k: "967d410da2524f277cdc8cf2c588d2d77de2aef52f066d81611812e11abe362a", v: new $Int64(0, 2785) }, { k: "967ee0adf07f4415fc8e2b7568b0636dbcbfc6c48ac0175194e428796ba2f977", v: new $Int64(0, 7614) }, { k: "967f5f60e8693cc3cb90ccd8b38f3ff944b0e26adbaccb5eb9aae0b225ce3514", v: new $Int64(0, 3761) }, { k: "96890ae99c5c5491d29a354782fecc1deca9d9a2389c8d9cd393d410e1271fd6", v: new $Int64(0, 1886) }, { k: "96897c53ffe4f60530bde8ca3e51f83b87de9c52116d1646d33a98a9700e05ce", v: new $Int64(0, 9772) }, { k: "968bf25cc5cd5dfc2d5cd6a05040def39de341dad494eae3b0b3f3ffb0a6fd12", v: new $Int64(0, 7269) }, { k: "96931e115d63e356ee48d6590b9ca2c8f583825e34628379fd28d0d33885510a", v: new $Int64(0, 5527) }, { k: "9698f3389c910e6e6e68ffdde907f4d755331022bf85416368605ecfe5b4864a", v: new $Int64(0, 4540) }, { k: "96a28ee0b89db0b563adcbe4e7d1824959046de25fadb19a8ad5efb6eb63f3c4", v: new $Int64(0, 4002) }, { k: "96a38a89679d5952c9279e1c72e57c30f316a09d9889807000f712da0722df4d", v: new $Int64(0, 95) }, { k: "96af9fbca2149a29af9abc9486cb791dd0bbe9f76e188ddbd0aa3bf4a5d69b35", v: new $Int64(0, 8969) }, { k: "96b1f8bf2b074b29ef222c7e2f25f453a24ab9e00a21cd5ee4cde9c1741b42d2", v: new $Int64(0, 3389) }, { k: "96b794f1be4e43750d9f13ab6f8bde5616a28cb19882272a3ed3c87e1b513562", v: new $Int64(0, 7224) }, { k: "96c436eb39bc84361e87b902f214a1e7b81daf432457449aa8f6419c9af14716", v: new $Int64(0, 1408) }, { k: "96c94ebdbab17fa2b3802371678634bb5e1a12a885e219eb1b632284ba392cdd", v: new $Int64(0, 8433) }, { k: "96d14d8dd41df8c947a8991ed9b48ef5cabeeffb485c1684568e621236fd9592", v: new $Int64(0, 9155) }, { k: "96d238e0f14d04f5341759edc36342faa3b6972d7acd9b37cb3bda834785a5e1", v: new $Int64(0, 5847) }, { k: "96dd57859ed61a82c7b452c0f8746b050be70c1ec10edf76604721d42eb6b770", v: new $Int64(0, 7394) }, { k: "96e1d00baf767324af13cd3af24796f00416ad3b3fca4cdf991d56e6108ccdfc", v: new $Int64(0, 4770) }, { k: "96e36e07fad6df513b0c01de16aa6e8297469200fc55fe9e605aa284b7aaedc6", v: new $Int64(0, 4302) }, { k: "96f2daded5beb5a234918676bb0e9cae20465d59193441b93bfdfe530241f134", v: new $Int64(0, 5079) }, { k: "96fd1cf16707cef4c1ab0c20eb148f181412825011336d9312330affcc0bffe4", v: new $Int64(0, 2294) }, { k: "970c132936e663864107418df9c9602a7e249b969b67d57487e59427acee5b51", v: new $Int64(0, 5866) }, { k: "9710696d45197b42b130d0be2f18d51fafe934381e3e8165439864736b58bb89", v: new $Int64(0, 1662) }, { k: "9712e9433aeec7fe8ed4bf6428ad6261100abbe097d76236d267bcafdf327c07", v: new $Int64(0, 5211) }, { k: "971c37d17aefffb6b752ac4f9a718fd810d470be935d3a0d827a8fec165b15e1", v: new $Int64(0, 5818) }, { k: "972081fa560ec9785f40491e7992f276374eaa7babfe021050f8f2a89edab51a", v: new $Int64(0, 5610) }, { k: "973f23f97d144f28bda4be0cbe21b55d2eda1c37973883853e2497142c99a000", v: new $Int64(0, 8955) }, { k: "9742484afd8265a75ba8adbc7def8d5a90dbdd5cd3bf8d2bddde52cf465bb08c", v: new $Int64(0, 4209) }, { k: "974741b5630690458f9668fba7beff42131a9266dda89651af0a1488e2f7c587", v: new $Int64(0, 8249) }, { k: "97484d4de87b919e6c51fa5706a81e6fe41ed2769ff102461ab02ad695d75cc5", v: new $Int64(0, 7165) }, { k: "975194335f664093a38ea100628d7c3e67a2cf6faaa9bd705a8926f61883436e", v: new $Int64(0, 5941) }, { k: "975979c74630d6ba1bd6b88b43a08a0e5b7eacd44f72961d95228eeedf4af31a", v: new $Int64(0, 6003) }, { k: "975cb67226557c339bf1e94c9db84f04c4bdc23f492738e6cdfd5e0f05c7851c", v: new $Int64(0, 5088) }, { k: "975fb06ccdf3badcb66a1fb5bfbf353c8c74101f11c1364a37306bbaf482b81d", v: new $Int64(0, 1942) }, { k: "9766b0b9fb51423ae558f2dafaefcffb29f36a6fca71bb31bbae743003094611", v: new $Int64(0, 4170) }, { k: "976b8ee21beff3a6a4c1580b8cdb2e44e6fae0dedba9e2b7d0b3bd65cbfe81a7", v: new $Int64(0, 4530) }, { k: "976cf58d833e14a4fe992e643c330fa5367c550c948455bc0d169388ede84964", v: new $Int64(0, 6698) }, { k: "97759ffc6936d82fa040deaa2c1840e4e4fc638fca7f76ebc3df91a2b63567f0", v: new $Int64(0, 478) }, { k: "977e25669bb25648f05753614b1a3b8556e111ffd80e681f800c157c84af091b", v: new $Int64(0, 7346) }, { k: "978292fc03e130db4bbf6b9702478914e4914fee210aa8cdec0fcbfb09e62c1c", v: new $Int64(0, 1660) }, { k: "978c389d7a367606fd0bf67a7a5fd0823f8a37c6e4aae7aecccb6eea166a7580", v: new $Int64(0, 3536) }, { k: "97900e3baba7d1a9aa04b1a682edbaa909fec7562f293aed3d084f5dbc7cc1c6", v: new $Int64(0, 5063) }, { k: "979cbc31c8f1c8a9f395ba00e2ceea5a61a05d29d2038532296630a5596da148", v: new $Int64(0, 4454) }, { k: "97a444f25fe085eeb6631b1d346547c99cd70cf394edbabba49f7b1e83ef3603", v: new $Int64(0, 9939) }, { k: "97b184149e52b0f69c1e577d65f209a78eaeddc0dd8321e1f0a8bc53585b9b30", v: new $Int64(0, 7220) }, { k: "97b7fe51d5b7e9a7284a02b29514e2fbab8764b7fd0b8a02a5a5d9a7d8587d47", v: new $Int64(0, 421) }, { k: "97d9a937908df978aa450c668423c87aba134e383eb2ba941162df2e3e80edf9", v: new $Int64(0, 2934) }, { k: "97db568c5fa4de1f334d40ace754545bacb2f07e732da3ffa9a054a908204244", v: new $Int64(0, 1204) }, { k: "97db9f12f0d29babf7cd90b56aa963ab35189602a3e0eb865a658fa06d91d02e", v: new $Int64(0, 6741) }, { k: "97de0edc978e5d87100b15a262cacec230882005941d6606938b6b0beafcf42d", v: new $Int64(0, 1263) }, { k: "97de4af5cf27d3045ac7b0dbf28ed08d298fc7a65fa4b2fd71242e7463a3a7d3", v: new $Int64(0, 2168) }, { k: "97e57288d9c5dbf2d94cc362ed29cd7310b3cc54ebe0860f4cd9d80ee9283815", v: new $Int64(0, 157) }, { k: "97e79578fb0dd996588318738ec60908358ca1cdc23bf810c27dce7f48689a2b", v: new $Int64(0, 6708) }, { k: "97eb3e788719020fd4ef0717a4debc761e733bb156c4871b76b8b24b7a276e6e", v: new $Int64(0, 5159) }, { k: "97ec809228fcb9e924d3ff5ec6d30ffd9c1f329c9c7746262ac588de3b5a44d0", v: new $Int64(0, 7388) }, { k: "97fa414403c3e03fe0d916c969f82d23f2830add6fd90c89ddf3e3acf12c2c8e", v: new $Int64(0, 4359) }, { k: "98026fbc08a6169b4d942ca45c21dbedfa948c1edf611a562f3acc855c4bc399", v: new $Int64(0, 5221) }, { k: "980349f692c870dd29b0dd95b1ec3dea99104647d0f51fab2185c1b29fac6eb1", v: new $Int64(0, 8968) }, { k: "980a7e2221c057c1dd45db20ea9b7a496ea0e6b159286a7d0d0cb9f3a459a363", v: new $Int64(0, 5439) }, { k: "980c6fb885b74883b0e9f21134da2dbf44e0bce69822556991f27ac1b88665f0", v: new $Int64(0, 6950) }, { k: "98123c72c04a83ead4ef96847e2b337b864be7d1dd1fe116d0649689d616bb75", v: new $Int64(0, 9758) }, { k: "98131793b1d3dad9b88ba89662c095a577be68e76c21ed83fc848fc0d0a6d2df", v: new $Int64(0, 3911) }, { k: "981cf32deb32ba676629822d39596937fbdebb35cb3bcbfa6fd602c2e7a89235", v: new $Int64(0, 2089) }, { k: "982817d89e77314edd58716af065b1637b875a6e4151ffeec600606bd112caee", v: new $Int64(0, 1528) }, { k: "984576ee05d52971238b0819b3c04fdb1df9b8711b4510b99ca0a1595a854240", v: new $Int64(0, 9239) }, { k: "984a1c5b1a28b0311ed19053ba0e862f0b7b1e3be09a4fbaf770b9f3ec8b8274", v: new $Int64(0, 9158) }, { k: "984c032883db9cd4aecd989298646b7cb26dd3330f1fb055ef7cab6b16515417", v: new $Int64(0, 6362) }, { k: "9852a930b507d0d2a6c9786454ef43acc3379b9c6f539e76095235c3545c1425", v: new $Int64(0, 7472) }, { k: "98589346c6c4022a13e73cb5594ed3198d6823f271643a913284e44c9e2ba113", v: new $Int64(0, 5928) }, { k: "9868aef1778cf42441a0485ac8d22e44ea6f3997394d7b885421a8082872991d", v: new $Int64(0, 5596) }, { k: "98766ccfb3830cf92647cd28e64a3b707dd7adbc0e3d3d5e72f74f611e176cd2", v: new $Int64(0, 5909) }, { k: "988a3115261074326521ab272b758bc7e3d428f202ebe3d5767a542b0b2c924b", v: new $Int64(0, 6834) }, { k: "988b687e09ef1186218ebf009bfe8767707f1fe0bebb1203bf5eeece1a37f27d", v: new $Int64(0, 5017) }, { k: "9890f4ed67b2e096a911daef5cff34d2a503ea8d9a07c29529b76e352ade2936", v: new $Int64(0, 5576) }, { k: "98a0de28792c7489ae5feee71b220b353404d1c6ffe21de0dfd6e27d4fc8f4e4", v: new $Int64(0, 3064) }, { k: "98a19b3792adc4d654cdd74761a7fbfc681c4db5e9d267427b525fa4e0b3c5e8", v: new $Int64(0, 468) }, { k: "98a19d0d0fb5e7f9f972cacd25cce1dd7990fd7b025ca0889ba07fbb9736de9e", v: new $Int64(0, 822) }, { k: "98aa9e3573149a7619b6cf8a4ef92f98cba414745ebda7b8282958870a97bb5b", v: new $Int64(0, 8205) }, { k: "98ac1771d0d0afe145aad8ba054cb30ec45324b1f2cd77493a31194b73a621c4", v: new $Int64(0, 3207) }, { k: "98ac4a8eadbd2400ddc3d867eb01abf181c26ee169c175b08d8a7712d3f1ae03", v: new $Int64(0, 4908) }, { k: "98b0f8f45b2d47af75f336a2ddbdc4667279c21eedb6e481f597d879fd94d795", v: new $Int64(0, 5856) }, { k: "98b6661508a85f47fb030ffebb02ccfcc10c2e52b8a6b3bc309beca32a697e7e", v: new $Int64(0, 5483) }, { k: "98ba5ea0c2ac0ce36c71118ce386f10491c9ff83592c079b05955ee6f2fd8f20", v: new $Int64(0, 3955) }, { k: "98c1bbc70a70d6de9a0e83b0eee2f478658e6a50911f78c2a6d06607dbe1fca7", v: new $Int64(0, 1257) }, { k: "98cafa5cbaf195f64db673ccb457b8d193af833058bb050d232aec9774a14f60", v: new $Int64(0, 793) }, { k: "98ce470d3139f078b7ac14484976d0d9bd64b4e3b3baf9b502c46a307d1b9c6a", v: new $Int64(0, 2416) }, { k: "98e090a09dfe309ca928039ab8040e44549c4002addcc44b37048a259e37eb4b", v: new $Int64(0, 4706) }, { k: "98e5b40ae8fc2fed26df22403fbb5ec33f0af577a9b67b64498a8fb7f12000a9", v: new $Int64(0, 2939) }, { k: "98f37d1b9f0323d39d598dcfb66014a0325034e51830a44ff473f345f9a0882f", v: new $Int64(0, 3424) }, { k: "98f8e28e4800e6133d9389c64cee1ece56a3c3dfad200ebac4b06e78c87bd987", v: new $Int64(0, 6662) }, { k: "9902023927de8e064113e230b3a755ef8ed5b28275852d11fb717f431a6d570d", v: new $Int64(0, 6789) }, { k: "99245a7169f3aeac905c9a3b2b12879d038ffd3cc781b8114af84d40e58f444d", v: new $Int64(0, 3273) }, { k: "992558a054be6d47d5c774c0ccddaf6b142dbecb1f46244d63e334844be414d8", v: new $Int64(0, 8684) }, { k: "992af88395b1940aa84c2b642113f9749e8d86fef1efd1dec8d73c85c9142d03", v: new $Int64(0, 2094) }, { k: "992fff37e19d663db609b698d23b89b8b79aa8ddb513818ea4945ba99ca1910a", v: new $Int64(0, 3580) }, { k: "9932fb424e4b86562dea5712dd1441f4c351c051faf5109b9a81fffef9b39aed", v: new $Int64(0, 6860) }, { k: "9936edabd665de8879f1115e567310d199ec3f76ddcb4807df0dd6f7818680e3", v: new $Int64(0, 8983) }, { k: "993f73b898c8ccf03e965965237888f78ffba164b9d2fbeceb6f5a82cc47fd9d", v: new $Int64(0, 810) }, { k: "994438737a333ab509af74ba8dcd9fc50dc75aa515da56edb02e391d713cde2d", v: new $Int64(0, 1139) }, { k: "995612f8e1ba732ff285cf322cf180ec04329f065c344a91b01b263c17c748a7", v: new $Int64(0, 90) }, { k: "99580c758bcf5a6f861464ba715fb27f8bd392d03a8903e77d2ab7462728b356", v: new $Int64(0, 1518) }, { k: "99647d537fbe9073b2b1c67293ef2e8d6b24091cf779015a2d87f3b906f6d576", v: new $Int64(0, 6498) }, { k: "996e17d4530b783a3b012d8e526e263054260b7551f8317d0a8e0f8981f36945", v: new $Int64(0, 6405) }, { k: "99716572b69ce45dd3fd8c31a595e6e02e446f08b433f17ed2faf8630a7dfa7e", v: new $Int64(0, 3481) }, { k: "99923ce59a2540da9cf85541cfffaacdf6afc41cdfb2bf906af5f252cb6c3f63", v: new $Int64(0, 4582) }, { k: "99978b74b727333744e80e30883b5fc8f3bc17f32ddc65c7dcbb7034c074402d", v: new $Int64(0, 9196) }, { k: "99980114c91bb68f21200bccefb2df82444f1d1dcb5509677ae9fd9d82f05a19", v: new $Int64(0, 5060) }, { k: "9999c53c989a56e9deb0a7c24f00ee529901a7cd0b9f0fb880f6f045f73c2bfe", v: new $Int64(0, 3690) }, { k: "999b55fae7ab76517d53654a9debd40fa938e55c8c2bf5d0f4119362543270e0", v: new $Int64(0, 9720) }, { k: "999c9da4714b16c44a0ad904d23d956d9409ec577dfca6012b870487a1a7f582", v: new $Int64(0, 984) }, { k: "999dc5c57074c2cdb3f7dbb53794ee85664e5852c93ea4505345656deaca3e9b", v: new $Int64(0, 2501) }, { k: "99a0f51ec2cc9f4fcc6134c5bf70f8972ecd1ec6cb4789c682b5f991efe4709b", v: new $Int64(0, 389) }, { k: "99a49d7fbb1ad5788dcc0515528d4283b7708dc6e119a3cb4c92c6013425eba2", v: new $Int64(0, 6753) }, { k: "99a9fe1007fc81b220347bef361f7e39e3be61409e388ceea909da95b4c1d6fe", v: new $Int64(0, 1345) }, { k: "99b2496acc381ad8693924976aa396dbd59625c971de00fcca612b7252bb1c32", v: new $Int64(0, 3507) }, { k: "99c3083a578aae91c5485745faac3504b32071a8d916fe6a67476ccefc4ea67d", v: new $Int64(0, 4236) }, { k: "99c38b083e8eccd1ddd0f93116cd964c316378ba287b9d894a38eb888264a34f", v: new $Int64(0, 6625) }, { k: "99c3e8ac52feca58339e8ff0fcbd6ad177081d553e5901dfbea18077f1d2aeac", v: new $Int64(0, 7466) }, { k: "99c6c5d4f04438e805eb048613c11b6eeca39877f75e0a4cb0ccb7e88f9d5a8b", v: new $Int64(0, 57) }, { k: "99c8e25ee8eb03e1bb77ba7e9133aa1c32ed433de9c0a42d4299b6beacaa13e1", v: new $Int64(0, 8964) }, { k: "99d8645ee375581293a7c308e929d638c926191a1ccfec5298c7d1381afbd15a", v: new $Int64(0, 7389) }, { k: "99d9453c59ef11dc3914f1b7363103e8266a1e43cdafa07b78ddc05d62d94695", v: new $Int64(0, 7583) }, { k: "99e37fea4319b761928ebd0ea8ff7301e17ea3d4a88ea9081996703fe4a30b07", v: new $Int64(0, 8541) }, { k: "99e4f462164f414025c1f641c4c2982692cc40cf8a8b63a2ef0294b217b86571", v: new $Int64(0, 3557) }, { k: "99e6fcfdcbfa430373028573d15621d36021c269d8622543a18b65b5cb2a520b", v: new $Int64(0, 9896) }, { k: "99e8ede5570910649d68fb869da7ac9fbf931c21ec9d6c7799ffe0d4e60250d6", v: new $Int64(0, 8027) }, { k: "99e9feaf07c17b5dc602a226c5351379a529033e158e18f2ddcde7821c41a96f", v: new $Int64(0, 7725) }, { k: "99eabe9bd96e640e47a26c0f3eafbf47bc5b60ecc00dcd85bef9885441cc2429", v: new $Int64(0, 7433) }, { k: "99f69fdf5911192e4da6738132bcaa512ff31fc1c07737ad9896188eab9be31f", v: new $Int64(0, 3891) }, { k: "99fe682daf1ecc333ac0598fe511412f49fc43eaf1123ebeab73a7b3d14c9e46", v: new $Int64(0, 6330) }, { k: "99ff6ab25ff91041e611725d1ef317b9e70cfa533d23db89e41d113a78dcd354", v: new $Int64(0, 2897) }, { k: "9a00b2d0e8a8b75e9df8e8de9ee4fde55904156762cdd335a375d0dd014c3112", v: new $Int64(0, 1140) }, { k: "9a08dc50164e84a6eaac51d3606f7b9b3625c881077ecfaac2a9f74342c64d85", v: new $Int64(0, 575) }, { k: "9a0e615967df4c878df07630cd7dbb9f3161d54f8a8c30264737eb31a12fecd6", v: new $Int64(0, 310) }, { k: "9a1164e8bcf39132bda7e3e4618c5bdb702f5e87354f2eded2fc323505330595", v: new $Int64(0, 9862) }, { k: "9a161b38601418b9868b40a28c9a5dc8a760da0a0d67cc970c37bf32b2bbe150", v: new $Int64(0, 9447) }, { k: "9a27531058cc1c6d897873907490638f757b43c0b7f648858bfad5bbac0890f5", v: new $Int64(0, 2122) }, { k: "9a2a40d9e4ab781ac204af7abe029d9cf16534f3afb3be13334c6bb8a485f90b", v: new $Int64(0, 6043) }, { k: "9a34507df0a08ba78ccfa427f59daac660703d0d740b428576055b208610adab", v: new $Int64(0, 9522) }, { k: "9a487a8eeb58ffea8ea2614c792d5b6471ef7a14c50df119701199c024165e83", v: new $Int64(0, 6195) }, { k: "9a4c3b1f5c15dd3f704950094ef6fe90d0eea6c4db2c7915d6ca8678ab8e9825", v: new $Int64(0, 3356) }, { k: "9a50768252466e7b2e352f1d93f64dcdf0fceabdd074e8e173c520fd032044b7", v: new $Int64(0, 3746) }, { k: "9a567ab8428d96aa77cf8eea8be8499374e63e84a1432d81fa802280466be36b", v: new $Int64(0, 7968) }, { k: "9a6c1f2ee8f82a6ac12b165c0bf834700887b1690634b9b6c075540ed096a825", v: new $Int64(0, 8171) }, { k: "9a76e6f54188b766e181ee72efb38ed49e6c2901fb970a7980bda8a38caf8674", v: new $Int64(0, 6292) }, { k: "9a78828bce04465efb4ff22ba692eac7a9a3c040033b36fe954ec6097f64684b", v: new $Int64(0, 6683) }, { k: "9a8c7d11f244c4f0df9b518550a132e488e9d3524c9405c56fe33197a0d17095", v: new $Int64(0, 6179) }, { k: "9aa5f792843b3e9ab3c0bcd6d3f9acd890332f20c2b3f21be2b2e0ec335c71ee", v: new $Int64(0, 5461) }, { k: "9aa6af3d19b0f20fdb07f6be0a4e0d8cd6e8484c55766a450b7ff8b7f61f0004", v: new $Int64(0, 2014) }, { k: "9aa961acfa17f9b000c7c5c95527632d245debe96964bcd784ffce08622a0682", v: new $Int64(0, 3180) }, { k: "9aaa415077e674e7b93ac2cecb7b01b600ad4c746c9f4623105201e6357c3d9f", v: new $Int64(0, 391) }, { k: "9aaf40990c627d187ac5ed9213f3fc0a48c72c7a9a9f49268bd7a6d36a2e370f", v: new $Int64(0, 850) }, { k: "9ab493fb7f00bcf5c7f1207ac3a0f7de2a80fb0d77a0b1b5d165dd8f503a3fa7", v: new $Int64(0, 8471) }, { k: "9ab93f31ee2d294cd43dcfef893a7141dfff8765989eea8a81a43314f74d9093", v: new $Int64(0, 289) }, { k: "9abcc51791307f512d7c99e076928fc95e03b8d68c66653e0c01333203c932df", v: new $Int64(0, 9616) }, { k: "9abddd42a124f687782a46577224f7ea25356efd87048ed040cff46484c56e30", v: new $Int64(0, 3418) }, { k: "9ac2a80fc714556f2b55c9c648cbc9292476f9436140dd75382e64543efae8e2", v: new $Int64(0, 7461) }, { k: "9ad00b8b1970e3e346a9e8339e60c86ea95c5f6858dd6f3b7888831071bd709f", v: new $Int64(0, 8544) }, { k: "9af947a7df7a1da8d0b0202f7e8e6fe2c95eefa7e42df46029f4897a395425a0", v: new $Int64(0, 1607) }, { k: "9afb840a863b67e3b59c867e218e060d306414e707b44862b06c6f40964a2248", v: new $Int64(0, 3636) }, { k: "9b08641aeb095b4e4ceffe7bd1c109d9b36f7c25cdc67417d04728f7f5c5ea92", v: new $Int64(0, 7850) }, { k: "9b0cccf2f2cca15363c3c58e9f5284bdd685b9bb9884c342f29fe24f65de8fc0", v: new $Int64(0, 4447) }, { k: "9b1590c3354c2fb394a373e739f0ac7a0d7b7b5d76b0aa578503e903eabd14dd", v: new $Int64(0, 7070) }, { k: "9b1f18c13456101441c9a69d3e4cbe58be440c4a10f2c8b8b841eae2f16ae8c4", v: new $Int64(0, 609) }, { k: "9b21a8f59dc639067e8663e074562ad28ad1eccadeba6e935d1b33e43c6b5cd4", v: new $Int64(0, 9056) }, { k: "9b2a550baaeaf2b5230db3a8077f9ce27dc29c8e9c8c4f377220ede55c4cc56c", v: new $Int64(0, 8068) }, { k: "9b2d064a278c7e8cb618b741645dff7955eea5a7563fae03109f2b735f75f0cb", v: new $Int64(0, 8508) }, { k: "9b40e321742a47b04cf9834144eab24067271feeb1bbe3079d7f17b36ef9a49a", v: new $Int64(0, 4649) }, { k: "9b4226f2ba0df5a454bf243168d9e4ed0d66acc6a3f18fe95f1dca300746b2d1", v: new $Int64(0, 5245) }, { k: "9b472854f21caadf33bd89148cb51535073f6a3623e523f673248f4ba38fcec8", v: new $Int64(0, 9353) }, { k: "9b53601ab1f9312a888535725812fe505576e0cc99ff50a46c521283b0bf8707", v: new $Int64(0, 7277) }, { k: "9b56f7541257b2529c86eec92cf99cbb96d382594ab084bc2dbe0c1ae04983f7", v: new $Int64(0, 3855) }, { k: "9b58579ce431390a7556630eb5f9d5a096a62a0891eb6a2788b9bf44a2859d3c", v: new $Int64(0, 1052) }, { k: "9b5d7517b5be210c70fdb94580575e870227f4065103e22bed171a38cd314a3e", v: new $Int64(0, 5075) }, { k: "9b6577d68f52961a52302080b97d7512e46426812807fda4664cde937f345832", v: new $Int64(0, 9886) }, { k: "9b6b8af296c0869ade0fadd53af974c008b039422a46cb0a0443a729ca9f482b", v: new $Int64(0, 6671) }, { k: "9b6c76c8e83ef58ba8cc104f89ac197aca0ec050973803e1ab01aeaca79160ec", v: new $Int64(0, 2471) }, { k: "9b75f203effe6451b6851f33d786df1c16ab9b6c09a3b0e759796b8b319c72f6", v: new $Int64(0, 1393) }, { k: "9b7a8ecbb07354277b414e47bfb345cf2cb1d77a6239cb09a9ed24722845ed07", v: new $Int64(0, 4138) }, { k: "9b8025f013303d6a7d9cf6a8d0368f62be5c8438dddf7df1f9d02bb2e6ff81fc", v: new $Int64(0, 8383) }, { k: "9b82b22768cfff425045150e5472884714a28dc397fd646954458e9dd6c1a1b8", v: new $Int64(0, 8355) }, { k: "9b862b4e6f3870dcb88802759b14d476ecb919068dfab786ae9f2a0980918a67", v: new $Int64(0, 2990) }, { k: "9b8a572c44694afe8ca9f0d5defaedc36ff6be9479d361b5bce5d6a3aea95146", v: new $Int64(0, 8311) }, { k: "9b8ba72b47270356c678aed02a33386c51032275e9fed2c8087bfaf00bad2911", v: new $Int64(0, 4113) }, { k: "9b9524d526a705ca4afa6a594ab9f2254ac595129650d05b2ddc4fb5f2d158eb", v: new $Int64(0, 4090) }, { k: "9b96040bee01765e79ab591d626a2506f48e976069fe57784b5dd0c0a26a49ac", v: new $Int64(0, 2024) }, { k: "9b9887e161dbebe2ff33fe0f211fdd5503e40263aba7325ebb899a1d96342557", v: new $Int64(0, 1651) }, { k: "9baf616dcf47da39e2e8777b5f5ef951e5886aba8eaecb0607cfb4ed4eca2c05", v: new $Int64(0, 6972) }, { k: "9bbb41483c04f21ec9090e70fe289f15b1172db24273cbdd6eb60240aab5fce9", v: new $Int64(0, 6333) }, { k: "9bbc7c4c93515485838adcba35d72704e46f9f7ac6acf7d4c0a7dacb8aa425a8", v: new $Int64(0, 294) }, { k: "9bc08c3fdf5732aff6482281b61db291ead52a694c4cc781240ecff703fe9fb1", v: new $Int64(0, 8194) }, { k: "9bc615c4afa5d3de9ce3bcf8cbd5bfc1f56e3769140319b36e0a3ec43d218865", v: new $Int64(0, 6283) }, { k: "9bc6e0efae280c9ba55caf0f37f1712a1236fe30bc2cda52abc44e97463a7086", v: new $Int64(0, 4239) }, { k: "9bd21ca05562a2e1d06e8a3b2b96af3f00a588d42cc2b9a9025db1139e930943", v: new $Int64(0, 7333) }, { k: "9bd37ab17570f85525867b21f4d0984372b00b9f673a619145dc4b563a58d811", v: new $Int64(0, 198) }, { k: "9bd48d2ad357d02d4536025d1201b87dbd2a111579bbaf801b306e242d24f913", v: new $Int64(0, 8431) }, { k: "9bd5ef001c42a3b8f9bef234c2f5a1ca929f6bdcdd993e86da6ca1d3aed9b101", v: new $Int64(0, 6163) }, { k: "9bd90b9e4269f0d458b4f769acf970ff3f2503e67933653c6ddb091f70d59522", v: new $Int64(0, 638) }, { k: "9bdae0693298afaf10a007bbbada56f2f782997405fa56a59a1224385540dbde", v: new $Int64(0, 7554) }, { k: "9be3730c0c2eaa7081b0a46bcece08b00fc5e616ff3489451a638a752758b74d", v: new $Int64(0, 4676) }, { k: "9be92bd331865208af0e47ab2f02cdcf4c065ff6cb5083c65bc1e6d6b09186bb", v: new $Int64(0, 1606) }, { k: "9c0f66eedcf5ad4362a9014b4093d6042315c4a81db729cbdca26e167d284344", v: new $Int64(0, 6966) }, { k: "9c1c4e11ced132cfa0dab6bed3189ed657c2a5e24754002555ff3c654ee24eae", v: new $Int64(0, 4298) }, { k: "9c314c2924cab1382412b79a85e2011358a23d8f62c87ec6921937d7e124f7ac", v: new $Int64(0, 3705) }, { k: "9c32997a6e9d2759da338fcd039819f4ab97810db892e0a03eb84c885f53534e", v: new $Int64(0, 4338) }, { k: "9c355f8181f40cf9c21f937822a3ec1aee315cbea8d66fc154c5329989cbd708", v: new $Int64(0, 2985) }, { k: "9c37653adb7933425c9dedfcad8e7c689ab1f061200fe20360508e92e0dad59b", v: new $Int64(0, 8901) }, { k: "9c3eee45887a7527be3359b3040a8d5d05e123f2902c8e12a4705ab4174df82d", v: new $Int64(0, 4517) }, { k: "9c48a66995d6a92fc20ba7fe8e158801ca4bb1ff69e6decfd8d76d0f3c348c47", v: new $Int64(0, 571) }, { k: "9c57d1b902b9a05995c447ff2cae5fd76027307c63f89c6c1502553ede6f95b0", v: new $Int64(0, 6373) }, { k: "9c583c07451c98a49361035f09842f0e2a6e8b43f9ece05c1f7cb2f5a8c8faca", v: new $Int64(0, 1509) }, { k: "9c5aa2c4d9817887b5891eed1d281ca2d4acd070ca4730e00add4c384d617d90", v: new $Int64(0, 6440) }, { k: "9c60f4449391e3b3606192968de9def7779c69e8d0666b9d3ac248ae32ba49e3", v: new $Int64(0, 4613) }, { k: "9c61d0992874ab385e51973b6640e9ddcf7cbaafe6adff3661933e4824fc4a8a", v: new $Int64(0, 8908) }, { k: "9c6897a23f88ae7af31596d4299f3cea4b5d24a78a5d889036962f90354df525", v: new $Int64(0, 5373) }, { k: "9c68a626af050083881ff1ff680be488a3d25121ab1e7118c51bf96f35caead0", v: new $Int64(0, 3044) }, { k: "9c6ece47edcc718d73c746043fbd1aef49c31187f6841d046a799ce9af697e7b", v: new $Int64(0, 7186) }, { k: "9c779a6836eea93a77a616f098d638ae91d5b54e8cec4b3b98edb21c5e87c264", v: new $Int64(0, 2018) }, { k: "9c80bac36871ff68d71b20ad957dfd78f2257922debcaf4d20f782e6b1f967f5", v: new $Int64(0, 6310) }, { k: "9c902b2e484219382838ae659d9e6d65354cc17de6b1d752a1173fa5b761a98c", v: new $Int64(0, 7097) }, { k: "9c919e236ee139c202862947530d5d7d9d136c3032f21b4a35bc122558066f44", v: new $Int64(0, 2222) }, { k: "9c9398ea254660283a0000d698b818bc4bc0371b82d5bd968c651c6e5106de70", v: new $Int64(0, 8268) }, { k: "9c945a350e03b43ecb2c9941b57b054d49d7b71d41d14a732cf173969cc10660", v: new $Int64(0, 1995) }, { k: "9c97bbfeab4ead3afc7c48b4bc2ca864254dcdc25c0619361b70e48e2303a99c", v: new $Int64(0, 4886) }, { k: "9c9ae6b53858036c4f687983f4e71951697c6ebfd4e2da711bc9c2ea2b1f4971", v: new $Int64(0, 5918) }, { k: "9caa357cac2c4aae0dc937432882272479ea3f37e06151c7d77c392c89bbad3d", v: new $Int64(0, 331) }, { k: "9cb37c0935882ffc0c71b8b6d6b1b16ba3b202f31c40c3b10367d7fcff221d3f", v: new $Int64(0, 9697) }, { k: "9cb48b49be1268d982afd2a55aa37d50a6a3ce57878a38fc213d026d962c8bfb", v: new $Int64(0, 5688) }, { k: "9cb5b01309d262242332dc77f10395d1189c08cd7aa7d9142e87162a42d6864d", v: new $Int64(0, 9045) }, { k: "9cc0a340f26ddb2cd09fa3da61bbd3b72a600c881ebf8eaaa36aa69e9fd88619", v: new $Int64(0, 9841) }, { k: "9cc43baaabd8a400e4ca6f6a1bbfd2924fa63b538d04aad570567679c567f8df", v: new $Int64(0, 8224) }, { k: "9cc4ddada4dbd5a0dc5bc2d6d081fc13bb97b69e1b82e10a80fd3581605404a1", v: new $Int64(0, 3533) }, { k: "9cc698e305c6d5b37fd192a3d7760966e1e24ec79e13f86b202a42e4377db932", v: new $Int64(0, 1855) }, { k: "9cc6a9eb1fd0ce173c936808489dd09c9ffcfcbf312b9bda24f3e2918b286e3e", v: new $Int64(0, 2959) }, { k: "9cca903ec49780e683c83ad61a8aa1e6615c4c09618ca24d15f388dba03807dd", v: new $Int64(0, 1539) }, { k: "9ccaf56cda9684ec30b6f323fe24f585bb811c1b3cad6c3794d861f69befd830", v: new $Int64(0, 2175) }, { k: "9cd6c00d54a6c89c05f535cb4e3a5c628a91638501f2ff91ea1391303e828626", v: new $Int64(0, 5226) }, { k: "9cdc6a79760320729b5ffa98c2f42ef508d51edbf8250d837116aac54beffc28", v: new $Int64(0, 8500) }, { k: "9cdc9536e705421f36461079e9d1dffe7d794d64d55476b87626412b686a6673", v: new $Int64(0, 7970) }, { k: "9cdf89ece4b27414524e8ab029f7ab85c429bf2c4601c32d98cabeccbb3c1c72", v: new $Int64(0, 144) }, { k: "9ceeedacd14c96c85c47d236d060a8aec135525ece1a2a495de92f941b314816", v: new $Int64(0, 63) }, { k: "9cf5e8485eb501f6e31013b2d7f59c68c3e6156b970b2e90de5b14aaa686bef9", v: new $Int64(0, 5500) }, { k: "9cfe6dda0659266143e1939e49c4dfde254736b4c5173e03b403a333225ef787", v: new $Int64(0, 5987) }, { k: "9d0c00e92f54366188d7acdf06316278bf8a344229612958eb4ea89fa1f79b3e", v: new $Int64(0, 1357) }, { k: "9d0e9dd0a7c4cffed8ff77b46a632898bc0370b85c0b74532e88d1a29e2ee928", v: new $Int64(0, 3090) }, { k: "9d182b7e275932b178f74c921b189f4e466be1205c9445cba7b17754b3925789", v: new $Int64(0, 2945) }, { k: "9d1c1578fc5e6eed38165bccaf99acaa1d308793d77877dcb11c3d44993a607f", v: new $Int64(0, 5375) }, { k: "9d1eaf49826a3f8e0709aa57a3e0c5913b9bc0e748cca88911604f8012dcbb20", v: new $Int64(0, 7226) }, { k: "9d21c7794cd4caccd316ee40bd5795503affa9b925477b7c9c2806e97119b6ad", v: new $Int64(0, 3576) }, { k: "9d2350a948b710022d9dfe3e204ba8fb751545d8a68e133f78f2b8a303ecde1c", v: new $Int64(0, 2547) }, { k: "9d2980848f97cd4659a558c9f41827aea5f9ad607fdd6ef18425a74330a1f773", v: new $Int64(0, 7284) }, { k: "9d3eb45e9378ebdec8c573986d0129fa408457be27f567c00e24078c80f98ab3", v: new $Int64(0, 8267) }, { k: "9d3f4aeb59a620e4a1748ec0881dd1434444ebf21310f8a7f430821de5801532", v: new $Int64(0, 1205) }, { k: "9d427408fb41f51ad4c1724ebd5af9fcc1a216854a0205c4e992f29cf427c020", v: new $Int64(0, 9257) }, { k: "9d42ef0788059c2dc674a07a5ba4ab31226fdf6999288461720912ed879c68cc", v: new $Int64(0, 3549) }, { k: "9d4a765e9ea703778e3dda1f2d10f62f687a0adc402834e617c267dfaaf00f90", v: new $Int64(0, 5331) }, { k: "9d50e6e84cf1ea5c6b47a3520f5328f8d9ac2399c4dbda0dd023c9cedd75275c", v: new $Int64(0, 2996) }, { k: "9d56b65e0ffafba0c53238fc9f4a073e8a1caa36499be058f282752e728fc7b6", v: new $Int64(0, 2877) }, { k: "9d640265caa23944e210182c7dd3daac13f2ed3f6960ef5d8993c62bb6691850", v: new $Int64(0, 1492) }, { k: "9d6d5fac2fd3ae1ad79e52c48af5b2e4cf8801c4444948bd85f1eb21ad194c0e", v: new $Int64(0, 4392) }, { k: "9d7d144d6ac4858617b0b9c8d2c93f9592fa43faac1b1d0795002b84aea6b5a2", v: new $Int64(0, 5725) }, { k: "9d826b31e17973d200b1d2eb621564a976deb901769ee81e4f3bfff939081960", v: new $Int64(0, 690) }, { k: "9d84fd0dae15da095f0286fcba4b2b93ac0d472e71db2f9dc6bfb7d8c8bd1eca", v: new $Int64(0, 8656) }, { k: "9d8de0b5c12071934decca49355d711f0d0561c9fc70e1b7a45b7592fdc77ba3", v: new $Int64(0, 3784) }, { k: "9d96ac70fd90136165da4c31e41c4d5e03023a472b13ba277903b161e0540bd4", v: new $Int64(0, 7668) }, { k: "9d989a0b82dbcc0562ba7ba1a26f719e3f202679151ef2bf5544d55a8864fbda", v: new $Int64(0, 7126) }, { k: "9d9dcb24946f4cbc8a0986178f1ac40d878524103d806af9b8e55e3a98a8d72d", v: new $Int64(0, 9755) }, { k: "9da99ff8a4a677ee5d0a16a938e69e08f727f995a12d5dc40566b964f9d625a9", v: new $Int64(0, 9034) }, { k: "9db1cf3ed3eebce8851a0e482d8d6e39863f6472e63160c2283ff41867e520e5", v: new $Int64(0, 6912) }, { k: "9db50eaf84970b970863160133d698c14c5a46b5de8020f87eb719d2166ab355", v: new $Int64(0, 3016) }, { k: "9db669d46e2e94c003d1882d473fc0cdcccfd851823b6e4569347071ecbfe1fd", v: new $Int64(0, 6643) }, { k: "9dc0facf7345641ab95db28e832c7cd10949796454ed2212144d99a75e995772", v: new $Int64(0, 2355) }, { k: "9dc72be8ce28e558d56f06530a638a2e1c615756bfb944dc834a35c5cda72e9e", v: new $Int64(0, 2638) }, { k: "9dca08c005b21b971999d7caa3d612f5322f7f2f0190c26a80c0edca8ba6c7e6", v: new $Int64(0, 2423) }, { k: "9dca21c8bf80d3114020e60faab93ff6240cffb336cbfc573671b0a6b94f04a9", v: new $Int64(0, 858) }, { k: "9dcd6d3d486e0b4f403c35286b0e440de0800a3b2b2c8726807cbcc24611d6c1", v: new $Int64(0, 7506) }, { k: "9dd65022cffc880f18afa0ff9be4eefc2db088bb8e0dd91849f6067b557d5296", v: new $Int64(0, 6002) }, { k: "9ddb3b0e93aafb8dc555e6ee4f92bc59d3852981cb40c149587bf416c7e37c10", v: new $Int64(0, 4425) }, { k: "9debf134b5477ba4cabbce26cde69a8f6599fc414748e0b77e2a81d997a110b5", v: new $Int64(0, 6184) }, { k: "9dedc99c8b30b4d3e5ee83adacbcc454e9cd3a8f54267d93c897864fc50a5941", v: new $Int64(0, 2125) }, { k: "9df576c568cf465af864e1c2dea466f5ed5a317fb20c8a1f5ec0d0b345cf5b27", v: new $Int64(0, 2543) }, { k: "9dfa92ae6384fba851164415e21ef4769197199623d4bbdfe68dfc0e4be09466", v: new $Int64(0, 1255) }, { k: "9dff2916b1af6116f1861516ea6360779572f4c3246927c4cb3c38925a82d0a5", v: new $Int64(0, 5846) }, { k: "9e04c7cb0fcfb9acb6a66be5cf8887365b62cfddfe6c3b6f11b449f8961b2dff", v: new $Int64(0, 4771) }, { k: "9e088f329850a42ed5062aef1f81bab66b1f9142d22febc44cc7e8f2cd3bab2d", v: new $Int64(0, 3818) }, { k: "9e0b2c0d6d630ec23a8733b261a51407c0f8f0b3d03a087e1929438464246c21", v: new $Int64(0, 1641) }, { k: "9e0dfc8673422cd4b119499f43be7a7e065f4d1599ea85f5fe346f944223e2ba", v: new $Int64(0, 8182) }, { k: "9e106063b9ea07c860f56f7241c953a50f738cc2dbcfe5dd85b29d28ee77bd63", v: new $Int64(0, 6798) }, { k: "9e13c4317bb2a197923f9343954dbaaea50e8606e1902d343eef61a8cb27db98", v: new $Int64(0, 5936) }, { k: "9e19cab5c56e47ba01afe13b4f5b841447fd7e2b379f6f9f0eb56638126fd283", v: new $Int64(0, 9582) }, { k: "9e204c4a3272ec3b9c9b69cabbb917a28ead3b19cf348f496508564ca2031195", v: new $Int64(0, 1899) }, { k: "9e243dabca381da03f590c93dcdf84024bca37c5f164390b79e66c155dd93405", v: new $Int64(0, 3172) }, { k: "9e255ca0f866ce67f92032f8455de890e94d677e71d8f5119f26a065df943054", v: new $Int64(0, 1857) }, { k: "9e286d335160c6ff6ea5d8c7c5d506ae35ccf8f4dde523f3e55a97b716d12866", v: new $Int64(0, 21) }, { k: "9e2da09ac12452d402051dbcc7534de7c5395d5eb4896e079618a9514dd13e5b", v: new $Int64(0, 1469) }, { k: "9e31b7c33e4ae050fa8f3548187e25e62d21798977f526b3a3c699ff5e9b1ea7", v: new $Int64(0, 7014) }, { k: "9e39e4bc80bb114334b1006a8ef039de7cb1c9cb81ec43ef5bda2fe9b9d84b0b", v: new $Int64(0, 7730) }, { k: "9e4b47795aaf85964636c2178eb011416434715fb4edb7a80861fb8056cfeafe", v: new $Int64(0, 131) }, { k: "9e7a546ece7bc3fb2571f385fb8251c4b6cd17bdfd8eed49774dccdd1c2f44d4", v: new $Int64(0, 5278) }, { k: "9e818368e960ef5c89febd7a3f4307109582e32805807a3a84e21951f265b8d5", v: new $Int64(0, 2133) }, { k: "9e85efbee6f01905f27f3150d3485e307d261f25fbfe759e624d280552f08eb3", v: new $Int64(0, 2640) }, { k: "9e8bee511427884f227eb9f0d260e1697ae9f54f703e768e2c952f469880433f", v: new $Int64(0, 2407) }, { k: "9e8c448492667939e52dbab7c3da5589e8ad328576eebdb29d56df049592ea47", v: new $Int64(0, 7124) }, { k: "9e91b7a74743183f45edf4b0ccc725ee01002c8376a67b334014ebfc7724331d", v: new $Int64(0, 3056) }, { k: "9ea880cd357db28e600e9522e5fdd77f8679ad655b919e2d0c5de8f8602b0853", v: new $Int64(0, 4870) }, { k: "9eabac60c37d66b34cab4698a285f953586739940472a69cf97599c35882f5e5", v: new $Int64(0, 1193) }, { k: "9eafff66073708b7af4713b84b9d4741ae73b39b1648317dc205792dcc0559fe", v: new $Int64(0, 9203) }, { k: "9eb805a10efb2843712686a5ee4d307abb5e48ffe295e18714b6168060c3703a", v: new $Int64(0, 264) }, { k: "9ec158837264a6cb528b501c41eb18bb22ce6e7e10fbad0db88610f6796ad4fe", v: new $Int64(0, 9677) }, { k: "9ec64cdab99758ef1817667e18987739c53e7371574b232cd654cb63aef2e663", v: new $Int64(0, 8162) }, { k: "9ecc594f39d9d2a00649d1356db1b85b1452ec8f4d85a14efa17e47a617f8d07", v: new $Int64(0, 6691) }, { k: "9ed2f3313052a3b4c547181cb1f0d0ec6ab76829271bf6e8a57b2539a5459897", v: new $Int64(0, 2524) }, { k: "9ed5f11380563e40cf319169f305eda4f88b1e3cd1834ed367540cf50960d48e", v: new $Int64(0, 9171) }, { k: "9ed6558489c11491ba240955fcf748dec55fdb25f7b85bee8e13769642ddf168", v: new $Int64(0, 1284) }, { k: "9ed8984ec50bf75e7a35779d2e32aaefff92648c0de615bd1ebcfed3574cf3fa", v: new $Int64(0, 2527) }, { k: "9edc81c38db9925064ae50242ce93998baa1f21aa7a326619425e96f943d39c5", v: new $Int64(0, 5172) }, { k: "9edef35763a7354d20a09859652fdfbde6e221171ee0e15224c7a72e4f0119c2", v: new $Int64(0, 7492) }, { k: "9ee37e7eec62bf62ec9ae607b3e5a18abe604d9705e4bc4218111359d70d5f5e", v: new $Int64(0, 994) }, { k: "9eec47465159a3f8721467ddd38c97083ec68cce3eafc95dd757a39abd6a176d", v: new $Int64(0, 6886) }, { k: "9efe56e17d29339fe266ad96f078e5305d05dcccc4df3a7b4102d49cbcffdaad", v: new $Int64(0, 5147) }, { k: "9efe7a8859178e76ff8951b9cd6725d59db0cd942776032630d918e6247a64b1", v: new $Int64(0, 4984) }, { k: "9eff69ff191828539dc98c2707cdf6207f4a4979df34fbfbab7b936cd40dc96d", v: new $Int64(0, 5141) }, { k: "9f013b788c67b8d5450461a6c66d2a470eb75d6b2e8a14d3a0ee50991ba149a4", v: new $Int64(0, 7315) }, { k: "9f050e8125851538038656310896e782a248605a6585ce3016337094035becdc", v: new $Int64(0, 2346) }, { k: "9f06b06db09d05516746d7d8b5b21262040a749e754ceb47ff50a65ab4d5b786", v: new $Int64(0, 1349) }, { k: "9f06e10f4a02d77f961a81d811c4ba84dde10e1e19503454e0ae523a3d9f932f", v: new $Int64(0, 8739) }, { k: "9f082bff7fe86d60fdfb5f4263a610be3d60cd9cc74dd3902f197e3540decc8b", v: new $Int64(0, 5013) }, { k: "9f101ccdc12ce0f50c5584eb889182efc89ead17e26dcf970b31ee54dfda5b58", v: new $Int64(0, 7801) }, { k: "9f1860bf02772906910c9c8fafaf153d1e65ef5934f87d3e9b77dcccdcd184be", v: new $Int64(0, 6929) }, { k: "9f1d75ca250b12295f70624f5501f934e5a129889d9fdf79c0910e3aff044f6d", v: new $Int64(0, 5591) }, { k: "9f26a511f944890c43e2364e3720eb0dfe6faa439752defa46b7a40a54f5ce4d", v: new $Int64(0, 8716) }, { k: "9f2c1524dcf1a8636b325e57983f9036cf63b96da7dd1e38dd37e15c41b950e2", v: new $Int64(0, 439) }, { k: "9f326c0f16c92ffda6b3f65741b4e05f5f80906dd26d6787a836e34317bdf7b9", v: new $Int64(0, 7487) }, { k: "9f35f3d76d20c7c79bf06b1b5b824f245f3376a90bb483bb2aca32cf4881d44b", v: new $Int64(0, 5692) }, { k: "9f366758265ddf6ca6806e875e66a369cbc2811a3ab35594e3a32b505b4b81c4", v: new $Int64(0, 8777) }, { k: "9f3f422978e3762fcb7fc90d84d9f3c279610e62d225b50f2774dd13a3bfa3a5", v: new $Int64(0, 5584) }, { k: "9f4e7c147a071887dfdb8077db30c534be50b25e0843a57572117b09157f1f62", v: new $Int64(0, 2806) }, { k: "9f5a351c90ad3b2ceb6ac637ad99824bc1936fafd50ca35b32e7313847553f13", v: new $Int64(0, 4976) }, { k: "9f61d879d7153a07e05dd842523a3259b0a96393f86e2d2e967cdf557ebff644", v: new $Int64(0, 9504) }, { k: "9f65d4eeb58232eb4ed22c0e6cef855e41defa86c37f07edf8cee98b249ed26b", v: new $Int64(0, 5377) }, { k: "9f703ca59bd08cd738a5840522b28adbbdcdde51df407f04e28fb01f42ad34a2", v: new $Int64(0, 3976) }, { k: "9f731386d175a4bdc2718312761ecec03443f03fa0e076dc2f8e75b2bb59a5bf", v: new $Int64(0, 7828) }, { k: "9f81479f7d0df1403261bbeb1028d8e63cfc0bae6f6a5bf7308e345cb0ce9d71", v: new $Int64(0, 7244) }, { k: "9f8480acccb4736485b39ab2678ece1ca059fd7f7e5a20449a54ca2876a5c92d", v: new $Int64(0, 1937) }, { k: "9f99a2389cb68109d43d948d0c5925e1f0e347633755677749a9a446e32c852d", v: new $Int64(0, 9874) }, { k: "9fa5fb440664094809512292af4f8068ce65f803a6182af25c7af1144d5771f2", v: new $Int64(0, 2470) }, { k: "9fab8828fea865df9ab197274503e47c96ca52afadee9bde197c9cf2051d44ed", v: new $Int64(0, 533) }, { k: "9face054a872aeb5b89242d014b7ce1f34268f34d984e2ed76ce60fb7384abd7", v: new $Int64(0, 7608) }, { k: "9facf205ff360605b0390f49f47d7f2708aea867512ef741df63599de3086caf", v: new $Int64(0, 1013) }, { k: "9fad0c66d4127a23d68b955fd9da7b3724c172eb43a1a0e2f53467c51825647c", v: new $Int64(0, 1065) }, { k: "9fb270c8f62827137118caa49de6b15af6800dd6f5327dce9457c30df6a4b364", v: new $Int64(0, 6146) }, { k: "9fb9c588e2e1d890bb2cde2a56caa25bfd5eabe4ee7a4d40fd8b011ef45d060e", v: new $Int64(0, 9341) }, { k: "9fc08cfdf1a8e8f5d34aea85edd5f465d69297ef10df9638d08e3d437c55cfc8", v: new $Int64(0, 5320) }, { k: "9fc599d3bd8a94d54fa0085956b3b87f601c8cbb5f477d21a6e2c75d0a6e93b4", v: new $Int64(0, 207) }, { k: "9fd8bce0f5f60ff5684c31c7ae82ef85480221fb021c1e6b77ed4b535844de17", v: new $Int64(0, 3930) }, { k: "9fe87e5cf0ea00d207732eb7c9974f38b80deb60841e2cff6f279e400fe872f7", v: new $Int64(0, 6060) }, { k: "9fe91888ec77c6940e2c4540fec8212e14011bdcb7d3eab127d7c8e78c9c6ebe", v: new $Int64(0, 6150) }, { k: "9feafc59a08baa97865f6ee202e12613f4af3eb3a3924b9ac50bd704f6a3ba88", v: new $Int64(0, 652) }, { k: "9feb09702002011ee45774c1724990f6997478d2b52887a9b903d0ff32675221", v: new $Int64(0, 8129) }, { k: "9feba74b540c11304eb422c9fbfe8fd4c31f759929fe92167056070e1b73aaad", v: new $Int64(0, 9252) }, { k: "9fec7be7083d251ea31ebc8e28ea147c59d18a7ccbfa38a38b24706a551a988e", v: new $Int64(0, 1187) }, { k: "9ffda4a90f5874b554d1ed0725dcb21c8bb96a0a3f2136cf2c7423d270012fdf", v: new $Int64(0, 3121) }, { k: "a018ad84ad29b6ea8dca7dd07af68aa1559c63862eff5e76385cfc4a8fa0f75c", v: new $Int64(0, 8204) }, { k: "a021fc5f5d52be5ef864fdc30c315ed992584ec3860ce02d06d61a3bc2e2f874", v: new $Int64(0, 725) }, { k: "a0223e511cb8ee50677a3f3f821765e8e3b9b3efd7caafc5643c2a6490843273", v: new $Int64(0, 3663) }, { k: "a027faf19a81f96b4cacddeed064cbe56866820dbb5c2bacd0bf6d5d9ece5c76", v: new $Int64(0, 5291) }, { k: "a0283153e6f4ddba9c966466641e93edefafbce7bbbafbba06d5d5f2c7c2bb71", v: new $Int64(0, 9147) }, { k: "a032241e05feab962025de86536f819d5dde10e93693b24327a6ee3907c74f34", v: new $Int64(0, 8336) }, { k: "a035c17626348f464c1c0393c7160a59c96ae5a57adc253067904f21f5062629", v: new $Int64(0, 5739) }, { k: "a0363270e7af83d0d5847d89f4cef045f79fbb807daa6d8c26e825d08f0dbcdc", v: new $Int64(0, 2842) }, { k: "a0456641ca32c0926b41eece4d17747bb9858069dc4e53f15a0a41b8272be90f", v: new $Int64(0, 164) }, { k: "a04a5a956418068f4d6c7eb2060035892b37f213fe83bcdeed4cd3f8f1f2e436", v: new $Int64(0, 799) }, { k: "a052c1de7a05140b49a494c8e140b03a2c1c3902229b566ec59d1b552afb0a16", v: new $Int64(0, 7002) }, { k: "a05b827c8f31f6ac2de3ef1e569a44fa2f4b3146a0a79a5332dceb29248dfe11", v: new $Int64(0, 6554) }, { k: "a05edc0081097a779cf9d44947a9ef9ce98eb3e17eca34e78ed1ad2cf5c8373b", v: new $Int64(0, 7072) }, { k: "a06c70d48357a2b7fb82daa5767bcb9ac9042e4b10b6925ffa65f1fbb921d28f", v: new $Int64(0, 5570) }, { k: "a070d1c74671e0290332b2b67e4cd7ddef9fb9fcf61a03da1f4ff34af998af1c", v: new $Int64(0, 4489) }, { k: "a0740954f5dc90895ada07eab7d0d78dc31fd9e8413507e8c14e2b58ff3fcf4c", v: new $Int64(0, 2206) }, { k: "a07db421f4542fe72ced7ffb40e4ba2182f83f3aa9bc5191aec06599dbfe5821", v: new $Int64(0, 1122) }, { k: "a08196ac9ef7dd1248dbfbe494c3ae4e45d59d396b3feee058fd7011a1f80b0d", v: new $Int64(0, 2539) }, { k: "a085477a8b382c67fcbbfc86e6e102e058b68db5cc8f45e120b6679e196c1b5a", v: new $Int64(0, 6188) }, { k: "a09048a5b2a29e3a1f2c68f4b1e39cf75d6318b8c72a84a1255704d786da0d88", v: new $Int64(0, 3336) }, { k: "a0a0dfeb1d8acd8dffdf5c8a73903fe1c8f060cad25ad588adc19882bd06bc9c", v: new $Int64(0, 755) }, { k: "a0a1a7b0a5a5563b29a8ca7eacecd91a5dd00149db76126a01ee78d974957568", v: new $Int64(0, 5757) }, { k: "a0a1c2935e01d062d3a905f581119efbc9386fa9545e10c313165b1d0c353bef", v: new $Int64(0, 1804) }, { k: "a0a2a0e5b5e890cd31bef23e03b9fcfd1b10802968d585d89ae4bbe1c5997c12", v: new $Int64(0, 9515) }, { k: "a0a4851238cb828148e9ae3ed2ca770e18a86b27fef74aa7faab69dc02d5b68c", v: new $Int64(0, 7878) }, { k: "a0d76c545e33cd10a4bc390d30f9e95bf1381830bf2ab5f4b397fe8567464b58", v: new $Int64(0, 9206) }, { k: "a0e0e0dee72a689bd8ba681b1d7afb2be493d4e1dce6ebf1d6ed2f782c158959", v: new $Int64(0, 1134) }, { k: "a0eb40b71cb3c1961c885f355fd0a86ff1aed69788c1b75bdecbb716be7acff5", v: new $Int64(0, 2188) }, { k: "a0f79a32a3efaaa1cfc5fa8216d42e1c22814afab89bd539d838119cc6043228", v: new $Int64(0, 9973) }, { k: "a0f96a3bae42b785c7efe885ff9bc5c7126cab09755222b7f08d51c159a2a5ca", v: new $Int64(0, 2804) }, { k: "a0faca64333ffd10abf1bc6cccd9c19a0fb415bf51a32dc9bccbdf29c1cc1877", v: new $Int64(0, 2664) }, { k: "a0ff1d66349704e38f21585d16c122895236bfdd34a0f9b8da7d9c8f5d8b2614", v: new $Int64(0, 4505) }, { k: "a1063fe61cda4c4dfcad8d165866ef40d314072953d948a651d24a451ad43e19", v: new $Int64(0, 6400) }, { k: "a109ae3b7dfdc16d4cd1d2fd06f515a0ddd4ac701a6a25564d23dc06de85a762", v: new $Int64(0, 8325) }, { k: "a116655535d068d2b9fd1740ef803ba4e384efd18f5693dcd7731c514a9e3586", v: new $Int64(0, 4883) }, { k: "a12e6384cc40ddabcf274b428da4e56682d532737ef2e1bb34c641a08b3c9343", v: new $Int64(0, 3015) }, { k: "a1320cd39eec056300fd7a7ba05ef8aa097bd12183bb4a693fc9985cfcbb737f", v: new $Int64(0, 4012) }, { k: "a13f0ff0ba16b92e4ca2dd2c702aa05e2d734e553cfd8a236e415e5c523f1563", v: new $Int64(0, 5165) }, { k: "a143710545dac7b45e66997f8dc377be8bb858835713b20254f30c32fbfe144e", v: new $Int64(0, 4597) }, { k: "a1491e6f5e1dc65546195d03e634aa160398057b2af2e408856cd9d978e4ea69", v: new $Int64(0, 8754) }, { k: "a153763806d67a59e0ff000744b6cddd99a646d2dc02cf249b527ad087089b34", v: new $Int64(0, 9071) }, { k: "a15566564b95c869cc6b166cce623b64d883b5a42d299d40240dee32e5e92887", v: new $Int64(0, 4228) }, { k: "a15bb7ad830731a0c789b877d99f44b172f253098f6d7e63cd226cbaa518e173", v: new $Int64(0, 5810) }, { k: "a15f4296102d92cb6be918fdde50db01ad8fd36f399f4ada4d9fce415832fee8", v: new $Int64(0, 9159) }, { k: "a162ae7d68f884e457e293d230fad4e91fd741eae91482654aac86a997698fd2", v: new $Int64(0, 1667) }, { k: "a16534b65162e0d293a013726b1fc5237f941b5bc21caa76f58b5a3f5e8e62b3", v: new $Int64(0, 8677) }, { k: "a168e44e00c746ef10bca0afbca3b003c6d368c9a99428d3e91b6e7db40c0107", v: new $Int64(0, 7151) }, { k: "a1699b3ed0ebdd81f54d85d0451d23f90b8fc119f30fe2dc86d76f6a8d906f22", v: new $Int64(0, 7881) }, { k: "a16e0ba0d795d29c1cc3bb24abbd41251df613463674848df964d864adc117a6", v: new $Int64(0, 2622) }, { k: "a170f0148f96d52a23dffbd0e3c80c1221ee979eabf1c148a6a07f1b22cc021e", v: new $Int64(0, 988) }, { k: "a1759aab8d1ac02c99aad6099b298c3c2998df7f32f605561bf524bf5cd22a9e", v: new $Int64(0, 8616) }, { k: "a183266c69a5ca7da1ca70ee8a488117629ca4371f2ab767381c74185c6ee7bc", v: new $Int64(0, 5022) }, { k: "a188f47deeb22ae25fd3395c2589d795c90dad57d3ff70c076ba25739fc96da3", v: new $Int64(0, 729) }, { k: "a18ae41397a25abc9abdfefaa023707d2de11c2b46d6bb8280d5138ae8bb04bf", v: new $Int64(0, 2338) }, { k: "a18cb7e422b77a92f051b0b6f679497cc699f258d1c79c0bb424afb27ef4da79", v: new $Int64(0, 8929) }, { k: "a192632427a0c9b499a29ddc4d7ccb36cb415d5be39303f2caa3a6fd9fb60d02", v: new $Int64(0, 4441) }, { k: "a1970a49ee4dd655b62b2c49fb61f2262c1e2c3dfd19131ef1803e4e00c33c1b", v: new $Int64(0, 2821) }, { k: "a1ad93879bd0afe3a342747dbf1cc962d61d7a77e76982b55a46488ffcf30796", v: new $Int64(0, 6351) }, { k: "a1b0a2d5497a84e6222c004d000c01868e50920cd8f40d44095e0705986cb6cd", v: new $Int64(0, 4610) }, { k: "a1b5125d01d4dbe337d198fca0de453663274b336a4d6f1379c76ac64a0778f2", v: new $Int64(0, 159) }, { k: "a1b91f91d72ca428e9ce68385b23dba278a4e9e5c2b77d3342a16f26b5c42b65", v: new $Int64(0, 6358) }, { k: "a1bbba5e4558c5394eb2aca9c9fd29cd869d8b690588c7c2952543ca43255fdb", v: new $Int64(0, 8465) }, { k: "a1bd8861c3a6f59624f22b5f6067254daf28f8fdf3640851629b48f82d499311", v: new $Int64(0, 2448) }, { k: "a1bd90bea4f7cbc9ee4ad54716ef388094be6b215a03a1d4fd181112c0cd58cd", v: new $Int64(0, 8051) }, { k: "a1bfee7a15f74282e6692420f07293306e9669b0d99a8f5e777d8f5a92352195", v: new $Int64(0, 4588) }, { k: "a1c7d3b72485092e6b7d74a9ff9a2423c94d7ff557d1da07afe54e4fc5f40f7e", v: new $Int64(0, 8697) }, { k: "a1c91ab981fe7f71d4334b4a9f6211ce765f6751045ee407c0434f36f94f7329", v: new $Int64(0, 7832) }, { k: "a1d92473f551e395da338d758d65a4283d4162b466a5b71066c60f647192b9a0", v: new $Int64(0, 8916) }, { k: "a20aef8601e3c5c4df42f2e169cb499dd30cd75bc3f7484f811ee5379cbe9c4f", v: new $Int64(0, 3937) }, { k: "a219002ba7b6a99a4b5771fcb80ef0a614807ccc130e9cf256ee20a5fd092f50", v: new $Int64(0, 8346) }, { k: "a21f6b074871db18ea227829e75e66739178f0680fc4a84c6938c73520b7fa25", v: new $Int64(0, 1010) }, { k: "a223bcb2225a8f2dd0525ff693d8f062f990a438af9557970742f95b831d060e", v: new $Int64(0, 7182) }, { k: "a226ab99b0fe63248ed4ece8a7050590e298e8423ed9dc6320d447312a839d13", v: new $Int64(0, 8886) }, { k: "a22bccd00cbefa850aba08ea48c617874e8ab760552bdb734ac858fa9c6fb42c", v: new $Int64(0, 5637) }, { k: "a23beabbfb86d9c2f9df07cb4bbc19e8c754c22000d22c742c2aea1f5075167c", v: new $Int64(0, 5406) }, { k: "a249fa56e1f7c7899b73007c8550492df8fd26520fb39c49d6c768d00b995a51", v: new $Int64(0, 4622) }, { k: "a24ac0bc15608619a398acb176dbdf821c53bbcabc5bac19d8af5947cdf4c9d0", v: new $Int64(0, 9270) }, { k: "a24fe8a917f0bfdc50a7bd5d6c570c77c196a1d1620b640044acd862f4c62414", v: new $Int64(0, 6080) }, { k: "a25208544c3f06ff7ce8bbbd48f0dc1a5775cb48fd02463544d844221f01b9a2", v: new $Int64(0, 8426) }, { k: "a25efb56c710bdb342f64f8469efef4dec429fa82c769380cd7fb7b55a01d0dc", v: new $Int64(0, 1110) }, { k: "a260c999238828cdd4d0504bad2fb11d8842839369b21f4ec0b59be6962c27a2", v: new $Int64(0, 5042) }, { k: "a2614406058ee81e75904fd21a984e78a1f3e3db2e12f4a72f87af432dca18ef", v: new $Int64(0, 7946) }, { k: "a2699144d5a7107add11d98534ec54fc38d38c83adabb16b63d0d2c0818b2cce", v: new $Int64(0, 580) }, { k: "a2724ea0b906cb8897c15ad894728641a5be0330e0cd15dcec6fa99fbda03373", v: new $Int64(0, 9265) }, { k: "a272a5a781d154e390fb8f1d6e4d2e0846f8cf6de9b947243df5593c10815bc3", v: new $Int64(0, 1586) }, { k: "a28198ad0d7af5e3dbf71b30a14d23486f7d500771a96e2da50d05d7e9300986", v: new $Int64(0, 9678) }, { k: "a293928d76e9f25a196157de255bff0f200b10e5028bc952e73507afe83c06e1", v: new $Int64(0, 8217) }, { k: "a294fdcf53fcb466cef1c8530b22f58401212257240c5480e0a4f57bf75d3375", v: new $Int64(0, 5338) }, { k: "a298cb19c197b4df0fbe3422e7d7ce9828bf816e3c7642d317a3948a116cfc49", v: new $Int64(0, 9743) }, { k: "a299f30326cd354eceec1b98534b97aac6d3688f8cfbed5d309c8fc849789c01", v: new $Int64(0, 4187) }, { k: "a29a0e477389f752150d0ebeec0b3db1c6fedf856198297c3ea796b42f7e9d22", v: new $Int64(0, 3077) }, { k: "a29d4d4044309c425614b079eb42c96cc7ef8c2460a2d86c5df07f8e4ba64014", v: new $Int64(0, 9555) }, { k: "a2a1c9de6f2d9c2426c537a9c17a9101083ecb42c833507a6a3acb080673751d", v: new $Int64(0, 6078) }, { k: "a2a20504abdf9352d28ead8da3d3e43d9ec39e582476d2e5e7028b544b1d549b", v: new $Int64(0, 8893) }, { k: "a2a8ee0640edfb0261fd3db7376c2cb71ee01ab8da65a4c9bc744b32bf2e3aa5", v: new $Int64(0, 1081) }, { k: "a2b15e8dbba4de4eae5e6c93c2a682b0262b3a9fd6aa66b42acea57ccdebb1f5", v: new $Int64(0, 9736) }, { k: "a2c0dab39ac59afbf642b5909346abd1b2c0f5910b4376beeb5776b550e5aa9b", v: new $Int64(0, 3843) }, { k: "a2cda8a841958992d50bfad99359b2557cf3da61ba6977810ee90b5387f7710a", v: new $Int64(0, 8572) }, { k: "a2da339ce56e181bb576133299086a49f049accdaeb288e40950a1e25b8a6332", v: new $Int64(0, 520) }, { k: "a2dbd569373a8caf4d9eca6b7440b79bdf397e46b817cd12ca623646cb3e0ebf", v: new $Int64(0, 8314) }, { k: "a2e926134d8abe1e85a6f330f22817681bb3841e8379307fac66d050f328a20b", v: new $Int64(0, 3532) }, { k: "a2f3e58092fdb6bbba7e5b2bc6a117b87786d4a5382e38f7f69d8e8d74cbe1d9", v: new $Int64(0, 6207) }, { k: "a2f52e6d0a2dc4fb11f1dbd243d6d54dffb294b6ad52705d4290aacdbafa8ecb", v: new $Int64(0, 2171) }, { k: "a30a6ce8f94fa24634a802b3c9c535e5ef8f248be70167a367f6a0cc244383f9", v: new $Int64(0, 8681) }, { k: "a315ce00df86c2cc10bb1ad2be534f9a4eeed7e9f0f33f2da130c4d6141b1a6c", v: new $Int64(0, 1171) }, { k: "a3176c289e5a633af6bb8a5ff9d7940442534a8cb43200b9b54fe2379e1fc136", v: new $Int64(0, 5090) }, { k: "a31c139a48fe882d7847081e6588717a4d938cb90f2c8c78a9dbaad286364baa", v: new $Int64(0, 6177) }, { k: "a31ce007ba692e46f14beee4baca347a4a398daeea8295ebda45889d3df77204", v: new $Int64(0, 2731) }, { k: "a32648e293f84e30d6e29ecd7c3450dbd8f6f3421110ec1d3ee2eb4e6ac9a5e4", v: new $Int64(0, 1764) }, { k: "a32885264c35e95690ffdb84034e1c85412ebbb71ee49f0be72ca4cbea9dddf2", v: new $Int64(0, 3528) }, { k: "a32a6020039cfc1108e51dd03f13133a045deafd2e46b815ce5aa9a5cae8e8d7", v: new $Int64(0, 654) }, { k: "a330044aff94b4dd1adb849d20266385bfebe8434ab7fd5ba80e44678ae1a97e", v: new $Int64(0, 8775) }, { k: "a3327c56f1363ae07b42c4b30c4b2b764528a8132a8ad066cd69c11158b0121a", v: new $Int64(0, 3267) }, { k: "a337d6ba0ffc58d4a0fd27a08ab18632c80afbf30b345ce1c50f466abda06a83", v: new $Int64(0, 6271) }, { k: "a33c2dd4b687813484abfea2e8545e3254705ee423e558963f3882c59596ba4a", v: new $Int64(0, 1072) }, { k: "a347ec928d0400c9828a806b1f731bf183d3e8cad844c2b6920849732577a4ad", v: new $Int64(0, 8165) }, { k: "a359142210d61e0750e2527ed6f364197e5e1de7173d5a9df2decaa7d0d7e3b1", v: new $Int64(0, 660) }, { k: "a35b560c31f854531efc9974ee838ffc28c4a2f2c630066c43dafa404b67dd62", v: new $Int64(0, 3381) }, { k: "a35e81d8c19b8908074901f00fcfe843ce137af3b5abff69c43cb0edc6b168ac", v: new $Int64(0, 2898) }, { k: "a360045f4488953ae81f5c12ef891ebf895728759d899ace6fe8890cea579717", v: new $Int64(0, 9098) }, { k: "a362203c2f20c6fa6269dd7f14df36f88833f84e9a7011cd1b5d79b154786d6f", v: new $Int64(0, 5285) }, { k: "a366339c543438f6162e0cd9a1e9aec7af7e597624d59e9ab07537e5f692ece2", v: new $Int64(0, 5131) }, { k: "a370ddf5f078d5026f71995e9fe5a8a7bc34967a79cce5d33d5a1713ba2ab518", v: new $Int64(0, 699) }, { k: "a381fe160374bdcfa53a1052adda21ae18fb35d336d5156dff17a2be6fe1b1c5", v: new $Int64(0, 8962) }, { k: "a38770ff65b7d4053b6c1cdd6c7cfc1708d93ac905706a5f93f6305fc3e43df9", v: new $Int64(0, 2273) }, { k: "a38f7a961714211cecb1e7585c9d16c24b22650afeb5d8bd1501c8241a6a1cd3", v: new $Int64(0, 7763) }, { k: "a39b3d45c0ccac11794ab38772596bf268b7e9c91d8fa0fb44338518415a34a3", v: new $Int64(0, 8643) }, { k: "a39f566a0c22c9cf51d2b49f36d6d4ea8f6ddbd0fa51f08dc58edd2d2b0e48a4", v: new $Int64(0, 2458) }, { k: "a3a14b273c1f3aff438fd558746b9857b3ce903f78b825643e26d09e26cfdd7b", v: new $Int64(0, 4832) }, { k: "a3a8fbe3a408104436482b995b25a182196502d733ea6eb9fdb66bfbd48a0921", v: new $Int64(0, 5670) }, { k: "a3b14466887f15decdf17d07aeb301dc90f8e48788455aae8674f74088a1bc06", v: new $Int64(0, 2345) }, { k: "a3b53da54bf40df17796333a5a002db4ce323ed3cceddf5c267ec15d510878e9", v: new $Int64(0, 7106) }, { k: "a3b79900704ff9ecd7dc87f7f931edb43f8d66acb49ac2e339cbffc9162b84ae", v: new $Int64(0, 6000) }, { k: "a3bd0a72e47ff14e937fcd4bea0c37c63dbf4a6dfaed98b2b3f29deffc10aa09", v: new $Int64(0, 6668) }, { k: "a3c173cf75f6d4cc78fa09f881e1bc4743fb2b0b1e2476c6cd89a048cd2da434", v: new $Int64(0, 8491) }, { k: "a3c2ffba410b3be437ce4ae1e3ede078d7aa20f0368479070d5a1f46874a39e8", v: new $Int64(0, 5333) }, { k: "a3cef2f78d00715b1d4b5deb8bcb94c981f50ed13c5d60167129baed98b49922", v: new $Int64(0, 5387) }, { k: "a3cf1db0c51846b5b7723b22aeec1cdcb9cf7333a496b378d450ff7cb3987065", v: new $Int64(0, 438) }, { k: "a3cf6cdeb03d8c82b1bd38a79fc982e5807afb961bd3d22c3e10cde7d62e22cc", v: new $Int64(0, 9875) }, { k: "a3d1237937e7dc965a564265beba07c1bfc9e58f2a822f024a1a4f85113201c9", v: new $Int64(0, 4200) }, { k: "a3d80b20e5d09593616beabbd0f629623b24a2b9c91a7393c7971e75b23633db", v: new $Int64(0, 39) }, { k: "a3da80efc13ff43ccb95c66a6725967f5df3335ee159c058aab1a31bd14abc16", v: new $Int64(0, 7926) }, { k: "a3e01fe2e843ca16ef2a2f00c6591c867a9312dbd68839b02a6eacacc963eb9a", v: new $Int64(0, 4498) }, { k: "a3e58470d8e0d67e24460321c7510b6f7b45677dc569f46cda4e5cf2be925289", v: new $Int64(0, 1705) }, { k: "a3eed36fffcf8b9f5f6de3e10748f1443a26e64909e458e12594139a80ec7a9d", v: new $Int64(0, 1412) }, { k: "a3f013b5dcdef71274bd7cf99d64b069791d50c57a6ef2643b1efb0711d27c1b", v: new $Int64(0, 298) }, { k: "a3f8fd6be92a05db8a6a9d3cbe849eaaf4d5968e2db1d00189c012483d91e610", v: new $Int64(0, 4829) }, { k: "a403aa1c2dab5fe95e847d50a048025936aefb12b6af10a13d462bd792c93a51", v: new $Int64(0, 111) }, { k: "a4107c5010a5b889c888b638ec028f0c5603da69119fb278f8a0fb84f5c4f12b", v: new $Int64(0, 3302) }, { k: "a41c605a2c6f9989ca87527b1d5d71e0dc808566fd5dc14843aa8f656999ea6d", v: new $Int64(0, 7807) }, { k: "a41ebaedbb3b7a717e380669b96d9e90daf4c262b8e028defc2603afbd3e398c", v: new $Int64(0, 3116) }, { k: "a4266c257272e0ca819b64e4b6c8ca22b17999d4ee68f4f8fe38812ced5aeb28", v: new $Int64(0, 2241) }, { k: "a42a6e82313cf45847dd7fab7e90c876cdadf5d08d1c9edd97a8e9463628f3ea", v: new $Int64(0, 1199) }, { k: "a42aa5c6437a62283f7113ddd1172414b8fba9fde5783eb9e425d51f1d799b38", v: new $Int64(0, 8238) }, { k: "a444a28dce11987f9294d7c901583436c953db865de40a1086b46bc8746edc04", v: new $Int64(0, 6389) }, { k: "a4557557d3ce8185ece4f61bf70144c47291928166e742b09ee514d348d1af00", v: new $Int64(0, 7640) }, { k: "a46fb589c7ca95dccb356b161f6f6ddd1c1bf2515eef08aaf7a21bcfd79aa2d4", v: new $Int64(0, 1817) }, { k: "a48147fda77f815421ea527bd742a7258d05c416db33765fec5a4b9cfa60d023", v: new $Int64(0, 7624) }, { k: "a48b0062dcfb6df7c0c8245b20c35e783affd9567a672b4b0886cb708f3ad622", v: new $Int64(0, 4457) }, { k: "a48f9f38d8f5e6f1b809f565940bc3ef059412217a000d673d8ff406689188dc", v: new $Int64(0, 9925) }, { k: "a497319ac0d1841e189e0ea93850479451c9aa2674c825180a5597f37737c3db", v: new $Int64(0, 1127) }, { k: "a49ba33cd27c7d334e05fcd710091fb5e9784d48f686d6ee171354d81d4ed6f7", v: new $Int64(0, 1779) }, { k: "a4a013019c88a14d68cfe9ef3de71051e57758e7c1d543182edb18558864d289", v: new $Int64(0, 3547) }, { k: "a4c075347805de3fdbb722c6c291047dbe495c8883617ade612062db474103e2", v: new $Int64(0, 2425) }, { k: "a4d51568c0bfdc44a5ef0b2b304de70af519d654c9d46b3e391d36a4ef96bdd4", v: new $Int64(0, 8362) }, { k: "a4d7b4bb7515a26c9d8ab14a7e5455d34711fb1735192ba1c293aea05f800a68", v: new $Int64(0, 49) }, { k: "a4dc059f85783b9c911147fde3a294f8446992fe419bdbbe2ce1f47f71c29b2a", v: new $Int64(0, 1151) }, { k: "a4dee172fd50bcb9fbe870d0546521294914820d21c3b1bbed024d9e9c70f1dd", v: new $Int64(0, 7790) }, { k: "a4e4e1f2f6c749e68d874cf3559cb7b224565ce7d1d63847dede2d1d5173b5da", v: new $Int64(0, 3987) }, { k: "a4ec2d084ab656dd77527c6ca311557bbc368de510762484dea3297aa9cd12d7", v: new $Int64(0, 955) }, { k: "a4f8aac6945af2dfdcda8719b8f4c154c9823f69178a1b386a79bb4c16d17ef4", v: new $Int64(0, 4482) }, { k: "a501836a03cdbfe13acbf5999d2583be82267adaebfb48d4f61cd64ab75cea0e", v: new $Int64(0, 8952) }, { k: "a5034c421f2f0b03bcccc86ffaee7217474ac3c9881704c54c246372112511e5", v: new $Int64(0, 9385) }, { k: "a504acd9e24c3937f882364819e8aa414506df47fb7aa6ca4eddf5a145537517", v: new $Int64(0, 7543) }, { k: "a51a35c341929a570047dd2b341111945e21c99e63a2df64ca23aaeaacf8260a", v: new $Int64(0, 3322) }, { k: "a51a9744fbf5944e5bfc6f3f2ad60f00a5e1089e93a5fa7f1488a8406b3e46e9", v: new $Int64(0, 3854) }, { k: "a51aee1feb01a2db85b193e1d7ab044bb9811b017fefb53285eb037468b4855a", v: new $Int64(0, 5651) }, { k: "a52a14def25725087863cbdf7321afb930640f090d9e7a92323f5f879dc8c425", v: new $Int64(0, 4438) }, { k: "a53f4081a12d3ad095b5500149d8a122848d125f0eb33dae877deaa5c60d7a9c", v: new $Int64(0, 359) }, { k: "a540d125e8f3a648cc9f07ae87a6fea0cb82155dcac32bb2046eff744e3bd44c", v: new $Int64(0, 493) }, { k: "a543b33a8d83bd2659e911636dbe5a9439cfacb447eb086b1e5ba43194c24626", v: new $Int64(0, 3658) }, { k: "a5447270a3099358563b7ab60c8070bc6a5ca167d35a42cd901e84bf701d0cb7", v: new $Int64(0, 6954) }, { k: "a5481c78b431e00b08d7a913fb62be5bd1368f7d88a97012f38d22db2cdff777", v: new $Int64(0, 8132) }, { k: "a5544534e86912b4f994fea8e9c54d538b9e0203b7a078086ceea3e3e3e1f178", v: new $Int64(0, 7999) }, { k: "a55f6875a2464f1fea203c3662264587f4f68171d82b0017a253344a22493a8d", v: new $Int64(0, 9409) }, { k: "a568637a74284254b2baed57e81105582c2aed3dd997e1939364a4bf5d5b3959", v: new $Int64(0, 357) }, { k: "a56c0ad8dda12dc939733652ac743f5b540ed0122e9115ec86dc69ad881ff47d", v: new $Int64(0, 8104) }, { k: "a5750f52ac50cbdbc8854c530db809a9f18cc1c00fe55e24b190d2660c945547", v: new $Int64(0, 5621) }, { k: "a57aa1aa8154ff9a122be10a7f63c584622a0902ee52816ca40f7a2e4f3eb405", v: new $Int64(0, 6372) }, { k: "a57efbe95561ad7b9eb88cdb03c277721b703206340c4688ecbfe282122b6b01", v: new $Int64(0, 6758) }, { k: "a5893f3154961b3dca27ab7e25fdd6ccfe3aa9232d3693ed3cdb4eaf26a11a12", v: new $Int64(0, 8498) }, { k: "a58aef84f69c641373b9680b263da1015a28c5626288ba4e5368221cde367cff", v: new $Int64(0, 2029) }, { k: "a592e4745bcc84027b68b958f004ad383f67c6124af7f8e48506597a78c06407", v: new $Int64(0, 318) }, { k: "a5943a9334065747c669a31d233ef2fd67bc02badbac52227900b542fba1e1b0", v: new $Int64(0, 7846) }, { k: "a5b06bffb98384166a2aa83983fe6486b47e7baf310738dddd2e4f06f6d6eacc", v: new $Int64(0, 1997) }, { k: "a5b3fe43939888ab35bf5bd051aa8f65aa1119d0f5eb6dd81555c17d1b37bf87", v: new $Int64(0, 2671) }, { k: "a5b5ffe8dacf68714a32a174364070f575425a4c3b186c0ffb8b0dcbba24c201", v: new $Int64(0, 2245) }, { k: "a5ba0db8929cfdde9ecf7f0191fc3c23ec4e56213f25f92aafd141fc6517afe1", v: new $Int64(0, 2546) }, { k: "a5c0dbfa719bde7eb0bcfb10c1c1b13e392826695481be37ea81775e8bcc930a", v: new $Int64(0, 8970) }, { k: "a5c8cf6d9b5a5a602604c670367030dbdacd36cf4d1ee82d18fb3612e7bd60cd", v: new $Int64(0, 7687) }, { k: "a5c9bc52429c8fde999913649e68c8b66728f75dfd52f71380402502fbd22922", v: new $Int64(0, 2109) }, { k: "a5cdcc1e130aa4d602cebd0b13b40f2d7018b0f69d7c478d4ab80729cb54c19a", v: new $Int64(0, 8838) }, { k: "a5d1280422ab93e40e3a2f0320da05f9c91b475d35a293a4de1579cc36d342d5", v: new $Int64(0, 7196) }, { k: "a5d51ee2f38768bf9feda36d0ebb80844cd5e35f178de0816463313c6204b596", v: new $Int64(0, 9184) }, { k: "a5d99e2defde12a0874e52d29fb138264e06a8e866bf9950260240a6bc49ec49", v: new $Int64(0, 4520) }, { k: "a5de4621b978538bee715cc0e2707071534a5abb0f3061b17bb65b9c8a619853", v: new $Int64(0, 7344) }, { k: "a5e56c4a923f695aed186a67f75614ff13337e5d5110ff9e9d1956d874fd2c05", v: new $Int64(0, 9037) }, { k: "a5eab6774ff302ef11e8db56c0039bc7873d9b5a4a1c32b2949d1480f780b1e8", v: new $Int64(0, 2213) }, { k: "a5ed1a22cbcd73cecef306b10ea178387ed19c25d3d31c0248f0aaebd956e33d", v: new $Int64(0, 6628) }, { k: "a5f702145ac1946fd1532ad8bd0fe1549e39216f0712a0a584b93eb059ead5d1", v: new $Int64(0, 5198) }, { k: "a6078b0aa10a95548a4124adcdf0a41b6ea8b4d7cf5624a09ad9d8a88ec563ea", v: new $Int64(0, 8135) }, { k: "a60e69e78dc0f5ea49b26ee92ec42e664abe8057780910a013d99aac8b2421c5", v: new $Int64(0, 2962) }, { k: "a61430cdc2c21155ca03cb853e866076f5fcd3066f6e9277976ae847bc99781c", v: new $Int64(0, 4349) }, { k: "a6148811f9ff4066e033f7812149d605f94704f6368c2cbb1393db2755b9c5df", v: new $Int64(0, 4932) }, { k: "a61a368297a9e74fa41da913576e7b3f12a1723146bb0a568c008518e89e3a2b", v: new $Int64(0, 6655) }, { k: "a62407434654c2921d778acf4d2e4f921fefa2a28c685847ff6b3e63a6ea5d1b", v: new $Int64(0, 7739) }, { k: "a62ad8da40fd281e158c94f12aa2d361441c416f3d9ba03f1194e30181f9987b", v: new $Int64(0, 7872) }, { k: "a62b9d3615df8f5073f890ad19e26ae9a54cdece512cbc606a57ca6d0919f35b", v: new $Int64(0, 2201) }, { k: "a6368c555aed8453ab8c6551a561b8d22bb6a9266f113427e0ff8b6259a3fbd8", v: new $Int64(0, 8917) }, { k: "a637823bd377fb54aabe6376ac0d137197dd64443733fdf89527656bb1b1a464", v: new $Int64(0, 3265) }, { k: "a6485fd7cbc5a10915280a575ed7432a13ecf29c336bfb9c24141f54aea7e68b", v: new $Int64(0, 5344) }, { k: "a64c48f7346af677aa1af6e8df88e52f6ef33dcc2fa90610a3e482c4ab6b33b1", v: new $Int64(0, 7037) }, { k: "a6504352076fff742311e0736bc47ceb605e50afd8d1f133c15dcc5dee779158", v: new $Int64(0, 5680) }, { k: "a6527ed9857397aba493310bd481101169df122395d7eace9d0ae5930b734b34", v: new $Int64(0, 499) }, { k: "a658d3549707d106a754a40daefeed423b0fc03580b55dd9e4952f065763deec", v: new $Int64(0, 7385) }, { k: "a65bf551a5751cf262a3a0a7b7569b5a355644738ebac40c1b5ba8f197e4f5c7", v: new $Int64(0, 4264) }, { k: "a65e37bfc87793945e6facf72e827dd19123c39634842242fbc31e87f38f48f5", v: new $Int64(0, 6070) }, { k: "a661844046e1868c15b9bc49592c0c33181d9a0be7d57bb04a2aac4027ab3ff4", v: new $Int64(0, 1836) }, { k: "a6664112723efb2029d026207c47fa3e557baa1bede6d2778fb36e3ba1df421a", v: new $Int64(0, 2395) }, { k: "a6691fd084274f1bdfad74c00dd200c9874c9aa8a2a8dc1e7240fe82fcd138ee", v: new $Int64(0, 5240) }, { k: "a6710779ea7ce17f66a86a1308d7890a348d119534c3d13743f9574377e4f58d", v: new $Int64(0, 8992) }, { k: "a676374d9f2de4c71ec9044cb2ccfb199464a39051be1114e6f572c123b0cab9", v: new $Int64(0, 847) }, { k: "a6782af962b86be58df3ecdfe86f683ffa15196a9b8f62b1cbb1cb0968e3eb8b", v: new $Int64(0, 9356) }, { k: "a6795c804a9e82bcee7084ed8019805dee630b3f01be3f105e1339ffab7aadf6", v: new $Int64(0, 4102) }, { k: "a67ade939be3af4b8f6fa048498d7e1252bee7700fa402385bf55c8ad81ae22e", v: new $Int64(0, 6001) }, { k: "a67cbdc6dc62fc439de32b6771b1a0a0a03d2048720852c9caa8886ee1160700", v: new $Int64(0, 6499) }, { k: "a6813d17eb017fefd475719870e75454c2c0ef698ab12b287af921d9da179281", v: new $Int64(0, 9979) }, { k: "a68a81a4573cd001c2e8a87ef31d3e5af359579bd95b227b9392c281f12dbcc9", v: new $Int64(0, 8436) }, { k: "a68e1517b854b3174aa0878e2d8106f6ae319bfa25fe4bb657209dafd3156e94", v: new $Int64(0, 3654) }, { k: "a68ff40b3955d96edc9bfb17130c6b977ca0c92fa9075eba50597e6d0a2b3450", v: new $Int64(0, 5998) }, { k: "a690adbc5014c56a3a38e05fbc675464d9b5c7c4505e039b6dc6383359ce86f8", v: new $Int64(0, 1424) }, { k: "a693d876026a2c44ed6423f613a934cc7a238db6c90b7e035aca40bd2a859ad3", v: new $Int64(0, 2981) }, { k: "a6943adc9ec22aa7e98762c392b3f224ac24b1898efcaf3ae4e874a3c579b2b7", v: new $Int64(0, 9866) }, { k: "a69b24997c49d8638c862cc49cfc3a668d5bc20f37be5a63c2f0fe2302ea43e2", v: new $Int64(0, 6737) }, { k: "a6a0a68e0404f15bfdb27e14c4ed3f4dafaecfe0ffef6901976f91fbe0a173db", v: new $Int64(0, 4217) }, { k: "a6a37beaf187090ce9203bf44febae25bf4c6a7bba6e880a490885d4a8e64ff3", v: new $Int64(0, 3470) }, { k: "a6abf87c0284bb7a2fe4fae50ebaeb32791474dca92c98d9ca78114be4740dbe", v: new $Int64(0, 2570) }, { k: "a6ac050729f44e33f4fe655d19225bc3ad4619f056ab4da082be4128acfd09bc", v: new $Int64(0, 2319) }, { k: "a6b08bc0fc4b8d1561c192e3f2d913431396d9d7393d75ec52422126f4d3752f", v: new $Int64(0, 4727) }, { k: "a6b40bd319d1202bc51a6841fb2f12d6c5754acec7b96cf9022c2d481551742b", v: new $Int64(0, 4695) }, { k: "a6bafdca92ea625079906308fb06b157b0af7c58dfc4ed75e62c1ea88ca524a7", v: new $Int64(0, 3433) }, { k: "a6c0381cc655b64838b4b8b4f60b6f074a0ab8ffc7721699704bfd077262d1f3", v: new $Int64(0, 1004) }, { k: "a6dafd781e6c37f0c1e4c5808acc277c41108a29366aff7f8b3c9eac761d5892", v: new $Int64(0, 1950) }, { k: "a6e40e3a9a74532383e0f5ce852f179a70e4cff37dfab1928b2b58b1b674086c", v: new $Int64(0, 6563) }, { k: "a6eb2268b94178b7550b319fdad44944ce9115b665791ef9bc6bb702c3abf4c4", v: new $Int64(0, 5772) }, { k: "a6eca8ee675bdd1522d749a50fd3c53f1f34bf3909b416fdebd08c5b7a9758e4", v: new $Int64(0, 5241) }, { k: "a6ecb94f2380746a224936882a6c7198512f1cdb453f01d73dcf7d09b5c882ce", v: new $Int64(0, 3641) }, { k: "a701cfabc260c5ec427dc2d31d42dd8cb3bf9a2f725816b3e635425b2b9ba8be", v: new $Int64(0, 5480) }, { k: "a713138883f30261e937f613622a462d214c28e58babbd12d06d1cefc52724ba", v: new $Int64(0, 662) }, { k: "a714cbfa29fb5d87ba190c1be9bef20f8cb6e489bd803429662045d057a187cf", v: new $Int64(0, 9366) }, { k: "a715f37dd515aa8a938ebef9941d2e8589f5b7eb63356f9b6b8c14a1d32afb40", v: new $Int64(0, 9535) }, { k: "a71973146bda04706012c63d563f40d2787f066233798e1d00c0cd2a756cb014", v: new $Int64(0, 4737) }, { k: "a71eae025af9e98be8749fe54d199031913376d60cf4a83365125facab17515c", v: new $Int64(0, 3961) }, { k: "a7257c4b47bfda7fca683bbb6b94945dc04f9ebe39789732054845057549dfee", v: new $Int64(0, 1967) }, { k: "a7320444a9baae037bd13a165e31716b47a5959b261bec1bf7ee4ab8e5ccad70", v: new $Int64(0, 6763) }, { k: "a7332dd5215b80b9498aac5d6e7a5c4902eef836a53694fd2f7d16276096f966", v: new $Int64(0, 3193) }, { k: "a74e6cff99046ed7066bb4031197507d6f062cce504b78e1e5bf656ca254be47", v: new $Int64(0, 4244) }, { k: "a74ebda2245f4d195c29614bbf334d3ddcbbdddfc756309bb9f42f788fdadf91", v: new $Int64(0, 321) }, { k: "a762d5dbf50822fc2452cc14ffbced5fe07a183773f57ff0e00cc318d7a250c2", v: new $Int64(0, 8594) }, { k: "a764c56acd552760ac393bab6315b80806abffbca58ca45d6cb6f2097d9c3c86", v: new $Int64(0, 5768) }, { k: "a76508ba51f847b4295722a1a3ecb2118d7fc6756525c416062f280d18832c39", v: new $Int64(0, 2758) }, { k: "a76ca6eb2637e65a7b1c65c90962d472fe5cf7de60c8efdb8373f22fbd00ad3d", v: new $Int64(0, 8392) }, { k: "a76f930e32fb46997111969866e85e3cade6b59c24f625d86857bf30a5cb7405", v: new $Int64(0, 5216) }, { k: "a76fff7d854c40f9486853dc5930b911d09fb25a2542492d0e24b6f851dd2cb8", v: new $Int64(0, 5279) }, { k: "a77adf546bdb717c2434a82f63cc47ce7a2466195d247a02f9fe0c745b0fc2ee", v: new $Int64(0, 9256) }, { k: "a78214b1c17719f5be23b5cb16262ab732f146004ba6dd1e402877d759dba603", v: new $Int64(0, 3298) }, { k: "a793e951f0c67208dd83cd9700e9d4378f12804af9ae81aeff18c13eadc1ef78", v: new $Int64(0, 2068) }, { k: "a7a3e9aaf7b8f996e7940e8149ec059e946bbcf7a4d28e1fb6afd0d2d83f01c7", v: new $Int64(0, 6833) }, { k: "a7b5b58e81a9c164495785be92009e0d5434446c8f597a6a97076a527009b257", v: new $Int64(0, 3376) }, { k: "a7d43a91dc125c2d29eec3313cbb5be8545ba291b5b0a61a93702700f5b1c00f", v: new $Int64(0, 5103) }, { k: "a7d53cf21bc4dcf6a83c56b85341bd4a21894f4ec29ca4106610b88a1ba5913b", v: new $Int64(0, 7845) }, { k: "a7dd36736ca799b660ac6051305f3bafd1a6bd40d865404ff09da8db296f7a5e", v: new $Int64(0, 3025) }, { k: "a7e2e43ff9edf435306885b99059bc3ba149f877533c99ecd481351761e6692f", v: new $Int64(0, 2914) }, { k: "a7e5d12adc7d7d38a85aa46a3b8606d170ae86f686ec1cd16a4cd9dbfa27d4f3", v: new $Int64(0, 6952) }, { k: "a7e95ecde5d2b11d2a66a37b8ca25b21d88d6c1e480f862e6a2d817ecf8baa6d", v: new $Int64(0, 4492) }, { k: "a7ef5bdbda188daef8b4fc94356153aa01ae61208cf724af537adf159893b704", v: new $Int64(0, 9989) }, { k: "a7f0a452dfb030e685f2cea7dcd0c4624ca07f6398e48090fb044c71b5d38db7", v: new $Int64(0, 4092) }, { k: "a7f8c789eac94af786beb35ab72536cb0e49c745a8de3339dde41b787264df03", v: new $Int64(0, 8409) }, { k: "a802666217f40bb4b21d3b61c10fbd2d2b498b0913dd9de237776632f181b083", v: new $Int64(0, 3769) }, { k: "a80549392186d3ec60a3f8bc0355ccde7f9f90a300d9627f33bee8c91fdb665e", v: new $Int64(0, 1078) }, { k: "a806881499f0bfff9847e2afa977377c7d1826a29b9452c88bb9e60c4da9348c", v: new $Int64(0, 7795) }, { k: "a809bb056f4b60fa5df74c56b41088ccf42f0658299e9ef6b0252729f96c00f1", v: new $Int64(0, 2363) }, { k: "a80c04a8df1ddbade2501afecb906df6af0e25933ab66f78d9875c3a586d6bc1", v: new $Int64(0, 5878) }, { k: "a811a4c3cebf212ab52e0d15fe761010534c0130464ba33aaa9db66f482d3830", v: new $Int64(0, 2695) }, { k: "a8144e96321673e96d99cd6cf89e3833e4ccec5c123bf5e3f01e1bb5006331dc", v: new $Int64(0, 2069) }, { k: "a818f405ac90a0df0f186f5bdcf3c84ce5b33e1d12d6d921e12bbf719647fdc4", v: new $Int64(0, 2465) }, { k: "a81933695121aa95244c112508ba5423d5f44bed2b23f8da767e353ca2e0976d", v: new $Int64(0, 3112) }, { k: "a81a805939eb820824e7340bebefda71b1fda66ba8f2bada452f24741948992f", v: new $Int64(0, 5798) }, { k: "a81b5eeee3e2ab6fd567eec8f75330f17b0b216379521eb4b669e746765ee425", v: new $Int64(0, 4965) }, { k: "a81ba7b2c9a28ac5d89830917f4235bc95cc0bd821e5642ce9f4c0e99389ae56", v: new $Int64(0, 2049) }, { k: "a81f4925c56145562b675dfd361f8c78debd2432935ebfd9d0671135c1cf24ca", v: new $Int64(0, 1026) }, { k: "a820faa6148c04a7b3938f8bbf45856d1197d766c2962973e677fba52df0d20b", v: new $Int64(0, 1980) }, { k: "a8269619a0febc3a9c7cfa608c608f0b280184415710414d2ed2082d84f5bf2d", v: new $Int64(0, 3350) }, { k: "a82e4dd74964cd5703386b96ceaa910e2b0d904019162c94ffd980771b697a19", v: new $Int64(0, 3194) }, { k: "a83aafe6fe74286c00666376a03ee5da8dbca6afd92d3255ff1469a72d7db4f9", v: new $Int64(0, 8403) }, { k: "a84aa93fea85ffd475fb11374a76a4ebef9074055a71bfd1263484a7831517d5", v: new $Int64(0, 9892) }, { k: "a84ba2b71d3f897cb8f67fd4ae113ce1ddc9580a0ee3f0a5b1eb23b4e91218b4", v: new $Int64(0, 7489) }, { k: "a85544b1655ea9e95ed7ba6691228d0adab40e306c0e6467a5b845251ed8465a", v: new $Int64(0, 6489) }, { k: "a8595da248c5cb1d9bdaaa9bd21c898c099e638a9c983fd02d74158f71b03008", v: new $Int64(0, 4719) }, { k: "a85a11916bfc2082ac47ed3b588ae2c9c07cd4c613704eb61d2bd0342ce1b040", v: new $Int64(0, 5594) }, { k: "a861a998a1de022a39e28f2da25ad17647f8a2a565a9fda93901e6a95541180b", v: new $Int64(0, 6732) }, { k: "a86cbada6bef2a259552536027aa9b314c794f53e7f193a892a985db556fcd15", v: new $Int64(0, 975) }, { k: "a87aa9304e444cb6288467e260d20e6025d6a37f6c23883cc65274356c56613b", v: new $Int64(0, 3756) }, { k: "a880546caa214fd82c2251615137ca734dd9766f737650bd7f7ca15c7a34a3dd", v: new $Int64(0, 7490) }, { k: "a88349b6ed9d763211078bf9ca7557f992ee08f46407b5d48872090b1799e4d3", v: new $Int64(0, 471) }, { k: "a89d4dbf696f9a40c5b7af179e5704c90004bde6cd4a074880524d8c11ef2f2c", v: new $Int64(0, 2106) }, { k: "a8b06c2060fad09aad42382a0f13df310b1c93d7cee4c42f63c0a6d1b6653722", v: new $Int64(0, 1386) }, { k: "a8ba72977b05f68ca63ce68901d7e3fbdf7e7e9ee0308a19ce615310fd0eef5e", v: new $Int64(0, 55) }, { k: "a8bc4c8cc4a6947fef4542cb54cbab15588df5e9096d3e4a565c23ef270ec1b1", v: new $Int64(0, 4408) }, { k: "a8bce89d4dd3e86b74c4a6331707f62387d5fb6b878a9b583eeba72e843f8a80", v: new $Int64(0, 5316) }, { k: "a8d13fc1f1e869a89ef8caa87dd8c3afe1ed06439a858c68773b79bb3c9029cf", v: new $Int64(0, 2494) }, { k: "a8d362e9e292a53fbcc3f7ce45ae8bc9c3a4863c8d8d92f122ea459d20b75883", v: new $Int64(0, 7589) }, { k: "a8dd8247e9e97656049d73a65f3da692df012eaacfd5e29fbce32c1882f37917", v: new $Int64(0, 1366) }, { k: "a8e923c7a957ddbdc196ad8f04da8b2bd88d58c230ae2830bc9af1e867fd5344", v: new $Int64(0, 1953) }, { k: "a8efb594d6613113b8441e575ad1accb29107693c9abaf5c52c8f7fcb90c5240", v: new $Int64(0, 7864) }, { k: "a8faa6fa4857e6b076c5d366ddfc35228f7e3a92f6e9dbab1800763801131617", v: new $Int64(0, 8913) }, { k: "a90b8ac74a4139f7bd0c69343807f6473e128a4b18bd5d8a0d519751403a9b0c", v: new $Int64(0, 1227) }, { k: "a90c52d7490ba15a4896b7e8e4aedad23433b3426c7f410219c671ac47f43f40", v: new $Int64(0, 917) }, { k: "a914d146e98be288e09ca5b6cc1c107fb14368ea7f8b338ff76178bf7599a9e3", v: new $Int64(0, 5763) }, { k: "a9278a5ad4af582539914dbeb7d7f8ee7e72f56ece8f4c99d60ee2475a032958", v: new $Int64(0, 2514) }, { k: "a9293e14f0e897bbf5885cc5bef9698549f3b5c32ae7b26cd13b40dcc8932220", v: new $Int64(0, 8206) }, { k: "a9512630760d9b114be5dc3a2562c34e441b78de533752f0cb2ee221c2484f2e", v: new $Int64(0, 6122) }, { k: "a9526bc369dfbacd3393d82d7f6708cb75453b2972f27d9a4295f0135cec197a", v: new $Int64(0, 6406) }, { k: "a9534ee440b4f3942d3968720d23152ad2fe4a09b9ec1c2df50b527ed66c088e", v: new $Int64(0, 1264) }, { k: "a95ff2403ff84015a07528eafada931ac427a7e5f21a0725a912ea8eda27b213", v: new $Int64(0, 8723) }, { k: "a96da8125db050606310a6b5e93913217fca95f22da6a8d76ca0d1268a2aae59", v: new $Int64(0, 7272) }, { k: "a972d51eaeb0d1b9b1b8c3227a5cb33d0c376fe1b75dee6bb256762e4c50d92c", v: new $Int64(0, 6057) }, { k: "a975464171ae4d7c1b82b591477a2fbe4c8c0ee6713cf751d3f26499048d2a95", v: new $Int64(0, 1178) }, { k: "a97fca34dfb1a34afdcbe659c8c85e65319051b80729bc98d07a42bfa07177a6", v: new $Int64(0, 4542) }, { k: "a983da13db06a676bd4bd7d0493fae25e041cb961f951d75759ff746a46259a7", v: new $Int64(0, 1737) }, { k: "a98411aed7cf2b34ca7b244c62554c0815a6a680c525240cf38c64d45d026fdd", v: new $Int64(0, 5944) }, { k: "a984560dd461b734869235282fa03b19f07fa8ac1cb4b07642479d4f4864eb02", v: new $Int64(0, 5927) }, { k: "a9849fb6aa778690e6b966e947cee06e361f27c6a694d6df42894193c4320169", v: new $Int64(0, 737) }, { k: "a9928f883ed5973486b26465e80b5220ea51b9603eb70e7d87a29fa17cd4769d", v: new $Int64(0, 6843) }, { k: "a993ac37f00ff64cbf65d63a5402ce7551210e3c3ace1b1008d1c6b03e2201a6", v: new $Int64(0, 7352) }, { k: "a9942fc4050db1ae695556a3966d7abeacf518cf8366f556d5877e06c5fe2d24", v: new $Int64(0, 6842) }, { k: "a9961b9008ca8607c3138d9e2c387f5e29afe92a8045c8eca8f2d98c49b4190f", v: new $Int64(0, 4692) }, { k: "a99d0c31bf606cb44cb8e2a4fdaf8c1e377fbee807c0b97a69d0f77b199385e4", v: new $Int64(0, 8077) }, { k: "a99ed1b9eb580f9f5d07b2f93d4d6b60de354aa10e30574a89b845748a5b9964", v: new $Int64(0, 8170) }, { k: "a9a6cd07a9f9bb920ea6217f5a4f89ba40ac893d37b04a1c1da629cf021d78ec", v: new $Int64(0, 3461) }, { k: "a9ba12ac67a6bb31d385780655d9ef45440fda2277b6113217bbe03e64e247a7", v: new $Int64(0, 2672) }, { k: "a9bf077a5e00ac93e6b9461cb5a6b7008001e9a254405cfe9d5e9c31f461444f", v: new $Int64(0, 6880) }, { k: "a9c3eb0aa2173a04ad2d12656603f6cf26f0d92df3767e1ba034911a15f3eac8", v: new $Int64(0, 8105) }, { k: "a9c46f8fa0bb86f4ddefacf57be13391b974e1af52d5796b9472e38f1f1c7889", v: new $Int64(0, 7945) }, { k: "a9c9253d81f8fa4b1ea01aeb9e3ca60cb32de986993db6c28c2e8c8d278bfd1c", v: new $Int64(0, 9104) }, { k: "a9c94aa8d745760934db5833aea9ec18d9124cb2fbfe87de7289f97266333e4f", v: new $Int64(0, 2943) }, { k: "a9cecec601501c1fca1482fe6423ac1068770525ab76ef9b60356b6b424f1d66", v: new $Int64(0, 5357) }, { k: "a9d11121f41b05a3e7157e11ae46095988bc5855d98566b61285ede68646a4e5", v: new $Int64(0, 8991) }, { k: "a9d8b81779c55683cfb1fd0c04aa927ac52e15c17eb31719e6259f33d9a8f55a", v: new $Int64(0, 4240) }, { k: "a9e1ee5e8ea17032494aaaaf447820715a26790db651c88eea449e271070b431", v: new $Int64(0, 682) }, { k: "a9e944b44bd5745c311d78aabb4d7d171b9e48e1ac932b42ec9c447ebfbc5007", v: new $Int64(0, 211) }, { k: "a9ec6f4b9b8f9d19632a2610b94dd53751884effe63fda74ab9d418d381355ec", v: new $Int64(0, 7345) }, { k: "a9ed3440aee5d2854fae37bdb6686be9951871fb531bc81ed6cd813e2e517ac3", v: new $Int64(0, 4439) }, { k: "a9f34b26b0244e6d8d99ee169eb55b330891640511c4b077735977891bbb55b1", v: new $Int64(0, 6650) }, { k: "a9f4d2bcc3756b8cd8068726d7ceae0fc48f34ee6ac24006d2fce2dc2b656bef", v: new $Int64(0, 1741) }, { k: "aa05e7514a358553427d76229b14b4dae8ac4048e5b376d2375db26dbdba1ecc", v: new $Int64(0, 4104) }, { k: "aa0ca9d163678a77ce0c38e60dfe6ace465e35bf1e9097da06c757811a090f13", v: new $Int64(0, 5641) }, { k: "aa14cc717d6d15e1fb8a7168e4c4d94d50b743866778e516874fdc8fefbcef5e", v: new $Int64(0, 4095) }, { k: "aa179c3c12867f819470b508109ff6a24aa69b95a37bc893616f0c8182954648", v: new $Int64(0, 7638) }, { k: "aa189bcdd47a8596baec3c072fcfad15d364dd401f45a5803d12baacf26d070b", v: new $Int64(0, 612) }, { k: "aa2353c51bd1677b3cde2a6eeb6640a0b07deb1f43dcf15a1411894718b223b5", v: new $Int64(0, 221) }, { k: "aa241eac09c4bba5f2f3024a3fb9f4bf80b2645f0a6de2dbc3b1174ae4a6ee39", v: new $Int64(0, 5274) }, { k: "aa2aae489254a0ae6609710502d8e6660020a35eb0b5d156bc2d826e7a0fc0a4", v: new $Int64(0, 3257) }, { k: "aa2f5dcc0fb52302b6e95cd95fa5b9543872691ba7cd1cca8c60f98259857cf7", v: new $Int64(0, 6477) }, { k: "aa31e60001654104592e4dddf161dba404e1db9294c7c93c550ee9c43a53e825", v: new $Int64(0, 7275) }, { k: "aa34314f57b0c68adf50c22728564415736ff8dafaa6f3d223b0ddae4856150b", v: new $Int64(0, 842) }, { k: "aa3644d67c0a03f35aede20f7636add8535088dcaa7183fc70e99bb0011ad55b", v: new $Int64(0, 3039) }, { k: "aa488358c232ff8c54f2e4fd87d3191f542fd68cdc1c3cea4026ccbf7446b9d6", v: new $Int64(0, 8282) }, { k: "aa4b514e5975d1ead235caf3a1fdc7548d858a4234c5f9b7aea957157f264a90", v: new $Int64(0, 8260) }, { k: "aa4edd8f576afb293c143cd529be81fa6287de5ee663b98de6baae1dc1097aa9", v: new $Int64(0, 5871) }, { k: "aa52880ddc17998043aea155dffa3e2209c6310e4bae8a3abee20f9e1b791f7a", v: new $Int64(0, 429) }, { k: "aa530821f5095fa2c2f9b47064693e1b4da73e147b87e681aa3e242de2c4c175", v: new $Int64(0, 2663) }, { k: "aa601109ac10a543d519feb1f297dfa2c8404aa07477a8033a0b74267869ac6e", v: new $Int64(0, 8003) }, { k: "aa631661e4ca9fdda2f6abb44329728835f64f161cac4ae11182869069f821fd", v: new $Int64(0, 5365) }, { k: "aa63c898246099da6f6bc7ea6e345a9ffabe5f42f831cdd70b8bc990fde911b7", v: new $Int64(0, 7291) }, { k: "aa6df914f7a0f04e7f852adf459873f17dba5b1671ea62e82cc10ed6aecc489c", v: new $Int64(0, 77) }, { k: "aa7067e675d590da894a80e6a33ae58128210b728311b732b10f46297f5475ac", v: new $Int64(0, 4427) }, { k: "aa7befdf5d393870dc4754c462bf92b98b53aa8f943291aaf64c6c54a4ad0540", v: new $Int64(0, 9248) }, { k: "aa7f8c480a239c2cf450e35b79d40cc254a12c8a928bc40dd7899cdb394b6421", v: new $Int64(0, 5557) }, { k: "aa7fb9497feec5641097fc91c98cd4d7670324d4710a335dca4c66fdac8c2309", v: new $Int64(0, 2066) }, { k: "aa85451d5d6257220bb86cd234332f674361e129a149df6fa640f0607a1a7d62", v: new $Int64(0, 9864) }, { k: "aa89b44f74ca5052a661696697608ee942ea0725ae300bc37137b01a6924f694", v: new $Int64(0, 3513) }, { k: "aa9189812478da0436c04f9b994b8cce4df15e4fc29a054b50109b4d11e96a8c", v: new $Int64(0, 6484) }, { k: "aa9255f7f4034591725561e9a4987901e9f8fd82f3fac42c5ac419fb6a11bb3c", v: new $Int64(0, 9933) }, { k: "aa96e6e324b857e83c4bf5119cca6fcf7b851e3225c2eb8a6985c5055cf02fae", v: new $Int64(0, 1881) }, { k: "aaa7b688fced633416bd3a406b91fc433c7292b7a14611e474d28e2b47f5d8cf", v: new $Int64(0, 9588) }, { k: "aaaf67a1de6f5981a444a77ae7838e472d54fa6bd3d4747334667e9239eb273c", v: new $Int64(0, 5175) }, { k: "aab5410569706dc6f898ee2a9fc1576805673c781d451bd22e97ff6294010cbc", v: new $Int64(0, 5010) }, { k: "aab5c8e6d5d619659e5f5b8852229fe4ae056ad367c9b2913f33cd0f29f6c48b", v: new $Int64(0, 7319) }, { k: "aaba85d8f1f5eb14b00485679748b26e28fc547edecf76cca93b92e3281d116c", v: new $Int64(0, 2035) }, { k: "aac19b0695485ffe7105abc83ca845d7a2f205c8cd8fd6da81d7928577e34cf0", v: new $Int64(0, 6548) }, { k: "aac3d5e640177df3f873d526674aae1025c14efd04ad37e67925da1a20b5ea74", v: new $Int64(0, 488) }, { k: "aadd62a8077c6ae9db1f0bbdd5436defc83310a250c351f617ad23cd619215d6", v: new $Int64(0, 807) }, { k: "aae3900bc3f88737a51f895fe5f1e0f917457e65b91419a4fa24699f2cbc8f7f", v: new $Int64(0, 1842) }, { k: "aae683b04d7ed53acbd490ecd8664012ccf250ac17e55fa0dd0cb0fe67465437", v: new $Int64(0, 4363) }, { k: "aaf7793c740397d7bfb26e74425f7b545164a6a5b21e3b9eca47f1cc630fda18", v: new $Int64(0, 5984) }, { k: "aafd977df8e0fd4e5896acdeac015f14a75230ebdc4f664e984782bb5957758e", v: new $Int64(0, 6178) }, { k: "ab0aef68192a42cff839cf40364ab2fd7b563745b9caab448d40fe73121860c5", v: new $Int64(0, 1890) }, { k: "ab153a925c85d7ffe998c39a345848475a3c3565f6a8a3359f3dc69076c24c99", v: new $Int64(0, 8173) }, { k: "ab1698696d9ba6233339b98961395e5f4ecea7189d3856025898994f96d3c2e7", v: new $Int64(0, 2698) }, { k: "ab2a52c80382176126d68b4a27a2877da93bae0165b4f804ea13accfd8edab71", v: new $Int64(0, 7338) }, { k: "ab2cb37f4901a10d6e619745306629cedf391377a133ab63fa1855966dfb0038", v: new $Int64(0, 1073) }, { k: "ab31fbfd066f327624ffe964e9af73bdbabe222a736b37eee002ca63f2b64f0e", v: new $Int64(0, 3204) }, { k: "ab3d6fd64dd7250d7858161cf6dacb28729a38301b0491cb79e5e6caa264e04f", v: new $Int64(0, 6347) }, { k: "ab3d74ea6cac5211a3236599174c76323ef6174b78e70c308d251ed258605d36", v: new $Int64(0, 6449) }, { k: "ab3de0c00007bfa3dca87cd9088131d133e54722ac7aa3a9d396feeca24fbfb1", v: new $Int64(0, 2944) }, { k: "ab46774c5d0047796884fbc6dcdc6f4c6c430ebc3d6d1a2c4d65af09fe55bf70", v: new $Int64(0, 6639) }, { k: "ab4c8e45a9101c7f3d5113e13738ea30c81518eebbc6030861a3dface34a6895", v: new $Int64(0, 8343) }, { k: "ab4ec1f26d0f17fd76b9b6273b9668141760819b810b2d9d7390a878c52c3b0d", v: new $Int64(0, 5143) }, { k: "ab4ef33eef69d1e59e9e3f7f7bed00eb1ab293acb68fed7948e2abe48f52f831", v: new $Int64(0, 503) }, { k: "ab59dc1a0681d52834bb70619e9332796dcbbd1d8373012115d6efb44c5b985e", v: new $Int64(0, 2895) }, { k: "ab5cd8c072d6928583890eec2b96328512171b97391f9b2c2938900cd2d92933", v: new $Int64(0, 718) }, { k: "ab6905f6c9c0d48a96db53c83107108d88d2ddd3c5999fb703a070a204a7f3b8", v: new $Int64(0, 1826) }, { k: "ab6da9c7503cb5af001cda8885c79f8e5e27f39c7c08c7d4e4e735a992f10b5b", v: new $Int64(0, 3613) }, { k: "ab75e24176941537c19629e5cd988e7b8242c59c6d52318e4747d4c06a851e93", v: new $Int64(0, 9441) }, { k: "ab7afcc940606da2eaa49c0948bba1a35d53169e8730f779b22983b57ca34fec", v: new $Int64(0, 4673) }, { k: "ab7dbfcf8f03296e16b3b7003b20aef32339479aa7277313a1faf2c449dc1fed", v: new $Int64(0, 2223) }, { k: "ab809a39de31c68ef45e6ef1ec031f40d6496199271a11de09758fad8f3aad40", v: new $Int64(0, 8896) }, { k: "ab83e71f77015749c28e61b1328460e81f13697ca342c3529064fa56f1dcaed8", v: new $Int64(0, 5313) }, { k: "ab8e2ddbe5419a29e71f4cef7842cd87b26d63fdb6f2b27ce2c1686ba047ad36", v: new $Int64(0, 7995) }, { k: "ab925585d8947133a3f03d1584620c68d2d93fa952ce79daa9f404891ea702ba", v: new $Int64(0, 6253) }, { k: "ab9a5e01c856a79320ab5b39f6243af6af4f0b3a856761c7e34de92f24d7cd18", v: new $Int64(0, 6913) }, { k: "aba3b6d4259cad2d96fe81d2a3f6d55fb969756fec7a97356d49a71dc0611a08", v: new $Int64(0, 7402) }, { k: "aba7a51daadef5f65482e9a8dfd40d9932db272e8ae88f974fc38692c9b1f2ef", v: new $Int64(0, 716) }, { k: "abaa1a8c57d5584ddc932124e36d87d86f50a2466f75d897801a4b78991282a0", v: new $Int64(0, 1304) }, { k: "abac80fd6767f1819b76d8c94cdf47ef352e2920290b79d0d8efb6931a8d5bcf", v: new $Int64(0, 3178) }, { k: "abae8769cd5560fa9d9f099cc2b0cd3f4c20b4333aebb104e95078b14a163193", v: new $Int64(0, 4531) }, { k: "abbc15ba9c23ef15486cf5eb06552dfe5a148f1b5751d96ecd452506e6b014ed", v: new $Int64(0, 7416) }, { k: "abbd78a34125f3ef8620222bb2d6e8ba4833b0d70db53bc36c9b2af54ddbe69b", v: new $Int64(0, 7567) }, { k: "abc636f12e779cb1fc23f23c36c8d7019fd87f518afefce41053fea4a6c7a86b", v: new $Int64(0, 8698) }, { k: "abca6d12d16f1dea8fa2653dfd43f44c89b9862dbf901a0755accf739e744b71", v: new $Int64(0, 2567) }, { k: "abdf1495407ebb8f8d279fabe05e8d78f93d4ef2bb8b1670ab8f458c6739c6af", v: new $Int64(0, 475) }, { k: "abe06ac4ee0f05e1f601d2cac54ad926ddf896a81249d25e1a44f2f6f3357bed", v: new $Int64(0, 3231) }, { k: "abe9832b7a219c98af5aebdafc4345678bd09f287e478e70f542a334e74187a1", v: new $Int64(0, 1494) }, { k: "abeb3d848ca6cd9f3051a19276128ed3307a3d319fc1a7aba704c6f748e0437f", v: new $Int64(0, 9539) }, { k: "ac015ee27ecadd8ac7d27949b498a7636eca299bbe64b6752d649cb23dd5dfd1", v: new $Int64(0, 3239) }, { k: "ac087dc0455880de1d6b9c491ea0cd85291228181d9ce14c5d2c53f684e74ca2", v: new $Int64(0, 9963) }, { k: "ac09ae006d66a493bb0c5bf70d04728896f541b4abb8661ef77c0932252459d4", v: new $Int64(0, 2854) }, { k: "ac0b8e468db373c074b03b8a6ad239558fef8876a971126953cca357847ec0ac", v: new $Int64(0, 4714) }, { k: "ac120bd378d4d4ee1ba917ac2c286817ceb9f3375b1d7f8b7937ef9c71c96f55", v: new $Int64(0, 354) }, { k: "ac13fb4a37d173243b312f5ba502d7b3646a9e1a11d0e250f28ec440c06a8b39", v: new $Int64(0, 290) }, { k: "ac233dc308139df9a22e26ba6f9333030f0e25a3b4f17a88ec9c2fe581f4f2fa", v: new $Int64(0, 1564) }, { k: "ac2e3818646970045f196dd4966fc14bcbb1e2773555bae8ae6922d46a895979", v: new $Int64(0, 9004) }, { k: "ac35a43a2e43f3c000fdce8275534a7c08a8915c52af9e3edab074635fab056e", v: new $Int64(0, 3799) }, { k: "ac4608d66108beb1a9337bc77b9f2cffa452db734c02226e342b6f365c0b738f", v: new $Int64(0, 4050) }, { k: "ac49c74aed9b7a09ece860a2db540848a7de2005ada3fa07c8ff7efb114684e6", v: new $Int64(0, 4000) }, { k: "ac4b23cd9541ae33bcc5ce32cdd39c260219832d85febce1c32d7c7db322eda7", v: new $Int64(0, 1258) }, { k: "ac4f59022f560e0dabbcf605cebcabf9689cedf9d2fa46fa9cb7a4708ed5437b", v: new $Int64(0, 2777) }, { k: "ac5597f38b7710315903e159986a10b2e68ff96ec35c5860d18973283cbe35de", v: new $Int64(0, 1049) }, { k: "ac5ba3a8dc5421db6a8310a6b4fb158a462e148abd096ba3ddd87934a84992b7", v: new $Int64(0, 4910) }, { k: "ac5c601ecad99d9dc542e960480779f10545bb5cbb1fed341269667c18d0a7e6", v: new $Int64(0, 347) }, { k: "ac5ecf400e7799214895295103149dc4aacbea4fd05be293ca90350884ef8d61", v: new $Int64(0, 3497) }, { k: "ac5ed03338e6f2054f7bb1b8e97e8971d9828a1c38548bc99cee880b881a2a0b", v: new $Int64(0, 8172) }, { k: "ac6792eea956e00a57d758d8ecb407eb94922dbf8195edb7d9a03daf3c323260", v: new $Int64(0, 5943) }, { k: "ac682554bebb17a6e8a486dc7261c5221820a150ecd60db1b5c94402466d7882", v: new $Int64(0, 2997) }, { k: "ac792140d527ef4de16ab8efb4043cb898bc85e47669e2060a11a142d925c61e", v: new $Int64(0, 2932) }, { k: "ac7da111e5e6379e5a7d2744a67c3e4d41bff8734108e15ca2e73c141e76a91a", v: new $Int64(0, 848) }, { k: "ac7fe14451a6565f82c7bb6bfeabdb2591667d3079a5a31a6616d886a85793cc", v: new $Int64(0, 3683) }, { k: "ac94c1320abff51cafc428e33c4d62c426c07ee5336038e295ea29c304557252", v: new $Int64(0, 2900) }, { k: "ac99f480c55ceb627693a4c0337b903ab9bf9acf6650d206fd5c13cc53f7fbc9", v: new $Int64(0, 2841) }, { k: "aca677cdf49795ab6bb9bfda4aec8b35f0e560e4ceb473a588639fa0dce08509", v: new $Int64(0, 5111) }, { k: "acaaf5dc4cb1be83ca30a4ade20f93053935114a89ed43cd77aea639a6fd1a43", v: new $Int64(0, 7262) }, { k: "acaceb6821013d3515b99052292720668c974f58efacc7ae3bbc27d47a3d940e", v: new $Int64(0, 5628) }, { k: "acb3c8c484922e66a139a6d4dcff4b4fdc15cbca1de9874d4b7fdac4de2fbe76", v: new $Int64(0, 7005) }, { k: "acb66cb9a6cded49f4165e163867ade95d35541cbcd7f04cfdd91193ae810836", v: new $Int64(0, 3404) }, { k: "acb72fb095d2123492380c2afb9bfc962455e042f3031299d941e57f2e1674e4", v: new $Int64(0, 9427) }, { k: "accb77a92abba9735080af527806df53d3466f595d46e1ee66fb6187a82c8617", v: new $Int64(0, 9523) }, { k: "acde332a10632e65321a58470ff67733a59d3ab01b1b680f5dc3e8d79a8cb19a", v: new $Int64(0, 8502) }, { k: "acdf709dbd498c383fcb6d56462991e3d5c69110ef68ee6a6c1e8631a905fa28", v: new $Int64(0, 3021) }, { k: "ace4b273c8da3481fc6ee299f9166239f1e7ce47484d70483266a19e06e1ee06", v: new $Int64(0, 8547) }, { k: "aced8f43eae005a2aa85a5ddd2022066f7b8dd30da003446c3459d2904fc333e", v: new $Int64(0, 7630) }, { k: "acf855f302819fc6f940d2f852e7eb6265f3436c6395fce3f93fbdd740f293ae", v: new $Int64(0, 5988) }, { k: "ad09d36bffa72027fd4574c02113d442e4c88bde04e3fcb43fb1dc81effc4ac1", v: new $Int64(0, 6168) }, { k: "ad123edd769bf9da5aaf33b2ebb85329e1b08cb12bf5dc1808c755d4d21a1e0d", v: new $Int64(0, 9757) }, { k: "ad1369b05d4a66312323e78573c46c3e6e43307bb7cfc17ad1bfe020b6ad1e10", v: new $Int64(0, 7693) }, { k: "ad1d4c0ef033b3a478c4fa4b85b13a00553a61f5b505f02e409a99fceaa76312", v: new $Int64(0, 190) }, { k: "ad1e5b3f30dcd7f0d6071ea72fbd1691b2681791b8cedae1b2a5c049d5dea2f7", v: new $Int64(0, 2293) }, { k: "ad28e8f84a03b9f2992a282a0c71640369c0a58b6b9b6b99acd8df83b2eade9b", v: new $Int64(0, 7972) }, { k: "ad3513268a23d301d4a2249d78c78d4d30d16f09e6fadcef81759edac748c806", v: new $Int64(0, 1696) }, { k: "ad42d1ddd36b9bdc864ec9c0cbedacfcb5b74161be4ae2f7a953d013e16d4ebd", v: new $Int64(0, 4333) }, { k: "ad4a603bcbb89d85d73476643b2da1c6ddd2d0c144e5a51c68f7d8c484fe4366", v: new $Int64(0, 8814) }, { k: "ad4d3e992c1fccc164ed717e8f979341507ccc37fea1ee59e6497b8629a9c537", v: new $Int64(0, 9877) }, { k: "ad50a9e86d96ee3d054dc0037e97d74b939a20202a46cb5fa32abaabcd2dd740", v: new $Int64(0, 7941) }, { k: "ad524f0ef685c9d94551393266f92c0aebfbdcf9d3470bbe041f16ec4cc2be61", v: new $Int64(0, 8878) }, { k: "ad5a85dcf9e8bf01858ade1672517c01354b1ba82eb33c1ef907dd041cead829", v: new $Int64(0, 7202) }, { k: "ad5e5810b8ff7ce30c04e34ddbae028f94695e5c971b8b04294bc60101a07ebf", v: new $Int64(0, 6306) }, { k: "ad5eb0c8bd592c88c654ae30aacfc51442a743c38e7ecc74ca1a1e94e5072132", v: new $Int64(0, 1239) }, { k: "ad6710844d58de147bbdafc550e0ea828071145acd53fe42a8e1a89230a4daac", v: new $Int64(0, 2386) }, { k: "ad6db193a7fa62028d65d6c8bab5661f0dcae3718e33621ccda41374fac6f010", v: new $Int64(0, 3417) }, { k: "ad6f6892064187baf0332352b8cf2792121d5cc35f72a66bf5021ae0b6f3ae1e", v: new $Int64(0, 2823) }, { k: "ad8e160797435a34262fe69f058c58dd959a9a3e58cbdfef58ddab189d4ca49f", v: new $Int64(0, 9776) }, { k: "ad9012e16887455c16416d81fa491e4cab1d761de85653277b6d63b22e395b18", v: new $Int64(0, 2796) }, { k: "ad9444ada9012dc49e67bcdd8447c564bb3c9802a15147fa521fe70c2fdd723a", v: new $Int64(0, 9287) }, { k: "ad96bd28cfdd3d6eba9d3297922299b0756e5af216aa2da106d0be3d746f798e", v: new $Int64(0, 2153) }, { k: "ad983e1a5e6417df9f043dd70e29b149724c55d3528e151afcbdc757507168ae", v: new $Int64(0, 9476) }, { k: "ad9e8a1b0a3c539dfa68706b29776f4033ed3e3ee0a1fd4f38fac896417e6c4c", v: new $Int64(0, 6213) }, { k: "adcf073263d9191e3413d0858aac3142602b0492c6affb83d5e7939162dabd44", v: new $Int64(0, 4581) }, { k: "addd434dc20637c313d9f74398e8c82e72856ce8f6ce5215a315b70a8b7091d0", v: new $Int64(0, 4281) }, { k: "adf6c5ec2a79f5785ee1a17a623c0e7fb74328db81bdf9b4c17a05997c90272f", v: new $Int64(0, 4887) }, { k: "ae02e556150d7e6f13b4d9be71795a7063cfdc8041c4f98fdab6315f42609038", v: new $Int64(0, 6205) }, { k: "ae0778d203feacef1784ae7a7233a249e1fa12b28cb1220d8d6a21526e77c0ea", v: new $Int64(0, 4923) }, { k: "ae0f7fa5d2d321c92e6d129b50da194e7243ef0a5fe77004b3e458bf8b3b6a72", v: new $Int64(0, 2210) }, { k: "ae11ba6f4bcf5675c78d10f630e7fb02591faa63de786fcd34d72bf18386115b", v: new $Int64(0, 5422) }, { k: "ae174c6532ac98fcb47c4e536cce6987c761ce8a9c31afa003bc6ddba2062e3b", v: new $Int64(0, 3697) }, { k: "ae180d4ff7cbce6a197c743f502f10e5f7c727e0989dfa5ce7014ebe68174151", v: new $Int64(0, 8363) }, { k: "ae255fa06a4b94f1d991094eb91a990a22dd575830e34fdac4da7115534e0d8d", v: new $Int64(0, 4974) }, { k: "ae2b89bb928ff189948c0c321f6fc2b35e1f5a82480f9e11f5c2825868f306a4", v: new $Int64(0, 8202) }, { k: "ae2ee895ddb7da109342815ae985dd39d0269c85f11c7dfe21244440e69c9a32", v: new $Int64(0, 6911) }, { k: "ae331098bc2182233553fee40ceaf3e0bb0785d5fecbf86db3ccf5db21abc7e3", v: new $Int64(0, 8278) }, { k: "ae376443e56603c995810790e128bf948d60a4942a501b2ffe0853454e8abd65", v: new $Int64(0, 352) }, { k: "ae3fde869d7a2511fd08d45b1591b68723a8527ca924c5c44069744e5ed75a7b", v: new $Int64(0, 4921) }, { k: "ae43316636fc25fdc7ae28acc27b55052b6bc6b147efba88f8e97ec10a5c08dc", v: new $Int64(0, 9244) }, { k: "ae43f567394f8eaf56852a08bc65efc6ddde4eb9b9b326605d34eeb345e3610f", v: new $Int64(0, 9795) }, { k: "ae45310cb59cc82466eba330b1acfd8c7a2facc848273ad45d28527d1eb6a095", v: new $Int64(0, 908) }, { k: "ae47ce95009ecc8dcc9513fa30aadc68c5a34dfd5af5f487fc08d9706336f333", v: new $Int64(0, 1116) }, { k: "ae5991a403bebd3dee96807584d66dc2637c34170ef89ab46edd1a83273e33c2", v: new $Int64(0, 75) }, { k: "ae71e4611f0e2b0e8f63c93e8b001f06961825f01452f682d5a676a8bbe095cf", v: new $Int64(0, 7698) }, { k: "ae753a6ce7a74afcf47d14b8cbd97856b5d985c5504bb282a444690a95a6e4c2", v: new $Int64(0, 7357) }, { k: "ae78e4bf438fe024f6e0812988fc5df1fba33c0e41e227ad3708d1b687b25e6b", v: new $Int64(0, 1922) }, { k: "ae7bd03c83350ddcb36643580584f21d818a2edce148940d5008cf89f950c8b8", v: new $Int64(0, 2230) }, { k: "ae7dc3bc464dae5fc027d9b10a2beaeb45242540c4bd8de72afdf86619ee24e4", v: new $Int64(0, 9337) }, { k: "ae8424925f72498afcba2d4ed19ab304d9862033c92ebc2cb0e6ad97673b835e", v: new $Int64(0, 3306) }, { k: "ae9c68daec01a2312e291478b76cc7bf31fd612477bf44b0adb0f963ada4e5a9", v: new $Int64(0, 5238) }, { k: "ae9f3827d0829bf8da873094de9f78e059bc3152cd8bd61dc4ea92d166fed4f5", v: new $Int64(0, 1588) }, { k: "aea077f7b43e789be6262e7027cc98ecf371717c7bdc49a96f96139cd4413c22", v: new $Int64(0, 615) }, { k: "aea47b677870fe9efca1349a40552ab857426b91f3faddd76323da59e09b33ef", v: new $Int64(0, 2137) }, { k: "aea8cb5d05bc78827c2dbd979c87d1f77dc90db3ebd37f6559431afee0273c7b", v: new $Int64(0, 7900) }, { k: "aeb043326d1f3d0eacc66bb763263bca0a5f388fe9c26713a14a7a83651725a8", v: new $Int64(0, 5250) }, { k: "aeb14db3d7c29117edc85bfb1f678bf12e303ffecc1955b46ec9159097445915", v: new $Int64(0, 538) }, { k: "aeb6555fd75aa5d24844b732cc1f94a81d403c6e1aad581d3873a89139ad8c1f", v: new $Int64(0, 6719) }, { k: "aec3d8cef3a84bbfc4da30aa2aae0d5f04f865357f0fe2bf74bbd064c29994d6", v: new $Int64(0, 5855) }, { k: "aec499494e4503fa77879aba645add54ac78b2b0bc580a60e805f09b6dcb239e", v: new $Int64(0, 7656) }, { k: "aecfcb2a2b35b5024d7084fd5ec7b9ed9fe3a63214d0e07247bafd7eca7f1922", v: new $Int64(0, 1293) }, { k: "aedadf7a03e74dfb3c0052512e1b6eaa65143c6fb1cbde4fbd8404ba46f4ecde", v: new $Int64(0, 2032) }, { k: "aede9c053aab69359a36975027ff2a9dd1fa2ef5137296e52567d1ea1fac5e64", v: new $Int64(0, 2889) }, { k: "aee3d42c3c7edea9f2830e5f622e3e24ab35d60911a5ec80d1556d9bc1036228", v: new $Int64(0, 9819) }, { k: "aee975859ca4fe04a69adb2bb528a49688391811283e1c1c614d56ddb4187844", v: new $Int64(0, 5625) }, { k: "aeec2699a083135b5f26b2285aa4aafdef6cd6aa12fb7f4728c06dc5b60454b1", v: new $Int64(0, 7657) }, { k: "aeefb95b5caa77135d9ad543777d70a5734b81c97e9da23f01b3fa48ac5afde9", v: new $Int64(0, 1131) }, { k: "aef16f53537003545266a8066d51d5a218a66c5ec074b2b6e01006bf3ebf7dd5", v: new $Int64(0, 8871) }, { k: "aef96f95e1d718a9c06c8a263c604d16b9305138fd238f5067d05bc08874ac20", v: new $Int64(0, 5200) }, { k: "aefd9df89447ce501a580b13cd229568e9a3e3b22e04e3bda103ebb7fbbcc113", v: new $Int64(0, 7261) }, { k: "aefe8f6d105dc5d2b4a91e1d6a9fff9ad2180c9cf5483a7c819dd8fbc6989a10", v: new $Int64(0, 7013) }, { k: "af0504e406e7692da19db3553fb673fafcfa2edc94140a494a6d712f04dfeeee", v: new $Int64(0, 4424) }, { k: "af0afbaed100a1e41980aa66877a1eb872c2ca3eb8d0310ade4b6b4264961efd", v: new $Int64(0, 5950) }, { k: "af0b48c47efe4362ce2da4b518d340701ea30e11545d1f6aede069866bd9a58b", v: new $Int64(0, 254) }, { k: "af0b68c44e44a3041eaab34430d924304ae3dcfe79d3df788e7f37496baa82cb", v: new $Int64(0, 9440) }, { k: "af0d875a95b99a0f6be23210b7165c7af07f7262bdfc970938629821f66bce91", v: new $Int64(0, 9614) }, { k: "af12d2311dd7ffaae14455cc5839809dcd0443f1c7069680b5f49e8d8dc978af", v: new $Int64(0, 2462) }, { k: "af1a24ffb4e02b8640db7188c214562795f21b2c27210e7398c58f22cf6d535f", v: new $Int64(0, 3442) }, { k: "af260281d1f3152325cda2d6dc05ad8acdffa0466fcc7e4859efa4a559b2b8ad", v: new $Int64(0, 5700) }, { k: "af261d77b39f2b7527306d5f78aa3553e5aa835f8b9cd480d0f29283107a48ae", v: new $Int64(0, 7464) }, { k: "af2e1dd16c599da0fab670c4b2ca9d9a148cc0e47224837f8f42b68e0ef85eca", v: new $Int64(0, 5181) }, { k: "af32c86e1a97f6796c2310e9e69ca0ba0330cae469a9fd9879fbe9e5b0aa368c", v: new $Int64(0, 3674) }, { k: "af3b37ad2a2840c0fea27aca57b9b460f30aa02f4806e280c1300ce5e937b3a4", v: new $Int64(0, 9921) }, { k: "af3fd79556ade0e4938588caa64915a7573190300c0cfd8756ceb0f3d4699da7", v: new $Int64(0, 2076) }, { k: "af440204698f7f77b3beba24331ffd847777712184c635b8b75c36ac4ea7feed", v: new $Int64(0, 4545) }, { k: "af572f2bb30d14964bfa002102ae826d868b66c74d002e8fc5a2eed24799b1ff", v: new $Int64(0, 1527) }, { k: "af592b54b03cab679af5d27171f69944c898c6d949d8a39e47131dad0622c166", v: new $Int64(0, 5092) }, { k: "af5bc09dc19e34eb151f597525397347f022f6177791bee5a3735562c9939194", v: new $Int64(0, 9510) }, { k: "af5f4ac2a37fdf14a014cad2da30fcda91f1ecf525f8578fddabece6da4d49ee", v: new $Int64(0, 614) }, { k: "af62d2ce4e1c7ef38e90743a965c923851655242ef2b797fde7cee12f65d7e96", v: new $Int64(0, 7154) }, { k: "af69d93622efc4d7d11a61211a0fb35768d5d8b312944928095a5901af60095c", v: new $Int64(0, 9602) }, { k: "af6c26419be6235239ef37a3afea521b94e78d4e582ebfdd07758278800762ce", v: new $Int64(0, 3289) }, { k: "af74ea00b0fdcf25abfe46af69e3d767d914ae68fbc0d4870a556311f508acf4", v: new $Int64(0, 2015) }, { k: "af79fafb7c6790c07a331fb0e87a43f99291512af7683bb784694c9f399560da", v: new $Int64(0, 1638) }, { k: "af8921cdf4e8021c7b5089d3034ca946dddebdd152cda580cfa3137ba78423f8", v: new $Int64(0, 3519) }, { k: "af917e1e8fc8dd85161a705898d06409f169ac8c964a2665208102b804bd627b", v: new $Int64(0, 8785) }, { k: "af9e86177eefa5e467d2d6afe940e87e4460af5c5b3357a9e424ff8336466b01", v: new $Int64(0, 9548) }, { k: "afa17d750bcbb4b70132db3a1cd9c06eef44156e2bf7c442427d997676d93a32", v: new $Int64(0, 3585) }, { k: "afab3ce9bf350ed111a2b5ae3699f54c828706d782c709a558c471f297d1d390", v: new $Int64(0, 1450) }, { k: "afacdc43c1bcc0017934a96c8fd1c3f8b84addf0b036436f4cf42002c5ecfc08", v: new $Int64(0, 817) }, { k: "afb5f4fc930940c156fd337ef283de4b7966bb3075578292ea6d469e61873fde", v: new $Int64(0, 970) }, { k: "afdf86d611e8e915186c8bda7108bf1f23ccd89a30885a92f145cc6abb02ee3e", v: new $Int64(0, 6105) }, { k: "aff07e2dca0656eb6b5ac00ef45e837970a508a5f179e577780bb79e8fd7a3c1", v: new $Int64(0, 2357) }, { k: "affbbb292a22dc27b95f1763c47192a3548eaa2121a86614640272a5ca395341", v: new $Int64(0, 6318) }, { k: "b01eaed88ea634952996ab535395bd3a2d6445cee810848e4863caf796d09531", v: new $Int64(0, 9788) }, { k: "b02894f490203fdf15523e8582f22b8a1f98b2f14b709fd43e515c24ee3f7bdd", v: new $Int64(0, 3639) }, { k: "b02c50e9a57474c63ed2a6c997db20e54017379bd34863e8d57fa380749d1725", v: new $Int64(0, 9761) }, { k: "b02c5bb10f882fab8fa41a3a374922c55006bc540e5f5ad2da71cd418eed6d27", v: new $Int64(0, 8434) }, { k: "b03cf8adf255d27ed663b9ca217c961c197e0877cee5f84521305a40e67da8a9", v: new $Int64(0, 4789) }, { k: "b03ed935d1de5bba7f51574b9fd88239083116ff867ee8562ae990c487579623", v: new $Int64(0, 82) }, { k: "b041638cc97270a62b87ffbe1ba8069002601acf40230d766ee5d88b92e79495", v: new $Int64(0, 7408) }, { k: "b04aee4d9cc5529ce7976de11bcbfb01279747884c4280add6be75c7d2baf47d", v: new $Int64(0, 3864) }, { k: "b04c8695c25f80784b00b33e6a5332ceacb2e69925fe0d9f906c7751cdcc9bf4", v: new $Int64(0, 9181) }, { k: "b04d4a382ba54741f0469d5291687fd60c8eb7128e1b08e5a231c6b778d8be93", v: new $Int64(0, 689) }, { k: "b0525218985658bbab0547fd67d92a6b7ab5247f28c540a3834a8f6523f95be6", v: new $Int64(0, 3530) }, { k: "b053bde8dee35f05f3851d2ffdbd207de3089f23db0e869083c2846982c01be1", v: new $Int64(0, 1837) }, { k: "b05aca6bd337e5e36cc5249b60c9c261f3f7844c3efcd5ca0f7cf688cdbea238", v: new $Int64(0, 2274) }, { k: "b0725804484057c43b4d2d9552d6df05fb2f3c37c89863d7a00ac2e39bba160d", v: new $Int64(0, 9584) }, { k: "b0758e3136eef00a3564193b3a532863b994674859e2d825caee8e0dbf909909", v: new $Int64(0, 7355) }, { k: "b0764ebd9754e9bdcbad4fc2cfebb7cba8b55551c4783a9bcea6e7a9cb2a8a32", v: new $Int64(0, 8450) }, { k: "b07daa31fbb8c60fbd71fe85748f136d4d0d86b0215727002080a43006c07050", v: new $Int64(0, 114) }, { k: "b0918e47db42376ee05dc4e07075e1678d1c4d24b3d27ee602a9e66739aea7ff", v: new $Int64(0, 9381) }, { k: "b0a18ca0a4cdb6095d2f1993dd2f981e5f7d5e0111e3291a706872bcfcb247af", v: new $Int64(0, 1801) }, { k: "b0a826a138078a5bf9a6c84a494708b97e328b42c22242bc448b35c96f93e732", v: new $Int64(0, 5640) }, { k: "b0af826a236a33d1d08a375c296af8d2517798cf845332131efc96220fcdc65d", v: new $Int64(0, 2721) }, { k: "b0b4addc80ff94470d6768654d3d0709c5e6be27c7a36bdd63ebe3b29dcd74ed", v: new $Int64(0, 1612) }, { k: "b0c38e539535268f864696287014637cac75dde0dcbe228612fef4510a064366", v: new $Int64(0, 600) }, { k: "b0c3ff5e85f7deff03e3d490f382d1f317650bf3bc77a14fee2f663785d4eece", v: new $Int64(0, 9368) }, { k: "b0c7e9464e5473391b2671ccc1f283c8d47824eea8c268a5d9fa83efa8fd955e", v: new $Int64(0, 6806) }, { k: "b0cb65f0a3248c995eaa4ac5b8696f2663a2f7c69bdfb4522f2b88b06f80cb4b", v: new $Int64(0, 8006) }, { k: "b0cebfbb9aa6fae79a67593d7385c031059982915dd1664b944b96537d339801", v: new $Int64(0, 1834) }, { k: "b0d490361a7bd657eb4d20e102e0037d8e0fdc61bac9d387fe6fdc6339fb5b93", v: new $Int64(0, 6152) }, { k: "b0d8faded50034ee548cb303554ecd81da39282e0d810399512d323c67368d34", v: new $Int64(0, 7157) }, { k: "b0d963a5e700936d1e0bb5597ac6b3b9507f46b7d8f8d14083d7697d8fad804b", v: new $Int64(0, 5155) }, { k: "b0db14676fe463e96ba2f364db50ca353c86b42f2e4f05d4a565d7515ff369e2", v: new $Int64(0, 4178) }, { k: "b0dfe8146d8912e8f38152093567c2e2d516beba06b9eadbc4b998d396cafe0c", v: new $Int64(0, 1618) }, { k: "b0e1d543025e67104144e5f0a0ec4d9126bb6e05da9f6a8f0abc948a5f97da21", v: new $Int64(0, 8914) }, { k: "b0e595cdb112a1c8385d9349f6e0c30619ed05c8387a45a723b4116f817e95d7", v: new $Int64(0, 741) }, { k: "b0e9978248aba757189252c15e42eae78951fdf97b34ced6c43056814f25f905", v: new $Int64(0, 9253) }, { k: "b0f12ab252cd213248dad577afdd6cb8c1d50c9f5d3da54a04cb2e60b81e7b8e", v: new $Int64(0, 981) }, { k: "b0fa4a8a7727edf0db3f11cfc20fa30fd6e477f5bd4dc5c411e3d86bdbc861d8", v: new $Int64(0, 4380) }, { k: "b0fc6e431f54bb8724ab1f2c6f97255e58e71a659438ff8d7b43e70558f1ca80", v: new $Int64(0, 8639) }, { k: "b102505d21559623c89d16d154f276cd6cf9bb62044953024a71f898fc48af96", v: new $Int64(0, 3439) }, { k: "b1050a0616c940d5e8960c3e0bc01138b39391510ec48b233fa4e8cbd2cbc659", v: new $Int64(0, 7873) }, { k: "b1061356d1f47db7c9da6ae56435a3312fb3e3e66caf7e2f335f91e299616f2f", v: new $Int64(0, 1903) }, { k: "b10a38b5c0f28d007aae8fa6cbdc0bfd5ac5734f3f11519b810751ead1c54273", v: new $Int64(0, 2970) }, { k: "b10bd99b5db99100e175f8ae134082d7231f11e41beff7e45e33a8b2731abae3", v: new $Int64(0, 9837) }, { k: "b12079688767a05086dbba95f2048aedfd5ebcf8151755c708ee278ab66ffd25", v: new $Int64(0, 8682) }, { k: "b129be43a3b806a17efa5c7a969b967f37fdcb9e4bc642d851eff7fd74386d19", v: new $Int64(0, 4064) }, { k: "b13fdf680cad6bb958da7c90bf769f570a3434dca8bbef04c104a0bc2b420d3e", v: new $Int64(0, 7729) }, { k: "b1461f227a835f7202e62a55e994351ac42951aa7bf23c59ed3d501e72edf2ca", v: new $Int64(0, 5955) }, { k: "b147c558f38d7aa1e7abde1adc3e4827e139f6366273035dc6d9c6d39be404ef", v: new $Int64(0, 5419) }, { k: "b15b1402e1755725f937f0106e89c296e38e3bb58f3096951289e08c37800f47", v: new $Int64(0, 2281) }, { k: "b15be436e11b2a30e4643b1a9c4eadfd7d05c79194a0bb367074067e8943cee0", v: new $Int64(0, 3210) }, { k: "b15e8be12a8ececb220d815f21452c5a74efc481dc391ba0beff6291b4fed8df", v: new $Int64(0, 456) }, { k: "b16ef521ac159b265900793d0712fe90c93a1a11b2b66200bab6ecff091cbd49", v: new $Int64(0, 8691) }, { k: "b175bbd350372f48586a18ed2c6771d70c6de2187ec21a42abc0b5481e286560", v: new $Int64(0, 8344) }, { k: "b176043b41f1a5de80fbf8fdebad919ac9c92b7013af105701e1fae6c8328da4", v: new $Int64(0, 3692) }, { k: "b17ce1b14c6cd29beff2b1be7c8fc3a112ee74aa3c4a30c55ff9f65025769068", v: new $Int64(0, 703) }, { k: "b17f14949237aef42f158b064df9f21dd3089790c53a368d7d7b581f7bad9a4a", v: new $Int64(0, 1268) }, { k: "b182a5acea99b809a12d73264990306c54291ce459a67a2ded291b601c76c5d7", v: new $Int64(0, 3201) }, { k: "b18dad2d27e0e74810afbdbd24ac8bd4e181d5772987216de1fcbf26e25767f1", v: new $Int64(0, 1808) }, { k: "b198eb611ab7f9a5a75f1eab8721d90fde1d7069b9c2326c3a54ba65f705803e", v: new $Int64(0, 4584) }, { k: "b19a9a1dda900d8346341551c3fd1d521df7fb93467bdaf009e79aa0bef95c9c", v: new $Int64(0, 6077) }, { k: "b1ad93a939dc59083da0fe5e481d157ddaf3b725bc3f5f7d167363f320f11a9b", v: new $Int64(0, 6998) }, { k: "b1bb8522210d45471714c0421682e2defccaab512f856e3d0e748bf753839e95", v: new $Int64(0, 5864) }, { k: "b1beb114e7f378aca3f09dda1fa74075b96fabf5fd66c73c2c8d9b984bd70681", v: new $Int64(0, 2676) }, { k: "b1bf09e2a483d24995abb5edf19711fbfe969b485a249982bc77a5858ee9a614", v: new $Int64(0, 50) }, { k: "b1bf91741ed97026536734fdcf860d70193a29528456dd33b3391044cc901229", v: new $Int64(0, 1463) }, { k: "b1ccbcee78579afb09df1a5d92762375e0b9c7ef58e33cef78c255c1abb73f82", v: new $Int64(0, 4137) }, { k: "b1cd5e635e76b2eef5ab0238750be2b30216bd3e2bfe6a9c55715f84290b4d85", v: new $Int64(0, 1145) }, { k: "b1d4cb0791d6bda5fa884ed7712ec8dac6f9e9b260b515273264850128515f9e", v: new $Int64(0, 3906) }, { k: "b1e32edf56fcd8b05cd330f1c318ac457cc3b4062c2a1e0edc3d35dd1fff36cd", v: new $Int64(0, 1292) }, { k: "b1e97b838fb66d651612c34a2f1315f51119c699f8aeb7186c10e6bb28554ed6", v: new $Int64(0, 9344) }, { k: "b1eb800b02d400b009ead817259a6e02f5137cdaf06505906341e3ff2b46d812", v: new $Int64(0, 5409) }, { k: "b1f324cc0b8386968a7eae2bf1b00f1e82aef2e83728d019f1f04c618b64a2b9", v: new $Int64(0, 9665) }, { k: "b1f9b589c56b1e239b94fd7a1b831a5800503156c297ed5bff60462f0e756e3b", v: new $Int64(0, 9423) }, { k: "b2067f9a4d6b28366b921d25693c4accd3fabed8e42e4948df077e3b4b598351", v: new $Int64(0, 8453) }, { k: "b209d2e25451d241be4098245d9019d80abf85f4de2b117106c31c193d6e2064", v: new $Int64(0, 6055) }, { k: "b2296140ecf0fbaf4394e40912608cce84398f539230f713315c7f245c0d7362", v: new $Int64(0, 7022) }, { k: "b2338de90cd07da78e9a1e75feb90c3cff1af9fda31f78b7cf3896d5ab349486", v: new $Int64(0, 492) }, { k: "b239743555eb375e4f0a3d8d942a3deebb7085b955d20976c512740ecd19e57d", v: new $Int64(0, 1761) }, { k: "b241f89402838f634b887d9652d88ca5a9e120c0e6ed8cf7ac524789719da14a", v: new $Int64(0, 6451) }, { k: "b251b84a08c5b09370e9e23db4cd5fe0bb02ac89f851f122b82be5096b1dc611", v: new $Int64(0, 3883) }, { k: "b26013299ca81b8b003284c5014a54b02f23cc47fc96d553cd6b3a9382fd7808", v: new $Int64(0, 5487) }, { k: "b264b185faab992b749cec33c2e61b931a2fe785b7edf9e2baac01f7fe53960a", v: new $Int64(0, 6054) }, { k: "b269c309a2cd53fb9c5d041f8ddef9dfa934b942aaa211407f59b62beb676f80", v: new $Int64(0, 1096) }, { k: "b26aa24279e940364b7e9c55f2a2846e0ff1035417b8fd6386e29e8de8f199ed", v: new $Int64(0, 4992) }, { k: "b270f188a0636ad4750f001a830005c06a0217e410bdb23735f677d391f5d9ba", v: new $Int64(0, 7922) }, { k: "b274682f990ca2ca4a8589ec65ad4629bdeb39cbfd6b023f9ff80753fa18eb36", v: new $Int64(0, 6268) }, { k: "b28b432660137aa8487b1508a4a1955b3c3b1a923d537dce7deb387b61c4c8b6", v: new $Int64(0, 4570) }, { k: "b2917c29fcb1ce314ae973ce829ded26bf6ade7e80ea2f7ba73d076b5f5f3eb7", v: new $Int64(0, 9506) }, { k: "b29b126a2a5a7c42d716e0163335915f58566cf48e93d634b6fba4d0b5f67092", v: new $Int64(0, 58) }, { k: "b29fe1fc03d61cc4b48b878413b1911de38ad18283aa720413029eccc8ca80e4", v: new $Int64(0, 8815) }, { k: "b2a0b5c85fec1fa400ec7099df31581744272db6e77cce0f24b6c00898f5174f", v: new $Int64(0, 6094) }, { k: "b2a276144441ca28201019608fbc8e87b05a332184cb8d31102220269d6be8c1", v: new $Int64(0, 6478) }, { k: "b2a36d3c470115c84f5f482ed2d9d23568353fa7986265ab125041cb8d59cdbe", v: new $Int64(0, 8658) }, { k: "b2a5fb436279c95244acaf972a803c07562f49311f9d61dc7036bd84f0e4baa0", v: new $Int64(0, 2316) }, { k: "b2ac82e7fc539aaf776e362b0f5283194364dd41ead96088fec9762886a686f0", v: new $Int64(0, 8776) }, { k: "b2b2f296bdf82d15816b5f0d8d6edbc23130b3ecd7974f29d12d18d784ba8623", v: new $Int64(0, 5853) }, { k: "b2b7a0e803d76f5dbc313be334f69542f6e63f4215866a112ad1df2e120a962a", v: new $Int64(0, 7929) }, { k: "b2bf784c7444b253415c29ecb3dd1f73ff81f2876f24bd4190b0567b64667b0c", v: new $Int64(0, 278) }, { k: "b2cd2d331225dc0d0d63d64e6dfb0aef3f7f17a761decb2909cce2dd3ad74f70", v: new $Int64(0, 3899) }, { k: "b2d315e31d72906c166ab694e5fdf27e0e846a021b4598d1a57ee30b7b7278c2", v: new $Int64(0, 946) }, { k: "b2d5d4a7584b8d657865b7914b19c2b7661caf0a488eaa5386a8e6ef05904b35", v: new $Int64(0, 2926) }, { k: "b2da5e6e02287b7d75c642b53de371b8f074084aa5f89a872431736e43022f97", v: new $Int64(0, 9338) }, { k: "b2e1ffd48e4c012c200845fc0ddc7f939a177bb516d6d31c2ea7515e58476116", v: new $Int64(0, 4550) }, { k: "b2e4f072292ae34fd3a5241350c8f47872a4b064781ae4812d23a775442c578c", v: new $Int64(0, 2284) }, { k: "b2eb5edeb196dff8a99011eae54d1c2408c73ea472ca3a9fdde94e2707170edd", v: new $Int64(0, 7606) }, { k: "b2efd07e90660e1267d1ae8a50a84270e302faaeeb1254c9c578a37e21ef6526", v: new $Int64(0, 9153) }, { k: "b305613c586e278ef2aba98999b68c5e4f357f6af7d37c1db42dc377c313789e", v: new $Int64(0, 8607) }, { k: "b30dd63a9942cc6c8dbca58733410a6d9ab2b7689b6aaad70f220fb42a6f14ec", v: new $Int64(0, 2733) }, { k: "b314ec9ca5d744def99baaad9c051c1dd212bde79b41b4ed5a555e906eec46f0", v: new $Int64(0, 2138) }, { k: "b3167e1b8bd4ab7d9858f81f3caacf60f0f6d4934f91be52ca4ea72885df4d8d", v: new $Int64(0, 779) }, { k: "b31fba787854af590263598fecbc0afe4b711f2b30b99505c0f39092a80887e3", v: new $Int64(0, 7565) }, { k: "b3202db0f0be19a6ffbb491948e9283e38c2e8a76b909c68324885631485ccec", v: new $Int64(0, 1558) }, { k: "b322118c176601b4283694356404b39d0006266cf03803c158af9f8749332337", v: new $Int64(0, 5379) }, { k: "b32f3ccbde241fed3f576376d030ad3bafee410488986e315d7e92e3ed6ffe12", v: new $Int64(0, 7089) }, { k: "b33473558ef4cc13d88736044d357a4dd95a885fb99295dabbed992bd4f918f3", v: new $Int64(0, 3634) }, { k: "b33862056ba6252b6430a6cbebac068b566c35dac268893b063dfa4a6b9797dc", v: new $Int64(0, 2438) }, { k: "b33d16ab000ddf3965e6dd7eb431cbe3c2b689d30ecf2f35971fbe62b9a0b747", v: new $Int64(0, 9786) }, { k: "b344226335b865d84e3dc23698b8ba3b6ec1ed7826a22d06ac38fe07cb3cfec8", v: new $Int64(0, 3869) }, { k: "b3452446e5a9ef64efb831db63c7be82c31860b497f4b1adf3cb95c049debf67", v: new $Int64(0, 3261) }, { k: "b34722542874808625251342faafa116668c60fe41d838d2c6015b072d930f61", v: new $Int64(0, 1513) }, { k: "b3486e5ce714bc2eda0d61220b8b209226e38b6fda4a53b88a2f73dec1618dba", v: new $Int64(0, 743) }, { k: "b355619b161a524e6b6d9edecf71ba7ae1a029b741083f1c083ee87177fdc27f", v: new $Int64(0, 8832) }, { k: "b35b48dceeb8675cd12ade9d75839dfaac4c779d7c073855e65d0aed00637bc8", v: new $Int64(0, 1234) }, { k: "b35ceb0a0acb7320719b6340a849cd81b6c70d383f7ca091012b16f09a6a6c18", v: new $Int64(0, 1752) }, { k: "b35e8751c9d6e3102059586fdacf1d0f05c9ad1072c83e7e4fe801bbd1e056c8", v: new $Int64(0, 9541) }, { k: "b3640a963416afeaf53ee0527eeacc9664ba9d3656bb85dd1e198c4e5175c39b", v: new $Int64(0, 8965) }, { k: "b365d5c5955dc2c9bba49ad9e08fd6cb88cd654c98874f71f7bbacd6c6a0196b", v: new $Int64(0, 6140) }, { k: "b36d718882ce47f468d7d873bbae48fa791a4c61fe7035ebb45fc8296a83a911", v: new $Int64(0, 8720) }, { k: "b36ef834156106e36ed3c44c1f131bb59b318fe5291157c45f2fb508c5a827e1", v: new $Int64(0, 8895) }, { k: "b374c3459a0860f381a95350c090f52ae50a92cb5e0b8f200b3b4c0ae866ec41", v: new $Int64(0, 5821) }, { k: "b37a60ff1530cba39dce4981e1cadffa5b789fa69bb5f11e24ac1e4d6da17f53", v: new $Int64(0, 8774) }, { k: "b37c8d4e1cc37801bc79cd13e0cac9c3e6aa3f7bc564cc52b8ea84c94ec0ff6e", v: new $Int64(0, 9387) }, { k: "b37cbe0b73f9a41706d9231edad04e5a7da860597e57f15c15491102de573f89", v: new $Int64(0, 1740) }, { k: "b3897cd95295fa8d209370c724245c9f82f2d6066b68ea9755e042f7c76c93dc", v: new $Int64(0, 8626) }, { k: "b3909b280809e16e3c7746c177ae7c7d3634d6d7d949ad58062e5ab973b03221", v: new $Int64(0, 1925) }, { k: "b393e1cf45379af0330ea13de44b16471280e5d9338b29f826baac6aa24b00e9", v: new $Int64(0, 3687) }, { k: "b395632008b68d1ae448e3149e280b3e40e8e2b6f200b7d00889ae416fcc4005", v: new $Int64(0, 4880) }, { k: "b3ab17e82bbca592d38c6cd16098341095d87626245f9046164edb1560ee622f", v: new $Int64(0, 4125) }, { k: "b3abbe7cc51d0e02ea90512f911cc64ca7fa96f8b1152a73b1ac3b87ab88f521", v: new $Int64(0, 3223) }, { k: "b3b01da020ec62ecf14646458bc6854574bd64de223d4208da5119123d351c42", v: new $Int64(0, 2853) }, { k: "b3b133d7c06e43a804bbcbf6e6734aaae45ebf51a0fb44a741aeae87469da50d", v: new $Int64(0, 7322) }, { k: "b3c34a930290e85d51c7ad2df3d6d670ad929435a2e039fdc6497e875bc57071", v: new $Int64(0, 5441) }, { k: "b3c705442688fbd7aa007be1ed5251ef0d6010f78400dfe71da042baa96fe4fc", v: new $Int64(0, 1252) }, { k: "b3cab0c3f4b0067087ac5af008a3bec8d1f2483b3b418e1b828eb91f73687044", v: new $Int64(0, 225) }, { k: "b3d3c6a684e957af5c7534f6c41aa693cd3220ddb166c454d64ce7bfa70e2681", v: new $Int64(0, 3703) }, { k: "b3d674da2bab49099d7f006b08069fccf0031824704360b35199c8c8360110c9", v: new $Int64(0, 6543) }, { k: "b3ef74ba09f057760fb34270ba38aa5ea2de5a5d3d130dbc67012bdbc467b826", v: new $Int64(0, 1301) }, { k: "b3fa9de10cb801bf0e064f67bdda746bb393f0d2b7ebbcb0984bb2a8e8f14458", v: new $Int64(0, 2893) }, { k: "b3fcc79b5411c81670ae311ca7fb61609978c2bdd65ff23ff486fffed0e6b23c", v: new $Int64(0, 2544) }, { k: "b3fdc36640dbd97c8156876b4c654deb17d43fff53d89aafb937fbe4b539049e", v: new $Int64(0, 3601) }, { k: "b40198f886beecda497958ca98947af9b1e1e9fd7305af2b171a1fb892f70bb8", v: new $Int64(0, 742) }, { k: "b40341b85364d35f76ca314e1ce5c5f81c791ce4dcbb70b2124ca27606e58a8b", v: new $Int64(0, 5861) }, { k: "b406ccd6ad20c029a869f68730abf3c5843325817fc0452180738106d5f4264a", v: new $Int64(0, 8583) }, { k: "b40a16b4f9fe71cd5c9b5302bde09b6029e7f8d6a151dc560e5596d986dcf563", v: new $Int64(0, 2226) }, { k: "b40b73b919a0256adcfed3a54235f768c71a5490c7f4f17ced23258cca2d4777", v: new $Int64(0, 224) }, { k: "b40cd1a05d8112c3e96b8f8ed8385b5f88f89eff8789c1ae855cf3e7ffb4b8ce", v: new $Int64(0, 684) }, { k: "b41758afe889ff950d0d1fee8a7a8ac58c93903a0f678376a62de20763142310", v: new $Int64(0, 8805) }, { k: "b418cec51443172390ae9c2e2aed17c831c8f98665822ffcb68c1f4409fb556c", v: new $Int64(0, 5334) }, { k: "b41afcf0748102743f8b13e477d27d425f2c1da25a6f63d38320739cec57ef7a", v: new $Int64(0, 8515) }, { k: "b41b19d66f9f339fd1b15841c94c071e6d996a452c8f8d5324e19e155e295f5e", v: new $Int64(0, 8124) }, { k: "b41bab7ef4d616f2c169b7f9e6e377003cdbbfcede7a01f277eac2e2870a9640", v: new $Int64(0, 3063) }, { k: "b42a3506cee0e443a3c165c8ea3b67f562505f49088e974d07fc94ab2439d841", v: new $Int64(0, 8335) }, { k: "b42dc3c2c00a3d58473a91d82fef170efb20c39c3ab7592752b0619fbcb51ace", v: new $Int64(0, 5253) }, { k: "b4341f0e205ceda4fb32e1723cbd804fd99f08f4c3694ed88093a4b07a0cab70", v: new $Int64(0, 2403) }, { k: "b4344525f6fb9acfa605684ceeef426233def8234d9215f57eb25bb5bb2ea1ca", v: new $Int64(0, 8521) }, { k: "b43d3413b0c4f1d392e1fcc341a0b4aff535f08abfcbe12f02c6564fd55f2be9", v: new $Int64(0, 3411) }, { k: "b440fc913513f61d279a4b5b24ffff17d29a4a7140278d0cd4f83405da8269ef", v: new $Int64(0, 4192) }, { k: "b442ce7bc85308cb7efc6b33e8ff79926ad0807b3b3b9b92496a4fd0a20bb04f", v: new $Int64(0, 4504) }, { k: "b442d2c843307d2b56c989279ce34cd4c554e560d8da292e777d7ba5465c9bf5", v: new $Int64(0, 6125) }, { k: "b447a5a56a7ff0731cd9fb67b77ca387729c541c17f5321d05049c694a6e7ce1", v: new $Int64(0, 4025) }, { k: "b45cf79d5b4e00b578517588d0e8841cb214b64224e055c360108134dd980a2d", v: new $Int64(0, 3168) }, { k: "b45f356c9a0355531ded77fed94b02750ab38de4da92d357c98cafc3a7b8dc3c", v: new $Int64(0, 8109) }, { k: "b46c8f5161d260ff58f466db67c6d936790db7e79d2afbba45bdb05baa00e8f4", v: new $Int64(0, 269) }, { k: "b4784510b0732943a775fddf7be609d89e2f9102ea15a4d6a6461903a58660ff", v: new $Int64(0, 5304) }, { k: "b481670ae9f9a51a5a9d8333efc272f574828f2655c866271aa450c0deeeb5b7", v: new $Int64(0, 5127) }, { k: "b481e2d6cfcb1ff112bf2c8ecf4df407a73f37afd85279c198e811074c21e20b", v: new $Int64(0, 8401) }, { k: "b48379aaab6efb31789c66d16b55f04e37cc36da428d589f9c714d8edfc2df21", v: new $Int64(0, 5412) }, { k: "b48aca8557ef3e04e46e385a4792b684289b4446ac180201f6e64881686187cc", v: new $Int64(0, 60) }, { k: "b4994d52ee6646fee706b84cb07cfce623906adb23309251a5b187778efa6c48", v: new $Int64(0, 7927) }, { k: "b4a1ea325819b395aee5be655bf19b0adfe029ef49a4dd867281adb6a4b1bdea", v: new $Int64(0, 6702) }, { k: "b4a43e6e2333404bde3a8e536fbb6cbc04561c4a9ac285fea701de6ec2a38a4e", v: new $Int64(0, 8688) }, { k: "b4b1234a4c8d8c6a3e2c9a816d7a7b8ac3d2d2093683be7fed8f4f429a9aa34b", v: new $Int64(0, 6034) }, { k: "b4b284632fc4b41bc3039728f5e82bedb9a1d80b81602c724db76145bae40f1a", v: new $Int64(0, 1202) }, { k: "b4b937fca95b2f1e93e41e62fc3c78818ff38a66096fad6e7973e5c90006d321", v: new $Int64(0, 8) }, { k: "b4c2a760c6737ad3279be26b65a701c9812c39389154a9e0f142822591d299a8", v: new $Int64(0, 7600) }, { k: "b4c33034d738c4df408df630e38210012013aa706b3b58c22ff05029549d18fc", v: new $Int64(0, 7938) }, { k: "b4cf7241ca21f1289275f7f25570ba948b1f41fefae39ca53d5a0a115cf44c21", v: new $Int64(0, 5336) }, { k: "b4d0daa99a809b9419f1c7a494444f82206e6a7d9db8cd4aa45508f4ace42ad1", v: new $Int64(0, 3986) }, { k: "b4d7caf506df86b59d98fae0a49f303e773dfc302f6f9bd153c4c81ec2dae1b1", v: new $Int64(0, 5153) }, { k: "b4e13d02340f621f782ca69e78228769693a272a90a9804361d44a67c6a6ad18", v: new $Int64(0, 2740) }, { k: "b4ee37e631f88760a4d5eb44667d330e10fd85caa37d8305f0aedd117351835d", v: new $Int64(0, 1076) }, { k: "b4eeaebd87a85f01ad786781739b5bd8c57db145e361b8fa8e3a4c38a098d95f", v: new $Int64(0, 1522) }, { k: "b4f47a5391be710f42427d0eeab2537c6f3a308b78d07ae58b233eb73bcdcd6e", v: new $Int64(0, 4327) }, { k: "b4f53d82a69df7dac5644a42a7574dd3bf3e88124e8234a54de03e2ec2611421", v: new $Int64(0, 5430) }, { k: "b4f5ebc8d3c7cb36c1855b6c4798b28bbc730b6fb31b656d1cea62eb11fc873a", v: new $Int64(0, 8558) }, { k: "b501754759055d414e2a338a64aa34f4a60cccdd2e4347b683802ce8a2dbdb01", v: new $Int64(0, 6720) }, { k: "b51eca256d1b6ca5f07830f2c7c7c417045156d808ab806ccaa4791a873087d4", v: new $Int64(0, 5659) }, { k: "b527123f8d521bf52151d4b0d6f9b2b9803ebefb612714aaff77c786a3e060dd", v: new $Int64(0, 2800) }, { k: "b532b8a4907eb6d69fed102681913350b3c80c1341a8a7061b71b846bff48f83", v: new $Int64(0, 2952) }, { k: "b53c6bf57dd7d1a133ae49fafb07c4888644a566a24d2ca5eaf87dd121834643", v: new $Int64(0, 7204) }, { k: "b540e66f560a0e9123d60bd00b2b5fe8b8bf3778143de18b71b1ae7f7e2c9089", v: new $Int64(0, 7107) }, { k: "b54e6f12ebff72b9e7ebf917c9474d749a7cabc676f8233105b17c5c3a62ebbd", v: new $Int64(0, 6700) }, { k: "b5507d82cc1d00e5df7520e29720085f645f436c1dedcffa6592a5206cfe8072", v: new $Int64(0, 4834) }, { k: "b55b323708da86ced7823a8797ee33de3f1608dfd5d3db69406b0d4b1b3a30b0", v: new $Int64(0, 8193) }, { k: "b55e759dd625aca728866e3424e31c482c7f2b863a21e518810088d7e24359bd", v: new $Int64(0, 6159) }, { k: "b5603409a4ca8f969a0f9bdd2c5bead7fdf6b6e5a6780a86597701d45df9880f", v: new $Int64(0, 1560) }, { k: "b5690610f7767b4dea8484e083e4f07a174a630799e7d2397d12715cab2064f5", v: new $Int64(0, 91) }, { k: "b575e793908465e10500aa4f77bdc7fe05c220f0d5a3f871aef2d553e43fd385", v: new $Int64(0, 1935) }, { k: "b57ce53bf7928972904db868b3e5d82e18218a495366fb241fc5022cacc6616b", v: new $Int64(0, 2305) }, { k: "b583e2bd4b8d67c42b22eb7f29da8cf8df53b6ddb3991a747bf179df2464748e", v: new $Int64(0, 3656) }, { k: "b585e5047e0cb4fea49ba34218dacebbe6d4a47d8698f1cde0c0acaeea7c63cf", v: new $Int64(0, 991) }, { k: "b58c8b90ecbcb4b15425e64bb11cfd02214cf72acf0c9c5d67fc097f079c029f", v: new $Int64(0, 8553) }, { k: "b58dac1841c5f3ec48fceecd41ea51230e9de5edb06ca73bbe86621919831a48", v: new $Int64(0, 2324) }, { k: "b58e8b4845d3b9d80e9fefee5cc85411db338b0f1eae563a6d9c8040c1eb92f6", v: new $Int64(0, 8999) }, { k: "b5975d1a3ede466ecaedc783bfbcd826fdc18eff5b3aa82f3df2d84d0d28ff0a", v: new $Int64(0, 8949) }, { k: "b599ffaaef5890ef025afea5f7b2649e80937c03b811629bfebe7d61a39c6942", v: new $Int64(0, 6364) }, { k: "b59bdb9b017f5007ae1112fce3a96a1952d2b06aa4474ff3103846cbe5fbae43", v: new $Int64(0, 7665) }, { k: "b59e3ea4f83eb8e7e2a600ad1d4fd0058cc2bd72777f22a97c6f2f0b5e09a85a", v: new $Int64(0, 5124) }, { k: "b5a5f2e4fe79d0b462964109d7313daa4ab9fa5caaec4f77892ff25f665147b2", v: new $Int64(0, 8087) }, { k: "b5af38b40ccf84d802b78a3cea83c15f0a8bdefa50b44bec65e702d106155075", v: new $Int64(0, 1354) }, { k: "b5b468e472cb18e583c1a426c0382adbfe8fad3c1ca2e84dc9f880250ef0c744", v: new $Int64(0, 6653) }, { k: "b5b49a8eb40361f72f0c6f2463576e61c82313247b6a1d4ad26aaeb47d890488", v: new $Int64(0, 9380) }, { k: "b5b82c496a64556c0bd01367815fe4d7254f248e03ef300ce3084cdfa79aa152", v: new $Int64(0, 6024) }, { k: "b5b876a24e6cc45260753d98586edf9318fda017b5d2eb9cfdb5a2f41725a7da", v: new $Int64(0, 4430) }, { k: "b5c4e2b237c463005ed7dbe86d93439337bc4c70e5c5bc3c47b794d21e043b10", v: new $Int64(0, 2946) }, { k: "b5df00ff7fd209d12489e2bf486623ac9032cfacaea5ee7467d2ba07bedaf7d8", v: new $Int64(0, 2445) }, { k: "b5df89f35e15b845fc76081e7a968568a4552ef23d0c1925018f591d47d9c82e", v: new $Int64(0, 9182) }, { k: "b5e07020abe469bd2fc2ab83a985824cbec95e934064baff534a695f17ac3f32", v: new $Int64(0, 4031) }, { k: "b5e140ce46d598c313e920bba796b9844e57b4104ffd377a6917bb3f68191e04", v: new $Int64(0, 1529) }, { k: "b5e87e9d0295eb8b8ed78422cf18e65adda88ef18cd1a32ad06881819a4c821b", v: new $Int64(0, 7837) }, { k: "b5ebcab15c068f753c6f8c22cec2bb8eeeba032d85d55d7d368325061dc4e763", v: new $Int64(0, 4060) }, { k: "b5f005511916e7de8a9b395695fcd2fef7f98f4432a4cedcd80d25a45eee0a8e", v: new $Int64(0, 4119) }, { k: "b5f650c713843cfb9983add50c20b47ee976e92bb268c082db9797a2d36a7b71", v: new $Int64(0, 8166) }, { k: "b5f79b9cc08756da4dbf2218ea9844c3af049bbeb260eb0b44ae089695ba62d0", v: new $Int64(0, 9865) }, { k: "b5f7d0a31c8bf2f56c064d9d8683eed9bb5079122a6e78b42dee68fa14d8ce60", v: new $Int64(0, 3778) }, { k: "b5fe74b76d75cbc32777f2a748cbee97c8bdc49ff8717b304d0e28d9f4e500e1", v: new $Int64(0, 5271) }, { k: "b603ad3460ed4a175651fb0d47af2ebcfaff949e42b086e43a1ff58e51c4ef9e", v: new $Int64(0, 6866) }, { k: "b622c09a292544d7c2c47672db55d1bc765ca533b5687f8b0970cf7784f4e0bc", v: new $Int64(0, 8672) }, { k: "b6238273773c1838e513fba7f57e95368049750bdd034cd157760422c6d5f011", v: new $Int64(0, 3390) }, { k: "b6355d31a743545af17943dbce6e11b2ba5521fa578d50c5cce202e4eda4406f", v: new $Int64(0, 3258) }, { k: "b63698eb4a741f3916cd930af6e58bc923aec1e0fb78efaea66c9b811d957f17", v: new $Int64(0, 1470) }, { k: "b636a36d8843ad8bc17c3282df2eaae9644d2fa209d18a80d9be270bf7405b0c", v: new $Int64(0, 2878) }, { k: "b63d686229d9209b13be075c483deb4a58c15317ad95b589712d71553b3ec304", v: new $Int64(0, 4526) }, { k: "b63e20fa7fc4121802ae4531c6f1b86e8c5a7fbbf0521f0bd501603453f531e1", v: new $Int64(0, 9834) }, { k: "b64322a86025c3400369941b0f31eab42d7ad77b9869531e248014f914a0b01a", v: new $Int64(0, 7088) }, { k: "b649c30d986ea2b25d27ee254491ca4edaaa45bfa60ead4c62787944ca165ea1", v: new $Int64(0, 103) }, { k: "b64aa97706ed754850e5bebb7bae96a0e67d1a70480a0bac68925aab37afab8b", v: new $Int64(0, 667) }, { k: "b64c4b2e0a12751c77a1387d11599175af81bff8c4347cb10746dd0727cacb83", v: new $Int64(0, 9266) }, { k: "b65573b9c4dac1918a69c7875b629aa924a50cc57ccf3ae7741d07b3bd31d7cf", v: new $Int64(0, 7149) }, { k: "b663099c3fa47f3380df774a48a6bb5934e81b89d728887a23eef230afa38dfe", v: new $Int64(0, 6765) }, { k: "b6636a0b39dbca453896559383831142858cca77c0a9aa330b77ed4870fe7e60", v: new $Int64(0, 5989) }, { k: "b66c88eb1c856dc6ac3c0a54dc5a60decc063a1c400a7835c47c23d21ca5864f", v: new $Int64(0, 8233) }, { k: "b66f08da4ad73660b27d6b9feca49a3bf28ca4eaf5bc0a26fdc64c55cb604f98", v: new $Int64(0, 1531) }, { k: "b679d80e50f9b0df40936aef955f7c8da56efc87a19ccc7fbd089ea7853b7ba3", v: new $Int64(0, 3133) }, { k: "b67a55957b35b13809232d2d68a336c1aba3937e85869634967533741a4c92e0", v: new $Int64(0, 2784) }, { k: "b67b802a9c50eb3b13ba24c3a63fc61d01bb066ec26417ac4fc23e857d0c5963", v: new $Int64(0, 2140) }, { k: "b67e2c0580550811146950a94f453d0542165c9346830ee5208cf8f04ae3674b", v: new $Int64(0, 413) }, { k: "b67f7023e0cfe56febc49cfb77a161d900e1725b6cdf1ac4ba75d28f0a778fe1", v: new $Int64(0, 6841) }, { k: "b69157fbe396337b7853807885165cac59a253822502221a9f7716333da454ee", v: new $Int64(0, 8316) }, { k: "b69416fa1bebe888dcb62f02009e687348c67d2e0b7665b6de9fa39131771f84", v: new $Int64(0, 8497) }, { k: "b695bb640aac3112c64c7246b9cf4dfb90fdeae67d1ae0f459fe8be91c200c00", v: new $Int64(0, 1064) }, { k: "b69ca6a283978bad05fcd339ef3f57611d71790b23a44c67ffbba65178168119", v: new $Int64(0, 3760) }, { k: "b69d0c3aacd070113503d653281d2839f0d4925476648508f909d538f4bfd33a", v: new $Int64(0, 84) }, { k: "b6b1e79c4f424a3d9241ccaf912cb2e05e51c9e22af31d75d2e1616796df4eb6", v: new $Int64(0, 2176) }, { k: "b6b35cce2e7593cf4f863b3fdea8ad229cb4d56c35c529762169b0f88176251e", v: new $Int64(0, 4519) }, { k: "b6b8b0ef5102d30d24d2e36a05d710c2054ff3ec9fb9993ca7285608f0615bd3", v: new $Int64(0, 5677) }, { k: "b6c954743f22170a88eff372a16ecd4d309f83d33eae7936b55dffd9dfac7ebf", v: new $Int64(0, 7039) }, { k: "b6d28adbabdcb0e1db7730e21e47c94115f739f3ac7042f53ce614ef4d422ff1", v: new $Int64(0, 923) }, { k: "b6db3a58c34e4c0f3968f8a51e3faccc43238e09762191447bf8f536f4b3e304", v: new $Int64(0, 9275) }, { k: "b6dfa3d78de0799ad83d893060fec2ed25a4c31671331baa1fb61948e3a515f9", v: new $Int64(0, 891) }, { k: "b6e5a001eed1fcb32608fd017bc5f0d272bdd9f2aa7ff833f025a56a8123c7df", v: new $Int64(0, 5783) }, { k: "b6e658e48371035bf8c80fe0aa1f65ffda85bd3f5c7c3e7afc3c16a73ff36ed5", v: new $Int64(0, 8298) }, { k: "b6e75536bd6a1ba5cd65dca86d9918887a5e6a3a7c144d1ab7b7ce04189de8ed", v: new $Int64(0, 5562) }, { k: "b6fc754e62f6823f859a217665b69d1253485f794c5877f214a021a67e092460", v: new $Int64(0, 1713) }, { k: "b702078f4757aa32b08226c44280b40a8e5289cc79d29f5bb16a67c01c2c6514", v: new $Int64(0, 3970) }, { k: "b705fc4dde41d74698b2b5cad37d927602811baeb4668560091e6ca38c99c222", v: new $Int64(0, 4366) }, { k: "b70c7b2876ab7055eb403dc8d27a5102dd646cb7b71d8882e2d32a615aacd2b6", v: new $Int64(0, 4401) }, { k: "b715c0b22b973bf392d93371dd1de53e0868eee61daef444408ca64d3c2c2b6d", v: new $Int64(0, 8830) }, { k: "b7202387f024e3ea491a8650b8220169d0e220076dff90160dee60351cef8610", v: new $Int64(0, 2003) }, { k: "b72190d576e96f31d355a95c28a90d14a8bbd739d8ea96733b74f8d692b4effd", v: new $Int64(0, 9051) }, { k: "b7247d099e78feecb6166d094a32690e775168d156ccb3595a64c13d9592bce1", v: new $Int64(0, 620) }, { k: "b72b770d54849a0a4a88264722fc3af45eb1d26189f96cddd4300175613b3c58", v: new $Int64(0, 2323) }, { k: "b72d57ac21c2f085d1eb6d45d47dce61268c9d680790c7688c05137028dbe94f", v: new $Int64(0, 3068) }, { k: "b73cba514c6173f9d587e51b297b7a06d32650d6f445dd69c836ea79e8e2b4d6", v: new $Int64(0, 7879) }, { k: "b73d9b766686348c3e1f186c3f7d14d814fd2cca98aef336d643520477d1241f", v: new $Int64(0, 8564) }, { k: "b742245eebc0b22c94fa26bdae12f200e31a1c1ef2ad6dbbc2015e4d6f190201", v: new $Int64(0, 3504) }, { k: "b757059b5cbc1fbab38ed42c20663a5811cfce081ab2a79511d1ecbed0507c19", v: new $Int64(0, 5646) }, { k: "b757e1768df3d09a0ad8ddf57e945bd4843110299c4528ead2da60f5f4c42145", v: new $Int64(0, 3146) }, { k: "b75c59508e5860b621104c25d6a63e53a1d4468648ffa9218952619c745ac045", v: new $Int64(0, 8728) }, { k: "b77357ff9752c07810129dbf4266be51619cb79e48b65f4a2722e400407bb688", v: new $Int64(0, 7205) }, { k: "b7738079a5223fb33895777c1986bb49c96f3495f4c160fad354bc708851d91a", v: new $Int64(0, 4518) }, { k: "b7759f314932e3a9dac607b61f90423115caf266a466c5819ca8d3921fac66ad", v: new $Int64(0, 4888) }, { k: "b77c9a9cdb3c79bb69a70ef15dcaf135072b34a121f2fbe8d1f7c076e9cba070", v: new $Int64(0, 1992) }, { k: "b77e3dc91b715361a7674229d1ea5cce6df55ddeb57b07c350c247f9861403a5", v: new $Int64(0, 7989) }, { k: "b78094e1379fa20c2a917b07caeb83f706c14056d45386e8d0da647274ed9d37", v: new $Int64(0, 8196) }, { k: "b785ade83ecfce70c6abc68c1ce4f8fd477ea12867bed2a77e4845203fb55448", v: new $Int64(0, 2275) }, { k: "b78a918ebc24e625fb84b927ac2a71a6f50e158a6551b88e5240cad9b60df316", v: new $Int64(0, 1732) }, { k: "b79207ba115a02c2b3b1d1e4fa07599ff527fa668dc6645f53eb79253ecb030d", v: new $Int64(0, 6993) }, { k: "b79b5cf3ed53293e0fa6a188a9756df179914bdd43f607dda461281014361b5c", v: new $Int64(0, 4296) }, { k: "b79d628c0045e498e98690390831dd59d5cdb5e946dd6c0108957e4cebdc0568", v: new $Int64(0, 1362) }, { k: "b79dfc7b4249b0692b2ee46004bcb8cace59240dad23da6c684fa6a3cb38c18a", v: new $Int64(0, 3943) }, { k: "b7aa501f1b6d299114b759ca1c74ddb42c386f30ebf5673c4487a896dad78717", v: new $Int64(0, 2826) }, { k: "b7b1913f1a7ea0067f3b6938bbdd7fa42109e604bc8aa53deefc95b1a7319a53", v: new $Int64(0, 561) }, { k: "b7b2352d1d4dd771899e299d89e1cac27c558e851d49fbaa8a6665d3201dd452", v: new $Int64(0, 4653) }, { k: "b7b301e3994ec76d9f299ab6e8786871c56928fcb692c42a6e499b437e38c82a", v: new $Int64(0, 5695) }, { k: "b7b9c451839c1f4926b4942a2b63247219af00c65b3efc03b609368b06be5126", v: new $Int64(0, 631) }, { k: "b7be3bd1858c06433ca23805cdf037b44fa3ceaae2736c5861227c416cc42ab6", v: new $Int64(0, 892) }, { k: "b7c70df38e51caffadff2c8042c75b88a652265343f976681f5b053fdadc6782", v: new $Int64(0, 4525) }, { k: "b7cef443756ef7576d3a5c7d270aa15cc5209a1634becb5a183d28124329960b", v: new $Int64(0, 7750) }, { k: "b7d5746bfee1a04a24ff7449c2a4e3145550372b85e8e032d77c2a041c13cfb8", v: new $Int64(0, 9192) }, { k: "b7d6199b96393018d4582b2ae539a77184147335ed080cacc0d6605e8b7da745", v: new $Int64(0, 6850) }, { k: "b7da03917fc6506beb909122bead6dea8f918551b80c1fe3d22eaffc8609bf14", v: new $Int64(0, 1718) }, { k: "b7da872563f2af6b103bb1e7a0ce360d6a8966c6cbaaf3313b13f8536d957fae", v: new $Int64(0, 2824) }, { k: "b7de69133c105a5b69b0950732d81761acb3d4c64dd35b0b375347a18b474ecc", v: new $Int64(0, 8545) }, { k: "b7e1fa7c00edccb4f44a5e7b06fe0d05965b774b720308b23046331e71c72224", v: new $Int64(0, 5119) }, { k: "b7e6584c56ac5d211a7933fe98a9df8b4e2d50c05f245d5ff5d59832cec0f3ec", v: new $Int64(0, 6872) }, { k: "b7ec8bf78c3ed807bb7b9635c66b07b6d4b1f69af148489c3bddedb719664fdb", v: new $Int64(0, 7454) }, { k: "b7ed26f8cdc1e96b86042a5b6ceba81f4fc0834f35e81d784669f05391f6c1c4", v: new $Int64(0, 4488) }, { k: "b7fba700acab418e385daa565b4ae79eafbbf998186412b70ccf595ead69eb0f", v: new $Int64(0, 6408) }, { k: "b7fc0d98a68083e067fbdfa8fda4e74dedd54b5fe94cc8c029456cf8c330974e", v: new $Int64(0, 976) }, { k: "b7fdb03d33ef20647fa7e9bbce9a935c34f9708d6756b827a9f40c5f2624b7ce", v: new $Int64(0, 5369) }, { k: "b80bd8a65382358256d34f755dbfc79b71a9bbe568051da6ab1fb1041e63873f", v: new $Int64(0, 8712) }, { k: "b80e36bddf888b19638b378ecb58a1f7e9e0f8c12270e0238b03e9bf3599541a", v: new $Int64(0, 3929) }, { k: "b8130e0a07a4b4b7695d5643dacc995911a82833070f039baf5d068efed26b6f", v: new $Int64(0, 8590) }, { k: "b81dae06ac74100539f628d02f2c6274a81340c7f8de2b2bef79f9e41adea15e", v: new $Int64(0, 8988) }, { k: "b82d1c1402085a4310e9ccd6ec4b0e0bfb78e7cf0bd8d1c9f331ba925b08792b", v: new $Int64(0, 6187) }, { k: "b832cf4b359dd5e1e1ed6c49e29b2df9b3a6ca5d15c0aaba10936c7ce478b1a5", v: new $Int64(0, 2605) }, { k: "b83b8fcb3bb6c3d716da31ca91679c74dd5851885ddb4e93792af0562d49a60e", v: new $Int64(0, 9872) }, { k: "b83ddd5b276d12e0c19765bb46bba409dca3dda8767be9cbbe7e78001c829f50", v: new $Int64(0, 5813) }, { k: "b8441819ee0e2bfbe1e04be49093d060434c972122ff2dc907b5a66daaf59d0c", v: new $Int64(0, 3256) }, { k: "b8538065b5749ab17289a39add7d633811d08734b2ce785bc0a08ddab8b86a27", v: new $Int64(0, 8190) }, { k: "b85aabe8efddbf9967cb872bba4d7ea7afd876bf34159bac3b3969e7c64a5019", v: new $Int64(0, 4995) }, { k: "b85f05dbc637560cad1149834ec7437b91c7fe6138c2b6a890d901bfb145a884", v: new $Int64(0, 4598) }, { k: "b862409fb5c4c4123df2abf7462b88f041ad36dd6864ce872fd5472be363c5b1", v: new $Int64(0, 7) }, { k: "b8630892044553bf2d2fe0e038c696414ffab00dff307b5eaa00302e727b35d1", v: new $Int64(0, 3304) }, { k: "b8694ceb1ba3bc090613ef23ee04f88dd3d13c4095a7543d580d0a63207148b1", v: new $Int64(0, 5497) }, { k: "b8729054a890a1320a818993c77ab8809778e346625c150d041df0c72d77e665", v: new $Int64(0, 4678) }, { k: "b87660005d38a0b94f14c3d4cc031bbb5f0fba49339a913896e5addf407255a7", v: new $Int64(0, 9731) }, { k: "b87a56122620a8a7008e1cf4bbe6f011d0853a08881b65db375a0f57ec0d61bd", v: new $Int64(0, 3983) }, { k: "b87ef8df4a4823028ccf50ec182a636d700dc6198eec094454351f3c9875b275", v: new $Int64(0, 7300) }, { k: "b88ba93dc4a9559bb04694130916c6c29b9f2345fd5717f4067e3660232ee81c", v: new $Int64(0, 83) }, { k: "b88cc8ecc6e09d7d184bf89fad625059ce4f6b05f4b6fd0579f833009ae5dbf9", v: new $Int64(0, 4433) }, { k: "b88df436c1902590c8e77dbc4bd8f2a85c7732d8223ac94262e15ebce715661a", v: new $Int64(0, 6438) }, { k: "b8996dd863f1c7e3af7e60ce59ffd6e3b0142af9b6c5da47a91d75b133d97646", v: new $Int64(0, 2404) }, { k: "b89a3912dcb10e4941ec243ad33675dbf9ef6ffd6467dedcb05f285d2b31bd3c", v: new $Int64(0, 8163) }, { k: "b8a27b3bb95c33a8cbaac7dd909b11b2245c007d4da546dd3d51ed0500081021", v: new $Int64(0, 5182) }, { k: "b8a3ca534950c52f134281d0b6fc61aec0034738ff33114db495a73959c60472", v: new $Int64(0, 5239) }, { k: "b8ad574bf850d3dd71d1bd59277f29881747bec21731d7e1b71b9fb31a978363", v: new $Int64(0, 2317) }, { k: "b8b1dd7284ca40b27ed67f6209a8c7849ba65d7de9aa738b02a2cc593087a535", v: new $Int64(0, 987) }, { k: "b8b432281f3d44e893ddec17588ffa88e7bb81d52159fd13b3a92e4fa3c12b1c", v: new $Int64(0, 5545) }, { k: "b8c9fd95628cfb590f7f9da3d82cfde5f7c8d62e16e907448af86d4daf68fa47", v: new $Int64(0, 1707) }, { k: "b8d1e5033c88aff2e32730cd2b968c9ebe1ea7961f27e841a1b91ef813368342", v: new $Int64(0, 9799) }, { k: "b8da897836c5718ceb0dce1e3c5206c42c1f766d0c20abfea1ddbc6fd3865011", v: new $Int64(0, 3591) }, { k: "b8e1546fb20b77ccf7f95e0f92291c8447d1056c1b22527473922ef5a1621a81", v: new $Int64(0, 1012) }, { k: "b8e94af1107b63eba72ecc82553fb0f39cee56c9aadd2c382db9267b78851d16", v: new $Int64(0, 2374) }, { k: "b8f4e4ab4a8125cfb177694726afffa6068e4073e655e36b02ded02d4e787bde", v: new $Int64(0, 3054) }, { k: "b902403d1a36a8066c143f3151551ca9f175c68a1a5b46170847130dcc35bbc6", v: new $Int64(0, 9735) }, { k: "b907e67735878c5bd2b9d5c4a62cb991f944a287fac5a897554ac52ca08d2376", v: new $Int64(0, 3837) }, { k: "b9228083b9f85c8969d6bc1fd91acece5d7443b23119ec59ca9e4155c7ab9cfe", v: new $Int64(0, 3097) }, { k: "b924f145d7402bd5dc9956e64176ebea9bdd0b6595264a3607fd852d2d7dc2ab", v: new $Int64(0, 4367) }, { k: "b930313520bc1eeb60084399a15862690cf834d716a5895f47dec72746381a24", v: new $Int64(0, 9274) }, { k: "b93329b7dea21be5cce82bdef07f1f9f6582319cce2c2e4df96d3641c481a4de", v: new $Int64(0, 5808) }, { k: "b93b8c397883a0632b2787d63d81752af4833a06d2b2fff93e5b32dd0fbc7f9f", v: new $Int64(0, 726) }, { k: "b944c29c3fbf504bd6569013e74fab79af23fb0997255a4e222e7abdda3c53ac", v: new $Int64(0, 7256) }, { k: "b94dfbd20c8d187eacd6276f92bc1fa04656210f9662872f6eb3642e788a35f5", v: new $Int64(0, 80) }, { k: "b94e4d8d94e5fd8ed6524fc695dd6ac28790becb1cbdcb4714c72c0d70bb9dd2", v: new $Int64(0, 2211) }, { k: "b94f5bb77380f027e8a43e86f1f3e6ad6db375c6476abe9ef8d2412386f8dc9a", v: new $Int64(0, 4913) }, { k: "b95048d09e0522fd0145f515602aa326703fdc57950841381fe7e8367a79c4ea", v: new $Int64(0, 4638) }, { k: "b9551d690261fe83305f433f8230182ef45cd6ddb65b7c2247435ad9935a183f", v: new $Int64(0, 19) }, { k: "b95df052b6aa41d949b12629d45c65df2860abe430b51282c7148cb055ea1c47", v: new $Int64(0, 9817) }, { k: "b965062cee13c65d4a8e7617e1c9cad75892b4b20b7d3f34e251619cc6357f69", v: new $Int64(0, 5448) }, { k: "b978e1de013da20b96a5b0582eef258722b8cd386023a5476c45de8b9a74180b", v: new $Int64(0, 6581) }, { k: "b980597b5f083036805b2e55b6848a6cf233904fc5f0dad6489af4144759451d", v: new $Int64(0, 583) }, { k: "b983522c3f7a39211aa08a193e570a2946455cdc50341b2098d163b071ed82f1", v: new $Int64(0, 8786) }, { k: "b987382b088abf6fe199491374283c98b48763604b131209328459f83dafa92d", v: new $Int64(0, 6441) }, { k: "b98b0c3cc94ffa46a50feaaa591ffabd273c8c6bb261941c7c8a76450b0b9e65", v: new $Int64(0, 7847) }, { k: "b99406819438c4f3ea4f40ebaad963e0b463e4da5e846a634bc3ebf3b86f00e4", v: new $Int64(0, 4238) }, { k: "b9ae0f39c6c780c30f3214ae10088b56ac84a3d1230c28d59086400c7f1dfcf9", v: new $Int64(0, 9777) }, { k: "b9aee484d0034cbb3a27c134a53ab5595b5dac38ff2478dc0b74047c01a319bb", v: new $Int64(0, 2507) }, { k: "b9bb6a8a9183159191e88e8dc56612d0b7b6290adfe0be26cd1b3363c2744785", v: new $Int64(0, 7365) }, { k: "b9c0f39344e819a95dac2dd056057abf0b1dd949ee6ce78e17c198993eb098eb", v: new $Int64(0, 2666) }, { k: "b9c1dfa84b08ed73b087813948edb3093cbe3e2e00db19b9be1e3c17bd1fba6c", v: new $Int64(0, 7983) }, { k: "b9c278d58a53f9af8539ed71de4eab115ffac403769bd24bc7227eaaea497904", v: new $Int64(0, 3825) }, { k: "b9c7a21cba5da3096105f8e5cca0b4be7de9a608bb1cef727e9de5b16dbcdbd5", v: new $Int64(0, 6378) }, { k: "b9c86f88a1f2b0f2a4532173003bdcb13c78e17f72b10a9143e4b68bacf1921f", v: new $Int64(0, 5360) }, { k: "b9c9c28cd26310aea72c44b458b6bbdda104bd61a5f035ff83b6a4e3311a1f37", v: new $Int64(0, 4651) }, { k: "b9dea2a4fb74ac104d196b6ae3f8cec3c6cae51734863b0907274a51f75cf9e7", v: new $Int64(0, 5850) }, { k: "b9ee31ac6630364af32e9881db0b189ce6315ee86053a77da4c48fbeca3e3835", v: new $Int64(0, 6267) }, { k: "b9f187117e5ed967d50e2424013bf109ec1c54c1040515cd6be44fd5604f6823", v: new $Int64(0, 5561) }, { k: "b9f2260e151ef19efe71b478907fde74eba5f4608139abeb96b3246060678df2", v: new $Int64(0, 6959) }, { k: "b9f30c6f85b6e164244ee6e065f0d0e8b19ef248e20c4dcd4b5ed8779471531c", v: new $Int64(0, 424) }, { k: "b9f55b55cfdb5419cf04d39b459677602f5c1252a9fef64e8abc6e73e3d6a424", v: new $Int64(0, 9007) }, { k: "b9f93e6f69eb0b2f473cd8b2a2c791687a3b7e453449b5c648414b68cbd89989", v: new $Int64(0, 9415) }, { k: "b9f94e33f53d180e59530bf43459661d38f22e922ffc40ffc0bf6632c702c42a", v: new $Int64(0, 9169) }, { k: "b9ff75040d2824e02344923fbfd3970aa28da47f27a56cd0f9933fd370e61017", v: new $Int64(0, 8138) }, { k: "ba069e1136a8025bea9cd772a6bc19bec1942fca99fc2068f286807ffaeb79e1", v: new $Int64(0, 213) }, { k: "ba07c7ec18a4a052d71b8dc2691c82efc00f8fb7d433374d047a6b06c5cf9a68", v: new $Int64(0, 8915) }, { k: "ba0a8ce49d674a64de697881dc19ff315e90d7d7eb4a9b1d729696771b64c05d", v: new $Int64(0, 5163) }, { k: "ba0cb429a0ce13d461445a82e83dac5c6a2a2b078a20c50775e62460eedda387", v: new $Int64(0, 1177) }, { k: "ba137d2e10c654912dcea8fdd7abc448dbb1ef3304b43bdb98235ba9ee801333", v: new $Int64(0, 8504) }, { k: "ba150d826e2aebe99a4b12a60cd5bb258362e7f9ecf20b4240ca7978e5755821", v: new $Int64(0, 7067) }, { k: "ba18c27e5202051cfb7b61c2b58efed925f12c7616270e5fb8c6bc527a3863e0", v: new $Int64(0, 6297) }, { k: "ba19c18f0d0d5ffbfe68467dd2bcfdd92aafeeafe5bf1e7ed57c9b3bab666448", v: new $Int64(0, 9052) }, { k: "ba2626cf855073c921312098d2a8edd01412fa438830b4e2deabbe6136fece4a", v: new $Int64(0, 3203) }, { k: "ba2f516b667f82a6a781ed57feadd0039bb3e132c97ed3b82aa2e24d7c78bbba", v: new $Int64(0, 2691) }, { k: "ba2ffeeae1813b6be3bc7888a007d5e601b3f116b098214a12d8918d1e4f6d0d", v: new $Int64(0, 6597) }, { k: "ba3420ec35e802708f1fb468ef3922dc16bf62685a51e368043a396cdfc37523", v: new $Int64(0, 1516) }, { k: "ba349e789311e3501dcc0970139143c0f194fa4832efe117806f08325113c1d7", v: new $Int64(0, 3478) }, { k: "ba3745cef279c31f6e7762652b5eaa0521b6de2593acae3d1d22040882f60b9b", v: new $Int64(0, 5671) }, { k: "ba37d19ef6a93e0ffeb26c77e4a1b70cfafaee6f83f808c355e5799dc81c4ad6", v: new $Int64(0, 8184) }, { k: "ba3b4e10536aed7fda6fbb94eb8dbc9d011fbd578d79fc36399c2fd1ef2e8adc", v: new $Int64(0, 4826) }, { k: "ba3fd21977a8bf634ec51cad2cd21b16b6ae242f31e1489ad8dd86f6cffaab4e", v: new $Int64(0, 1070) }, { k: "ba3ffb800862e8da52831050ff3901d85463d53f1057d7a2068fc4c059e09467", v: new $Int64(0, 2387) }, { k: "ba46b8ae33ed62f86773443950c9d922c67cce85fc50d3ee6502e1ea7b8b7ee9", v: new $Int64(0, 7307) }, { k: "ba4c84e31315f8e03b2f3556ae77aacb86e86e55566175aaa087705c5c6925a9", v: new $Int64(0, 9611) }, { k: "ba4da7ea55b1b981e66a6e1b94bca8be47759386bc7c42ad87a71a2b31575363", v: new $Int64(0, 8641) }, { k: "ba4f948ffa665403387613910a0c45346e4ad66b6346d9b5b972f24628ac64ad", v: new $Int64(0, 7035) }, { k: "ba51444b2eeaa3bcba1604b99b00d0a8a6ac4cf156e4003827b1d04b3c2d8ee8", v: new $Int64(0, 9321) }, { k: "ba5e57be4ca94d6df1ba9a804c79792ee33c1e5ba289ec55dcb0043fa221fa01", v: new $Int64(0, 3609) }, { k: "ba62b55eb4984687b6478f49836b6399dc6d0ffb2778542cf59a2ab3455929d9", v: new $Int64(0, 8808) }, { k: "ba65ff324314589c776de512e09ee1b2219e231063ede1af70e7d9c572cab156", v: new $Int64(0, 7046) }, { k: "ba76d936150ef7b6b2a651cb6b33601079fff97ab1c6b02538b0b4fa28ae456e", v: new $Int64(0, 3452) }, { k: "ba787823792ed32a9c820e05b684ba80925ea08d3a446ff40ea3d4af530cbfb5", v: new $Int64(0, 7422) }, { k: "ba79171f2bff0def5e57f87447974596ccbb54aaae02b2c8c29025a20916c43e", v: new $Int64(0, 1146) }, { k: "ba7ea22fc24dbb2e004b894bef8fcac90e00717229bd8a929aeb4ad177f93cfb", v: new $Int64(0, 5355) }, { k: "ba83b5664bd794c2068f4f839eb65d55d46ea0fb32072635644c5bfdf5ec7011", v: new $Int64(0, 6426) }, { k: "ba843cd5da02933251cf392bfb1814e2810e3d9c9534bdd7215037b18a196c6e", v: new $Int64(0, 7316) }, { k: "ba865ffaaa2407d586412cd5b744ac5b563574063ce3f1012b1714e201dc0d4c", v: new $Int64(0, 1767) }, { k: "ba87cc7df5a36fd8f675fb0bbc0250ef5cd55a6c401d84285170828571c2f411", v: new $Int64(0, 1444) }, { k: "ba8c8d859e78a44c253d3f66af3fc16e56ffed6195da4e32c0e30abaa22f12d1", v: new $Int64(0, 7860) }, { k: "ba8d547ef7922d0a67901b8d13b595d9e963c7f19ae0541b54200d9a57b542ba", v: new $Int64(0, 6111) }, { k: "ba91f70a35c2d7c3ea95bc1ea40d99b4266085ccb31471fd100b893dc5301c1c", v: new $Int64(0, 3985) }, { k: "baa07a9b0509d6b42ce2b78d3665ba10462b67ebbe8fcf0687e5c826ab0492b9", v: new $Int64(0, 8078) }, { k: "baa34175ee418bf19d85293743983910f4eda32a0aa02b778e42ec58a398dd07", v: new $Int64(0, 7255) }, { k: "baa71996918b404e53bd7c0179b0fae1e3f64b90aea89891337e1a71b366bb2f", v: new $Int64(0, 3459) }, { k: "baaeb9b5199dbed170d4b1548340347dd8851f549bb44f73248dfcaee3a63038", v: new $Int64(0, 6906) }, { k: "bab3982ec3d93661f4e4e8eef329c10b68db304eecfc9b27d63214ab36e2f052", v: new $Int64(0, 8052) }, { k: "babe879f556f6ace029f2b09c368e611b0aa0b64bc28239c20f709b1bf7b507a", v: new $Int64(0, 3118) }, { k: "bac155e6e599909d89cba4cfbb157ad7005e0a2820c2d32fe9aa491289c725fe", v: new $Int64(0, 7290) }, { k: "bac79cd2d30a5b2940bcec81022a10dafe35328565561ee4022aba4a81009104", v: new $Int64(0, 8356) }, { k: "baccaecd72c1d0a30bc9d3d55925ec14539d3e4b06057f744dded6eb51ddd1a1", v: new $Int64(0, 6817) }, { k: "bace22d5ee22fdde38134583cdcf0a83f65e1197d766b09a09c08d0d18e60cd1", v: new $Int64(0, 4749) }, { k: "bad2df979495196fa20c7abbc1ab7be29714cba1b1261647132f6e065de0b066", v: new $Int64(0, 6876) }, { k: "bad35c388a06ad30fbde2ab0ea39446a3de357c100201334595fbc9279f723da", v: new $Int64(0, 7762) }, { k: "bae22cf67ae9dec58862e2ff201b83c9c9cb8f4b01c11d627ee3794a630b6d86", v: new $Int64(0, 5034) }, { k: "bae47ce85edf0f8af49361d0a324654addd7f829c577552d4511b2b9fb7f6afc", v: new $Int64(0, 9808) }, { k: "bafb808f3d1f175bc8a33771c1e715b30120df48c0fb1b42ec0499ae8605e78e", v: new $Int64(0, 1274) }, { k: "bafd73665f959b8dcc7154a489d28d86d265ca68ad3c5297967c4be784f63e7e", v: new $Int64(0, 9965) }, { k: "bb05b6d3b5ef5fa628f0f21ab7d3ae181a5739c17deb72b15b0dfe675bd50361", v: new $Int64(0, 8199) }, { k: "bb0859d34656b8ed9c12bab712084481e69ab81999b9ebb6653140a107e73d1d", v: new $Int64(0, 6493) }, { k: "bb11c4ba903c04d2341fcf73706200a11586743a45f3800693420e503e8fedee", v: new $Int64(0, 3632) }, { k: "bb24ab2308bcccd593d29df69317dbe9c7cec2ff1fe4f1dcc6f350b81494a4c5", v: new $Int64(0, 1920) }, { k: "bb2b6f266406b5789d06b07222f359872b7b987172e2414414881f0afc311354", v: new $Int64(0, 482) }, { k: "bb3ca2bf7d8df77867f0ea9f40cbf748463e795f9de9848163242c0f0031a290", v: new $Int64(0, 2743) }, { k: "bb45b4234ebecaa8f57d5b0fd0a1d345c42d005145895e47e195757891468b8e", v: new $Int64(0, 8406) }, { k: "bb4612a1deb345f98b6509e109ba2ed50170659c86f6954d688ea7f590cf2f31", v: new $Int64(0, 2724) }, { k: "bb467591973bc8706c01096ee23046887333e15de5b43d32c8440622de214a2c", v: new $Int64(0, 9414) }, { k: "bb513294f9fc8c812e404342fb1885e9a8bb0aa2bc7f916d27ee41f684ea34e1", v: new $Int64(0, 3740) }, { k: "bb553091ef472f6f08439031ef2a9e834b6d4e82d1626c14a397fc6c3de489f3", v: new $Int64(0, 2705) }, { k: "bb5bc8520487d5b7ac3faecf5db9a2a54d2c288ef41d16d9977e523af9139db4", v: new $Int64(0, 6465) }, { k: "bb6397cb7922c2a6eaa4922714d16ef53c7fd0501957661b5b0b546f83449393", v: new $Int64(0, 9712) }, { k: "bb672d2446d27fba6c4908b05f72e4549139ff2cdf18b8935de41a1f4d2d5ac5", v: new $Int64(0, 673) }, { k: "bb6d4c1982fdef814897739e5e20eaca8c342a5d7fecfb6697ca31b2601b59d4", v: new $Int64(0, 3969) }, { k: "bb6f927c41cdbec06ae696c2f04b16e1fdc5f45f6a40c64c3bdf369e033f66ae", v: new $Int64(0, 812) }, { k: "bb77fc039ac1aca05b8278bd89669de3607c1dd86cf12f6ceac653e3d3fb83e8", v: new $Int64(0, 6774) }, { k: "bb89d7134e3092d6336ea6853d228e6e4bca570d6fa9372c82036295dedefd1d", v: new $Int64(0, 2822) }, { k: "bb8b3d67b7bec40384e089ed3d72b808a202190e1a1cc5f61cc8bb811357bf16", v: new $Int64(0, 6809) }, { k: "bb8bcdf77884759f8e0b24a784f0b99e14dc8541a47023634ab9391fc3666c51", v: new $Int64(0, 5690) }, { k: "bb932423e6e3dd9a0d9d72f0c7f0b42e1979dd2679487712ca1e8c8ae9465a87", v: new $Int64(0, 8046) }, { k: "bb9697b8c0022558e9c1bad25551e06d5ca11f8e58853ff53aa25a0b5a69923e", v: new $Int64(0, 8744) }, { k: "bb9f67178bffa97977f340cb1f25b53835717d0112f7b6bf2d876a17f7aa5b68", v: new $Int64(0, 4397) }, { k: "bba0ef4182d62c374183ff5504f1bcff7fc8932095b0b75af977a59114b0c41f", v: new $Int64(0, 7522) }, { k: "bba26456dd13b0f724cbc7831b2ab99695b1c7ba5da9893311fd616974233bd9", v: new $Int64(0, 832) }, { k: "bba6bf68b76f5de768ef565d7ce47730bc3c330c066b8dfb4f25f4f193879dee", v: new $Int64(0, 4565) }, { k: "bbb4611a85b1eddb441b7a32351c301af6636a3d8e968003419e79105304f16f", v: new $Int64(0, 194) }, { k: "bbb4a993921597ec17fb24f9063aa64751bb820127ee0a2c82416eeff655bc6b", v: new $Int64(0, 5885) }, { k: "bbba651ab546150e00970423d15fc5796afbe5457540d3d48c598dd9cec46c86", v: new $Int64(0, 7146) }, { k: "bbbb34ce8364fae5a50211bda409fc78e2a3cc883eb44950272fe200a9a6764e", v: new $Int64(0, 3469) }, { k: "bbbbbd8fab9b9f7eda7fca41c483e75cc6cc17cf4b192ecb4baf3d9714848b23", v: new $Int64(0, 3665) }, { k: "bbc25835686faf249330b969018768c30450e35003a92a5c9469f38330c90821", v: new $Int64(0, 3668) }, { k: "bbc44bc3a03d97404d08e6ac9de714af936cead1718fd27e5e08df39b197e3f5", v: new $Int64(0, 7971) }, { k: "bbcf7a63500992890cb135f3993d10176d6e41a36c4636a65c8b255464bd4ad1", v: new $Int64(0, 9536) }, { k: "bbd4f12e51617d95a761c37e430ad0c0e7578eed4566ad3cf5b29c5c5dd8307f", v: new $Int64(0, 8638) }, { k: "bbd8c3d65a27338017f377c64c67ed52711ead23e1b7986c296705fe53d7257e", v: new $Int64(0, 9580) }, { k: "bbd9a0d02b4f2467a2aac4c7b09526fc5867396ea2ccb8d1ba8e83fe04b20734", v: new $Int64(0, 4434) }, { k: "bbda9c072c3fce5c402f3ed0b03dc4a2d9cf941476f6b4ecb49c1be5a2eda496", v: new $Int64(0, 9466) }, { k: "bbdb80e73dd6accb2cb3542170add30bf324ca870cb1f9cf66ddbe1fffbb4c7f", v: new $Int64(0, 7507) }, { k: "bbdcef824e3da9b68a293a86bca77cd4f5970ef3fb9ee8ccb6b22ad716578abb", v: new $Int64(0, 3247) }, { k: "bbdcf9050009442f6faa45fa3c5a2d573101ab27ba23d743b144e11af5c5e68d", v: new $Int64(0, 6482) }, { k: "bbdeaa626038ee31483cfd893ad780ac46341b971abf718d8aaf9e6a7e872496", v: new $Int64(0, 8252) }, { k: "bbe56873e1e5848285425161beaf51c4a7b4153cb7a78f34c64a6ae58de008f5", v: new $Int64(0, 9124) }, { k: "bbe7e08ef48f13398e686eb5c887135e28360af360ce01605069aa3468e4ba39", v: new $Int64(0, 7566) }, { k: "bbebf8c34b0981ec6bab4eb131cf05ab8605af5e34b9d13e4e619144ba9b4e15", v: new $Int64(0, 2948) }, { k: "bbf07820f0021019d0c2d8dcfcbce16c86020fe91a143193eab3f7ce33ec24f3", v: new $Int64(0, 28) }, { k: "bbf4f05fc77c664f72527f8ef88440a5b35b5adc460e406972e549f90b02d1cc", v: new $Int64(0, 651) }, { k: "bbf925041e63503ea4faa302c0ef65597a318ac87f9e1000497be7ce977e9c5e", v: new $Int64(0, 6113) }, { k: "bc0dcb6c291660b1ba29abbb329f7ce62a858e09e9a2b1f003d5d6feff2d58fe", v: new $Int64(0, 6562) }, { k: "bc0f8dc8bab9e70cb79fb557241b0d5893bb5f5bf7ce9f0b9c59a3f0657e1994", v: new $Int64(0, 193) }, { k: "bc1d77a29d138157096161fc170db1d959ac240e5ee7bf4f68ee3b539ea5ef31", v: new $Int64(0, 8402) }, { k: "bc23b8608092d5f5bedfd661daeb7afb0f673d508db10630b3757da859371792", v: new $Int64(0, 4882) }, { k: "bc240bccf3121c04bf12e2e57bbb7388a718e8596eb78b3e627bfa3f70e25759", v: new $Int64(0, 5734) }, { k: "bc28fbb337dba7a71c4e7e0602bc53234750ace0a02b4c9a0e13e0157a2c0119", v: new $Int64(0, 6747) }, { k: "bc2f642d825b8380c0ca6f27942386c27739872e8d25a9025af81742c69dc791", v: new $Int64(0, 1279) }, { k: "bc3333d0c345dbac337981db5e1ff5f2d9827d711b6c7c8635086b8f4a4afb14", v: new $Int64(0, 9684) }, { k: "bc51e6fb7fe7da9f7ceffdbb8afe22c393805db60e9aed2476853e798bdf0a53", v: new $Int64(0, 5843) }, { k: "bc52baeec7615acc13a587a06f0fde253964a3a31cd1078b02db9511395f181d", v: new $Int64(0, 8456) }, { k: "bc5417478150c2293ffada9312f94e6c90baa081224983a6deda908c5ee343be", v: new $Int64(0, 2467) }, { k: "bc58e6c0952a2a819a7af3d206be48bc0cc546e06ad4ac0fd9cc82342cafdb9f", v: new $Int64(0, 1536) }, { k: "bc61e5629df52a9fe682b96c1de80ad326f1689b985191117825a4b582a1b920", v: new $Int64(0, 8789) }, { k: "bc6433b3c45511fc61bc785f3e9616ac6c3d5b65d04d8977cc5af43aa1b50807", v: new $Int64(0, 3736) }, { k: "bc74899a9033bc255b4e32153a6a10a0f5ad294ad30965accb7b78e6035a4aae", v: new $Int64(0, 2774) }, { k: "bc77cdd002446e3a8914f5d67cafbb6fcd1d9aaa6d4ace846cd4e1387f38403e", v: new $Int64(0, 8966) }, { k: "bc790ba04eb86d55196a90d66edc611dc9bf63bb5a2a00ca522dcc9be71dc749", v: new $Int64(0, 3392) }, { k: "bc8b15b487b8e72432fe729d7ee2fdd35ac172970d2ae5a9531d7fadf369306e", v: new $Int64(0, 9320) }, { k: "bc8f22427e37ea6157f697a6b3917800c1ae112bfe6efac9578879a99ffee086", v: new $Int64(0, 6884) }, { k: "bc8f695dc5e365a87ca6aa8ee5bd4da5d7ba64c10991f4d1cfda1856f358b645", v: new $Int64(0, 8244) }, { k: "bc931b84c99281185d6ed558c2dd6ca20ea6f707d8d9d497a0e9080e378d20e2", v: new $Int64(0, 388) }, { k: "bca2817d0628c8b8cc151ccd25f465914247c03699f5d05cf2d8a32bbc22e928", v: new $Int64(0, 2639) }, { k: "bca619ea34d6a47ec78aaba18f2bf0a5002ae609dc492f1adf592adfe76e918c", v: new $Int64(0, 681) }, { k: "bcadcfc6062d914611cd2ae6873686844e2ca746d4acbb04b0db0bfbab4b255e", v: new $Int64(0, 6387) }, { k: "bcb555e986da15ec33dcbfc36f9aec59c0bbbe4f12b6c9be63ca5c320c9d7057", v: new $Int64(0, 7649) }, { k: "bcc2a845c802ed099eb1dfe7023fe77f1da785fea937a7f91b4ce6511fb793db", v: new $Int64(0, 2764) }, { k: "bcd7206386a8ecac935b365317a352d2070bd0c18d7f28a9cb39db8fb785b7e5", v: new $Int64(0, 2288) }, { k: "bcdd7a1969744a1ca5c0df68e5566dd405a0ccba8463954ccd5af0a6a1cd273d", v: new $Int64(0, 9946) }, { k: "bce587431980a909e7a07f08ad933a5268dc87b6f28f8a1258e5b89cef6a1f05", v: new $Int64(0, 8861) }, { k: "bcf121dc5e776136f11e3a06e6f0a58c76da58b6428f0dfa6eeb38c567e12ecc", v: new $Int64(0, 790) }, { k: "bcfb94bb9533d802d978efe964ac5ceff844b04afd84574f9d7ff9759c178e64", v: new $Int64(0, 9733) }, { k: "bd0cd67e789cd196f57f2c58405935d4bbdec55c9114db12c68485ab714fe42f", v: new $Int64(0, 8377) }, { k: "bd17190e1f6ec07c107feb7e16c206575a46206012bbd445165354c88bac7e2c", v: new $Int64(0, 1898) }, { k: "bd23ff0309995e00a56562912b81658884e3163231e2c88acb25bcf081e6bab5", v: new $Int64(0, 2610) }, { k: "bd2df5f5477f03875c90695634173a83f9bce439c0009ab6aa836cd55089b673", v: new $Int64(0, 6796) }, { k: "bd30c4f07010ba2b9230aa1d068dea58bbf654274d288a115025d98d025c3a1e", v: new $Int64(0, 1105) }, { k: "bd3206dfb68b8e5f5131cd8a0ec7d880245518726e1e04ee64bc71156974fde7", v: new $Int64(0, 3451) }, { k: "bd33f61e7b0ba8ca1ff6b07c16ba3845cb7df6dc194da3dd14a05e3a25fe1d05", v: new $Int64(0, 1915) }, { k: "bd352000669e3e2db5d55583c3c868ab06614abf3bf4500d83344d0cbfdb6937", v: new $Int64(0, 470) }, { k: "bd3e5f6ee85d8ed68754a1b263fb7f1ede36ed65921736e582f20950ed5e04d6", v: new $Int64(0, 5830) }, { k: "bd435627d83c382e7e90df62cd20a2491113a90f834056416d61d14e5a793005", v: new $Int64(0, 5661) }, { k: "bd47bdce11f2ff55d7975bd6b6ab75678916713a372e370ca35c3fd98165a10c", v: new $Int64(0, 9630) }, { k: "bd4895a66e8b606f5868b2dd11bcf57aacf0b92d1ea45ace77183c07aa61b3c3", v: new $Int64(0, 2575) }, { k: "bd48b88f30430537d0a75ea3a96a219ff0af5c296d9cdeadb855fc795082328a", v: new $Int64(0, 750) }, { k: "bd5398c92ecd908824a196131658959df16f8ac313d5c6eb39e7db9e1b0a5a2a", v: new $Int64(0, 1375) }, { k: "bd56ef4ba07adfc4b80f7d660cf718c6e067132a337cc3f00f783b86f4c26ad4", v: new $Int64(0, 8810) }, { k: "bd5fe80ef3c08cabee51a3f5fade0a45ade4e5eff2c3235eacfca116c48e2662", v: new $Int64(0, 8767) }, { k: "bd6240c6742131e65f02d5cd159ef6d0d72332f9a700d4bd53b7909a7bbe1af5", v: new $Int64(0, 9144) }, { k: "bd645a15173847d6cf904ef0d68042b65f3d36c770b9b8f4b51d7dd85ac735ff", v: new $Int64(0, 441) }, { k: "bd65c5017cc1ca3f0c9162dd74b5919b04aa21b5e0f13c5bf7177c545d87b255", v: new $Int64(0, 8944) }, { k: "bd688f6794c98085541cc2bdd8a933540327fa281f3903776e0a1487420d4338", v: new $Int64(0, 8175) }, { k: "bd79a6d66d76e048d930a85bae4cf081b2d0d0115ff07593f9537d897f1b9c85", v: new $Int64(0, 9899) }, { k: "bd7b90b8225da2ef9a995e45d79de5842ed0669c2eacfb13ab6f354e64d29275", v: new $Int64(0, 3347) }, { k: "bd7c1d1be5f6970cd6e83dd3438ef98e684f3e95154fbca145ca3c9c6bfb2daa", v: new $Int64(0, 2278) }, { k: "bd82133dfd0748edf43e5fc745b8fbe090e94fffcdd537d5ad12dcadc10155ea", v: new $Int64(0, 5076) }, { k: "bd827471df38d29220f689da5df5e34fb2c7726eca79e59baf46f74e0073cbc2", v: new $Int64(0, 3968) }, { k: "bd8473b7de0464e758b42a0522db9e4152632b16760427f3fafd55b999fd998d", v: new $Int64(0, 3410) }, { k: "bd86d0760ba7150ad308fc6d4cc1dd5182f962b9181f69c47029736717e04bd5", v: new $Int64(0, 3521) }, { k: "bd95ff36415ca5250792d14312aef332c2d05c93c416a8807a5c14618d05836f", v: new $Int64(0, 4348) }, { k: "bd9eef1dac56fddfd90f070bc5f85ec6fa3f79179b4fede0ed5defe0c727c69f", v: new $Int64(0, 7884) }, { k: "bda0d27d17d0c1b53a9ff5e4e9062408c8df0ee41da043c48b71c574531dd558", v: new $Int64(0, 4728) }, { k: "bdae7525c4518b16558dd95cf676ad8fc6a68a981137e70eea523ec4c8520fa7", v: new $Int64(0, 7292) }, { k: "bdb0aff0122839cb08a0bf8908424e13bf7c96963daa493be9cc780c7d2f158d", v: new $Int64(0, 4109) }, { k: "bdbd04ae3e17c7ed7db88ded0faa0c0bb5224c4fc8600a2ccf2b684a10a63a50", v: new $Int64(0, 59) }, { k: "bdc21c1f5aa40edafe6157d4c4b850d6fc0b441fc27939012a4811b6fdd11532", v: new $Int64(0, 8882) }, { k: "bdc2cddb8fe946fe1ecd2d8e24038e53d2527537b68b254863569d8165969177", v: new $Int64(0, 2693) }, { k: "bdcfda9f6c826905ae4a1066542517725938c34b3177e428355fe96f3bb1ace9", v: new $Int64(0, 162) }, { k: "bdd37092b288763a0712728b96fcdcd90ad28964eb48eef52c46865ed97ec4eb", v: new $Int64(0, 3568) }, { k: "bddfd4d36b1d963bbac1a42f8a25aacb0055b033d8aeb3ff1c639968a4c7b362", v: new $Int64(0, 2330) }, { k: "bde010bb51b8f766218f324ebf750205b630fbdac7584f01391d65232bdb87d9", v: new $Int64(0, 3286) }, { k: "bde78179ce4e1019c503d1760f804720408b355aaac081d3cf8528d10707beb2", v: new $Int64(0, 1298) }, { k: "bdea06bbc03176181d8e3bc51ad5c60825ba2f8d146d56176634d0055cbdc9be", v: new $Int64(0, 8454) }, { k: "bdea5a4b73fa36fce5ea3fd0564384e951156de0a8f5649c8b73b989f38acfa5", v: new $Int64(0, 1039) }, { k: "bdf10578540086386329f3fc3f1fd6e059fee4c9b783b83c102ef4b5988faaa8", v: new $Int64(0, 7273) }, { k: "bdfa351bb753724e77d24d0b48510bd84ecac63a7c298f044df8ec74a62a8e28", v: new $Int64(0, 6946) }, { k: "be00ca2378d10c5727be66a0d582a11b53cbbd6252e511f83767e0bd4209d1f0", v: new $Int64(0, 9889) }, { k: "be0229fb055b22982df7d0fa8a7a7eca9b5db881090bb94d5cd3c18152cdbe83", v: new $Int64(0, 3370) }, { k: "be04e2a0e671540a2dc7e8cb2ad7e9b927eccb8f88bc9c8d431ed093e74ffaa5", v: new $Int64(0, 5836) }, { k: "be097b2ae4977d49ae12dbd657950cd1077c804f2f02cef012bbd4b5e11ada05", v: new $Int64(0, 1280) }, { k: "be0b6a27822fb4476740f0da4c62f4a4aac7f909dcc6a56c4ea24da1eeb42bb7", v: new $Int64(0, 8768) }, { k: "be0cece9b0598a2757a0a05c9dbbbcfad426d5171d68a4e44afd31b749f1bc79", v: new $Int64(0, 1887) }, { k: "be169883b130f035fea26a448a6d807ccaeb150bbb76db3778691154ff2c17ac", v: new $Int64(0, 4285) }, { k: "be203fd0d6409849f1895f4f3ecb8b802794bf0bd12b759eab0431e317beb9f3", v: new $Int64(0, 1986) }, { k: "be2a90aa8eac91cb198c927b8c388fd4e3a117c068f394bb3a7ed270f5b7ba1a", v: new $Int64(0, 3379) }, { k: "be493c4bf1467465d081a498e65ce2c3d06f54237ece2f72c342817b4e01e503", v: new $Int64(0, 5371) }, { k: "be4bc5f6959c84d195ba134a40ed717935aad615b05b1ed85f05b36234db58b1", v: new $Int64(0, 2706) }, { k: "be4fe9526cf75a3aa389a0f626f925d0eac8c7d45b96b7582c73a58ce5ba7373", v: new $Int64(0, 7317) }, { k: "be5090fffc2d571a6a4b2dd2a7c616a48103a8ad74252ffd87fdf6fb27ffe76a", v: new $Int64(0, 455) }, { k: "be52d34319b9e74d7253d2e0e836cff82e5f334f51871f80dd61f32ce610f0f7", v: new $Int64(0, 8382) }, { k: "be5a9187b5999801e7b7f96a2442fa00ca79693476761f2a23ccaa2f570d0071", v: new $Int64(0, 6703) }, { k: "be5fac1b7eddb6fc23212e32110995fb72d9a801274282648112bb4941117949", v: new $Int64(0, 7498) }, { k: "be601099b1db3d621f53b35a579595cd44689064ccc3f5c51299f665a110b3ff", v: new $Int64(0, 5840) }, { k: "be6b317d38253ae50475caa27b597d6d2587f7ac487b0f32c7d9b5cfdf83abda", v: new $Int64(0, 7645) }, { k: "be6d124e8094e916c3399bfafcc4a2716a0016575cc9db1414e714b258e0659f", v: new $Int64(0, 1452) }, { k: "be6fadae50a645e66d55e380e4889444f156f81533f81444da2987448ca46736", v: new $Int64(0, 5631) }, { k: "be79b12d1222168e30ce876d53432406e182b8acd1ac53e1495c4b22ed1459f4", v: new $Int64(0, 5555) }, { k: "be7c7f7873cfa49cd66f2dd9744a1453ef60e7b475e40e9f873573f2c8329102", v: new $Int64(0, 3926) }, { k: "be88a0b0323ad31039c2ab81f928a0b973bb95aa454b40343ca25b589fe6877a", v: new $Int64(0, 6882) }, { k: "be92c485420e061856c7e730f22e2e1ea9ea148dfc8d6032bf86f83f9bdb057e", v: new $Int64(0, 113) }, { k: "be9f044873fc05413217f0a50b0ddcd33176b1368cabd92518378c0f91d9999e", v: new $Int64(0, 5775) }, { k: "bea1a2fd6e9a635d85bd805f91422672b5d8115ebaa40ec56f26f23f4f06be49", v: new $Int64(0, 2994) }, { k: "beaac6d187353cbf38ac30a7879bc4992ba2e4fb602fdcb7170af48a35eecf08", v: new $Int64(0, 4158) }, { k: "beabf1d42e8a7eb2268f3948eff9967252d1e1214720ef79675c76b62306d0a7", v: new $Int64(0, 9258) }, { k: "beb9dc47831607422933d3ae2e1085e39869d0d8d075b6ee8688ba66334fe719", v: new $Int64(0, 6731) }, { k: "bec22ec5614fd28a57f94acccd68eec7f1d608bb49ae205f0a7ef2485bc06009", v: new $Int64(0, 8735) }, { k: "bec7423bcae257cf0d16854030561e00f6681a0cbc17aa8315fca5da37174c64", v: new $Int64(0, 8160) }, { k: "becd7a86af89b2f3ffd11fabe897de820b74cd2956c6e047a14e35d090ade17d", v: new $Int64(0, 1337) }, { k: "becdd251e79d6e480e2d5a83410c49ab69da408238e30cc0f78d9aad04fd37eb", v: new $Int64(0, 2820) }, { k: "bed892d803b80c2c4a70d98ea96251d694b581bf496682dade6739fd5cfcdff1", v: new $Int64(0, 6416) }, { k: "bee627dfa241a6633279dd3e72aa9fcee3a8472484fb00850fb5d5453771f17e", v: new $Int64(0, 3264) }, { k: "beecd847156690c6805472d489adc5b7cdbf37ca79d47346f4e59ff948c9f412", v: new $Int64(0, 210) }, { k: "bef4e2e24831e4983fdcd288f890279225c10dfe98e3a79a6a924a2de9bf649c", v: new $Int64(0, 5266) }, { k: "befac39926dcbbc001e2906abad28385f24bcddbbd5a6f23989af1c051469a5f", v: new $Int64(0, 2754) }, { k: "beff14a016988d9b497824729d988b08e54581ee0b81d2e4e63859ea8f84f4da", v: new $Int64(0, 8374) }, { k: "bf08dfdc55255751a2d734673ba6b50358c56df0d7d879c493bd1b7c2393fb13", v: new $Int64(0, 6847) }, { k: "bf0b930cfe836ff61d6a57316e696836c729846bd9dd6d14dfbd3015f589a05b", v: new $Int64(0, 4604) }, { k: "bf0d7cabf4d6f31711a447783d8fcda66a587e7ac8eaeb3d2b23fddd7b9c5b2a", v: new $Int64(0, 6480) }, { k: "bf0e57cf98e352358df5fa009778890f91bc0607dd2a4960d7b77a540bb4cbff", v: new $Int64(0, 5025) }, { k: "bf177ce766c6c514f339033309c7052cd4e59b8c7972d685fad9bf13025b859f", v: new $Int64(0, 430) }, { k: "bf181f2bd85f51a0cb127123ba2aa7cc67d195ca97e0dba20a441d6fc08d3352", v: new $Int64(0, 1722) }, { k: "bf1e3b273fb40620450aa631d07cbe2f07a55609baf60746c8c3276ec3fbbad6", v: new $Int64(0, 2755) }, { k: "bf1f697997a1e206cb400431004aa5a4054f2a79d3e1f6a7adf2f5d8b93e56e3", v: new $Int64(0, 8802) }, { k: "bf300691b75161748f86856cc73af0fe1a5498d060d680f5f44053a8681fb2a3", v: new $Int64(0, 8083) }, { k: "bf35f39bdfc76d93cf5598d0ce55ae0367a7b99ec00550d2ae7a83312f8bb342", v: new $Int64(0, 5192) }, { k: "bf3a06d4584263744d76f90f7f6914f8079f23af80318c0b3474207666cefa14", v: new $Int64(0, 3808) }, { k: "bf49d9fc1d4543d8494887df4e49b841b4e5e238bb39038ac085d81b18e75c68", v: new $Int64(0, 4303) }, { k: "bf4a25a280b918004efa89440c20e654ed2cd92417a912ad2600bc473edad753", v: new $Int64(0, 5383) }, { k: "bf4aec8cd90ae7c9ac677be6fb7269571d8bf7d6a0e7215145f66bb7416212e2", v: new $Int64(0, 3779) }, { k: "bf4c0100d5b8c749b832ccdd5b6ffe093bff87b58ffc15205d4b7fb76e0412c0", v: new $Int64(0, 5929) }, { k: "bf4cc2adafe632f8888ed81d2164fdfbba807a8d23afda5e5f3a46e28faf614c", v: new $Int64(0, 1245) }, { k: "bf50f5079dc218ac5b9b787882be53206945b5b827f4df9e2f5f201ce52560de", v: new $Int64(0, 1860) }, { k: "bf5c776a7e898892e433538f4bf294b9198cb149b13570c575a6605fa141404a", v: new $Int64(0, 4496) }, { k: "bf5dd691b3cd126095bda4f04444a58270a4ede0ccad32a4e8437b518e8ec512", v: new $Int64(0, 5066) }, { k: "bf65d261f0b562a7c42f44b291ded86ac9297bdb35a79bc608f067c29604fbb9", v: new $Int64(0, 4697) }, { k: "bf6ac7a7077111cb923c8eb90d9cbea854816c2cb82abf1058816a550a743fd1", v: new $Int64(0, 3037) }, { k: "bf7093322ed8d7f4264bd605ccc7b13f37e70d8f4c79546aae2df8faf9af862b", v: new $Int64(0, 1148) }, { k: "bf75472f885c997d707598bf578c44e7a359a991a8f9f76597fa1abe634857ad", v: new $Int64(0, 1067) }, { k: "bf7a54ca75c91ce7a3665a50505f5a60a07c1b3b3f842b38fcc290c3c92ce43c", v: new $Int64(0, 236) }, { k: "bf7ea146f2b6aa67847ac946c8ac03c9a6f19d56bd2881fca0fe8211ea2a6c68", v: new $Int64(0, 2600) }, { k: "bf80dbbb82c610190bd9ef8b95118c562269369c399ba41c6015c8680e7b49f5", v: new $Int64(0, 4377) }, { k: "bf8113f418bbb8703b53d684f24cc0ea8510cce5ebaf61b5bee897f7ec0a3adb", v: new $Int64(0, 6434) }, { k: "bf8b0692d83e9537bc2b5fe8646112837107822aa4bc743edf4f6238e6d45dd7", v: new $Int64(0, 4416) }, { k: "bf8ff00683e97fbb7befc7e5a84bfcc1a187d55dfc6243bff884568fae2d1c3b", v: new $Int64(0, 2957) }, { k: "bf9cdf7293c31c5b6be9dabcf0ff24673f2c4a2a45f8ecfe199e86a4bdc1986e", v: new $Int64(0, 2578) }, { k: "bfa0eaa5140191f97a38d8c8dc04afdafd042591e8dfe94956168b1cb6272e63", v: new $Int64(0, 3388) }, { k: "bfa60eed0af73778314a4fdd273aabe073eff60129b8fe7e9b534d27a1fa07a5", v: new $Int64(0, 1990) }, { k: "bfa97a71b51939256138100566059f4d9398a12e980ac1f527c9594de95cd402", v: new $Int64(0, 9676) }, { k: "bfb6baa575d82eb6f726557ad9eca84644982b0753973274529820e8967c3010", v: new $Int64(0, 8157) }, { k: "bfbb2bcd08a4b03697f5141ed2b5dd5174aac763b34aecc10d7f8362aeb3a5a6", v: new $Int64(0, 5707) }, { k: "bfc110b737f91848ee3f35153e9b6aaa393bc004403828f0b50d4ca1aa78a8ec", v: new $Int64(0, 6573) }, { k: "bfca924a6f597211491aaa25d9edfb19c71a6eeca318d52369711f756610d2aa", v: new $Int64(0, 8731) }, { k: "bfd3b0ada95886882ebae9f5da94b2c6925f90ddbba87a45dd4a06606d612781", v: new $Int64(0, 4499) }, { k: "bfdc319a5e539f4485a3b0305494c3ecb9b22ef83f98ba5a8efb9d65ac84303a", v: new $Int64(0, 1520) }, { k: "bfe676266384a8f6a0d4da64cd42c0cdf1f498634577a7b951c15def61fce48e", v: new $Int64(0, 9072) }, { k: "bfea120fc9cdb4aeaa68dccf8bf614a9b16ef40f26574a05184732c04e7aaee4", v: new $Int64(0, 9194) }, { k: "bfea14748e28ab58fa85fa0faa7ebb902eaefbfa90509d27e7e3627db00492a7", v: new $Int64(0, 4859) }, { k: "bff4f342cebcb010df0b4e1c5d873b4a173f86413e4e853676e1489b45cb5efe", v: new $Int64(0, 6920) }, { k: "bffa9004efb1e851b064690c47c28738eea8d3b5fcf9c694392f4afd65bbadfd", v: new $Int64(0, 7127) }, { k: "bfffb5bbf8a220b695141dd56fb922ff024f74b2343764c1d6e75e8672df45f8", v: new $Int64(0, 8387) }, { k: "c0010fd6a30e410395b15885f914dd96fd77df52455f2142989e873f6db8ce49", v: new $Int64(0, 1320) }, { k: "c004cec40c03b31a332b1f387fdd65d2ca06d68f61f0f1bab412f7f416cc6483", v: new $Int64(0, 9835) }, { k: "c0053f3aa135cca870528dfc2ff22346996f1bfafb57740208b13afdf53034f9", v: new $Int64(0, 9840) }, { k: "c010b2b9b0a31b9cff5d8b2d19c8e1197fb2f2678643bec1dec6de576fe49501", v: new $Int64(0, 597) }, { k: "c010d092c8f2260ae981a9bc811f973566f077e1fee1156366de78278d6900e4", v: new $Int64(0, 7412) }, { k: "c019ea8535d2360c6e729a00c105befeef05ddc2c4c0c2d3992524735647edfc", v: new $Int64(0, 8525) }, { k: "c01b71a33923e11d407c9da3506afe49fefafa5d16af12029f13157350bc7476", v: new $Int64(0, 3282) }, { k: "c0216813e0bb0d57b7f9ad7321d009edadabb1889c3c01cf0d2b5ca4cd3e2be7", v: new $Int64(0, 4955) }, { k: "c031322df26f56e856104f107269b196359ef1fe67e84099e6447041fb7e43ba", v: new $Int64(0, 9977) }, { k: "c033a50831ba806654e3698f0adfb529c204d74111871b5eb4c41b88de5b50e1", v: new $Int64(0, 1195) }, { k: "c0363f28490d7f156b9e1bb15ed24c9b0e9f5cd0fdb2437a764d0668d4135b33", v: new $Int64(0, 542) }, { k: "c03ab39930a698b43354042721b33e0713d0d815b21597d68a655b1fae451e7a", v: new $Int64(0, 9931) }, { k: "c04434ee2e7064de350836ef7a201add09b7f138e71c64f725eaa39b1b56e84f", v: new $Int64(0, 5309) }, { k: "c04cb234ff638f5baf03caa2831cf6bb3a85adf82929ed7b2e3de783432eb708", v: new $Int64(0, 2759) }, { k: "c05358a402b39e831ddb970976c8ebcafb31cba8e4111881af94db2bdf23407a", v: new $Int64(0, 6162) }, { k: "c05e96a51d2f2c2447e9cea766539478f806bb2b75ed5d8744a20db0c10c843f", v: new $Int64(0, 9188) }, { k: "c060e3e661136bec8b0625968b3eb5df43f2307424164c70a26c9ae057d79166", v: new $Int64(0, 5945) }, { k: "c0644ded839de812317c96934bc34fe3810cd4bcf933e363b3b870dfcad4f965", v: new $Int64(0, 2449) }, { k: "c067ae6dade0e0f0c4321ed7e5372313a09e276c1297fabe34bce03558dcb5f8", v: new $Int64(0, 3209) }, { k: "c06993016ac7f898640ea1ad86334bcb4890fcdfdea6cff5646d47816bd5599d", v: new $Int64(0, 9701) }, { k: "c078e3b49c0d5921e51e57f225d0f850657ea5605af488d6945b3855ea640314", v: new $Int64(0, 9561) }, { k: "c07d544e86516d83bf55872001199293988447ce3d0b50f851effc17da6c79f9", v: new $Int64(0, 3144) }, { k: "c08734dc61db874866815dff4e884a374c156fb707411d01c330b093af5b5d60", v: new $Int64(0, 7962) }, { k: "c08ba38d955bf05455623d9ec0d3e6ed0d0fe7ce1820e672ab356244a243f42b", v: new $Int64(0, 7924) }, { k: "c0945757f2227242565a153cd54d40888c7d5bb8345d4da371c26993c2794f19", v: new $Int64(0, 2519) }, { k: "c09bac88e01ae1f0d922e56dbf417c3094f49c10ffc44cc0f744a5159dfd7dff", v: new $Int64(0, 9649) }, { k: "c09c83ae70cf52e0909c7884a4e49414406145a2178f34c5969342ab6d6dbd3c", v: new $Int64(0, 6757) }, { k: "c09df25f8074e7237b57794e7c18767993aeaa9dec27e3c31774645f5aad2b6b", v: new $Int64(0, 8875) }, { k: "c0a2ab229a21f403e8b18fbe9123657e0959536f96b8027dd4134e0381e59215", v: new $Int64(0, 133) }, { k: "c0a3509ba6d7531acc01cc096561075afc633b39a50cdfb62d6dd59f05974593", v: new $Int64(0, 9139) }, { k: "c0a5f424c3a0ea96fd9a865a423aaa52cc2181699b73fe280b34fdc977a24268", v: new $Int64(0, 4233) }, { k: "c0aa8a5360c081ef170ed95fe64fb2f47e137153920f1a9456963ccd39c78a28", v: new $Int64(0, 4841) }, { k: "c0b9099e0c349c32995310fb967453e4f0dfc156edc66c796c4fba8e929dcb3f", v: new $Int64(0, 2580) }, { k: "c0bf6666dbdd7f31587348fe79552ab51e227872d01246137579512266ba1d27", v: new $Int64(0, 941) }, { k: "c0c7081c9b78cc0d64c48199579ccec54c67d720d0c41a74ec750a646c501ff7", v: new $Int64(0, 6505) }, { k: "c0d8954f277d140dd2285cf51ddcb44abf04a29c0b59f2c4414232ff2c4ba216", v: new $Int64(0, 6479) }, { k: "c0dcd63b567592ee991cb57b4a7e145e110ee7dfe358ab1e7023688d5fc3bf1a", v: new $Int64(0, 4903) }, { k: "c0dcd716855b20c8a7a3aec491b6b547dad97f4f4b188228b29914b9861fb841", v: new $Int64(0, 1021) }, { k: "c0e4aff609f69f35272f111d4f59ad942875411f6529f0e604e5f5233630fa3e", v: new $Int64(0, 6164) }, { k: "c0ea60eb9e38f8c436fa9916f36eb2c1099134a4dd17282d95241ae389e68fc5", v: new $Int64(0, 71) }, { k: "c0ec2f7adb27779cac009461fe9b76c439b0c439498c5418fe9a4975fcf7a0b8", v: new $Int64(0, 8086) }, { k: "c0f1225584444ec730446e231390781ffdd2f256e9fcbeb2f40dddc2c2233d7f", v: new $Int64(0, 9) }, { k: "c0f2e37d1b06d4ef677c8a9df2b52dea47cadc8a051f4b6e3a3576ebbb83ade3", v: new $Int64(0, 3862) }, { k: "c0f48cbd7d56df7cd59a52fd1613ae93cc313ad23c71000143c9614b68599398", v: new $Int64(0, 8622) }, { k: "c0f8f248139d11b739285b7e9a2b7c267c9df674ca671f83a17c6b500f08af33", v: new $Int64(0, 4493) }, { k: "c0fea23e982204f56954ea1b9b40784b4f10d8cd05bc5f656019c435a1bba5c7", v: new $Int64(0, 3997) }, { k: "c103738dbf9413074919db8ab5e0546ce5646dd364a56d0faf520e168da92b19", v: new $Int64(0, 8493) }, { k: "c1048d3d95d2f8170696692fad860a00b289fcd7ba98af2b6c624435efb3a7f1", v: new $Int64(0, 4601) }, { k: "c10f6d34c96aef529f0d0bf7ccb29aba469ee2e8d440c4677e1d665f3fbd2764", v: new $Int64(0, 9453) }, { k: "c1143d7ed9d451766d4280a277559a0f7112c834e89f23aba6bd220aa6ada83d", v: new $Int64(0, 2331) }, { k: "c11b5537e26c76c90fcd76cd7e988cd16bc70eaf3288c8848b30f4019d74d4fe", v: new $Int64(0, 9143) }, { k: "c11b872ffdde96ecdc5fe955f409da882d25308cbe168272b680db5b01405ae6", v: new $Int64(0, 4596) }, { k: "c11f7d81816fc79edac758c395692994ae219b8afaf6ee9599f4321196ca1b73", v: new $Int64(0, 8358) }, { k: "c12307166f0bf7ec282d8081885beee2ac883700fe5f1dc52c23886a89262ee2", v: new $Int64(0, 3135) }, { k: "c1243a9bb6102b0910f6f2710735141819dc17e4f28141350f54e98b2194a6db", v: new $Int64(0, 7395) }, { k: "c126781d6304e671d694a90f5a62f058c802009bd6a69adb50223a01216aec66", v: new $Int64(0, 9271) }, { k: "c1280f1a31f079e16b19bdd42f5720ce8d155ddd2db7110d9f76d2cc09400e84", v: new $Int64(0, 9721) }, { k: "c12c08a3fc4eee17903f0c7f6b49f5fbac0e5b4a42aec97d9a89e699bd38deac", v: new $Int64(0, 2246) }, { k: "c12cba3e4569a7c56e4c5934337e15941555c792f9fe13f3c459d51e155072ca", v: new $Int64(0, 2562) }, { k: "c13272788e273628a4e26d534c84516f6a47ad2effa3987e8a1b4f442d85a5dd", v: new $Int64(0, 5138) }, { k: "c13d5ddf6b89c21ae3dda03f70e57f95462dc9a9b98da4a851ce164639ae681e", v: new $Int64(0, 4506) }, { k: "c148471c486167ba686b21533f570beee46772e4e19ab9ffd048e71174b9b5a5", v: new $Int64(0, 6381) }, { k: "c153cd452158018fc0f4582d3b97abd40b9de7186628f4feb75b1c91ee4f679c", v: new $Int64(0, 2953) }, { k: "c15c0f209fef2fce4c70d37b69540626590d83db7412906c692d040f4177a77e", v: new $Int64(0, 3140) }, { k: "c15f5197a202e9350b20cd91b91783b930940235b77a73ce4488d74cedaa19c2", v: new $Int64(0, 7588) }, { k: "c1601ad210f965115d289dd9df5f20f58689da64807fe3ea3811f87896f54972", v: new $Int64(0, 9937) }, { k: "c161a2933b302729daf4b5a987bff235b4352b54fc4ea928d53e46cb875b03eb", v: new $Int64(0, 1854) }, { k: "c166977fd658f4b3d30d895fc52eaaa567ce9c6d6e2e693ea45f3e499d00f106", v: new $Int64(0, 1879) }, { k: "c16fa3456abb68beb1f6fe16e52455b1d0f75e887e30116c1b7e1777bab00c91", v: new $Int64(0, 6134) }, { k: "c17c513f318b7443b448805e6520dc5e28013f76d34733a883d7a590d79f4820", v: new $Int64(0, 2938) }, { k: "c17f7d069b3e5ce830b1a9acf45b982ce5e655e212ad288a99f819d73c89c3c0", v: new $Int64(0, 2657) }, { k: "c182aaf17b314d07e7e18357f7dd411c215640c6851341a5effdce1c8604b71f", v: new $Int64(0, 7537) }, { k: "c18725d5d7892a863c0fe902b9f7b6fa692af7bbed76abd47c3ad5b0b763efa4", v: new $Int64(0, 4916) }, { k: "c18dbd1382f97355c2318777003fcbc9ece71a2bab03bbd272a590aae027c07c", v: new $Int64(0, 2078) }, { k: "c18e21bab7747f4150579e8fbf9d7aec5714aabcd5336b040e77ba6d84f1c5a0", v: new $Int64(0, 8281) }, { k: "c195b1e383f8da9e9aa3a53d03602b7d0c4807364a0dbfd71366eadcba4df760", v: new $Int64(0, 1160) }, { k: "c1973a14526b55d37780031f4ebca8627c4eed0935af9d2c576db44cf13f5295", v: new $Int64(0, 3391) }, { k: "c1b2432857b8b77a3c3d04b852b320a127e11e4af6927aaabe9e9d83ba3e1281", v: new $Int64(0, 6738) }, { k: "c1c0bf60d4a2fd4ae4d07e8359693718feb8482353e94b013440cb0a498b05d1", v: new $Int64(0, 7117) }, { k: "c1c3822b9362868307a5e916c8900497467af426be68430e04f45c15f9971975", v: new $Int64(0, 7313) }, { k: "c1c8c9236e117e4fc25650fd6043d813850673d8253786763758936e8c755b49", v: new $Int64(0, 2554) }, { k: "c1dfcee6a5d5753a1d4414f1c99038ee7cade4880da737e35dcdf692a0d49e07", v: new $Int64(0, 6775) }, { k: "c1ea06fbdf9fc454f0329b4b18de0659d2b052160d5988ae6429db9347ea24e4", v: new $Int64(0, 3512) }, { k: "c1f3417547d175d55a5acc85ec0ec74bd05d887c2854201f85e1b1321c493b4f", v: new $Int64(0, 4423) }, { k: "c1fc4085707c4c7f004356181fb00825a5c5ef46b565537125ce37519dd6c9ed", v: new $Int64(0, 4472) }, { k: "c2045443b6cb6b63c228e12de694c76b6f9fd1f12499cbe745f258d6a2d886b4", v: new $Int64(0, 722) }, { k: "c20bf2b772664d18ebaab6b351cd9c69bd4abbd5efeab8f42b80e3355fbdaed0", v: new $Int64(0, 930) }, { k: "c20e3086b426114226093c5cfd3955569bd4d1a484c76f78de897f7d7762add9", v: new $Int64(0, 6083) }, { k: "c21ba25918139790b8ef64c49769e6fbb80a4eec704145e712072766cfac3a7e", v: new $Int64(0, 4197) }, { k: "c2221eca873bd1f9151cb64574d69143f85cc3e45a03a2e36576a698aa6c856e", v: new $Int64(0, 3228) }, { k: "c2257bf96dae13c217234c17f320bfc29a7fbc4a4216c016191df02d3a93321a", v: new $Int64(0, 1077) }, { k: "c22fa98a980cf28ba7f50d44990fdad3247e2b6ae1eb6c033e2918bc72f00044", v: new $Int64(0, 521) }, { k: "c2331310ba64ed7b5d7036a6a58330c1cdc3a933e44edbc0c8a10d8bf9d0d305", v: new $Int64(0, 1402) }, { k: "c23d922e7a7afbc9ac6dbae422727c4a1c320fa8b7d52f962ca92f08688330e3", v: new $Int64(0, 2999) }, { k: "c23e93db274a8e969eb6ec53411c899116ed9855f541332383cd5ea89a2bbed9", v: new $Int64(0, 5432) }, { k: "c249e3d907ff222b1e170dd2a3e483b969e5b6112a71d5c1c9ad9a02e075837f", v: new $Int64(0, 6370) }, { k: "c2600cac2d3cad3f814def1bbb068ded528aba965d8c1b91f88cab58bc954283", v: new $Int64(0, 8665) }, { k: "c2676093e88abc64d0a806c7db1387b9d503a435cac3e452afc5a07c92aaf3dc", v: new $Int64(0, 6602) }, { k: "c26dcf222cd22c6ab4a8868f9bd290fc69fe9e146a4a07a2f03a3b98a664354f", v: new $Int64(0, 7897) }, { k: "c26f03fe300e1c218174857c5b15c55f69ed09bee26c158a0403e7fa5c525201", v: new $Int64(0, 448) }, { k: "c26f25f19d793b5fc4a59437dc123fc360adf5972c225d2562afe9ddc244baec", v: new $Int64(0, 3087) }, { k: "c2701d381870c594bb08375d0853fb9e0d33a71d9a9545256d89a33f2faa0081", v: new $Int64(0, 5410) }, { k: "c2704bf3896fed061f8c7e460f87002a0ef00160826a2bb0c4b24036b77f3b92", v: new $Int64(0, 6076) }, { k: "c273ace857f59ba2e07f8338fe004bb91b7f6951fd6ac3ec353dddbd0d9d898a", v: new $Int64(0, 9636) }, { k: "c278395cdd20ddcdab15ab418853b4014d3b64601147b42dd07b433decd4ac8d", v: new $Int64(0, 7012) }, { k: "c27a0f8488255e3ce07b3d57cedbcd0030950d8ab7884c9bd0be5039ecdb89a7", v: new $Int64(0, 6855) }, { k: "c27b8189e781d58c2c5b0e0d273b1d5e1cd42ccd1306b7b7cdbb423f15430981", v: new $Int64(0, 5189) }, { k: "c281b0c0047982974f1f4e732609191a6dc618410594629d4577cf0983a81618", v: new $Int64(0, 9926) }, { k: "c282296c42f0cbe0aa3901f0101b7d5fce6c006d7c6f3e72362f5f95629f4c11", v: new $Int64(0, 3840) }, { k: "c28c9ea55fa1a209aac66d714c0e72fc924a94bffdc4fc5bd639056d016910a2", v: new $Int64(0, 3637) }, { k: "c291f956cd2781c6599c3123e8fece931d9a9bc2bbc06825986186a7c1b3d0e2", v: new $Int64(0, 5912) }, { k: "c292484fd921a9c503323c1ef0f4415357b66ef08eda62fcd92d3f1962931d39", v: new $Int64(0, 3734) }, { k: "c2a51d0a1c14122f0135b73aed2310a0002da9dcadf3cd8c321d0058975529a6", v: new $Int64(0, 2310) }, { k: "c2b0e4998ed19cdf322ca4f22e1130c13047b7b3dd94cbf53433ed19eaddf476", v: new $Int64(0, 997) }, { k: "c2b382a9ec782e1f72db108f160a652f22154d2304d1b06171bfb7da2fdda7ec", v: new $Int64(0, 6206) }, { k: "c2bd814e8e83fea93fe2d963eefdd5e47da74612c10b43db346d797bd67588ac", v: new $Int64(0, 5979) }, { k: "c2c0aa1ce7ecea4a5bf7e3adab68ab63801fece4c68101b062b1f40720a3d7eb", v: new $Int64(0, 5491) }, { k: "c2c6a47c53f90bb86872eeeb92f3387bc377a34fce4253a1b720478dbcefe4f2", v: new $Int64(0, 9912) }, { k: "c2d589e5601b09c13fcf6fb3a7929bf6a2e7cb6a20ea075da0e64280527cab42", v: new $Int64(0, 7536) }, { k: "c2d76a45d4f6be6eed2c4a13e303c82e39e12c38272774121e5cca2d568a631e", v: new $Int64(0, 2084) }, { k: "c2e3427c967a6c6a0b6211210856c3c2194b9969b74eef0332a6c4cc2dc9352e", v: new $Int64(0, 6234) }, { k: "c2e787bba29ee07da99e30ca61cb5b71bc8bc71d98ad0f736fa36e384635ff84", v: new $Int64(0, 3134) }, { k: "c2f260a18bdeeae468cffcbdb2df417b7240a029d7e0b3b5b14934b643f99f30", v: new $Int64(0, 2311) }, { k: "c2f658077456485437832a534167758be55608480f70e63ce22578c16d836d21", v: new $Int64(0, 7525) }, { k: "c307a36d2d5a1de9d3134f6964354467d4a970ea7f86bc1fa95aded63adda675", v: new $Int64(0, 7990) }, { k: "c309ff1d7a9c00aed8d9aab8ed1fd38839f64f0b4f90829eded7c5f4c0f1428a", v: new $Int64(0, 51) }, { k: "c30f0c8ef37dc4d8185c8bb37214901c375544e95c35b962315dcd3ffafafce5", v: new $Int64(0, 8890) }, { k: "c312d0af1b864ba63343c35bd74f3512006056618f1aec5788b76e180aeb653b", v: new $Int64(0, 1211) }, { k: "c313ef7bdfe99854253cdf5ee141c21e260ce25060683d5acca16150f225dc15", v: new $Int64(0, 8535) }, { k: "c318cff288c1ee9f9cbea591f65e2151675050bcd0fdb5f1112cc936c4cd588e", v: new $Int64(0, 7994) }, { k: "c31bd88a6375cca5ee493c3e1ae8a480acbf2b62da301b4652be98446170f023", v: new $Int64(0, 8758) }, { k: "c322791d22ece9f43a3dded3f9c90fc48c39f8a9dd8dd5e358dfd827b35d94ad", v: new $Int64(0, 8016) }, { k: "c3277ea417b9f971a8d587c355cd6feddf821a014d263130734aa099d93987bc", v: new $Int64(0, 454) }, { k: "c327bd64bdd89adc60b8048ce51c8e4456d4d2ae630e86396402a95b2020ae4b", v: new $Int64(0, 8844) }, { k: "c32920b4edc7664d25dbb1ef9ca14e1296882c4845a198a7663353e3a7f4fa08", v: new $Int64(0, 3191) }, { k: "c32a6959c493c528aed15cdf69c2762a8d8817a53875cee9113808b14fbfb70c", v: new $Int64(0, 1628) }, { k: "c3326b6809eebd9d997e8408cdf4b3e16cbc75f30435768b93eb166dd96e0bbb", v: new $Int64(0, 1958) }, { k: "c337fc614c65ca408bb9782f52e56ad0b1c1f01278da8beb00ae78a40b0fc55b", v: new $Int64(0, 5882) }, { k: "c3430a8df33134530d0d7e70613d735b1d87a644e3c6995c9ba480456c4f749b", v: new $Int64(0, 2372) }, { k: "c3484bce8d776a06f1d0336139379881d0ad18ea932573cb922094d154997514", v: new $Int64(0, 8048) }, { k: "c34ae1bccfe3b57ddc0b83e92e57ead3af1c6f7688c499b319f28805f89138c7", v: new $Int64(0, 8936) }, { k: "c34b9c86a99eb359f016e6b571d9ec050a15791e27dc9eea9de85c2a347ba5b1", v: new $Int64(0, 8769) }, { k: "c3556496fc39a500e91d4c4c0d34be608f1ceb23b8145292454db5dc708f42ae", v: new $Int64(0, 2046) }, { k: "c356233803f86ba25cc5873d57ce1b9015b54fd753e6b53a84f10ebcfc73fef5", v: new $Int64(0, 4272) }, { k: "c36cb57745b388b87d02e2ef87ea88b28b28d45f2fbbeca0c312eddbdcf8db80", v: new $Int64(0, 5924) }, { k: "c36f75a59de4a3a8875f6c21483a7cf33afeeb1db4aa748da78d094b42fbff23", v: new $Int64(0, 1818) }, { k: "c372152e34cbfb3dc339245371aaa6bedbe52e04eed5039b7b03bfe478996e53", v: new $Int64(0, 6673) }, { k: "c3723e3e639c7e09584299320d09f292299f92f0b56b97cf2a673d581eb2eff7", v: new $Int64(0, 2107) }, { k: "c375391a394e36cc45efd5af4e3377f2f33f872b39b06fdd5050ad99bede9865", v: new $Int64(0, 730) }, { k: "c37d3c272bf4672bc2260f3f1cffc5dc7a3a8729edb64bba1f751295b1c5f4f5", v: new $Int64(0, 3443) }, { k: "c390371d8b6cb4f25c8caf571ff494c8cee92b531e7709a1b3783fb6e8377a0f", v: new $Int64(0, 6251) }, { k: "c390b49125b84ad6676836b3bf1c072cc69752d727e6cf478b14e7f6d1ed33b7", v: new $Int64(0, 1526) }, { k: "c39b2e575c76d8245ea5afb15abb8b7a192cea9ecd31804d829be75c62e1d9b2", v: new $Int64(0, 766) }, { k: "c39d0466e915facc34019c200ad30529a1bfebd08ed909925f803c048d6344c7", v: new $Int64(0, 2250) }, { k: "c3c0487f6080ca59b1cff3ca4c593ced6438d17a827436623c46dfe840e47c75", v: new $Int64(0, 1069) }, { k: "c3c827641ff948b6f4a35f206c386e434ac449aa83e07007989e5e6a6032c051", v: new $Int64(0, 180) }, { k: "c3cd775046454bda0769461bcd6dca5e53b5ac289807e0c8560211ec105ac00f", v: new $Int64(0, 4704) }, { k: "c3d00c8e02f92a55a63eb297556934c5409dc8693b548474d7b9a2a362110bfc", v: new $Int64(0, 2373) }, { k: "c3da43c2ef635e39f0a365105491b02113a4622cd1b45a2e3259435a45155283", v: new $Int64(0, 1214) }, { k: "c3dfc55940ccdbb3328e8e0d6d7f95e597b225fc83cae72c34400ebe0f2f2a07", v: new $Int64(0, 286) }, { k: "c3e52b164033a8e57ab8446da535725c4024d0115c22386ee7b4350bdf764379", v: new $Int64(0, 3329) }, { k: "c3f3417983157a96c5bf946f40d7681bb9e6ad452a1d22f1053d41545d3e70a7", v: new $Int64(0, 1046) }, { k: "c3f573898004015d2b0f0df5f0e81515336293371f5008d93987d0d055f5adf9", v: new $Int64(0, 6103) }, { k: "c3fd38db8557e7f789773cacb4ba5b5f0e23558159c7b736a1c4c7d4e497f049", v: new $Int64(0, 3920) }, { k: "c40051b76ec63bd1ead77521607685f42573750c82c3feea1f515f703d47af96", v: new $Int64(0, 3003) }, { k: "c40069618f13ceb098dced2b156ecfc3e5990ba2059f0822bceafaea8dd0d5ae", v: new $Int64(0, 6545) }, { k: "c40e4a901d416fd5fdc1bd02d5a2d00d0ec8db8b14636e0232b6d07542e66cc8", v: new $Int64(0, 5942) }, { k: "c40ea37838d9a72d50ae05a17d18d564476eb756093506158080a8149eb9da2c", v: new $Int64(0, 2668) }, { k: "c4110ddca3b0c3aaa63cb6537bdd1a6bfea4d9250837365ee202618d906bc379", v: new $Int64(0, 9995) }, { k: "c41a295141859dd30dc0972835c1440cb0c2512ef6eaa77026ae6b63a6bf59d9", v: new $Int64(0, 2627) }, { k: "c4234ef0e4bcc132e55aad8360e783316f260b45a2ef3b265376816d840d22c6", v: new $Int64(0, 5021) }, { k: "c425150f634c1680cbe7b3209acf58aa6202baf18e0b459dee47ebac64536281", v: new $Int64(0, 7839) }, { k: "c436fe0788964877b380426c78c669891d4d7a43394a6ee932b7d4a6fe660f6e", v: new $Int64(0, 3865) }, { k: "c442bd9871b3813be5e6e1d41ea7321387dc65ce5932b1e430b61068a73716ab", v: new $Int64(0, 1401) }, { k: "c444ed2133862bbe76acf93d60d13942a341dd781ff69f53eba221ad25905452", v: new $Int64(0, 1248) }, { k: "c44da2fd801d4c9a3c9eefebde771dd95a04e46f1456b115d6a1b107861ce3bf", v: new $Int64(0, 5220) }, { k: "c46463925f2dae17771311e0a43641a1e63ace6802d38650812b978f8892c4f0", v: new $Int64(0, 2332) }, { k: "c481cc4b147b14952b72d047eb2345a7a8d489c52bc732a995cc2734b9e04187", v: new $Int64(0, 5425) }, { k: "c48ddf33c32e965c6ed68b91be79da6fd1ea847855cc0878e4b2927805f2e906", v: new $Int64(0, 4543) }, { k: "c494213efae831f421c9ae02dc4e5f0c4e5d3f450b062e8230731fd735a9141e", v: new $Int64(0, 1874) }, { k: "c49ce5d1d5927e5bfb9b167b652e4b6efc7bd5f6eed5e1a75e735e3b8b335623", v: new $Int64(0, 4690) }, { k: "c4a6f26d72de4940a7af58af33d1923901a5074d21a07281e7baaaf56fcd8e9e", v: new $Int64(0, 183) }, { k: "c4a710245b926dd91ed14ccc59e295bcdff918410a87397587b5b9a34294679c", v: new $Int64(0, 2589) }, { k: "c4a74a1e9c45f134fa1a6ef19bacb1d258de10bf33ff94d8885b187154e13da9", v: new $Int64(0, 1120) }, { k: "c4aca8a3cc8da344fc654977b4a3018990415c4bea8c93da63e492fafd61bf29", v: new $Int64(0, 1636) }, { k: "c4b0500e21beee5ead95bfb515ea6285e6ae3748619ad35bcc321c6731d5e89c", v: new $Int64(0, 4836) }, { k: "c4b800c87010f9468303deea876503e886bfde1900e9e846fd4c3cd09c1cbc9f", v: new $Int64(0, 123) }, { k: "c4c0115b15efe969640df998d3f31eb9b531636b1436cb654a13b2d028457a0e", v: new $Int64(0, 5174) }, { k: "c4c07022959f02a8c7079181820bbad692f6e8777e6985b935e162a1aa2dd9e4", v: new $Int64(0, 732) }, { k: "c4d558363dd63588d0cb01655396062082d5d77d65d53e43ee55fc13e1a093f0", v: new $Int64(0, 1209) }, { k: "c4de0af69685643fa6482c24e66b493a7a289b1f25ad57733049758b73787106", v: new $Int64(0, 4928) }, { k: "c4f8969deb85dec162f211b9877cf0c34795f15088db3eedc6449220ee9876d9", v: new $Int64(0, 7708) }, { k: "c4fa35308ffe849f30329962aea07206eb9f153d6abeb20f531744acbaccde18", v: new $Int64(0, 9205) }, { k: "c4ff6ff1736a02959b7bfd1f4f0fe2c9090b9c5923315ecb642c6169dfa03439", v: new $Int64(0, 8203) }, { k: "c5069c65675052aaa7bd6105de54d5bb2601e706f3d1ba38fd390b5932e31f05", v: new $Int64(0, 5345) }, { k: "c509ac052e4ce20415b90cdedc888b3c9a6d3d154d1c3d8752b368e4bc8e0ea8", v: new $Int64(0, 6313) }, { k: "c511add7a9c016d7431ac206ebbc0f24db9e1025080a3c025e7028a55f56d60d", v: new $Int64(0, 7923) }, { k: "c5125c0526283632a87aec67ef4add847f77d0fdaefd31fac9f43b53354537d3", v: new $Int64(0, 4243) }, { k: "c5163cad36abf0eca08e83a0557513d292c6af1644745e227ab7000d2f01c728", v: new $Int64(0, 2632) }, { k: "c517a0fa0120060036fced9319a76e37fab7d69d463f31751cb50be7b20a886f", v: new $Int64(0, 4769) }, { k: "c5254f1be98c9a14106ed2cc29a55ed3e776441e63c77eb3c77bbf9e33b7c663", v: new $Int64(0, 3713) }, { k: "c52896fc327a3e1173c76da2c8b63bedf0c11ece690b3042e8ec77979c4b81f4", v: new $Int64(0, 1827) }, { k: "c53a46e208682bd5fb175e3a8b3396e7deb032b89a558f24351c31b025b960ea", v: new $Int64(0, 9830) }, { k: "c54d098ea6497c812bafd992f719abf9a228ac7a48f5dd3c0a286dbe2735014d", v: new $Int64(0, 6072) }, { k: "c550ee9495e99d44c1844f08027c9df23ebe9e7638412d19b83de8ef3b4a8205", v: new $Int64(0, 4556) }, { k: "c55d19e35b9d043959293bf0f846f9b8fb453397c3580670481238fef8eba286", v: new $Int64(0, 5876) }, { k: "c56b277286708d5eb6a3b87b21a3190f3bb9f436961da498bd78370ce067729d", v: new $Int64(0, 3250) }, { k: "c56fd411d73ac341de25b93e0217c7870d50f6b30f66d4c12adb2e5c1b09be64", v: new $Int64(0, 8675) }, { k: "c57e731d87fd263512d9cb34b06b6f34a78735aeb0c9838df04887dfcd1bf505", v: new $Int64(0, 8468) }, { k: "c57f26a541d751953e6248def7a8104cfbe6f7ff443fbc7393a64c7963a43a59", v: new $Int64(0, 7128) }, { k: "c5806754cc5cf73da2a2498b569aaf073d7f8f84dfa2860b745922290ea7b900", v: new $Int64(0, 6715) }, { k: "c5814c0c383da7b4f38aaa6e83b4577583358a361ac7e387d9575d3263369522", v: new $Int64(0, 3710) }, { k: "c581fda28ec7694c252b376c755ba228899a7608318b3160a9bd14d4cda05ec0", v: new $Int64(0, 100) }, { k: "c58e81e1a64727f3df68b397c491c1dfb5ae3ebf1a47962976b9872a53b326fc", v: new $Int64(0, 1569) }, { k: "c594b1c0803de72f6f0e4b8d2e0afb0dce4126db791e25f8dedb343b061c5b6c", v: new $Int64(0, 3434) }, { k: "c59c5155dd76ac1cca2587a5c7c59e170bc0e4b9e07ccb14ffae2f68586b12b9", v: new $Int64(0, 2315) }, { k: "c5a2307c89d517f2f25ba58774bfe0008eaa0daa74df54af9451a7f1b9afd01d", v: new $Int64(0, 6864) }, { k: "c5a766081b25de5594a5febdb63b61c55c069a1fb67d9f677fe26f65b526212a", v: new $Int64(0, 252) }, { k: "c5ab3424cf9c82e78c3f347e719c0f2eb5a7f19a2652a692644c6a66f9f44a58", v: new $Int64(0, 8826) }, { k: "c5b4acd938559c681c16dbe9811ab93db73da020d9bbcb4547b687c381504588", v: new $Int64(0, 8259) }, { k: "c5b8ee895998c12546b6ac3e447726b74563a6bab17922c63b77130db6ba67b0", v: new $Int64(0, 3420) }, { k: "c5bae13ffe31737eaaf23e672c0db48ce147cd0ea474e0d4a905b536b45b1dc9", v: new $Int64(0, 8082) }, { k: "c5bb5d714606ae59034d8598442ead5f74dc3d8e9a72f8b746d447a1f9476806", v: new $Int64(0, 4861) }, { k: "c5bd1d14622c967fe7973867d4631c0d7fdfd4bde383f78ad09c9e38e4420850", v: new $Int64(0, 6783) }, { k: "c5bfebd1c866de2ecdcc925de50aa07f96ecbd7e7256649c7e4d9783a7ec0b81", v: new $Int64(0, 5644) }, { k: "c5c386058259d12078e47095adcd1cf54194f003f2c6dea8cb0fd9842d051809", v: new $Int64(0, 2254) }, { k: "c5c4fbfd69126fe3f2d29d65451b29efd45dc0d62fa92b35dbe706f1612784e4", v: new $Int64(0, 9273) }, { k: "c5cde324557c2b98d15492cf006864ec4d7841c00ba3623b27cbabc339d18eeb", v: new $Int64(0, 700) }, { k: "c5d4cd31b46aaf61b43bd9e6db0b72f1c9cf79dccf94ca42f1549f1ca84aede3", v: new $Int64(0, 2291) }, { k: "c5d58b4d4c11f7e4dcd356b2d6e6fc3f38558f696e359fab5d668218ec0f866a", v: new $Int64(0, 3345) }, { k: "c5d68abebd78923f43fb697bb08bf59d574200805646a2db3ef3141b1957f4a0", v: new $Int64(0, 9229) }, { k: "c5deaff015889b99fd1b7fe3f458bc1eab97a71bd6101f169d238325e30f045a", v: new $Int64(0, 8417) }, { k: "c5ec5297895a44eb653de2f597723c41e7cd3fa2a4c6376f27d55f5d79c997f1", v: new $Int64(0, 3992) }, { k: "c5fdc99b57f91c0e89c9b645097472613e293d969850298fbb0a704c27f7f670", v: new $Int64(0, 9036) }, { k: "c60001ed11d2430ec74a92e09668a61043e97ee6082e44089d05ea5f82575f90", v: new $Int64(0, 9388) }, { k: "c608963c738853a5021aeabea0c3b839f2d5624be0ed3dc09de17797b0707537", v: new $Int64(0, 1028) }, { k: "c609d2defb0dd8ca66d81ce10f52211ae23fee44e059bf7dd5d3481337a0d1a5", v: new $Int64(0, 4572) }, { k: "c60a0cb2dd6a494cffd8cb5bf1e32f77373be2d3888ab358d89d3fa13c0b50df", v: new $Int64(0, 399) }, { k: "c60c9302993fea23b43d7c62b4bffcf453111f8c60bd9ed0199eae67c2c7c5b1", v: new $Int64(0, 3564) }, { k: "c60f502e34a29c3d2a3e0ea77cf83bbf12e04060b9411af3c1bec7d26a7ee7ad", v: new $Int64(0, 9312) }, { k: "c60ffb74aeba4f607a60aa217f38b2e10c023e4d1a5c948014339c501c0558ec", v: new $Int64(0, 2369) }, { k: "c613ee47ee4dcebe6b064c58bbbffb69f7cbf1803e3cdb686a6595fd8b297871", v: new $Int64(0, 6390) }, { k: "c614ee3f0f8c749c291285e376d0818c5525baaeef410266b18f6ec5c987a90c", v: new $Int64(0, 6869) }, { k: "c616997b92a74bd5d4c9bfa649d726a23500cc7e469a8233e6e0ebc0dbe9b42b", v: new $Int64(0, 3772) }, { k: "c61c6a0024a65af044ada515bfc2770d0b936a1a4366168901e4d1036238634f", v: new $Int64(0, 7228) }, { k: "c61e9679cff7127fc363172c9d6b7f1e4bb8077ad37916add000265c7cab3cad", v: new $Int64(0, 6772) }, { k: "c6294c351b6b47b654ea46e9b94af047f308605c2ebcd0548ffa8560e3d94390", v: new $Int64(0, 919) }, { k: "c62a13c572d9e89f130f865787e4a1b4541fbe6139d9aa23d16b4f314687c9d5", v: new $Int64(0, 3042) }, { k: "c62e9d7f99c08d042e020b0a9d64bfd3b5e02587a950bb161e96c6679ad123fd", v: new $Int64(0, 6058) }, { k: "c64641f25a89b2e79dbabc18bd3dc1c3de27faffa2129f0741c7972c029492a3", v: new $Int64(0, 5036) }, { k: "c65568e3b09cbe44c7837d6a4ad50711c038d21ed710d89ab7e7866ac7898992", v: new $Int64(0, 2240) }, { k: "c6573af46f2e951f71209f16ceb1d13930b4e6bd6e6ef3ae80a5aba25d771905", v: new $Int64(0, 3510) }, { k: "c665156c08a34ffbfc2c837a9a1efe2d251b754cc2f6f03a396c927cf6a8b5a8", v: new $Int64(0, 6617) }, { k: "c66a10d26614ebaf8f684a7640187234a3e5eb705d3231bf362a927355f018d1", v: new $Int64(0, 5171) }, { k: "c66bf71d598d365295774a1509feba192842834db653d081b8bb4152913b1eab", v: new $Int64(0, 3932) }, { k: "c66ddc4ff13044a031348fc5a35a24000f08db30406108cc61c9af8ffe943eaf", v: new $Int64(0, 1822) }, { k: "c673909e4a87d627e145890b22391cb351ff3f014a4c7a5e69de27efb79d3814", v: new $Int64(0, 1156) }, { k: "c68a8d57ae1348146f6f7cfd4508c332197869092b9ec0d3cdfc2c2fc5185aad", v: new $Int64(0, 4340) }, { k: "c68b40b62b98598c383f5e19c64e1359f6c9df2c5af21027de91b6039c29af3c", v: new $Int64(0, 7084) }, { k: "c69acb2311ce93001a16b2a3a894351318d34a35247798ac33df8a5938003718", v: new $Int64(0, 586) }, { k: "c6a13616bddb6ce782099abbd8c998b29aab7f159b69185e8a34df1baf29d3a4", v: new $Int64(0, 7985) }, { k: "c6a14aa8037498845f33454c5e7b87cb3f739473692a50fd94e175547896bb96", v: new $Int64(0, 6897) }, { k: "c6a6c57b130052d550f84c62de30a04de09d389f110582e517093c5c9b9092b9", v: new $Int64(0, 8345) }, { k: "c6aba3faeec019613798632604d712e0331720df2d0b1bc28cf92c0624604700", v: new $Int64(0, 3700) }, { k: "c6ad128f3f0a1ef24602c48155c3973a3fbc1f9bb5bbdcda9c6873973e5eea2f", v: new $Int64(0, 6677) }, { k: "c6b150e21b782b650cad1e630792d6de1e17a8eee6d5fa6e656c294e2ac06c97", v: new $Int64(0, 7260) }, { k: "c6b42191fb9c0b97edd0f7432761f7fcd95a464a58a9573cbb7dd8730399c2a4", v: new $Int64(0, 2707) }, { k: "c6b79c0e30c960a45e8e166c49cecf07a9d7cc305275a26a6e4362ba52c01558", v: new $Int64(0, 5120) }, { k: "c6c4da09b381dda5c25e641edbd92e847f0577c500ffdf1340aef3a0ec3da955", v: new $Int64(0, 6766) }, { k: "c6d3de07bb589463d3a37a61d9efcdaa4d9029068d477a7c31d602ad1afcfd79", v: new $Int64(0, 9322) }, { k: "c6d4d178aaecb7d267224da96aaca11b8d9c641f441ad65975942875b2f5d95f", v: new $Int64(0, 5102) }, { k: "c6e18b0b88b8a7d983c503e774c27566dec23d2198a24c97b6d7ef2c861b9f35", v: new $Int64(0, 9035) }, { k: "c6e24260bd45faaaf7288c4745e0efe35ad97c8cb5cf51a4f224a2b0a5212f99", v: new $Int64(0, 1979) }, { k: "c6e95e7b12475866b1e09779c53ed0669a197d49834b881f1ee6cafc17e0cef0", v: new $Int64(0, 7170) }, { k: "c6eb8577863f4c2a6dcdebcb7fbc2d78746cea0723aa2d9aa3afd77ef715c9e5", v: new $Int64(0, 364) }, { k: "c6ebbcb289822666b24828497befaa22e625e5ed6195254d4515d12ba7b2f327", v: new $Int64(0, 403) }, { k: "c6ebf713e02589b8ce04eacb9911891d71907c6875e386754ef4cd1ea07fccea", v: new $Int64(0, 6300) }, { k: "c6ed5ae1ef35be133695c28583ef17ee525d18bf65e928adabd9cf4a5610d128", v: new $Int64(0, 2921) }, { k: "c6efcc6e96c969b3c3425d489bfd8763ff769b2fa2e8a2ef20ed690e7bc900b1", v: new $Int64(0, 5341) }, { k: "c6f852fa29a4320b16227d3c926a28dff8a5f2222d67a6b0785d095218ee9797", v: new $Int64(0, 1544) }, { k: "c704f636bb3b327de86f6a1b0da97fc21ae7ec4ee0519d8ed14709ab690160ef", v: new $Int64(0, 552) }, { k: "c7068ed6f47de821bd63c697f6134d92ad42927e0ecc84fe86519c3e4e3e840b", v: new $Int64(0, 1032) }, { k: "c711322a0922eead14a6bf5bcdfe8ffc5cf209e1dd41c97b839c529850f34411", v: new $Int64(0, 6108) }, { k: "c71836bc0d5f28436830e15372c8cff9e1f809b9a66484f550151015067a6f6f", v: new $Int64(0, 104) }, { k: "c7242c879d0d789d3a11125b4d484b3fd6152b22b2f9924c583ed3058d7099f0", v: new $Int64(0, 6896) }, { k: "c7270f0ee04d0127821f6e3f9d71caed408480e4f31792d5de86764b9900dbbf", v: new $Int64(0, 9494) }, { k: "c72748cd18ae7540879de1a22ece083de8ffbafa335bbad0600191177e8ac99f", v: new $Int64(0, 537) }, { k: "c737fc83b9e9c4bdd1a1d7d89879aab4e152da265401730e92452de26bf694df", v: new $Int64(0, 7314) }, { k: "c73cb7342a582310a510238c75bf55e8948349c2bd356189db704afabb14c978", v: new $Int64(0, 517) }, { k: "c758edbb4e0d0c6297ff13ccac5f1615c71260fcc0fee4e81bc64af589b9d0dc", v: new $Int64(0, 2910) }, { k: "c764820afd68120dc039537d4dbc15fde57f2f410a3a9d32c3b4c4cc8c3faed4", v: new $Int64(0, 9775) }, { k: "c76853d9118c07bd7f6598a535ed909e77238d1d42905daa7662564780ba4ee6", v: new $Int64(0, 3079) }, { k: "c772a72bedc3384d006ef1d0e7e2c238c83340b26e2e2e7b2161b2c6c97d4f06", v: new $Int64(0, 1602) }, { k: "c777e02a28dc964883a7ca93b18509f6e5c7bb8d9b741b37633b0bbb55910fc3", v: new $Int64(0, 1174) }, { k: "c77acd5b2d5ed6668f6c9881e7624e1e2e748d5bd28d90c73f2a5fda98547fda", v: new $Int64(0, 2918) }, { k: "c79ee89ea0883bb19204ece8f95230d64b1a85ae4e5f14171f9c005f741b311f", v: new $Int64(0, 5602) }, { k: "c7b52be1fa25f35b096d902f8f50d41168490276213838713f2b1ed36a88ba98", v: new $Int64(0, 2174) }, { k: "c7b573b53f3cee8a58ed125726f4f8b05189c3a9d183867b8ca23d9728e27197", v: new $Int64(0, 4005) }, { k: "c7b6552a3981249a025ebc7970a4eabf385a4084b282eda5c31d5a00757e6021", v: new $Int64(0, 909) }, { k: "c7b875ded0a517f41853adaa29f563233d40a899e19261f3d5a73541bd6235e7", v: new $Int64(0, 7548) }, { k: "c7bd09e8abc4a8db7d7a3b4feb8a12bbf767d459900ac70583c546bf089380f2", v: new $Int64(0, 6442) }, { k: "c7be829eb73a6f8c742382c36958e4a54a0e840d32a2de9454ef879ffe94fbb0", v: new $Int64(0, 2020) }, { k: "c7be99304d882156fac8e4317ec27d3d146d110959b1f78dc3a7b9eac26ca64c", v: new $Int64(0, 7818) }, { k: "c7c519bfff5d477e0c643c23337081f040a686275cad6c9436e4e01b819257ca", v: new $Int64(0, 535) }, { k: "c7c61cc44ff0b805a72e446e68045fdf527a40dedfdab18076e9441ac7539d0c", v: new $Int64(0, 9178) }, { k: "c7de0976e68973d535f2ae0e95fbb085ca661b5e6cd5af88a3561b02202c0917", v: new $Int64(0, 676) }, { k: "c7ed656b19874db69be040ece9ce8b56dd0d76d5576a7d4f83f92af4b3d45118", v: new $Int64(0, 9928) }, { k: "c7edd2197882242caa04e631b3b3f1bacec91a7db4cbe188cb1467bd20dceca9", v: new $Int64(0, 6322) }, { k: "c7f62ad20571215ef8096a681d8358d6a53ad5073ed0f3f5f3905ee85fc0ccba", v: new $Int64(0, 7463) }, { k: "c7f66c563120140ea8d927c19a3d1b7d0e26d381aaebf56b7902f1515c75550f", v: new $Int64(0, 256) }, { k: "c80b46ab2ca69fe9214951d7afe2e11c5c64e8c68b2824542e62cb64f85d6374", v: new $Int64(0, 5582) }, { k: "c80faa43f469df4e2c7fe393b97df78991be75141bc2c1fe691207b84773c273", v: new $Int64(0, 8359) }, { k: "c8136308e1e05e47f19f7d02c24ca06f5027cdc6aaeb84de48c32db6f9ff94fa", v: new $Int64(0, 9108) }, { k: "c83cfad2b8361f38f85cab4555f3ba82d2669cbccdd36368d5e6f53609595895", v: new $Int64(0, 1977) }, { k: "c83efa7f36c6675a355491d5bfa84ab4c9b55fc340181c976cfec6e4efac850b", v: new $Int64(0, 4642) }, { k: "c843438c706a24263cc4ec73640cb3f9f067b73dfaaf33b9dfa104b6b744a802", v: new $Int64(0, 4587) }, { k: "c8506e02dfb87f43556c850d31754b027187fc5e0d9f3349f7029efb78fdce8f", v: new $Int64(0, 9419) }, { k: "c85311a7eca37367a67f9aea89c6a526031ca50a2ea3ffad0d02975d3596f4ed", v: new $Int64(0, 3084) }, { k: "c85941267e9781f553ad7d5fc49c5d1ba3cf57b93b8d1461de972d2556eabb4d", v: new $Int64(0, 4813) }, { k: "c85c66b8d2c7c2cd03b7b3fea8d9d5c470cd7e867a1390f3d0e7306ce958ffbf", v: new $Int64(0, 9578) }, { k: "c869b63bd785d7a496cbfadca9201c5e48081155f28bdcfc224e5fbaa6fb6499", v: new $Int64(0, 4305) }, { k: "c872071b3a5ee39e82f50aba7f79c057f3e6468c7220d1a4d72a8ab2cb977df9", v: new $Int64(0, 4471) }, { k: "c87477abfe6cc0405c2cf81052efecfea822b3ae17d643ded50f12878965d897", v: new $Int64(0, 5727) }, { k: "c87e0c26d29f6686e7bc30a54fcd2e6b220f6355998121d8fb3623c2930b032f", v: new $Int64(0, 4996) }, { k: "c883ca897a84314a715c974f5696405c1022dd277278e2f9cedbe89fa8b9a12c", v: new $Int64(0, 5403) }, { k: "c88fa9062eb64c180ea3a7a8c0c3609f253d4b986737d30fbdc891ba7755d04d", v: new $Int64(0, 6968) }, { k: "c8954e95cb37fbbc0c3cd8298a9e01bf60040be47f3e623d75ae238a8b21dedb", v: new $Int64(0, 3524) }, { k: "c89bf5bf706c16761840765b3af02c2ef39b73fd7e747e0e9dd516f1f072dafe", v: new $Int64(0, 2655) }, { k: "c8a04e9cc2cd62372c0a27687f280bc0fcf2167e74351fa8ea8c8621427fb407", v: new $Int64(0, 2036) }, { k: "c8a8cd98c99b290d2e52c0fb18670a14b19125d81610fab3db9f5a45c8618413", v: new $Int64(0, 8576) }, { k: "c8ac36b1948b5180a185ea7aa7cdf32520e6f4bf8f645ad33c5db17c7d2203ef", v: new $Int64(0, 9137) }, { k: "c8b1988f7b00e49efd51ed4f6525b258697e8693200630beaa7b8521be1f83b0", v: new $Int64(0, 7103) }, { k: "c8b63e64d5e4235077ac7c0b498eacfa667eb0b63f87aaafb7ff52fdea4afd84", v: new $Int64(0, 5540) }, { k: "c8bfb6c419ce0bb56fd5de0a28e97f9dc5f15042288399430049589a6cb26232", v: new $Int64(0, 9187) }, { k: "c8caab02c100e00fe223729c79a56c71d7eb1ec69217f4885206b648d9086fcd", v: new $Int64(0, 1610) }, { k: "c8d0480130ed903a61b4d4a0e0571da7d16c25c18c420e44a47dc840cf3ae793", v: new $Int64(0, 3169) }, { k: "c8dd572e115232ddf7e54e1a66825dec012d79c7a3bb391163efb01c64e1828d", v: new $Int64(0, 412) }, { k: "c8df8aa249976f5f6b401431abec1dcfbe620e63d7aee4d89811a8ed7e826104", v: new $Int64(0, 3031) }, { k: "c8e15409ccfb688b0814a604dfdc51c92e8e044f92c7e779a8154c8538ec01cf", v: new $Int64(0, 99) }, { k: "c8e48edc53752c9923d6ee4092ea4b73f92e15ec9e7674a816d2dbd8f59f3462", v: new $Int64(0, 61) }, { k: "c8f89ae03c0c37d4a7427b8c3c5d1025a388a21aa74d4f592c0a8ab4d4a69883", v: new $Int64(0, 7488) }, { k: "c8fcf8fc7d0613b2daf2c037cd4084a5afdd890bd8485471685cca65727b1712", v: new $Int64(0, 3171) }, { k: "c9034b41eaf808725af968c79f512c9bb84e4c521eede7a85f080ae7b6a053fd", v: new $Int64(0, 3467) }, { k: "c904ea29ea229322b29fe304ea5df691a4c4206db1c54b934b23b8ac5da1e34e", v: new $Int64(0, 5335) }, { k: "c90f841bb6aee64ede839f3b1f7c65789910e3fa01721b203abdcff08e5cd308", v: new $Int64(0, 913) }, { k: "c910ced1b4a616743f170abc4fb5d240b128e7ebbdbd63ff6b6f5e95e2c608d1", v: new $Int64(0, 784) }, { k: "c915eb5baf639863eaec36a82bdb314686a68095b3c014a616d86793e11484da", v: new $Int64(0, 8529) }, { k: "c91e90b258e398501a0544617c32ba7e5e10f9be2f83bb2a686241a3a6f41f76", v: new $Int64(0, 4378) }, { k: "c9273c65088e4f7f68b240a1f1d1c57d8581fba8a24c05ea865e4801cd6efb71", v: new $Int64(0, 7179) }, { k: "c92d517a947d969a95693a9424f60d1d03b08a29e1d322996126e8d0e40346d5", v: new $Int64(0, 4386) }, { k: "c92d803dc11041d50eb82052ba26d7986606e901c4ed16d3accdc53f3f38f366", v: new $Int64(0, 8420) }, { k: "c92e5317dbb0de9edd22a6a9afb754d2bb896fac47629d20341caddc78b4f62c", v: new $Int64(0, 8601) }, { k: "c932616bf61586910c3f3a6660d9dfe0267d637e84f756182ac1ab8b48d50e24", v: new $Int64(0, 4927) }, { k: "c93a85916abed4713f8a97e0245899e0618827faebaf6b6385578235dbd978ef", v: new $Int64(0, 9280) }, { k: "c942a672df3834ced08262fd02e6577c1b2ef6aa4570ae3f4073197b04b12df9", v: new $Int64(0, 3052) }, { k: "c94d09ef9368935681f5c192addf43514a02c01a1eec8fde5142bdb213f4c00a", v: new $Int64(0, 6473) }, { k: "c9569caeb38fbafe8b2c39461bf4be186530e90807e53c69e9afcfd734b3a6f0", v: new $Int64(0, 8079) }, { k: "c964234f52e8194786bb376ecf1e3d39729e2e3dd7ab2436a69f9c6235d21671", v: new $Int64(0, 7452) }, { k: "c96fe6800f6d5505d7b74bf949ba1a7038bf6773e5e5d6a5e3003bde5be22a1f", v: new $Int64(0, 4179) }, { k: "c97ba742690f0dadfd74b519c74dbca1f27f83d3e411cf70509b415fe9818112", v: new $Int64(0, 1249) }, { k: "c98359a98061a9e98e4c0296308d97f730297efab45480e353e8f89b5fd63b4e", v: new $Int64(0, 1563) }, { k: "c9871ca9e2b33da6df5e9fd488605d69d74597a6fa0f04a13c183bc0d76eaddd", v: new $Int64(0, 9292) }, { k: "c987d2d1e44f6f29ff9d067a8d5aa8b98888be5a8569b9355f3a2c4497a976f2", v: new $Int64(0, 2866) }, { k: "c992bd952d86f2e1c1df351cc1995faf11907a2e4c8f62ecffaae6aae239db71", v: new $Int64(0, 6901) }, { k: "c99da9ee9118e46148cbf499e9046f47dd234f2ef850be6656b6631da09dc7ae", v: new $Int64(0, 7162) }, { k: "c9a1861b659eb13b165e95e6266209041eadba17afdfe76bc70db505334e674a", v: new $Int64(0, 9025) }, { k: "c9a1b71e5e56c2621fde7ccb26588e2dc6d44eca5e1b59f6eb75bfe0cedd0978", v: new $Int64(0, 613) }, { k: "c9a3f86aae465f0e56513864510f3997561fa2c9e85ea21dc2292309f3cd6022", v: new $Int64(0, 2) }, { k: "c9a44fe6dd78e3a6d6e725ff515628ebd84b5530e90f5fcfa0538ec366318bf1", v: new $Int64(0, 9436) }, { k: "c9a6442909178d29002c7c83792b4f38efd146ba1f509133f0f9a88e659b1512", v: new $Int64(0, 7212) }, { k: "c9ac76ff0d357bc8800d1e3baefac6c520aaa54b0bf12ad787b8c5626ee79c6d", v: new $Int64(0, 2571) }, { k: "c9ae539e56a37c3192a0e600d083219f956cf038f551e41e7db419fb951d32d0", v: new $Int64(0, 8265) }, { k: "c9b176fcbcf4e7ad43ef4f85825b5bf82c498ae7c2c647b92d2985689b7fdf60", v: new $Int64(0, 9816) }, { k: "c9b1c1a7e34f162812c9afc2905a84008c60e5316dc72253966bded1743ac145", v: new $Int64(0, 4605) }, { k: "c9bae55f1dc330b7182be6a3a7aba639dc622c0086d4a4ff18233487b36876e3", v: new $Int64(0, 9861) }, { k: "c9bbc28f21360ec2dfc7a1d3c07688ea282ab95bddb1470adaba22a9abe5b401", v: new $Int64(0, 2794) }, { k: "c9bf315c6355d37a610c0fbe35893ebbd7018103d0b2b7c6baaa8c8032b1c99d", v: new $Int64(0, 1016) }, { k: "c9c5fbcc887ed351fb3af0017154b3f17b011c91f82b25aaa833f8be8e38391c", v: new $Int64(0, 4284) }, { k: "c9d9727874f2f905ce15a690c6116551ba625ff6408952c4ccb14a5f51fc0258", v: new $Int64(0, 1196) }, { k: "c9df26b429f1339cbdea139f768ac2827c3ef45c3222663d6e20cf18268935bd", v: new $Int64(0, 2843) }, { k: "c9e2b28f2abf13c4af7092205309c2e23f7cce99144e6715b8bdfb3c4f895238", v: new $Int64(0, 9902) }, { k: "c9e70d50b5708d3b1a29288fb4a452e94b01a7cab7374b3d5414a1d662a3e362", v: new $Int64(0, 942) }, { k: "c9f402662889ab1a5403d536da68218bc6b5bd879fe055b8c362974c6cb4ea45", v: new $Int64(0, 1830) }, { k: "ca05852df4be0ac69f9e89b82d297e42dc3d0194074a82f5bb0869b5d0f14b2b", v: new $Int64(0, 5721) }, { k: "ca0c47de1f4996a9874e0b93a604caa84888667b2e89ad0c5cd2927f01d1bef8", v: new $Int64(0, 7020) }, { k: "ca122f0547a586c326c703cd84fbfd3bc427e207afb2c0e8fd3c6ff8eb159803", v: new $Int64(0, 1175) }, { k: "ca1559fc211eeef6325cb6ee6d0685d6b899ff8ca816333db0ef99b681ac3248", v: new $Int64(0, 4352) }, { k: "ca198c71e455e8059c448f66921ab6c5046f2ccab875a9d6fa23bbc52a63fa65", v: new $Int64(0, 9583) }, { k: "ca2a63620db018480f795a064cfa7993c3ee56cff50783c39aa28644d78c4f88", v: new $Int64(0, 4252) }, { k: "ca3074511b92669d7808bb0d1daf25919f3f0c5c2a668f185272b8e71731d347", v: new $Int64(0, 3305) }, { k: "ca32c689125ed88fc949dcc1509c4b4664225c7e9940d36d049c5003e5f2aa32", v: new $Int64(0, 1316) }, { k: "ca381b8e2778591ae1c44b57871549d8f70a766f3e5f8342087ae402412b7d88", v: new $Int64(0, 3259) }, { k: "ca39c7b0d2ebe86264a878b7c7fa832f1f865d64cf10adc327f1863d3068e3a5", v: new $Int64(0, 574) }, { k: "ca4520bdc05e48fd44a99ce2a2c209d23b339894aa679441f465fc0077499a14", v: new $Int64(0, 2906) }, { k: "ca4527535a0dbdea3ed557730f1b9c4a05859edbf71a91828e3446b36ed18d50", v: new $Int64(0, 9559) }, { k: "ca48045f790145a1eec3946dfd73747fde0fdb4238607e0a203f8ef5bef90e8e", v: new $Int64(0, 544) }, { k: "ca55c4196e794c4ff81e196b63fca82adc8531a7f2c5627ab40d736b0db427f3", v: new $Int64(0, 1891) }, { k: "ca5b247776da489fce292dc6721b234ae294a3b16b14a452219200dec0d4b3c3", v: new $Int64(0, 6361) }, { k: "ca5c66aa06433ccc8dc615cbee3a77d9ec8b19fff7f8f1331c3ca42350c10247", v: new $Int64(0, 7121) }, { k: "ca64b1932e440c17c668aa309699d65aa6f6880ba400e2b1ceaaa4a11c498a0d", v: new $Int64(0, 9742) }, { k: "ca65c776472f14d79311a66fdde0dd478edace9590cb72ad17d8c31917c78fad", v: new $Int64(0, 8478) }, { k: "ca65dc0386889573ae28b7cc39b2cb0c57d8de22cfc385208b81dcbf906d2ef8", v: new $Int64(0, 9262) }, { k: "ca6add6cf55e5d39cfbe1f225fa88b2b00bbb3fa2595df8619556862b392e5c9", v: new $Int64(0, 5549) }, { k: "ca6c95a08aeba1d6b0504a7f02279cd53ba392f2dbc873a27e402e858e168c29", v: new $Int64(0, 4775) }, { k: "caa392222d6552a95b9dba8a524404f10184c8429a41bb2770aed872dcd221b9", v: new $Int64(0, 7586) }, { k: "caa4e43a6dbcb067e15f38867136b2f2207347204451c13d746325b3794ae623", v: new $Int64(0, 3332) }, { k: "caa63baa8554170088ca0584a35a4859f22de123c654c6a76cd2b320ce4c9d7e", v: new $Int64(0, 2604) }, { k: "cab5f16006371d237d914717f00dd8f760a494eb8d03418180b8e84ea3a6d1d3", v: new $Int64(0, 6686) }, { k: "cabaa7a3dd945098e0f93a5b79a31b9b340262ae0f22b289d70c4b9cc20efd7f", v: new $Int64(0, 4670) }, { k: "cac139b677096d7351f415b5fd3e7ef81bf91d8a4081a70c7cc8de3875243197", v: new $Int64(0, 1154) }, { k: "cac8356daddf27005cef0abca0eebc513d2342e5c46cf75a12c48cb4f3f4898f", v: new $Int64(0, 9596) }, { k: "cad3d41a798a719052dad1df372c7e7a7f60b3d38219659d56e6c6c85dcc0396", v: new $Int64(0, 484) }, { k: "caeae8fd3e7f3c1594f2422f88b307835b547d47fdd093d7458dd921d7d2f7d0", v: new $Int64(0, 1540) }, { k: "caec99230b4672089be8365b416272e1c030e4af4949f6f35ce21e2c92765de5", v: new $Int64(0, 1241) }, { k: "caf294f8b6a91047cfaf47f02141f836b5fc79135fa4182762f5c781ec8b3b17", v: new $Int64(0, 8647) }, { k: "caf51b561dae6f1c07c74ec7cbdd4d23d7e194d797d0fe678a962b51c5e465dc", v: new $Int64(0, 5777) }, { k: "caf9f927110ffb1fed807ec55a6068a6903a790276e784abc2da625b3388731b", v: new $Int64(0, 7380) }, { k: "cafc961bc428e302939a302956130606464453db247731729be35ed35d02ae53", v: new $Int64(0, 2925) }, { k: "cb002525786a0cab045b0b9b26e8198e6ed01658b6aab15200cfe3c3917379e2", v: new $Int64(0, 5235) }, { k: "cb061c8a7b43b050feb05b1f8f6cbfd8976c9cc3261db51aed9a5d83704f2593", v: new $Int64(0, 6246) }, { k: "cb07e59c0fc0eb2c299745fcb6ef4e3f56c743b94eee0eb38b5b2bb3a49222da", v: new $Int64(0, 494) }, { k: "cb09c2ebf21291cd64079de9ef3e7fb1ad8a4e4a36598883406a84bb56612da5", v: new $Int64(0, 7852) }, { k: "cb0a140589b01bc624c26b3512798dd8e74ac4a4f01dd5e9e275cf027510fc4e", v: new $Int64(0, 1505) }, { k: "cb0e6b13ca044e3b23fdbbdf2a21b1a572fc4d78fe197591bc1ec34706f8a264", v: new $Int64(0, 309) }, { k: "cb101703472e9e068051b96f1d7fa3fa22886f68256dd1697719ba9bcb7b453c", v: new $Int64(0, 4693) }, { k: "cb178966f73ecd7aefcfab541ef4644c3ca882d9af58d57caab6e420160676c7", v: new $Int64(0, 491) }, { k: "cb1b07ea68d4d0f423b13cd54a141a72f0a85580f96d5a082623a79c42f9e473", v: new $Int64(0, 2412) }, { k: "cb210084752eff1ff4c9370f92c3f8c54b2fa954dc1dec6776fcdf0514a983f6", v: new $Int64(0, 8197) }, { k: "cb2331fa5617e4d7a84e5798feb44a32157a1a49c26929cbaf11aaab2804d36b", v: new $Int64(0, 3991) }, { k: "cb278889323e99ac674368d1e3e543e0ab20f5be7029d9b60f84f15526548e94", v: new $Int64(0, 5180) }, { k: "cb2968faffd75d8e56d693f92d08b72ead6bc155a71a60f489229425f722302e", v: new $Int64(0, 7786) }, { k: "cb2e189d5f05847440cb60830f234c854e67331ffa2a6711b824b329ea7418e8", v: new $Int64(0, 1993) }, { k: "cb2e59da684bf7eeefaf861cdf2134066e30f08d10ce1bcadc987b802bae6269", v: new $Int64(0, 458) }, { k: "cb2e7277de6a943b5a8274f60b15825c2f1b08132ffba41a85bc6bc389831f03", v: new $Int64(0, 3262) }, { k: "cb2f212b0ae78e3e2ff7942eafcb7996016c131dc7db6bc19d6b5953d7eaf636", v: new $Int64(0, 2304) }, { k: "cb325e3378133921240135daf41013fe6808d8da8628516ce64758f5c8047299", v: new $Int64(0, 4445) }, { k: "cb351fa6fa6d8ffae27d1459f3c396b84f7631fc1b9968b7a08ddbf6608bc246", v: new $Int64(0, 5660) }, { k: "cb3763ec2513343ce0e934f96ad73e19095ddc5fde7f72ddec505c9f07411dcb", v: new $Int64(0, 7876) }, { k: "cb38952817405466bcfa9d36a8254d56ca9f76281333d77aab7fa61a774161d0", v: new $Int64(0, 5389) }, { k: "cb3abd5170aa262e0f3938e93838df088fabea3ddc84421d3cee619aa7085413", v: new $Int64(0, 960) }, { k: "cb56ecdac835b2ee3891d119bb1606be7191f9596d371cef83a4dcab5002f825", v: new $Int64(0, 2797) }, { k: "cb798152c7524667edd16995d1d84eb71b994ee3abbe5b2a733d6ca69403300d", v: new $Int64(0, 8661) }, { k: "cb8477c10a555dc268075e77a622e2481217062fe19cf8e3bf61b5146822dae1", v: new $Int64(0, 6433) }, { k: "cb87c6032c5853235434ea8cf33357633be3bc0b6f663fa518bbec8e1b240605", v: new $Int64(0, 8879) }, { k: "cb899ce535494e1783f9ca4e12bf5e965c73020a822562b97c2395d3e2a10a8d", v: new $Int64(0, 3080) }, { k: "cb8ba8cb5231743865bd551221aa46ecffce937ea69133a54b70aebe5bd85886", v: new $Int64(0, 9061) }, { k: "cb93a3bb81d502c9e9c6442d908aed52a1a56144470888ad3da557604de5e4e0", v: new $Int64(0, 176) }, { k: "cb9e25cf682189a141ad5b428c2f0e5cc476c2cc575690a7aa3221879b9ed3a0", v: new $Int64(0, 1969) }, { k: "cb9fe57f066794846868e85afd7e7931792f42e25a39622576c750bd28cfb9e4", v: new $Int64(0, 1933) }, { k: "cba15e6d06889b7ddb3c71aa0f3095a54e28aa6980be90bff3d21ccf4be48302", v: new $Int64(0, 1556) }, { k: "cba270cc125fe30f83acce65ea2ffdcbea85ed7f823e5c64560c140bae53022f", v: new $Int64(0, 6704) }, { k: "cbaf33e786efc3ad9185fce2cca0dcc209e789e81e76e9c5264cb6583fbb1bbe", v: new $Int64(0, 6059) }, { k: "cbc17655a374db2d00d5cd839bfc9518f4c789973b9a6f6c839ff364aa2338b9", v: new $Int64(0, 9512) }, { k: "cbc636f98b18a5fc23743d27370cee627448ab59ec0ad14fe20b3c810e1a5d44", v: new $Int64(0, 415) }, { k: "cbcc3fddd8c63a80eee80fc675963f39c7fcd1edd6546d4feacd9258b9dcfb89", v: new $Int64(0, 782) }, { k: "cbdbac3444ec61cb7a2d8fc76ee7b199e22a6bd3e38a3cbafc1f74fd6246831f", v: new $Int64(0, 312) }, { k: "cbdddbb8342d4be87e3fc5191a1a3fb1af96ce465c7ba87c23e66bcc9b86242a", v: new $Int64(0, 2102) }, { k: "cbdfc310ceea9c63dd7552cb20e396313e882f72f3618aefe56e9599842ee8f6", v: new $Int64(0, 2586) }, { k: "cbe1edd1ca0094c96aa27c1e186b2328adf940cac2a57bc449215d8826efb75b", v: new $Int64(0, 3214) }, { k: "cbf9cc747cac5a77c259fe54a536f83eccf176394423797f271ab82969a24cc2", v: new $Int64(0, 8542) }, { k: "cc07eab3eec95c1640bf13f5c3accf6b80c8c8ffd413d2f8e00c14ad9b370a85", v: new $Int64(0, 4404) }, { k: "cc08984cd6cecec36ec7039fee7e50422d96f24f24a87e7f0416787f3b1c10db", v: new $Int64(0, 2104) }, { k: "cc09894b42ce85f95b268966845c6be879610e07f760e63f4ba894ff330ad75d", v: new $Int64(0, 125) }, { k: "cc239d111ce1550d0405dbbcb80c3c983c69a797487cad6c850253a69ea525e2", v: new $Int64(0, 2414) }, { k: "cc27f19dd6921e84e1820efd1418aa9dab1628d6322a5864ae25b0ea2f20a81f", v: new $Int64(0, 5346) }, { k: "cc2b1f8cd4117a8b579f6839190c8efe713ee4f50770061b3d31338fbeca02cf", v: new $Int64(0, 3309) }, { k: "cc454368cfc51c76cc89f9dc51a7e4e434feb1e08a7d6a1267e335d06defe1b0", v: new $Int64(0, 675) }, { k: "cc571c66025ce7bbcb29dc3e9309411cffd04a0b3a1ccd463b45171ed1466e2c", v: new $Int64(0, 3254) }, { k: "cc5a581acdf23c67b1d8ab73ef251424e61d5cb9d4e2cc9280510c3bfc44d37b", v: new $Int64(0, 5940) }, { k: "cc5a75d7c4a217ccd8d155339a1dccff594be32948f5478a44c59621af8f6f11", v: new $Int64(0, 3238) }, { k: "cc5fa1b6e4422289d835350219bbc39738abbcb795711a4d628bed246d508be6", v: new $Int64(0, 9681) }, { k: "cc613540cd8c99fa4647e6e83e969761b17515dbe1896fd0a3e4358ebca65c31", v: new $Int64(0, 255) }, { k: "cc6d5bccfec63b3e984500c6d807fb62608c6a6753d001617ba3f4d8aab69802", v: new $Int64(0, 6908) }, { k: "cc72b79e947cbf5a7405845309925a643d363b7df9b791c9f3c64fca4026c532", v: new $Int64(0, 5743) }, { k: "cc75f8d08ecd71bf03fac7f3fea0f47e2025d1a0af8740a65f1df056e22a1184", v: new $Int64(0, 3984) }, { k: "cc7d3de29d5c7cb24ece5ae4e4fce47a09a80df0a080cf302b5daecbfc029786", v: new $Int64(0, 9652) }, { k: "cc7dedec06f2e54b190a5cc1fcdc4262b7343981bd149ead98b7fee952428be3", v: new $Int64(0, 204) }, { k: "cc7e68df24d916c379c528822c6316f7ca4b0ed945b930362d63414f66233a43", v: new $Int64(0, 1431) }, { k: "cc892a4e9202b68ea9e0ebcb05a0ba22ef1b32fa7c01460c97a572baba9f9ee9", v: new $Int64(0, 4402) }, { k: "cc8a8eb3922aed941f514e7f8bcdd1f25c5e79514ed638a7e52158da63f92fb9", v: new $Int64(0, 9542) }, { k: "cc8e0f4a137b210fd1ed95194ec559e3b9c9f7f4bb7543eb27544ccaf5c8ba58", v: new $Int64(0, 1018) }, { k: "cc9fa8d54acd6fae60580f21d31d4a10e70cf94d46d63cf1f6a9883ff5d9d11c", v: new $Int64(0, 1630) }, { k: "cca00f70748c1681fcb4f1ab787f7677f011dcd9315b35d550105c66978574b2", v: new $Int64(0, 8326) }, { k: "cca2479cf76165d2a03c693b713d4c60de93626f95a99b10bb6b316b160873b3", v: new $Int64(0, 1495) }, { k: "cca85366c07b3abac307bacd3d4a50b4a468a315bef954294f05b2ca82c10c59", v: new $Int64(0, 2912) }, { k: "ccaf42d77a14b4492863bbcfac2e906e06f536b1952116d2bd62d85c1c1468fc", v: new $Int64(0, 1823) }, { k: "ccb442ffa983f0777d745bc1c6b75df720c2ec9eefd110f711f569a0a82e3974", v: new $Int64(0, 2439) }, { k: "ccbdf1e4831727a8dc24741d69d7385ade7b87b81d326a8844d4969134effe92", v: new $Int64(0, 5600) }, { k: "ccbfa5b1eef5b5d5c3757545b33534a3ed5759cc385e80388f20fdd1530e24f7", v: new $Int64(0, 5572) }, { k: "ccc931cb6e6bc9478489c9bd74fcd9d679df909fa779cab16263ec5b01383547", v: new $Int64(0, 8131) }, { k: "ccccc0d7d6755d91e6cd538c6d14ff8649c0bf6690cc2669376d66017c13dce9", v: new $Int64(0, 3277) }, { k: "cccf78a1767253bad0aa3291bd38813df635739056e481d09c8c6fb1ff8de476", v: new $Int64(0, 745) }, { k: "ccd04139bfbd1a623556e8fc7571fa3a57a2f6dc42450036602b92c1e9658808", v: new $Int64(0, 8788) }, { k: "ccd4775c53a85d569351e3510c44a4ee723b68e73a2c688bb3772e2a4d78e20c", v: new $Int64(0, 8533) }, { k: "ccfa171724ad86e7f0e185122ef22e8d70005bc471de5c16fde02a6620c0e20f", v: new $Int64(0, 228) }, { k: "ccfdcbe15528b3d04700ab8db1c918755ec007ffee4bd79d2276032619efd5e1", v: new $Int64(0, 1308) }, { k: "cd0449d3198ddf740cdfe349eca36b0d89bc09cd087f9e9cd251e178750f4489", v: new $Int64(0, 593) }, { k: "cd08436c38d30635f7935a513495a55e13642b8905b5509d554c75b2b62739e4", v: new $Int64(0, 5704) }, { k: "cd1d23af8d649fd24ef034f5a2994dd66aefb6905a585057f94a4b6cba4291c6", v: new $Int64(0, 6243) }, { k: "cd22aba6351d9f3a29df862a13b9a95c7870e5b5e6ea7b57e3e780392e17f1dc", v: new $Int64(0, 7324) }, { k: "cd254ac5c7755f309b7fe495054db61e473f8a54017f7bf24007c95bfd5dd003", v: new $Int64(0, 7087) }, { k: "cd27d81bfb01015f344731cd817d4fed69b3448d60e1647bbc7e6e1e1392b785", v: new $Int64(0, 8546) }, { k: "cd2a4df4ea2cfbfbf21f260ce89d82bd973b3041e092ccccb1ca71e26fcbfdaa", v: new $Int64(0, 2594) }, { k: "cd3a470afacffb9a9070e546693b02ab30b61ba47b338fbe156f19a54ca93f46", v: new $Int64(0, 7115) }, { k: "cd405bc812a11b16462425684966dd524a571259b533bcca1fa30ce16044a803", v: new $Int64(0, 1132) }, { k: "cd41cb29a61f2c553a584942c26b1a684b0dd0bcfe7b414e1d08f86a80db3c59", v: new $Int64(0, 6201) }, { k: "cd4319adf885df99cf1f2913f9ad2b4062c8a95284cb9394fbe3deee36b132de", v: new $Int64(0, 3311) }, { k: "cd44d132862eaba480e31f0ecf0bb892564dcc2b47b151a0b8e21411184fd58c", v: new $Int64(0, 5731) }, { k: "cd4c6aee66dee0e46991f125ccfed036c3ccd59fd3698ba7f36ec4b0ac66bd40", v: new $Int64(0, 8823) }, { k: "cd567d327e7c01130b4fd7d68b3b033780d3fd818f9ac099cf2fe86d1431b493", v: new $Int64(0, 3540) }, { k: "cd5c48487439d7a5cf7ace91e04252e66c98e655e4700e6915144fe00d3dbe6b", v: new $Int64(0, 3728) }, { k: "cd5cac360b1defe24a9237f30ecf892da10babf82f68c6eb3126253d691ffad6", v: new $Int64(0, 624) }, { k: "cd5ec73bcca6837a446498487a8ea9a634ac64b20a9fe0cb0525b5d06a869765", v: new $Int64(0, 7285) }, { k: "cd619df8c59b59ad5c505e4a665843a0125488b1be7e70b51b55f30dede00822", v: new $Int64(0, 2052) }, { k: "cd663251cd01953a9cd485e3ecf8ec1d3dc38fe3955dc05f274739ba0da428db", v: new $Int64(0, 3334) }, { k: "cd7cce1bdc6c6c3c10974291b9588644eff196a0a290be6b09533034275c72b4", v: new $Int64(0, 2708) }, { k: "cd82fb82f2cff51e7c0570eaf7712c3f5e02ebbbdada50d391ff9dceb83a89ac", v: new $Int64(0, 1913) }, { k: "cd83a92973d7d6ce8d7e17cc4e87e45e59de1321cee2d0c136d9075ba0978003", v: new $Int64(0, 7831) }, { k: "cd9689dfeb079ebbfd9fee5c1a24d34c066a32f5fdf5231578c3f0a52ed57816", v: new $Int64(0, 1952) }, { k: "cd9a4fe8829bda56aed6c2f3c01a3a9adbccc00a3f6c33fd83ae248abacc8a98", v: new $Int64(0, 9254) }, { k: "cd9b26b3b1759a8d333bc6584566e02c0bcd8d5bb876674f7b7960305b51aa35", v: new $Int64(0, 2618) }, { k: "cda506ca81ca5ea615fb3c499fe3e98cfdc6b5bd9f9522617ab5b0aee77d7598", v: new $Int64(0, 9286) }, { k: "cda519dff622becc366433cad6312aaf93af47df791a624235e19df61fed8704", v: new $Int64(0, 4589) }, { k: "cdab75a0c1d7cc1fe4aed29266adba95d99baa1277d7177187dc8621325452b2", v: new $Int64(0, 1465) }, { k: "cdacf574f25009048dd06744ca78ad0ebabe650003469529eb8441ebc0d816ef", v: new $Int64(0, 4407) }, { k: "cdafa0bbfc512c6d3e97c37d342ba4a0da10abbf4a8a6b4e5ba4d3b38adcbfb6", v: new $Int64(0, 2607) }, { k: "cdb3bf10b41d35b4fcc048378b8dd4a5f701cede0a6d1dd353c1e395dba12e85", v: new $Int64(0, 8049) }, { k: "cdbe81af2204ebfbaab025cdf74af6b5f014b7ec83f2df5af27d2656894c03c1", v: new $Int64(0, 4675) }, { k: "cdcd86930fd0b9f7b9583629e7a7d9eab8c6bbe47c632ebc069eeb4e8476582a", v: new $Int64(0, 559) }, { k: "cdd18da131a90374229cc3b3f49e3fe0ab24d1295bacc8d41d090ece01615340", v: new $Int64(0, 3603) }, { k: "cdd2bc61161092c80508e1179d1ba81878b3c065214b060097f3123ea141e16b", v: new $Int64(0, 4117) }, { k: "cde0e3a72bacea6a109e734587cc7ac9991eadfb284fff359fb81b2ca347aa1f", v: new $Int64(0, 8648) }, { k: "cde3a5a918b7ce944a4a9fcc9003d8c34dd24cbaa573cfed383e860385fb2f0b", v: new $Int64(0, 4783) }, { k: "cde4afb76d076985a511bb615a6b7389a5b6223c68079619dacd11628d2b52fc", v: new $Int64(0, 1928) }, { k: "cde7deeebc37f39f51ea2fee6525e07eeb30df7dad7bb4c5dd4269cc4fe4a654", v: new $Int64(0, 7934) }, { k: "cdeb38ae5e8714ab6f3f1f52d5ea6479523af58e69119983487bce7fbb433113", v: new $Int64(0, 5633) }, { k: "cdf8cb5e387598a1bfcb3771ec51863d7f440978d9406faa20c94df71eb53868", v: new $Int64(0, 4213) }, { k: "ce005e172b11212c1d7038ad0b86ddf70b1d7bbbe974ec7f3d86bf7e4b3fe7f9", v: new $Int64(0, 4614) }, { k: "ce0249a1e96e15db107017fd66fb6dab776e311703f07c5345b9d8e3c4599fee", v: new $Int64(0, 9644) }, { k: "ce052e76805f6d5048475dd30c13fb68b79d6e5c4f91f5697ae09a49e325ad02", v: new $Int64(0, 9310) }, { k: "ce0698a810d127de601d91a703d90873a21cfbf28f5b8ae9bb9c6b78bdb3be5a", v: new $Int64(0, 8242) }, { k: "ce0dd443d43f0f0fa891eaf1521ebe54a71757baffb5f7c67b8bce01746e27fa", v: new $Int64(0, 9167) }, { k: "ce15003ba72f71ecb7f1e9ef353ef3a3cb2e818c443b0a0db074af8e79a69ac1", v: new $Int64(0, 8254) }, { k: "ce1a32994e835c193e2bf33909f44373ae2cf94ddef0fd922035c483670637c2", v: new $Int64(0, 42) }, { k: "ce26af87f64f63f82add13aa4f1c2a448711f53dda4cee2b4c44e385ad8dcd38", v: new $Int64(0, 300) }, { k: "ce27018605499e8ee8482f6db502933e71ee18a70448a9da84e9085d6abca71e", v: new $Int64(0, 6211) }, { k: "ce2867ece4d50b167cd5cdd085a9e38e97ead6100bc6a3de5f4ca03600ee3528", v: new $Int64(0, 1117) }, { k: "ce29fa7ea33b6cb572f2aa1f6f406cc3a51ffa9bed1fafd6356b8b104abd32a7", v: new $Int64(0, 1760) }, { k: "ce2b9327285a4d02ec2ccbd4a9225d39aff986ad296fca79ae1d26b107720d0f", v: new $Int64(0, 7628) }, { k: "ce3d1b7a2cc01302ce49b8e7318ef6a8fae21ca2292851dfe2b5d537c6e7bb4b", v: new $Int64(0, 2320) }, { k: "ce421f98c6f33f366d8e85415ce0dfded3b7dcf6e22cbef96363b2abdc1b8207", v: new $Int64(0, 1347) }, { k: "ce478abb32439325a550068a7311fd2d9429bdc9312e6bb30bce18a138eb73ea", v: new $Int64(0, 4960) }, { k: "ce4ba0b43b78d5849bf063c6a100b36b5857a69a163ffdafce66b7f711e6317c", v: new $Int64(0, 2564) }, { k: "ce575c3f23a4108ae26a8930045a19e8551008ae1e56ee76235fe85093cb4bc6", v: new $Int64(0, 7800) }, { k: "ce5903e42cb10252cec73c0f99f8c899581174be1512e71cdbd11002bb8dfb4e", v: new $Int64(0, 2858) }, { k: "ce635d10e43e7edcb846757f6f6b2892c90e92346fe501ecaeeacd0a43d238dd", v: new $Int64(0, 3315) }, { k: "ce65af08434d5d1a6b2a1cdef855b0da498728ee06ad0be461839a9c90e015aa", v: new $Int64(0, 4248) }, { k: "ce7297237cf65c67a6f883ceddfc336cd7f3fbad5205140406c76ab2a52e679c", v: new $Int64(0, 9428) }, { k: "ce73b5cc4481bd2452ef7a26bb297b3c962cea34ab564ff31ab088f4d34b58fd", v: new $Int64(0, 5552) }, { k: "ce75390e63a7ea8aa4ec1151dfc82eb04a49b15fd0a08e5455364e9641c07b4b", v: new $Int64(0, 2081) }, { k: "ce7859261595bd9da820390aeda89eeb3e24d4b4042409c9cf3e94e1984ca574", v: new $Int64(0, 9424) }, { k: "ce7e83648476c7395d8037f2962d03a6f89fc49953e20f97e7ce35ee1b31f29b", v: new $Int64(0, 9514) }, { k: "ce82b05681b73af441faa3fce811708e94e562bd9b05c26a1672027ab246e927", v: new $Int64(0, 2043) }, { k: "ce884b2ebc8394d847f11756b65319de1c4e14ba7fc02249234ebd6c15277aa4", v: new $Int64(0, 8243) }, { k: "ce899f8f6b1fc68aa190e78a892ad30420aa1f200998b1fc9ff5855dcafe0269", v: new $Int64(0, 933) }, { k: "ce8aca8c912483ea07dea30391d5642ab099e8fb951a0148ab560c47e842b000", v: new $Int64(0, 4162) }, { k: "ce8b3e505d78737c0cae156ab3078cf83a17e9c22d9c4f2bef4598d5b4cfe5ac", v: new $Int64(0, 7334) }, { k: "ce8c92bac59b49dd1890813534f8aaac3abb6a0060eaf7eab0b9039ee3b40b9a", v: new $Int64(0, 9850) }, { k: "ce90b14faa07fcfae484f82ba0409731554fcd4833b49ccf13d5711780248195", v: new $Int64(0, 5197) }, { k: "ce953421ea65ded748b153bf5c625094ebf1ae77d1d82e652cc6461dce491a86", v: new $Int64(0, 4585) }, { k: "ce95bffe38fa618b1d6870acecfb0ddb9486ce603e7880401e7bcd8d1898d367", v: new $Int64(0, 4261) }, { k: "ce9779f89d2917c6245a5ade8613aabd849f3808f1ac3fa1a452a6af6e65bc49", v: new $Int64(0, 9637) }, { k: "ce9d26a573f0bfd2bc4de9dd4180b00d8827a437d1ca992989cc76f0e9ec8a81", v: new $Int64(0, 2942) }, { k: "ce9eb9d073f140047fe034ff4f9f9453178a198852d342d940a3739dbacd6f9e", v: new $Int64(0, 5152) }, { k: "cea02898489dc660318ab478c6372bf3eb437ef2ed42504bef1dc744b8a0bbef", v: new $Int64(0, 9168) }, { k: "cea72cc8cbcb2084e3d59950ab04979d0321e60df19044871189cfdea9b7571e", v: new $Int64(0, 2259) }, { k: "ceb7c89010297c0fa1ab660ca08c1b1d1a298f80e2136568e08bcf6c2bad00aa", v: new $Int64(0, 9467) }, { k: "cec42ac81f920681fb92f84251c2b25d40de3331d9ecea7df99db34623052a12", v: new $Int64(0, 7655) }, { k: "cec4da557d228181db48b493cbcea9c6da632e3969f30b803c18f97625734eed", v: new $Int64(0, 9498) }, { k: "ceccc2cc5c47332323a3dc46305237de49729927ab7125d1b40ee25caa71df3a", v: new $Int64(0, 2182) }, { k: "cecf83abe0a230a795c4b79893058c1494e9d76dd27be510395e11a74d3a8977", v: new $Int64(0, 8293) }, { k: "cee0684f93d48318abe47febab0ba3a9e3048126b78cc47b857f9c752f29d93a", v: new $Int64(0, 9314) }, { k: "ceec88eacdca55e23e5bc151e246c8d9514c532e1cb95d62c7100b5164af92a3", v: new $Int64(0, 9882) }, { k: "cef679c97b991cb5e1a16ef8a5796313eb140caabc6f9e95a51349dc6548dbc1", v: new $Int64(0, 1672) }, { k: "cef9dd328fe0311cfe4bfb205538e5761bec2c48dbf3c8a9c381a4af591671e6", v: new $Int64(0, 3266) }, { k: "cf0874b393de7696fc2e16357f9adb1cb8b9d7e02a2148d7b993730a8633e306", v: new $Int64(0, 7743) }, { k: "cf0b97d5e67bbbe69a872302608b8846ccd85eff779ceba9f3f885854ddd7d59", v: new $Int64(0, 5396) }, { k: "cf110e5e8b0bed788699a968633acc1299e485b8bc4c6fa6d763978ae73d2ae7", v: new $Int64(0, 1230) }, { k: "cf1aa55ef42b2171e3efcfefb9c82ec709be3b56d2bcfae77313d4766fa46bb8", v: new $Int64(0, 7000) }, { k: "cf1cb97ce63d610a21bbff57341c9f1468840dd2236506e5d9404f48ad6b1ed6", v: new $Int64(0, 9332) }, { k: "cf1f05146ce88c23a7b16d1badeb9c1448f3f377a577b44a8b3bfeea2678c030", v: new $Int64(0, 6018) }, { k: "cf1f5d0c424a3e50f44b18b2a3ad39287bd92ad46185b8c6b0117868748bae7d", v: new $Int64(0, 7627) }, { k: "cf2e96eab8578ac24f6d23b61b5364e7deddce572d0e42ab2ff74406ff5f00d2", v: new $Int64(0, 4691) }, { k: "cf48b2b3ec5dd71e01ab5b0ef385a1cdd5dcc60d428c160ed574591392ca33a0", v: new $Int64(0, 7310) }, { k: "cf4e30b57b33a44482a7b1589c33786d04be9a5b0abe222bfe5b248adb4814be", v: new $Int64(0, 6727) }, { k: "cf4ee1546d5a244b9cd9d5bd55745275fa82634f3e757c3ff8b3dd25dc69f6a6", v: new $Int64(0, 4126) }, { k: "cf4ff401ead8d42d0d87cad18ad5d1c216fe3edce2fd7b0b5c7092a385926d6e", v: new $Int64(0, 7390) }, { k: "cf543038bae57230da43e1e4ad8445bfe883c24031f3610b8e57a2600d24d13b", v: new $Int64(0, 5330) }, { k: "cf58dede386a3ba026d27f791e7b39b2c6d7f2f061310538371808c175991462", v: new $Int64(0, 8361) }, { k: "cf61114273c53936cbc5bf49aca70648358bc700bd3f7a35ae04ab50e058213c", v: new $Int64(0, 1661) }, { k: "cf6b1f54495e9091094080f9a4ddaa61fb871ab5b223a1a2754d6e0df24b3555", v: new $Int64(0, 8168) }, { k: "cf6c672acea0ad0f3c22dcb1d062d9516839aed2a73e3e86578030b1e304cb72", v: new $Int64(0, 4385) }, { k: "cf825d0b391a4c74ffa6ad6f20af467ea1efe02522dfdcb344147d43f39d1cc9", v: new $Int64(0, 1943) }, { k: "cf89f6b0b5525b31918bbfbe9eb0d35db2f50b967f3e10eef699b9ca83c8add6", v: new $Int64(0, 2270) }, { k: "cf949d61d4cb52cae16c6848355119c344f5e993fd84813653df638b1e142ecb", v: new $Int64(0, 230) }, { k: "cf9595b5d3c387160e130fc12f8de7b08c3fec0b5051f27183f56f2ee74e3313", v: new $Int64(0, 8266) }, { k: "cf9aa85365ffa7556e20251027eb7331570ad1cd6c28f3ecad7f1e710168d3b6", v: new $Int64(0, 4744) }, { k: "cf9ceec675455330d22e335c8385e4218f1bb175736307f1285d6b7c11586c7b", v: new $Int64(0, 5753) }, { k: "cfbd35b095eb884ab317ebc9c9b804093b8a5cdfc6dd4ecfb543f2be17e41b4e", v: new $Int64(0, 5903) }, { k: "cfbf82a56baffbf67a7844434f8bcbd8eea0f33829e87be798213682a92cb4f7", v: new $Int64(0, 1807) }, { k: "cfc13cff70ecbd1533540e15b090ed2cf53362c6aea90604d4e85ab9feefef40", v: new $Int64(0, 3972) }, { k: "cfcdf1a845f1a3b36ec039cb40c8501df4c95f2267f86846bf02133e61a1c90c", v: new $Int64(0, 6996) }, { k: "cfd41d632f14b61539a63867112a74bdeb6193f3290aaff2ed717e1601c7211a", v: new $Int64(0, 9296) }, { k: "cfd6222f180a40ee15d8fa3525804f005cde3dfb7e596ce27408cae3b4b75d5f", v: new $Int64(0, 6895) }, { k: "cfd674a233049a326b78fd18efe342432b46ae9acce21a8b5e471148d4d1a2ba", v: new $Int64(0, 6238) }, { k: "cfd6da3f47e6fa720a367923c48a7a6431102f365cbccdf99bfe4da955577018", v: new $Int64(0, 8919) }, { k: "d00fa3b3c5050796183ca19a023b8156c75f7136d214d6238eed7467e7f95878", v: new $Int64(0, 2019) }, { k: "d010dcfdeb9d1a88c0eec4bf5d427a7e2eb233c621aece059c2e09ff51d2047c", v: new $Int64(0, 7003) }, { k: "d010f3bffdd0b1436ca5fc2b905ba7e4cdb18978c2254cbfac0676ec97c58188", v: new $Int64(0, 669) }, { k: "d01d09fe5d639e3d89b2583fa319e95e88f6999a02ec1a95f2f30219e68b9dbe", v: new $Int64(0, 3917) }, { k: "d02dfe65da2bfcef28f6ba5f32538896b2d56e5be39afc09bd0bbd91a76c2786", v: new $Int64(0, 3103) }, { k: "d032aa908868d4056a352886d402596878639b55a822e2c5c4a31dde0db7b275", v: new $Int64(0, 270) }, { k: "d038a27ff11dcd90677dc6473cd4bd86835495b41780d53503b18d5e31953320", v: new $Int64(0, 4980) }, { k: "d0450a02e6a5f8be63ec21910bdf84c28294d3019702e9ad391b648a1f721e63", v: new $Int64(0, 5004) }, { k: "d048287feb8488b1da6e63c59e4c0880b7afed9504576af056f95ded85dec057", v: new $Int64(0, 410) }, { k: "d0517e045d136c519b9b71f858f349651a7d5ad1b7aec4c2ecc34be8c7f180e7", v: new $Int64(0, 8415) }, { k: "d0525afd682ca8d2c50d2fabcb0072578bd57151cc7f3dc4161cbb9301df0d66", v: new $Int64(0, 4627) }, { k: "d06168447481732c2fc63e77df292e1e8eacdbf04c64a1df9e7f9a4c101afe07", v: new $Int64(0, 6635) }, { k: "d0679a69700cb63ac42e3cf6a5d18ba0ff306e236a4b6e112829c269b946ba86", v: new $Int64(0, 7643) }, { k: "d06837fb6672322a2fbd3c2fa8ce3a95e25c6effa816105b11ea6dd4729a516c", v: new $Int64(0, 1056) }, { k: "d07273432fdcc68a61719688f931d1133db1d3d8b5e09e2ff12e5d056adba7af", v: new $Int64(0, 2481) }, { k: "d0758a81365ec3c128b06a31795b2004c5b206e7c2b6aed62fed00c93a9aa8ce", v: new $Int64(0, 6062) }, { k: "d076452afd43319222aa7457b84367856d57ead9954ff321fcc741129431099f", v: new $Int64(0, 8721) }, { k: "d07ab2064b02f6868bc6b92df7d1cf71f92ecc3346aa26a8732b52719e219e41", v: new $Int64(0, 5652) }, { k: "d07f1e6b00190a07df3de626ccdcceb2213460020b6d609e9a56b52760c608aa", v: new $Int64(0, 3813) }, { k: "d08098f19442ee1f26c344082b3b2f291d175a3603b65a8d89c86062c7055e60", v: new $Int64(0, 774) }, { k: "d0810bcc58ade6dc72ca555340595284937964e17174a5940a57de315fa8d00f", v: new $Int64(0, 9094) }, { k: "d08d733731d53b05321154fd95cfb5ac10ed9eedf4f941dd8f2cce1533169afa", v: new $Int64(0, 3415) }, { k: "d08f5b9e0aca77be1de02b8aedaeacd1fca75b27759fd783f5310b1c19d992bb", v: new $Int64(0, 9759) }, { k: "d093505a33afb0061a29d6f77cdb6846875ba518e16ca7f7ed7cad69c27ab707", v: new $Int64(0, 8827) }, { k: "d0944cd8df419a3082f0c746a1745eb5880a1925f60ea8166f7be9f85c317ba8", v: new $Int64(0, 1432) }, { k: "d0994f3966c11bcd110a3a67e3fe502c8f7a0e6341da3c0522819ae8179835fc", v: new $Int64(0, 487) }, { k: "d0a63865e3428bd9d53062ec17f86149b625d6badf39f3e5b470988336181979", v: new $Int64(0, 9219) }, { k: "d0acbaa9d697ccd3ce12d87a25816d337fbcda652bee9932e402dfdb214f6641", v: new $Int64(0, 2301) }, { k: "d0c11581b1c7450bc4ee5da00d213b0a555d022d65bef8f4018925da15b05e42", v: new $Int64(0, 630) }, { k: "d0c8cab01a0b89d460a9c9aacec46e1c0e8d8de3dc9e67325300d588a76ca13c", v: new $Int64(0, 1184) }, { k: "d0dc11d368bc62239178f3830a9ad7929d8fee188d2e770772cadf3cc018e9f1", v: new $Int64(0, 25) }, { k: "d0e1728291998572290de3006cfdfbc6487a1479f84488ffcfc69d10e076fb7d", v: new $Int64(0, 9806) }, { k: "d0e55ce20d798288d9437730a27a79b980d015110e17092de893edced7fad106", v: new $Int64(0, 3004) }, { k: "d0e59b955a7199c0a85705c8932224b575abb16919d04b6b83f8d1531ba5aeb0", v: new $Int64(0, 9066) }, { k: "d0f08778d838d69b9ed1c6b4003f16a32cfae00dad2b340c2590c976976c2460", v: new $Int64(0, 1147) }, { k: "d0ffdaa772c0f1c73da1a69d3f230771bfd9b44358ee17f1967865252dff9eae", v: new $Int64(0, 5733) }, { k: "d1189f77e0d36cf78377a30a9033c8bf5eaed5606ed83f5d2b7f2d586ead2468", v: new $Int64(0, 4635) }, { k: "d11a6bee14752c2d395f2d0b465c3046d2b617baf713d663ebe785cbff3c782f", v: new $Int64(0, 437) }, { k: "d1281a07dcb26365c60ab158b58775e20f9620ae3f42e7835ea1b10f93aa8b78", v: new $Int64(0, 7621) }, { k: "d1282ed619758204557a38316a7e8b439896e4596d84411540856d045f30192c", v: new $Int64(0, 2365) }, { k: "d1342f8f3706efe2213331d8527cff2641dd9a13c085a2f68458d22712bc4934", v: new $Int64(0, 7065) }, { k: "d13673ee8837f464e3031f42dc30d888a18c5d7d3d0fd1c24c0208dfd3748589", v: new $Int64(0, 5303) }, { k: "d139713bf6292cbf4a6ad825681129072a3befa68316a1abea01e7ac90607ce6", v: new $Int64(0, 6921) }, { k: "d13e5ce2dadb11b02c41965076d4441bbecc5a1c9c196edb091465b8dc6d40ca", v: new $Int64(0, 6788) }, { k: "d149cc506c02a81b6ae51214be0783bfe5d52d85adb80bf9494f3d7e98a87f03", v: new $Int64(0, 6924) }, { k: "d152118eca8eca723d353472d92b161c2c490aa3db63c2db27e8ce3b870929ca", v: new $Int64(0, 1511) }, { k: "d1570c15a14e64a37938401c58d420319e0395b5445fa7b02fdd67218feb4fea", v: new $Int64(0, 9664) }, { k: "d16797ebe15a4b8155889f1e6dfe21e87dfcff5ed50ef5e586d71c286170afdb", v: new $Int64(0, 2845) }, { k: "d1705a15f6ce347473e873ded2edbb029507e797a097462d2163e6c04cb13b8f", v: new $Int64(0, 6350) }, { k: "d171f6480724a7699d808ace15e1e2e2a60a02ab04cfcd8dea6f225398291c4d", v: new $Int64(0, 1552) }, { k: "d1721b6f1e0973352595720d519aa3b1c61e95ea4038b6d742522fdc6e810d0b", v: new $Int64(0, 8852) }, { k: "d17aa4452925254c9def431ecae6ce5f366a36cc1246a01f8f432ca69aad22ee", v: new $Int64(0, 9470) }, { k: "d17f4dec47c9e51e9689a29832db65f445c60d1c99ce4ba9986d718ec9aeab85", v: new $Int64(0, 4798) }, { k: "d181d2f2014279dcce8571dc62774500e5cd7b05176c10f30069a47a9ae07028", v: new $Int64(0, 6049) }, { k: "d1826792cbcbf896117733311788e10eda01b45c8f519969cfd473140bd22619", v: new $Int64(0, 8588) }, { k: "d190509689d8a750d3828da5813114496df4827bc9cf588150e9fe5a7bcf334d", v: new $Int64(0, 4463) }, { k: "d193915a879d9d5ff125fc248d777e58bfa7c17906fa36de0cbb37c4d682d532", v: new $Int64(0, 2591) }, { k: "d1989588890f32fb27a850314bbf59a2caff84be20b442295753ea1d675f72de", v: new $Int64(0, 9223) }, { k: "d19c90ac05e4f7c5286694407475f0ff53ec2dcd897938df0e8eb61b79ecc0b0", v: new $Int64(0, 3561) }, { k: "d19d618113565e91f398f0bb2c302f4504d9b3c5880cb7369a91d154b6bfa7e8", v: new $Int64(0, 5057) }, { k: "d19e2f010e09c2585f218de03225257f85e85242323e0e22f1b1a0022e77e7f8", v: new $Int64(0, 5860) }, { k: "d1a4ddf350769df9e4eab60b63ce451e6306c3fb4a14795fcdf9c4f0785f7993", v: new $Int64(0, 957) }, { k: "d1adb4b4105ceeaee853853d729ca19ccc633730881bc2d03b23a2b486721dc3", v: new $Int64(0, 9255) }, { k: "d1b41cb76860ea5a3c7747fb468d02c5b983a6351d5134f47a00e4a6f1c565ef", v: new $Int64(0, 1377) }, { k: "d1ba930547e861cfdf5b7918ca49dee6417d0661b4cb6c7a39221e2310808565", v: new $Int64(0, 6503) }, { k: "d1bbfecb29d21196f15ed2e69496e6940cee489720c7f5e0cf2e4fe9f81c1040", v: new $Int64(0, 507) }, { k: "d1bdcff0fbb6441983a3cc3eab49f8b261b1ae72008bc0d26a90b254a21dfdd5", v: new $Int64(0, 2894) }, { k: "d1be783e6ec73942f5108818941388b33fb34983f19beda527ba34eea4c771f9", v: new $Int64(0, 9696) }, { k: "d1c1440b82fa8929ab832f94212ac1dbc823daf08a17946030a95e5003cc5ff8", v: new $Int64(0, 2482) }, { k: "d1c82b6a23c4aa68221a251eea2bcf8666b1e70db3d36ac5ce4962ee93a821c4", v: new $Int64(0, 5000) }, { k: "d1ca34abc2da5c1b95b7714494bb2a6293ebeee35de2ad95242f5af68e1697ca", v: new $Int64(0, 657) }, { k: "d1db1d51f52ee67ccec2c285c16d264af61793be0e267a130e03dd10fcfe8ba0", v: new $Int64(0, 8176) }, { k: "d1dda3e1b01d1e35b052b32b756bc776523a947d7941205038665f83f2bdf587", v: new $Int64(0, 2833) }, { k: "d1e4bcfa418927a3428cbc83fa0c38080f252576013b58f3e19377c3b11e1517", v: new $Int64(0, 4702) }, { k: "d1e684d9f61d3a2a669717952e38fa3edaf743e4d5d6332234e164147df1404d", v: new $Int64(0, 7136) }, { k: "d201044d07f5d006783eb209b2c757db1d165b60bb4ce94033e3e7feef453990", v: new $Int64(0, 6777) }, { k: "d2051c75161ddd4fce647d4691018a04e532cac193caa83b5e4e4fe4f65588bc", v: new $Int64(0, 3975) }, { k: "d207ded6133c15b39344ac37c1c5a6d517c06641c0cdf73059001cbee0e41a13", v: new $Int64(0, 9141) }, { k: "d20b6c9078c9b5329f81ec5de520101bd1ee6d0f431d9023e408bdb1474da187", v: new $Int64(0, 6156) }, { k: "d20e52d9919f3765d67b179fec564eca6ff9436174bf2e303154ea1012251323", v: new $Int64(0, 2198) }, { k: "d218305d7d90dfad7f0d12a33695d348b75d1da1bfd642d173e266bae4f12fc0", v: new $Int64(0, 2659) }, { k: "d21a8aa8042781b21ce393de5986b76c5e7ab5ffdddd121ec621bcecde8d0f0f", v: new $Int64(0, 7339) }, { k: "d23013f2f36275d98ed3cc325842b0643008e8b86bdd80ffd17260f420eb3e4b", v: new $Int64(0, 3981) }, { k: "d2321481b5e38a6b08ca4d7e985530f57f6c05234e7727f79274a3148bcc66aa", v: new $Int64(0, 1894) }, { k: "d23b5a2f5479eeaf0662420a5eadfa14667d197f590f2d0f1dc1fe7bc18890b7", v: new $Int64(0, 7393) }, { k: "d24cf2f0150a5d2b6853009c750203b6b556a426eb4151a3a9f1432f4d6f908d", v: new $Int64(0, 4011) }, { k: "d250d15b9b315bf5906f3fa6c985c5bb2d44d422986d14415023d8d8b064f727", v: new $Int64(0, 4293) }, { k: "d25b8a4cdecfb8ac6476ff32206665d28219c4d21e9474b3326bd50ac56f3ef2", v: new $Int64(0, 4594) }, { k: "d25c5f7fdf97207b1f5c89fe3418d9ca8feb22f1fa9ee4774fd474b79836493a", v: new $Int64(0, 2499) }, { k: "d26254fd2893d511034b3792559bc9bfbf69c82e49f6aa61640298354731de3f", v: new $Int64(0, 8667) }, { k: "d266fcf01b773c6c502a4272c5099f652e7e60cb62e4b62abb53c7c7d381eb96", v: new $Int64(0, 8357) }, { k: "d26703e41c1ce4a720da2fb853c13b7d568a3f93c4a41df55554e59be395291b", v: new $Int64(0, 7777) }, { k: "d269b4d62cd30263ef3a3e9cc92c8a858e1dca91b24b4e2e8cd05aa093ec6d4f", v: new $Int64(0, 3725) }, { k: "d26e4cee09b3a643851014d6bbe6085c54d59a717d590c1db444174056577cf2", v: new $Int64(0, 4618) }, { k: "d270d1b838f97ace85b9467eacaa6e413199af665c15a6669b4ada321d1a1777", v: new $Int64(0, 4776) }, { k: "d27fbd4e0ec99799fae926155dec6e96783bcd90f22074fe736fc30c92971c1f", v: new $Int64(0, 8527) }, { k: "d283e6bb0773f1ab7b40d0643416fc8df1f99d9487d7d088c0b1fa401cab99aa", v: new $Int64(0, 2951) }, { k: "d28513213e842a93edaeaa0ccec345808ee09746124cac74da066cbe5457f044", v: new $Int64(0, 640) }, { k: "d28a9bd8d1fb529fe46acbfe184933f3b615c8ea9f23948997260dcbba55240e", v: new $Int64(0, 7764) }, { k: "d295997b9c664f05993bc1717e04a19043dad688477fc7ac6387231380ea7334", v: new $Int64(0, 7148) }, { k: "d29a7480e1d48687683903605db56603ea7fdac2ec74c9507b8e544128480a72", v: new $Int64(0, 3360) }, { k: "d2aab3671afa910da0fcd0adf9cc4e2de418e8780363e10f18615ed7613d768a", v: new $Int64(0, 3602) }, { k: "d2abd98d0f5dbbe0578beb0af0880c7aec36803136b130c08bd344ca156e5504", v: new $Int64(0, 2595) }, { k: "d2b1b8d44804751ccc25548c1f8eaf39f113d5cb5556ab51451a40135b4f2d29", v: new $Int64(0, 9632) }, { k: "d2b987ada967ea2ffd518093c1bed15e4cfea6468753f478901dd1826a7a7c1b", v: new $Int64(0, 3271) }, { k: "d2bd466d712dc3b38aaf88ecdd54d806c31a3b3d6c1589930beb06197040b72b", v: new $Int64(0, 8612) }, { k: "d2c2f6d53d8a325d481c6fd6f05d6e5760bcb0fe30535fd9f0e20597f767ca5c", v: new $Int64(0, 5135) }, { k: "d2ca4c39b40a53f21dde99b2f42a6efd0084d33b5bd8e41fc4493c110b617d30", v: new $Int64(0, 9157) }, { k: "d2cca1585d662203211dad12e28619cf5e53c1093958137a7b622c2a249a982f", v: new $Int64(0, 9815) }, { k: "d2ce12751396e3578301eb0974ae2d25cb003e777675cf3365eb6ec43c631b08", v: new $Int64(0, 8466) }, { k: "d2d62dec10005a5ec5849d7bae0a0beef0fc20b7cbc6bcd4974783a6a848b440", v: new $Int64(0, 4265) }, { k: "d2d70a28cb969120e0305da01bba1f152685a0f0a90afa9648858dab6981b886", v: new $Int64(0, 3165) }, { k: "d2d9b30596148adec0e741fe28fe2d25cfca65b97bb1d8722ad19db13ecf9237", v: new $Int64(0, 4399) }, { k: "d2de7260db2c37950eb2375435b686064141420c0fed6dec42d72cc6451adaac", v: new $Int64(0, 697) }, { k: "d2e4cca769575e1535d81b4a1748ad572f1649e540d53e951f2007eaf35eaa59", v: new $Int64(0, 3724) }, { k: "d2e59a5c3091eb0ec289b1b4bc44dd41c1c8a320bc16732fb9a76ee469f23ea6", v: new $Int64(0, 8310) }, { k: "d2ebfa47b07514135726415dae2ca4c40a2cef78caa90b52f47d138fabb5912b", v: new $Int64(0, 6989) }, { k: "d2ed74b28d8c1d3a67c23b375ca9b65dec5371961619da7fac42be34ab5fd607", v: new $Int64(0, 1310) }, { k: "d2f5dd38554836211638e5cc8d06185d328b5806ec7a3eb6cfcdce6f6ee87fd2", v: new $Int64(0, 8014) }, { k: "d2f71bddb1ad2d4e0d2364c5cfc729faf5ba515f428e0ae57b7122e0c4169a84", v: new $Int64(0, 1970) }, { k: "d2f81ead38ce1fc403fd6429edccdae2c8d74e87011e55ac8407cbe012c0445c", v: new $Int64(0, 3726) }, { k: "d30132d5f35e1072484d3334b219d56a3c7b15fb94cf4c7e84b6ea95b6ccbcb5", v: new $Int64(0, 9855) }, { k: "d31b7b66bfd792aa6fba96c76fecabd21db93e228e2755da3a74135cf042cec8", v: new $Int64(0, 2837) }, { k: "d31b8284e563a0dfc28415d78eed6a6734ff1bac036143091c6076878a3741ae", v: new $Int64(0, 1690) }, { k: "d31c194430ad5b7568655ac0b62cc40a1b6ce27944fc3d8cf14fc54ed5ba3d53", v: new $Int64(0, 2349) }, { k: "d325b89bd7bf577414ca764f0df92d8688a59895d86264fce563c638428124f0", v: new $Int64(0, 8565) }, { k: "d327d26ec623ac946e56c71f2da68d37dce59a5cd7d27e39244b47557cf5c3cd", v: new $Int64(0, 6257) }, { k: "d32b167488e61dbc9aa6c497945e891fe800440120ed8bf8e2c05883a67afdcc", v: new $Int64(0, 2199) }, { k: "d32d775adf9d15da3986bb603e7fcec87053e34d20c655a16b0f65c759087172", v: new $Int64(0, 390) }, { k: "d3343eba84a84ad2588e08c80faa411c12f91e52d40df57c7cbeeeeb9bb77696", v: new $Int64(0, 2817) }, { k: "d33d5fd2f46ee99f493caa7108562d783205ab002e50f81cf29f118f45b4ebbc", v: new $Int64(0, 1201) }, { k: "d3402359f7a4e21aa377743ca0e4f9e9946c3656e5846d2c844b7c856c31b138", v: new $Int64(0, 2044) }, { k: "d3411ba28ad72ce6a68eb3807b999fcf78638e63e5de2f45db905fbd3fee21e8", v: new $Int64(0, 1929) }, { k: "d3418a0ed4bee26cf142c0557da0dbd98f0189b075b5e391809b586e5d1c34cf", v: new $Int64(0, 4174) }, { k: "d342e5881e51a083335af83b15bdfe0435858ce5a1c532a4197dd7f5ed7224fd", v: new $Int64(0, 5788) }, { k: "d35195f4ad7bfa25ac80bfc9d6932f0da1a8e75dfceeca758d462b078af705c8", v: new $Int64(0, 3794) }, { k: "d354babc918470e03fee1ea366bb8de7661dbdd2f8791a7285430fde1bfa2368", v: new $Int64(0, 2286) }, { k: "d358301fa51b7465350eec03ffe1c3907be1e41e0d0b344c27f8eae8a40e2a9f", v: new $Int64(0, 6898) }, { k: "d35cea2680215bca77935e97ce001f03e000cef65526bb9b0a33fee772dbfffc", v: new $Int64(0, 6419) }, { k: "d361fedc0891a65216fc9c88feba8cdc5b306d8928f0c0c3dc86b920e5a396a7", v: new $Int64(0, 6851) }, { k: "d3665a22d50f5caa2a055cc20397d40aa22502acf87f6db1ec7803111d37f533", v: new $Int64(0, 6127) }, { k: "d369081da0bb422a64b98dc1ab45ca0a5837ada0a58e7d07634602efb22eb4b0", v: new $Int64(0, 9400) }, { k: "d3739ecc8287de6fd6f1d8abb1d4a41ba39be2a4438e1d565ca218bcd7b3219e", v: new $Int64(0, 5158) }, { k: "d379d7e150ed97693f2dae90f6ec181cfffb2cd368113b068dfe67d19561c668", v: new $Int64(0, 4414) }, { k: "d37ebe84d07cbfce303391cf0733fe75492df075b2154073e89d43ad538d6653", v: new $Int64(0, 6303) }, { k: "d392b3eb0417a3f985bb790b2cbeb8e761f8ea04d02fe1ee96644e6f9d448433", v: new $Int64(0, 5699) }, { k: "d399ba109b1788e59a741d5b2f592f5acee5bca155b1953d73b1a04e5134f2f4", v: new $Int64(0, 1107) }, { k: "d3a32a69a757f1407eab39c11a7c2ff6c975dc61f05ef86b0b8acc8eaf270296", v: new $Int64(0, 4876) }, { k: "d3a8f2ac6507f3af141bee81a57bba76a1d2cfe82cad58b989b04861c7919e19", v: new $Int64(0, 9309) }, { k: "d3a9c450b72624b5735cf7559bf834a04c5929553111808c9acc17a18fdbaf5c", v: new $Int64(0, 5087) }, { k: "d3ac3554681861e49e573c1d969f9bbd505dd13a657c17fd5b60a591642032de", v: new $Int64(0, 1198) }, { k: "d3af1f61b7e732b1725ebf22fefe5340df6a36a99e1027ec11212e913eb56393", v: new $Int64(0, 2615) }, { k: "d3b7216adbb1973b1c683a947fdf701d5562a45765d404a7cc8cda87a183da81", v: new $Int64(0, 35) }, { k: "d3ba7fc6cd60e5f474c38e3bea99f81a00be0f9b6fb4e8aac0c57d59fa3e484e", v: new $Int64(0, 3355) }, { k: "d3bae2270d7149563076685f686f814a2647afdcb0c52f5fdebbbed6ec742792", v: new $Int64(0, 8841) }, { k: "d3bf7ddb90e553f34d360c60e9c58f48a2d120c9e6ec9b32b51baa7b3f356055", v: new $Int64(0, 6133) }, { k: "d3c16bf72abe942bd34c0c36ac44d4d1bd881fed9a5c6ac61c2a7b1c46e52805", v: new $Int64(0, 3629) }, { k: "d3c52f615868466593e01e7ad33743f1fc08a9a13b1673e6a73b377e78433472", v: new $Int64(0, 5726) }, { k: "d3c9d16007a70987d5c25ca6ef047108557d5e5ad94b723e5912d169266e5196", v: new $Int64(0, 2510) }, { k: "d3de260e0c4586efd69ac5afe1743403d3f9105510c879aedd94cf012dfe55b9", v: new $Int64(0, 7038) }, { k: "d3e148482ed59237a36d6722464a5c30660b70011b0115651bf4b1fea4188b76", v: new $Int64(0, 3150) }, { k: "d3e327d0b0a11262323308bbb61b51bd1b00104bffee4dd4f49e0bcb1c673126", v: new $Int64(0, 8198) }, { k: "d3e555c1296cdd43178e35b8d30aac4d9cf0722bac09435af3ff47b991a7435e", v: new $Int64(0, 5114) }, { k: "d3f93607718501a0434c9c3329f75be9546cbac20223e9c1d890330363f4a0cd", v: new $Int64(0, 5762) }, { k: "d3fd4fcf8c8c1789b62343b8ad5aa619dce686bb05ae4eedae6caccae6449860", v: new $Int64(0, 7017) }, { k: "d4021012585d0c105cfbe725f92a5d16a7b804ce1186dc0393aa6227c9653a7e", v: new $Int64(0, 525) }, { k: "d40bae47adb04b2027596dd9f00ca350b51493a09be9130471d3afaa24db9b0e", v: new $Int64(0, 6295) }, { k: "d40d27d79cb39f624e4fae2cf56750c6cad587366de5c8decd080d9fc67d7dae", v: new $Int64(0, 8223) }, { k: "d40da35f0077a919d21590848cfb08be477d3ca9d7aa8da3fd5da161900428b0", v: new $Int64(0, 4838) }, { k: "d4132589eeec0bbce09b5f0cf0b98ad45eb8f22d4b6c9b85f15db82de9530a74", v: new $Int64(0, 578) }, { k: "d41aa6cdb1d94bd3d4cb94f2dde721fe9a1a6a8c8f5ba2a30a9562ae4af4c5ac", v: new $Int64(0, 5443) }, { k: "d4297594afdfcc9fefc286d5a689258bb974dd335c836609cc5e1bf274d5683b", v: new $Int64(0, 1645) }, { k: "d43021cc3bdf0d4f97d0b4711195695d623934eadb3ff11b86409fe479db9ea4", v: new $Int64(0, 1404) }, { k: "d43509c52cb29add4a05b12516c158b36d4a82365afc27d7d87ac2b2bb06c373", v: new $Int64(0, 5206) }, { k: "d43d6f3f1a333ee8d4ab2b8a504ed1aa2ed081f4703bd17f5cb88958b003c428", v: new $Int64(0, 4788) }, { k: "d452bd26c1136e574fa4a4ca3d1846d473c1cad7583680531acd55c355f875c0", v: new $Int64(0, 5236) }, { k: "d4546c73b749c3209ddc8527d3e81258988be10af4212ddb28a6606e209416e8", v: new $Int64(0, 5101) }, { k: "d459a3fca9410961dd690f6a2ec4e97e0d0245da45fbe225a43dd6e5e1a1f73e", v: new $Int64(0, 4320) }, { k: "d465e8447da5b6e2c8c7bdd88239cd0fa34bd7b8cad0d166ff0138b70b25a9ff", v: new $Int64(0, 1968) }, { k: "d46e3f6ae297b770063f77699fa058183579a76492cda7c5e0aeb37eda84e26e", v: new $Int64(0, 4823) }, { k: "d47160de3b29de8a264184ab35747e42d73ddd4632b715ae618bd6e269fd455d", v: new $Int64(0, 3188) }, { k: "d4724e2a30116085ecc0570356c14dbf65d971e0f6e87dd6f2ec3b6603e897b1", v: new $Int64(0, 2023) }, { k: "d485e877eeb56fbce9aef2d4b8c1bf11d315d0d19bf65562b78c0313cccc35ea", v: new $Int64(0, 5645) }, { k: "d48ce6f3e440670464adb209a05fc56c7488eac02477c7659bba3f4bf8556953", v: new $Int64(0, 1686) }, { k: "d48e03ad17c0dc75194f80bec620c7b91ecf37d507a99487e12e32d137c54ab0", v: new $Int64(0, 5873) }, { k: "d49189601ebb89bfec6d3b19c3f7cf9846183eb95b902148af3cceb04fe2bd04", v: new $Int64(0, 3676) }, { k: "d491a6272ac3a45b5a6c97c4a539a11c9ef5a7ee115ddf66de042028d6e8a51a", v: new $Int64(0, 5361) }, { k: "d49c70a776bb4660a48ab423ac8f56d6494b7b9377370619a1d82695973cccce", v: new $Int64(0, 1226) }, { k: "d4a093efc1c6f53ccc4cbef0993abd769a98f59f912107f5ce024653d5ee1f75", v: new $Int64(0, 7540) }, { k: "d4ac40607753243e1506c05f47ffce19a148f1647617c583d89776c3559463fd", v: new $Int64(0, 4073) }, { k: "d4b4f5784868c3020403246717ec169ff79e26608ea126a1ab69ee77d1b16712", v: new $Int64(0, 3) }, { k: "d4b896f1af1dbc54a8dda8e2ce048787d176bed0956faec9311337d39e14ed03", v: new $Int64(0, 6252) }, { k: "d4c589153c60d3e6db2666663b53cbeb12eff0eb41db1d3937f14daad20c246a", v: new $Int64(0, 6991) }, { k: "d4c5f855e80cb2e91df226b1501e9cd73825fda9848298a3bc103ff48ea5c59d", v: new $Int64(0, 5972) }, { k: "d4c6a158f5ddf44e77056f0596e589c3c8c790f1da22b4fd8e28ea56e2bc78c7", v: new $Int64(0, 6507) }, { k: "d4e0e2ad3516776cab358379c07477025fc48e8095f8b868a457389c85d1354f", v: new $Int64(0, 3610) }, { k: "d4e498ff6cf5c96346c4646d689b992525f9611388ddd73c451f607180e7597b", v: new $Int64(0, 7738) }, { k: "d4f5ddf872a2d168ee6f42c8f2b814c0525ebda73e77d8623796e1a9170ecfc6", v: new $Int64(0, 8528) }, { k: "d4fbfd99c57187c03c9c4934fcbcc5127a229e759934ad1b456f113d039b1887", v: new $Int64(0, 8947) }, { k: "d50aae36b3188165f7f39264af945c90709d506b78c7855d874e457019ffc71e", v: new $Int64(0, 4013) }, { k: "d5205b80a6802095c3e99f8e879e1e9e7ac7cc756ca5f1911aa8012cab76a959", v: new $Int64(0, 4096) }, { k: "d5426d6b376699cee92e9cbe4a2cce11f388186f1035a8ca6890b59befda3f29", v: new $Int64(0, 7221) }, { k: "d55657d41c17c9b08f74379daa345a09c7eb43beb4e9ec122ecdac8a422df805", v: new $Int64(0, 9550) }, { k: "d55e17ea628618fb3a2a18391139696b28443a45fb580bceef51e1fe946cd08e", v: new $Int64(0, 6091) }, { k: "d566ece28942b93d1faf1cd3267f9d8318d26118ea5f755b90f42859459415d2", v: new $Int64(0, 7347) }, { k: "d56c378f34c46cc2372d79bf010edf0f0cb429e3a77764d787b68bce5cb3d314", v: new $Int64(0, 3671) }, { k: "d575050aba0d84495a4a5c797d0d7a3aa893d90f37d553b8932456be2df1bf16", v: new $Int64(0, 4289) }, { k: "d57826e9d0d19d72634a98e53e9548dddb413b4187cff612ebd58ae3ec0c0731", v: new $Int64(0, 4089) }, { k: "d587f397e27992cca1f50c3b2d7f260c74a1ecf2e65c4398a425ce0c98d9aba3", v: new $Int64(0, 9277) }, { k: "d587fec7e4b5d7a676d7239fb8d8a10f939999f2796922346b78adb847c703c0", v: new $Int64(0, 6976) }, { k: "d58864ff64cad97bf410777607a6faf168ec703c340648985a1a3080fc1cd7f3", v: new $Int64(0, 9876) }, { k: "d588e0e0fadc448bf41aa16b56948f113772b602be1bab929a4f3c2768ab1a6f", v: new $Int64(0, 9053) }, { k: "d58f4f74345f9017d3a5f02aa5a5444ad8c036a0c68c2410abe2263dafa355e4", v: new $Int64(0, 7848) }, { k: "d591235e4e26b1b761a4e6afdb22ba4f825c65a731e6f5cd4dc7d21951fb2b68", v: new $Int64(0, 8486) }, { k: "d5a1b8c8c6b02706dfe5f4a54c37e6a14876d380fe3ba5a74eb25f859e8f21e9", v: new $Int64(0, 9489) }, { k: "d5bd07e666441f7242825e78e8507942b8b8a641dee7086fe7a103043b01a90f", v: new $Int64(0, 1191) }, { k: "d5c6b2c0fbe6d1b93ddce0a922db0a758405706996f1b6a5b05054f097064302", v: new $Int64(0, 7164) }, { k: "d5c7d9cf9bc937a8db9549504a37d57b9e5b213a5ae9a25d69610782a1f88091", v: new $Int64(0, 5886) }, { k: "d5c7fcbae1e00da6c88f0636c653dda64b0e90f27f697905dc40d2d1db0335bf", v: new $Int64(0, 853) }, { k: "d5d163dd12de496bbcd34292c8a30f38d32b0c5dbd6916ab2e52685da4b9c586", v: new $Int64(0, 1387) }, { k: "d5dd5218db181bfebe7b959ece8f46f93b1b3831fcb7614e578bfa77578ce394", v: new $Int64(0, 9299) }, { k: "d5e1bf47194ccb1b3de72ad647aaaf4acbf12c11b66fa1548b02d6718a307c56", v: new $Int64(0, 6348) }, { k: "d5ed4efef7b7cdbca53762118a73cb72d2b48eb6cbc06086cca35fe2a8ae75eb", v: new $Int64(0, 2080) }, { k: "d5f1e9665c149622ad7d6cdb886f8fd9e4a5ccb8a8d6032e7f22f7b74d231b2b", v: new $Int64(0, 740) }, { k: "d5f5d129c6b1aa9255edbc98c7c4d00584ac8dff7829bea1ad0b2612ceb824cb", v: new $Int64(0, 7806) }, { k: "d5f66c469cee28cb27e3174dde0dc33841327947d25a91562c70e7ab37617b7f", v: new $Int64(0, 6264) }, { k: "d5f72b0ca2fa51b274838d359be9f5defed781b4e8752c432bca31a8ff1bb5f7", v: new $Int64(0, 7702) }, { k: "d5fa424be508845de52aac6aaa713f23cc1c922ff97abbf5e38261632dcdbafb", v: new $Int64(0, 2001) }, { k: "d5fb9dcd8b1fdebb7355252fa65e509cdb5d6156c0513777d3ac41ddca9e9b45", v: new $Int64(0, 6939) }, { k: "d5fee1ddfc0792bc29b2fb8e4d0ad64b7c5909b66086da67469569ba3e10bdef", v: new $Int64(0, 7720) }, { k: "d61747a42a8061cdcc0cd3b8b72349abb3dcd7eb32dbc6515fbfa762ed1e8a40", v: new $Int64(0, 3249) }, { k: "d61ca7d1395d3602f5a846cdbe99c1cb43c324ea4c478d4adfffd0b087aaf241", v: new $Int64(0, 2321) }, { k: "d61d16981b0022bd655999430d0247e560a281e4d01179d9338d4813285ea898", v: new $Int64(0, 6607) }, { k: "d62214cafa335fe6f619c8a3840b7201993b04dd4653eff4a80875780ececaba", v: new $Int64(0, 2802) }, { k: "d62c872ea37488fd2f65b8d4b960b4562bc9b3c9bfe2839b8bb1139f02fabd7e", v: new $Int64(0, 5380) }, { k: "d62d617c898007aa642cf2708aac241e29c00e4d1da9a13945e9cf32946bbe5f", v: new $Int64(0, 1924) }, { k: "d633a499b1296f80677544a13fdd3f6046d25599d25e63a16f09668c61dfc334", v: new $Int64(0, 3544) }, { k: "d63be6d40750ba1005ab76c756de9b762ebcf05ba948857d55f521883dd13295", v: new $Int64(0, 8457) }, { k: "d6441bcbb3a10b3ce5848533527f2682f53d9f923444fcb119124fc90eef804a", v: new $Int64(0, 6987) }, { k: "d646a866ccc4c376014ecbac046737d1e2fa41bfc706db579f7a1cebea48b41c", v: new $Int64(0, 7779) }, { k: "d64e75530da4b5d5b3521eb164ef2cbb0ca67cdc8bb392aba5b5eda88225fe9a", v: new $Int64(0, 974) }, { k: "d655bf18c83db96ab36e5b06ed8c3762a8e4af783ee1c8b2ffb778b43b5b4aaf", v: new $Int64(0, 760) }, { k: "d65ffbcb299d242bd02b88bbf661c25ec73013a663681e3605cfcb95d5f70cc0", v: new $Int64(0, 7308) }, { k: "d66774133569e641ae55d42f84cbdc97da1865fc494bbd9ae305517d982817ac", v: new $Int64(0, 5524) }, { k: "d6693d2bcd69d2bcfa7b0116acf103ca4ed39939e331c8752e69f97fcadf0b09", v: new $Int64(0, 3880) }, { k: "d66968f2b201084d32832c522c1f50959fd10e3238dcabc02cbc2fa82b3a747e", v: new $Int64(0, 993) }, { k: "d67178e3d4aa63a7e17d1aa226bdfab5722fc3e79139e2d5bd98fbc6ba5efc0f", v: new $Int64(0, 8258) }, { k: "d67b295f20fef3ae866c3ba7f70328508e4df0da5c90637f0bc9f6d11a68ffd4", v: new $Int64(0, 4852) }, { k: "d680f5afca506c548b257b9ebebab83a6f50e0bbb8fbe2b385a62e836401c622", v: new $Int64(0, 5803) }, { k: "d687598b8f271416e60a0af8057d581bab2bd07b9b1545bd6a00a4fbf5e019ac", v: new $Int64(0, 6135) }, { k: "d689097b4ea031a230f249f4c380404a7b3d327976a970c3e55043a0a1408abe", v: new $Int64(0, 4312) }, { k: "d68c3e916b24e1a628c0364ac1c5ae7005d05064b3e34fbe505f90056e023317", v: new $Int64(0, 7049) }, { k: "d68c9742109d84906f55d7989f8a9b463563ed5956745f98d060f50980e9e1ba", v: new $Int64(0, 4208) }, { k: "d693b8c6c51bcad7a1c47654d70e8f4de763ad32193100081bbec255c5ecbade", v: new $Int64(0, 432) }, { k: "d69a89cfadecd818386e18bf9344a6996ead47e427e0becf0efba36b574ea056", v: new $Int64(0, 4406) }, { k: "d69cd24f19a33407e5ef3992dcb1d2c98b9b23c8c9b42270412036e2c1c4730a", v: new $Int64(0, 4076) }, { k: "d6c05aead04f8e7e22aa11b1fd4f7f3feca0c29e458bf59e829f802232da731c", v: new $Int64(0, 9932) }, { k: "d6c481ae0c0af82edbf4342fdee978d612b5208e672bf51049fd797fe0ed4f2a", v: new $Int64(0, 1088) }, { k: "d6cd237b8772691169e39b9f52d96a5a9de631b0f3c7670108c0fac6a8fde84d", v: new $Int64(0, 7530) }, { k: "d6d0a03023e34ae255e79cdd2861608257972e6217a8cfcbe3bc448daa75a5cd", v: new $Int64(0, 8110) }, { k: "d6d4992b4edc3049544ec1b8f1e22ebbc911941be43c061cbf28c15b844b69cb", v: new $Int64(0, 4437) }, { k: "d6daec7c7731cf49c78fbe106d10e0849f0c391992ffa0f1805d1934afa0009c", v: new $Int64(0, 7697) }, { k: "d6e452106190f0d3914f7f4630176d8e0decd35a281695f92b028e398ea9c117", v: new $Int64(0, 2160) }, { k: "d6e550f843cef3cb31856d2ce04c29dc610615993ab17870280058804d12aa57", v: new $Int64(0, 5302) }, { k: "d6e95aa5b275d425658f2ddf20df649b6d92bf412dab84c93aa5a493d136055a", v: new $Int64(0, 2016) }, { k: "d6eb0505e02a5b12cf5bce79f38f0b232fd01dfd31301642eda6b73e83c48f87", v: new $Int64(0, 4079) }, { k: "d6f4f0ef49fbaf19e6078b5e40cb0c3a3900feb917c8a5eb020738679d539033", v: new $Int64(0, 6936) }, { k: "d70952557bd4ebcc5f00a43e0ec0586ae1c3081e07823fbf83dc6947a49cf375", v: new $Int64(0, 829) }, { k: "d709d2b4ed8c42299b45cc1ed155566a661330aee3b3e4389ae4586b40ff072f", v: new $Int64(0, 443) }, { k: "d70aeb994398838d1b9be31dd53738c19c61c5f6611526b3ce2f1f5d5b8a496c", v: new $Int64(0, 8998) }, { k: "d70f51bcd256e0d7be8a32e0628404b8b7c9c8d3ae87ab3500d6c48f92b37e22", v: new $Int64(0, 7444) }, { k: "d70fa3a36fc89919979b0373ac3738c98ea9d0697fcb2f560f40a7525847c00c", v: new $Int64(0, 9318) }, { k: "d7110e6d39d48bb99c50f897f2b2d41d742de2a6e8e601cc0c4d59b8f6024946", v: new $Int64(0, 8399) }, { k: "d711e4eb65417f0a231b1a4371e586ecd0fd1250e2f02189ebdd16cb438c82fb", v: new $Int64(0, 8305) }, { k: "d7152727ecef9231495e28f8be4582b6a64d9992a91368d2fb65315aa6ec9571", v: new $Int64(0, 8143) }, { k: "d716d27f98dfb87ce788cd46486143723bb8131650af47729efb4b54efe05676", v: new $Int64(0, 8555) }, { k: "d71cd11ead1106fa80c9ddd9eb70562eb6cfdd7392fd452f425479868476eb75", v: new $Int64(0, 7654) }, { k: "d72c0ec8ff8685e5b94763df82917c73ceb59ee8fc0faa1c86f129a0f6540316", v: new $Int64(0, 8822) }, { k: "d731b71b953e4502e98696fc40bc6fbd71182a93334af7b1ae0cf48cc5c94a2c", v: new $Int64(0, 8772) }, { k: "d738ea1e6ef7e1374c2331d154ea4ffd2d8c08ac6d400b93f372997fcf98148e", v: new $Int64(0, 9403) }, { k: "d744fc2041d51431f0ed5a696f3f453b9ae1979884661ce26849485a0c3b33f6", v: new $Int64(0, 3038) }, { k: "d74ff8c55468e2dab908dfb26494776f486e5148d006891fdb7185b8a6b1b7ae", v: new $Int64(0, 5179) }, { k: "d750b07d0fae3bd1fcd83bd35b2e187a9c71c893a8d67c6594f26f34facad52d", v: new $Int64(0, 5294) }, { k: "d75b1d9c5ee93921cb587f7046487abb8d72a4859a2c37bcfec0979fa4aae2c0", v: new $Int64(0, 6999) }, { k: "d763e95b9907d5211308cdb72bafbe116b0c1ae5e156d743486e7d422c3b0d8a", v: new $Int64(0, 38) }, { k: "d765181aea61d6a9ac5d33468c498ff21663ff9c5c99011a553cc32ae7552798", v: new $Int64(0, 3863) }, { k: "d77586f8645974ce5e3815c38e14b47a73cfe186a8ca5a5f771580a437cd308f", v: new $Int64(0, 9410) }, { k: "d7839b7276dc491e8d956956d23b0f255eaa57b75a7582733a27bc68a656021d", v: new $Int64(0, 3354) }, { k: "d78b832ec2bec9459b96ff1e8053b8e68f8ecdd83c1866b534598678d5c12b96", v: new $Int64(0, 9718) }, { k: "d78fc9341a165c403bf897a7e0936913ac6bde61744afa30a81733c0dc0ca815", v: new $Int64(0, 65) }, { k: "d79be9f862e34d16f2ca8472f0382d3690a4a8b03a2f848b32937fee12143e0d", v: new $Int64(0, 6759) }, { k: "d7ba44f795cf3692a6b4b54759496366eeb65d609c6bf3e24c592fdd2d53317d", v: new $Int64(0, 3694) }, { k: "d7c2ec26e23f7c152eecd6d0e808de7a45b9b818419b7852fbdd665f4b7ba411", v: new $Int64(0, 2545) }, { k: "d7c3653172642276eabb0f39239ce47d224121695760b4ffc8031919a10c55e7", v: new $Int64(0, 5024) }, { k: "d7d530237fe18149fe734d041d6863bd0e6abfa24e67a92494e0ff0bf44bbca9", v: new $Int64(0, 3372) }, { k: "d7dd58ff44462c964ca607d6f26955ae8c6d00da01c09c6f60ab83a86a18a5d1", v: new $Int64(0, 9590) }, { k: "d7e17d0a95eb2b4a4db0e5aea397aad401b206033a665a111749f201555c5a0e", v: new $Int64(0, 4794) }, { k: "d7e36f48187835a36ee5aa90fbdb9e3686abc16461bc702fa5accd87810a4e1d", v: new $Int64(0, 7223) }, { k: "d7e541f407ee372e892cdc15f73c4a3b11050e9c666072b0ff4822acbfb48f92", v: new $Int64(0, 4286) }, { k: "d7efb34a83f36da1c7be1d9c1caa148bd2bcd4f5cdb2e33af51c649a3178fccc", v: new $Int64(0, 1180) }, { k: "d7f485e3f4bec445b44d589c669ec3943e30b971feed261a9e56fd29ed7ab615", v: new $Int64(0, 1845) }, { k: "d7fd50a154f2287b66d4280af037456b5e045d30314bada231bf128bb1ec9e9a", v: new $Int64(0, 775) }, { k: "d8015e21cae26e51bbb34c27e9844e853f0b98e451b719040dbf1f298a37317f", v: new $Int64(0, 7111) }, { k: "d80cbce41174361f379a00e5e8621bd691c922fb9bf509b47972a5fcf09c66de", v: new $Int64(0, 3274) }, { k: "d81b94e836199c512dc023a78019a8abdd2f4f3cfe1ec884627ad0e28d20ddc1", v: new $Int64(0, 1530) }, { k: "d8262b98945e5cc736ba8c890bcf70d4b3fdae6df230d2ad01fa886139f9c1cb", v: new $Int64(0, 1503) }, { k: "d8308fe5a9431223af12f35c60df7e2c7e1e00ccadc1e5af83cff2fcb55cc11d", v: new $Int64(0, 1917) }, { k: "d830949bd5ef7090a4228be9b2d332ed91316ae08aa2baa22999cc1ad325ba7e", v: new $Int64(0, 7063) }, { k: "d8396a602bbbc5a89fbd53d4027de56f0c220b86d4596f5535881174f33c3af2", v: new $Int64(0, 9101) }, { k: "d83c095615b63147731c57d4388c3d6cf5fbe0f57d0894312cf1605425dfcbcc", v: new $Int64(0, 5565) }, { k: "d83dfe42b79d64842406540ebd8074d94b1e1fabc762147ff1004a5d7b6b1870", v: new $Int64(0, 1352) }, { k: "d840ec8674e00ef88706eeaa1aaea888b59893636e2b06ef7b6a453ff12d14d6", v: new $Int64(0, 3648) }, { k: "d84cec58f9dc4f1a1630bc08c7a880c0dd6836f24f4d329aac2da8f40013dc20", v: new $Int64(0, 7516) }, { k: "d84dc3e428753b71965950ffcfdeedb50cb11b25323528297bfd7d66e9995bec", v: new $Int64(0, 546) }, { k: "d85075630feab6ba4d9e83ee96e1b31840bd30b7671aa3bb378c57d96387d204", v: new $Int64(0, 9683) }, { k: "d85577493a102eabb990001ea5d65a70fec4100eca2d59a5be8b90ba381a4c87", v: new $Int64(0, 7823) }, { k: "d85849441f042de8d1096a93ca4de14ed2384d8f3e5b015eac2fc7662d3342ad", v: new $Int64(0, 3308) }, { k: "d85a31d4b7a7ed423cd854807c3825f8a11bb65e7730159cd9fa021e216f7e5b", v: new $Int64(0, 5050) }, { k: "d85efc432fe6783562443df68f58f299250dde764402eee0fe0557efca085f2f", v: new $Int64(0, 3445) }, { k: "d8619c1e09e43d40e47e69604ffb2f970797a8d463b6106b06f1dcdc9a7cd72d", v: new $Int64(0, 6432) }, { k: "d86c8b87744f010d940cb3cc4ee257ec8044b3ed5b824fb23cfba80bca541422", v: new $Int64(0, 8024) }, { k: "d86d4ae4baa533c473c5ac53d5b18a710b73774b7de82048f90dab0e60d2bfa7", v: new $Int64(0, 4468) }, { k: "d87a827a7457e8ccb776b57c4ba01c4477504da1cee8265d8e066b8f08b0b553", v: new $Int64(0, 9457) }, { k: "d87fa73719ec8127dbcde70161824c6acf6a76ab3ad3eae31fc8308936a91db2", v: new $Int64(0, 7723) }, { k: "d8926c078af3feaf0e8c179edc19017e96e3fff3b9ab277663078fd21b0d08ad", v: new $Int64(0, 6960) }, { k: "d8937683d774b49c524aa8d396d2136179c21566e8172c19a4ae3f5f102d0652", v: new $Int64(0, 2549) }, { k: "d8947c5bddbccab559621141171a137016dc357be30cc91786afd5836c378af4", v: new $Int64(0, 9040) }, { k: "d89b5c4d82e209503f526163c8d247c14458c4634149eed018ed602382ff1e58", v: new $Int64(0, 2261) }, { k: "d89bb186d670110c01aa2c0226521f18c58fc876e0a75a32b4443cd4b6024276", v: new $Int64(0, 4868) }, { k: "d89c8c34491a3d04a201ac8a3eb45be2d941ff81cf1a2ad73a7bb2c88c35f042", v: new $Int64(0, 1708) }, { k: "d8a04a73c592e14821fc130bcebb00dd99f319eba228b2643de2fd08231e560c", v: new $Int64(0, 2642) }, { k: "d8a85061e87774eff285e473a63b07deda91f8b6b258ac314ffac57e4c0cad6d", v: new $Int64(0, 1631) }, { k: "d8ae52a8495ebca2e2c45ca6cb990dd32654acaa5cb556288717565a13aa20fb", v: new $Int64(0, 1649) }, { k: "d8bc9a1bd716dc9ccb399799730203b30bb834b14ad38724b5cc634200c7dfe9", v: new $Int64(0, 107) }, { k: "d8c32f55527a3dd8bcd3667cda258c736b90c11e99af3dcacc4b9b329e655f5e", v: new $Int64(0, 8819) }, { k: "d8c48bea49ac61425296cd512950ff767de0edfd96ed4c3c229831ce5407c43e", v: new $Int64(0, 8836) }, { k: "d8c6372f8fabf12cb4c10a737d033c85ce5b19027b95e5af67da8831db7d08d0", v: new $Int64(0, 7754) }, { k: "d8d3ac5efa1375030b3419eb66efa477df5e04c5765c3d327721cbc1801f2039", v: new $Int64(0, 5488) }, { k: "d8d6aab0ae1fb31cabc886a7581ccfd70877770942c8043bf4da2b8ceb178a69", v: new $Int64(0, 6907) }, { k: "d8d9c99b2f27e584ba6b1a5600f31268fe309c492634de654b119ad6b456f03f", v: new $Int64(0, 4607) }, { k: "d8e8de54a535b4fd36f3995b8191c03bc93d31b40d51994108b2d0c25cedc4da", v: new $Int64(0, 8725) }, { k: "d8e96c31fba7a26f4afdafc37ffb570c8a34f4013112bf7d07467fe90a1d6abf", v: new $Int64(0, 4516) }, { k: "d8ed9538304c4ce7b95468cbd85bc0b249a126154f852abd1f2896bf7fbf264c", v: new $Int64(0, 9105) }, { k: "d8f7c0c6cdd85ce3f7ec644ac07578a07be8be703d25e386ab09b7b1b5ef684b", v: new $Int64(0, 233) }, { k: "d8f9ca4a466df90328b576d9fa7d1213b4173386c7228ef8a7e2a8dbb3ee7146", v: new $Int64(0, 9730) }, { k: "d8fc9b3fd7fc70c1ba27f05a0337c158f3b77663da6b32b32227a8bca6c1f484", v: new $Int64(0, 4043) }, { k: "d8fdc79f507c65d50f265dcf5ad607c0020813d519a0b89706deab04b529d1ec", v: new $Int64(0, 1982) }, { k: "d900f94c41795f505da5f1564dde01a86709ea9c8e75892972dccbd16630ed6d", v: new $Int64(0, 3935) }, { k: "d90623db7cb5694cac770f79c1ddfdb713c09ff3b10a0f6d6b66658d9119d352", v: new $Int64(0, 1599) }, { k: "d90855df28c4500dbf18934fd47a54920e696b9dca566950d43fd32998e73d3f", v: new $Int64(0, 7727) }, { k: "d932fba9772985459ebda9533f93323390fb5878972b43c245f55776385ee558", v: new $Int64(0, 8509) }, { k: "d9429159137b66bfede564aea3f7f3792f9c9303a94b8c062c66c81d4a235b82", v: new $Int64(0, 185) }, { k: "d94c2a1d2aba62ce33ad514efe3d763240971ef3f14c62c73278ef861adfc2da", v: new $Int64(0, 2581) }, { k: "d954820132b1af13cc61b48b78171a83250198ecbf4f5b9f2a87a16318f91835", v: new $Int64(0, 4494) }, { k: "d960e0531f5376b124398aac2688883cc08bb38464655fcb762aa4a9719db891", v: new $Int64(0, 297) }, { k: "d96181a27935ede7d27760a6421205b1d9b70f0ca4cf72d21afd74a31de735cd", v: new $Int64(0, 5048) }, { k: "d962c2c8ce1b0c14343fd55caa7eb9f5f28f3a66a19f7db97011b03bc2746575", v: new $Int64(0, 205) }, { k: "d966bddc2b20400894fffd27368f36aad46e3ab393b2cc758686192202d494f8", v: new $Int64(0, 7639) }, { k: "d969e5529f2bed829dc8def69a8c414f99b035174a04240dee975fb8b1cbec7d", v: new $Int64(0, 8429) }, { k: "d96e10f8f9cd2ca8c9301291be2d14da16eaa4624b9d708d12bb516cf1d68b92", v: new $Int64(0, 7305) }, { k: "d96fe5a28423beff53604856d606a3b3d5fef63a220b4de6ad6e84d2622efe38", v: new $Int64(0, 5297) }, { k: "d9758c362642c4fd4cd5c8ebbfe9dcaa00695c2c245e5d44bad0d8e67a85b1af", v: new $Int64(0, 7331) }, { k: "d97a870646a7ade9c273934ba342291bbfe262b11b2f7fda9d59cbf86925dfbf", v: new $Int64(0, 5251) }, { k: "d97ec32ea13a6870080804d3a65c9c595e133ddee814d1937ada7c37ee2e612c", v: new $Int64(0, 7155) }, { k: "d98083d9f4deaa3d8ae9283bc7bdb4b275f01049f4cf6f107776838dd9a76d79", v: new $Int64(0, 677) }, { k: "d982cea0ea4ef4b563b25b6059e9d0b2ec5b20f70e417c443bb9fca6f0c3f3a2", v: new $Int64(0, 3988) }, { k: "d9891b36fb035ca675cca7b9e5d77e7e1b8efc9d403ef69621f410a150e49b8f", v: new $Int64(0, 3606) }, { k: "d9892a2e873049de3b03b608a7ea954af30c019c90fbca4315b00794ba982d55", v: new $Int64(0, 3227) }, { k: "d999f0f07e1fb92d62c6275d27f7f04c95a0f09a5344ff2107c9fee08600e515", v: new $Int64(0, 2075) }, { k: "d9a4f75fe94d6ea96c22d713ae13c570274c34bb1031d1cb4f92db1fb4637057", v: new $Int64(0, 584) }, { k: "d9ab84e89fbdd79e37707830641e07dd2af59dca2c9293de4899cab35514d993", v: new $Int64(0, 1974) }, { k: "d9b3980ebe9564e4dd390d8f9f433525fb82517e83a7cef507a47ca15015ea72", v: new $Int64(0, 4257) }, { k: "d9c461d69c0c7864be9e1d57289e3c6cdabb15663c708f138ab69fcaff4f91ef", v: new $Int64(0, 4220) }, { k: "d9c6bf89bb07a702ad0e7aca05dc1bdf79bc13c75c0d4119020d1241f0f041da", v: new $Int64(0, 2276) }, { k: "d9c9236473870c6dfebcf6fac7bea8895515bed406dd98f1ba37395a179a6d64", v: new $Int64(0, 8516) }, { k: "d9cff2c37e79d3692b2f4e41414c041e89a81d0e75812b84e5b0e2f3d2db4ddf", v: new $Int64(0, 1328) }, { k: "d9d0772217085c83b77e09a679904cfd5bc91cd2491a93aca984704b27ad1b4a", v: new $Int64(0, 1841) }, { k: "d9d357ed17af461c45c1ccdc86d75da3e57b0697d6e5a5224f326a7911e35dec", v: new $Int64(0, 5812) }, { k: "d9dfb6c32c7cd5868f55de0cc6287f7f5a08cc916bf60a2d90128df18650557b", v: new $Int64(0, 5825) }, { k: "d9ec64fc86f8cef48103c4aeb1cf53848dd69b0cea559bee784da87f87808bd1", v: new $Int64(0, 6012) }, { k: "d9ed0996d8e4830854ec221ac2a97bf165a7db115e24f2490a13c16c8481971c", v: new $Int64(0, 7227) }, { k: "d9f20b9168aa7a42c2698f925b0e2ab9263baeadb6b373be5711e5f8e35e3af5", v: new $Int64(0, 9962) }, { k: "d9f40254744f548e3aefaf2e942ab372f07a09664d84123da7b3d4f7e9668536", v: new $Int64(0, 5164) }, { k: "d9f6116165b3311514fc3329408f3a26de0902d8ebbffed735599856f27577d1", v: new $Int64(0, 5112) }, { k: "da025920de0f2d202e59a17657f668aff2baf3dbb4552ee69f454798ea20912b", v: new $Int64(0, 9724) }, { k: "da03807020cd2785b0487613c50f663bb5031c9fe0f53869b8d02aeca4d5dac6", v: new $Int64(0, 219) }, { k: "da1c2246625a78328c704fbd040fef7d128424ecb812991aef81dfac6b8b5174", v: new $Int64(0, 1619) }, { k: "da2f848fe1a2f39f292f09b634786a32a3270eaf43a8cbfb6ecfef7ae9ca70ce", v: new $Int64(0, 867) }, { k: "da34baa8e740c2fd2cdd019913f6e2325c8fd87afb9c247ab5f6c6d6c194d18b", v: new $Int64(0, 6970) }, { k: "da387407208d9c687632b33584d87c34279e1737fdc0d5f0fc878dd316d35af0", v: new $Int64(0, 9805) }, { k: "da389ff65fa2ccedacff385c80e7f058c29409ca938849ced27859412603cdbb", v: new $Int64(0, 9998) }, { k: "da390be08a85a165d896afd3d4f356723aab6ddd6d2b14472a59d364f993e556", v: new $Int64(0, 8274) }, { k: "da3a9a5c9bd457ffa174dab91050c473a90fa1cf86508c7cc408583359ddc07d", v: new $Int64(0, 7144) }, { k: "da41f72735a624952209d73ffd094e000257752948b1f385b44320fde1342a84", v: new $Int64(0, 8926) }, { k: "da4472da2d2a452aac122e5ab26ed1e6c74188c381e798b1e257efd4e379e070", v: new $Int64(0, 9569) }, { k: "da44fdaeb9f1be0bbc1de56a1d4a8a9fc90eed45e459482f7307df5e1fe4b405", v: new $Int64(0, 568) }, { k: "da53e82352d07cecaa2466d243bc5fe83400a22946b1b0b52806ab97e2f96683", v: new $Int64(0, 3554) }, { k: "da67d1c3549853c202639725f72b5ea0613b34abca80aa6fe0a0fcfd2ca4cae4", v: new $Int64(0, 9526) }, { k: "da6825e427f5caf8ec6a3fd4c0a8072f0db7f3bcc7a587272d8ca72dfea8c9a9", v: new $Int64(0, 9511) }, { k: "da68f416e38d216001d016cfa29f5a17da2261c2b7eff2c7cb99cbebdf952071", v: new $Int64(0, 6604) }, { k: "da6a1af7c88ae99640b10b938278b26b4966e1d34a529f43e8f3c245ecf03765", v: new $Int64(0, 2628) }, { k: "da6eb36cb7469e16b0a7cca03df010428efc76e05d976866059f7f20476a9f5e", v: new $Int64(0, 863) }, { k: "da7198b180b02673c979a395168b88e66fb7a4dc993bbe452b0a3fa301c4e391", v: new $Int64(0, 6506) }, { k: "da771b7b8519de7f37ed0e5f10a95a57bbeafc18fed8c867416c8654d3fb5125", v: new $Int64(0, 8119) }, { k: "da83aec8ba39402fcb47056a907bb28b2b3b5988dd8e55fdbb05bb0bea7c86e4", v: new $Int64(0, 323) }, { k: "da883d78a0ef5006df2c508ecefcf980e92b10445d90ec7a4ba652172b9b9482", v: new $Int64(0, 9587) }, { k: "da8b5cf1e883a952bf8f19b57439bb8f59854b200000adc8d1cfcec71fb1ef7f", v: new $Int64(0, 6468) }, { k: "da8dc947e29cc2a4f5f7eca84dfaf5948da91aee6baa6d341ca459e6fbc669ee", v: new $Int64(0, 4411) }, { k: "da979ded24bb4fef068d0025867ac60eceb8cfb0b7c027d74117c0f2836784b3", v: new $Int64(0, 6210) }, { k: "da97c65ab15bb97c5125250e1f9969f3e0cb12529def75c123c5dbeb83ba831f", v: new $Int64(0, 5741) }, { k: "da99fa6e93bac0f0117cde4973d39b3126d950d2c594cb155a057c8eb2eb5f89", v: new $Int64(0, 949) }, { k: "da9f31f3521dc7447dcfa1dbb40585cae900974bed8567e70ce4349f0d4a13ef", v: new $Int64(0, 4815) }, { k: "daa367743a957b21e8c33b78a99e159a998b1009c00c2b8fe3d923740f03356f", v: new $Int64(0, 5814) }, { k: "daa4f16029f3b83ae06df6281f20aae807b50e6c51635292f923a699c5038292", v: new $Int64(0, 8460) }, { k: "daaa29d08571626eef7e757c5899a7574b54adb5599cbec3e96fa23cbf6ff72d", v: new $Int64(0, 2846) }, { k: "daacdaf092a1483b931f32fa7af7f72cc04bfd9f263a78ca65c689b452b86f13", v: new $Int64(0, 3268) }, { k: "dab157043df6501d7b5b4fe3b8ff3752ddbd9c4ac31620129383348ea4af66c2", v: new $Int64(0, 1361) }, { k: "dac833b7daac258d83770506870e7f573a410db350f15ec08c9b1f8ea9e71053", v: new $Int64(0, 8394) }, { k: "dac8bfeed09ab0b7a1398870a6a6d75a5764b227cb20ae6545590b1566960b35", v: new $Int64(0, 5609) }, { k: "dac92216d5c2a465eb18e696743ee4660f2ac625c575ccee8e74405e960e5bd3", v: new $Int64(0, 7814) }, { k: "dacf657831d405c5007bcc7e1f3d250a701d76af65632efef183d57d0effc98c", v: new $Int64(0, 5980) }, { k: "dae0e426a777f82f4b46fab9b9a52501c15524a90de1ea7403cb581d4aa1f41c", v: new $Int64(0, 7131) }, { k: "dae2a6e3a74c578fa3f0d8fb87f11f571795d5a0ce9b97baf951171841a24053", v: new $Int64(0, 5436) }, { k: "dae2b9d1fb35ecc5f8740f826bc2e2feaf5d0918d53b47be66ff001488389895", v: new $Int64(0, 5877) }, { k: "dae3936a7c2aa13d4a505945f562c4e2a8bf91b36bff0916377aa9084dab4807", v: new $Int64(0, 9991) }, { k: "daeaf188e701d320867fd5962d4cbda30c7cda017ce76078b79a6d9ef96e2823", v: new $Int64(0, 4103) }, { k: "daec33eca17a46dfade008668464a8eb0e9511f7a3d3034f5ed88b0e403f42b9", v: new $Int64(0, 7820) }, { k: "daed2891d78f64927a5b8382946172912417d8cfbffc0cded02beb8b402e5ed8", v: new $Int64(0, 6925) }, { k: "daf0cd84295e4b8e64ed27cbc0777722e6016e91f78ac22b4bedc2e054ab29eb", v: new $Int64(0, 2669) }, { k: "daf9450016d1b16947e262e282b09647f8154ca9bdf9573d90b80620ec82c96b", v: new $Int64(0, 5453) }, { k: "dafd23923a64851e7ffbf620e12a7217a2543d65fc81496b1665d8a70c98e66c", v: new $Int64(0, 5844) }, { k: "db0250253a0ce32f4dac87a59d86fd611b079cd050be154e1985fc774ddd4c85", v: new $Int64(0, 435) }, { k: "db118d78b251a06b38c4ab449b83b00b17546c7d7cb80fdcb0938b320869a395", v: new $Int64(0, 5464) }, { k: "db1a6aa89e7ee7428bd03b57bb5ebb654f7637a9949a2b1c9dddf8c73bea5aae", v: new $Int64(0, 1007) }, { k: "db1c64bc4b9a753ebf5b4cace419943fda7a6543b5ea9a972a8696e59f8993c9", v: new $Int64(0, 2117) }, { k: "db1dd2a9d1b04495f257268692a003db30c685a5c6ac3f3eede52bf6638b3a8f", v: new $Int64(0, 118) }, { k: "db1f47681edac8e72e062da3922693af9a4d0c6278d33a56378aee636fcd396a", v: new $Int64(0, 2296) }, { k: "db2629b8e4e3d5d9d51a17baa531ebec6d244a187a86e8a61359bbac2668d1dd", v: new $Int64(0, 4645) }, { k: "db2b76874303b24ca14fa478f04989edfca859ab6208a9aea253846ad1c30018", v: new $Int64(0, 6223) }, { k: "db31b2631807fe4d1e9a3a248f7f35bcf0b2ce020d2af3f3c48f265eb7b38820", v: new $Int64(0, 8824) }, { k: "db3d86192e375e4aa8f857bb735734fd2e809c69d9361d7bbedab6d9f65b4fde", v: new $Int64(0, 6608) }, { k: "db49545749d3a418adf38168022221ab47993a16431ac5f0b2938e80651fe575", v: new $Int64(0, 6779) }, { k: "db555098f14a41228c1b9aa75611139589a0baf149b82aee5031dabaaedba973", v: new $Int64(0, 7030) }, { k: "db581ae36dcbda460054810e0c00a7fc039084fea4eb408f2cad6bd67aa910b1", v: new $Int64(0, 8302) }, { k: "db6af66e8c2288d15adacf1e6bf6e76471300e4a1f7575d234f74eb0783cb13f", v: new $Int64(0, 4931) }, { k: "db6d21c1cee04dd32c48257dba019acacc25e27f0515a32bc7156beff3ae5df3", v: new $Int64(0, 5324) }, { k: "db7ee7cb033ca788ddf05269d032ddc761722686a3aac3c9cc2207b340b7fc5c", v: new $Int64(0, 6404) }, { k: "db80d42aa40db1a9926514d9220ae1c9166eb48389c8333e3951241f0d4aafc2", v: new $Int64(0, 1580) }, { k: "db81709affff3e22191f0a3faa4c27ed5e47eb54e6f50c8a9561d19cd8dbb118", v: new $Int64(0, 6541) }, { k: "db83b2de85c46410ff850656a541a80f86942f0106eb23113aba200cc5818bb4", v: new $Int64(0, 5632) }, { k: "db8e1ef562b5f89d40e313c5023d03f3ac9ec1322722d27102088277a28577ca", v: new $Int64(0, 4151) }, { k: "db9c0897435a18f1165e91a753b1c97ce9c05e6ef6734a472ba4272ea1a374e7", v: new $Int64(0, 5580) }, { k: "dba344600c867ee473a861c4e9442361e9633daadd9b14c37760957daed30711", v: new $Int64(0, 7765) }, { k: "dba72e0de796273e0cd481d7600fcd203f213de11811e6e0f4b24ba42cc4bf99", v: new $Int64(0, 1582) }, { k: "dbaaa1d54d116247c4bdb75f22682615c901f5f980ba22ebac0e3715aa0b2562", v: new $Int64(0, 8730) }, { k: "dbab2065dfc46a4f669331456ac8f54964e77c3265575b23caae7e39b4db713d", v: new $Int64(0, 6750) }, { k: "dbaf48dff567338d39fe3c024c0c67848da452d96d2c6abdb1fd2c450a828d8d", v: new $Int64(0, 6656) }, { k: "dbb4920dfc0005a83745a3356ff6277fcf11d8b57c206dd6cbadd72f17b0079d", v: new $Int64(0, 9438) }, { k: "dbb766b2f8ad4c95f06b1b0b43f6baf3b0b461696c3c2c4ff290042041d92fc4", v: new $Int64(0, 4709) }, { k: "dbbde19740b9f5a61b7f5c58573bf4a81ec46617b9c3cf17154fc95c44547c9c", v: new $Int64(0, 3086) }, { k: "dbc9615b445d12e066508e45851db90c1efd95df8ae9ddcb0d61c969c9668f17", v: new $Int64(0, 7770) }, { k: "dbc9a6fc56a5d75841f797c309a8094ee4f495cab58cd1a5c6bb6ac108c05300", v: new $Int64(0, 2927) }, { k: "dbd9a4c78d5e97ed654facdc2e584f281373a93c7673edd6a1c32634f5206fd2", v: new $Int64(0, 7483) }, { k: "dbd9e616d2c42c3367d98cd73c086c5884bb7f7a079a6e4ebd3c9034a9e1dbd4", v: new $Int64(0, 9507) }, { k: "dbdeeaecd17340c93e46f24246f7e875b7523b764c4bd119200d51373fc6310d", v: new $Int64(0, 6341) }, { k: "dbe446338d1ba6ed22e6918378fc65eb73f83e3586068ca85d69e613c6ceac41", v: new $Int64(0, 7700) }, { k: "dbfe076ad6e7cc16e2cf777fd96a05fdd8c60d0cbae35244c119bbc9612acdf1", v: new $Int64(0, 3597) }, { k: "dc02bc9d72e62a3a8519ce57da5149bab5b5eca9a7615649366d629a11570696", v: new $Int64(0, 8518) }, { k: "dc0812d88598901e845fd605c989b0ce7a252a6788310b781f9b0e90b2dfc785", v: new $Int64(0, 791) }, { k: "dc16521772b58ccc0952fca83fe12eaded7a6fa5fe24812e1740cd9f78503417", v: new $Int64(0, 93) }, { k: "dc288bf8a2a9158566d17b7bdc1d16bc5ae95b4b81f4ec18775b63fe78ff0e78", v: new $Int64(0, 3030) }, { k: "dc2907b0989017f632947fcfac7b93e8dbe75b34512ca0f454e81df58d194f4a", v: new $Int64(0, 3244) }, { k: "dc2c3b3ab5031022661d505407619f3ff27aaf3ae901712b8bfa902ef8b07278", v: new $Int64(0, 2297) }, { k: "dc2f4ab7b4af83b8b98c59a6e3d5ec859bb18ccea61732712d9f7ad206e6ef89", v: new $Int64(0, 8159) }, { k: "dc3001f58bd8a261f598d1b637c46b80d4880bd805a75d6c7523a5251bfc8b79", v: new $Int64(0, 3050) }, { k: "dc332ec2ea920fa5bfcb01c2b23e7ff310822117b063d3bbb6e8b96603d2635f", v: new $Int64(0, 8071) }, { k: "dc335c532446487ecd9903f4d7062ff8d770c0aef9f0c6321f840a67afc04ebb", v: new $Int64(0, 2456) }, { k: "dc35a68efc783e835b149193ec60024ebff6bfe915fd13c2885c7db60712f8ab", v: new $Int64(0, 6877) }, { k: "dc3b0c8eb4a89d487a1a68ad32ee323243f360b99932bf849bb89ad8e9eed19e", v: new $Int64(0, 9459) }, { k: "dc4837bdc219804d671caec602406062b8d6e4aa281e2a54f722010138624e6e", v: new $Int64(0, 7716) }, { k: "dc4da7ec42b2afb4a480459d5ded5e71401a91b5584972233061a999019bb463", v: new $Int64(0, 52) }, { k: "dc56d96aef6fc6ad706b7c6b7aafaad44d3e891d077e348d2d54b24ff3dc00f4", v: new $Int64(0, 8755) }, { k: "dc636293d801f85878021f30fb53c3f4a8a9217854d7c1dd5c868a2c4f63ee3b", v: new $Int64(0, 7191) }, { k: "dc7246f3f52aac53c50f316a3be2aaa91d86096564cc4ea3fe5ebae1407da30d", v: new $Int64(0, 9574) }, { k: "dc7afebe7ad77c590221a39138c04b42c84ed0b9833e858119939df6a68a6092", v: new $Int64(0, 5100) }, { k: "dc7bca6b8a783bf269b718ed6bc1cbaa667f163e4f06070845bb79964620541c", v: new $Int64(0, 2488) }, { k: "dc7d034125a9fede9f6e160397875cb4f25d7becfb4efc977459a2e205f09b60", v: new $Int64(0, 4169) }, { k: "dc7e5f9eebfa416650e55fc8ffc830eeb5cd3b36e21fdc511cd8e87509c2ea7c", v: new $Int64(0, 5037) }, { k: "dc8075111091f6c3c253ac73f53d4dce5e731a7adb576a6e03678a9d7479f732", v: new $Int64(0, 6770) }, { k: "dc8eba2b3d547e2f3b5586e7630f521bb2baed3e02e54849c698e5b256db0481", v: new $Int64(0, 4071) }, { k: "dc938c8c2029a58957dfd3dff4cc752f78f11423b1510b3884dff2f0fba42de9", v: new $Int64(0, 924) }, { k: "dc9c83cca8cece1e1599d549766260159dbe76e30ead3ead76461d9ed6db7d45", v: new $Int64(0, 9394) }, { k: "dca43066c67a80fe3f704c8c5e5261e5d0dbed24231b85c756a82eedfcf88f88", v: new $Int64(0, 2807) }, { k: "dcac872bd91ed833e51998a5a84d62c07da941b0459373346ba18d14e0bd6819", v: new $Int64(0, 9211) }, { k: "dcaeffe10d21f12551f81978ec45472b9b4baa7b02f846e01e512728ff485825", v: new $Int64(0, 9028) }, { k: "dcb32fd7de0f2660a1713fba7553fd336bddd7d5a6d511deaaef396a2f514027", v: new $Int64(0, 3735) }, { k: "dcb3ba5d568a9f8d1684f01abd2c491f44ba873f71f76cf8ca33063d881d37b5", v: new $Int64(0, 3480) }, { k: "dcb4190c3ba4c1b345296bf28bfaab9b6bc27efeac366f83e7829a7cdc10f960", v: new $Int64(0, 161) }, { k: "dcb73ede9b5f66f8210c6f3326969050a4c108cbbd66f6b84c148966d85dbe55", v: new $Int64(0, 9990) }, { k: "dcc23275c25c1c36ab593ca6ab75d5a061ecb963882991c7928372378054b48f", v: new $Int64(0, 7499) }, { k: "dccba4d3fdc4ab8bcf1305090db5d886baf7de3ab0edaaccc3072d1c13ed5377", v: new $Int64(0, 1050) }, { k: "dccfdb826f59668c519a66623d7a539aae4d7b72eed8edd31a9c7e97311e8e43", v: new $Int64(0, 664) }, { k: "dcdaaf28ce1f77b501444ea3c521f66c0c0fade9adaae3e86c24f17879dcc49a", v: new $Int64(0, 3688) }, { k: "dcde66ecf0d176f464ac98c17f2d87a63a84a80f26d06fc8d51a5c4c7b4473ec", v: new $Int64(0, 8977) }, { k: "dcf77a4e4ce1f082fe7a088997ac264af9c8a5f9632690775685b76056c2c847", v: new $Int64(0, 4593) }, { k: "dcff2425ac284f6c4f330e454b7d53dd8f0194479a714bf5ffd71defab9153fc", v: new $Int64(0, 6641) }, { k: "dd0cab7b492b620a5da31f153151fcc1dddd6d24b938d2db5f4bfbcf7d6b3f5c", v: new $Int64(0, 1548) }, { k: "dd16ba9563fb88b68c4fd476a97b8a6a047ea629a5743e29de17655cd0f44da7", v: new $Int64(0, 816) }, { k: "dd1a57f09802e7b0108b18ce711f6e3b5efb5353faea0458f6d5761e100c65e5", v: new $Int64(0, 1666) }, { k: "dd2499168ec43310f813fecd59039697429d5704740844fba981f0435adca47c", v: new $Int64(0, 8354) }, { k: "dd33a483a21cbf11b46eb31f3f988dd00d5d6c1963d8eedb6b90bfeff5626336", v: new $Int64(0, 5655) }, { k: "dd35447223251c15d3019cfc2b0e7b8943e98dc41cd0009451d922a0fdaf92ee", v: new $Int64(0, 2038) }, { k: "dd38c2a5ebb3455b8867f4ba22c2d8d25c492a45d806cebac96c3049722d9920", v: new $Int64(0, 1810) }, { k: "dd42b2171d32e9b7d673936ce6ccf325dfe6ef80e4cd80e3616000320c278fb9", v: new $Int64(0, 7219) }, { k: "dd43f96a37ad93beedcd41fb88c1cd19dd613f27330202f7fd7c72397ce5f997", v: new $Int64(0, 7058) }, { k: "dd45a9fd6f2e762a79f61b9e8fd5c90999b7e9df1f1e78be513471d4b2676654", v: new $Int64(0, 9782) }, { k: "dd4611baef7b8d738a5f9e5fda971ab84783a70d1ccccfdf59644e5d66a5b051", v: new $Int64(0, 5258) }, { k: "dd526d2c7288bb7a92b18314e90df4dc26ada5c8112f780b57e966a96552292a", v: new $Int64(0, 1015) }, { k: "dd542f774700293c85cbf2c9d1fd4278cd5384efa647593cd07920e0e72aad49", v: new $Int64(0, 6182) }, { k: "dd5ae8207d477e47278eacb4bf285b02596fc8bc3bc32182881041073d31a0f9", v: new $Int64(0, 5485) }, { k: "dd60ddc5f7f95a09859aa8d9cc93f2d591598f6ef7e5a6bb31b3740d198d7be6", v: new $Int64(0, 4534) }, { k: "dd6167221b5250f4d6cb9f08adce38131a88e2783e8da14cb141054c5de3a597", v: new $Int64(0, 8134) }, { k: "dd64967b8a359a79b9bdc1948be3073800d79cd277e518f6ce2aa61f5a19a48c", v: new $Int64(0, 8440) }, { k: "dd662300f7ec8df65edda7ee4eced31420d69e0d580eb3d32942bb59f9a2f19a", v: new $Int64(0, 649) }, { k: "dd6a342bdb4961c4f8b5506a58603d704c6ae5321a9276df57a121fe522b0041", v: new $Int64(0, 1800) }, { k: "dd6b4f46107eeeab4245db1bf32bdfdae6b9cef2bbdcabe89a18224c4e1c7bca", v: new $Int64(0, 1753) }, { k: "dd73dea14ee284a1a4eb3f743f25b6fad7f1fb1bc1d38b8e107db2add01130c2", v: new $Int64(0, 6176) }, { k: "dd861b910c21127aa88f9d12b70b4c5b5ab67e389c8459a55c4ba98ff3ac717e", v: new $Int64(0, 4567) }, { k: "dd961ebcc529305abf020ad1b08ba5b210c87dd9f9d0fcd980631f481f60bd41", v: new $Int64(0, 339) }, { k: "dd9a6280356fd8ed422f396701afe2fb3cc125812a0e072a5242c2257376aa6e", v: new $Int64(0, 795) }, { k: "dda30ef9175be4317310e56b1033f161e3dc30e159c745560ef1d4f34f82459f", v: new $Int64(0, 9985) }, { k: "dda6ae5dd868a1905c26503966a7d39abd335d80cbeaa4731b415c79227e8d3b", v: new $Int64(0, 3027) }, { k: "ddaded3480baabb0db9adcbee701eece9aa50dad3f82e52a23ddacc36dd127d8", v: new $Int64(0, 1014) }, { k: "ddbd790a2e1874180b3dd9ef83d1f0cdadd8f36c3828425a41b3091cc68de382", v: new $Int64(0, 9711) }, { k: "ddc313187c66e0f549287979ecee716dfd780479d3406a6b882032e4a51fd44e", v: new $Int64(0, 9839) }, { k: "ddc5b53d9a94bfd5f34584f859fcd13734f76882fa2532056fa995e176987acb", v: new $Int64(0, 3857) }, { k: "ddd2114b1f547eb0f2c4f35b20b257b73dc67fe6e21800c76ea0d7d8e85f7e19", v: new $Int64(0, 9601) }, { k: "ddd5eace610dabfdb2fd0a0b361ce88edfc8e086519ca1ca320241f134750814", v: new $Int64(0, 5752) }, { k: "ddd71f9c593fb72e1667c6643e1b4a76ed815fb51bcf6e3fbe09b244812d37f9", v: new $Int64(0, 5956) }, { k: "dddde96727936cbb0317ffb1ba2846e3765a86ea7c4a792e4fcc4cf773907e1b", v: new $Int64(0, 8120) }, { k: "dde371ecdc8438519ae47b3cdf244eb410b9931c2f19ea2af17bb9762c05544e", v: new $Int64(0, 5869) }, { k: "dde46e00ec5206b8d2c17e273214a37962ccb3d71b37b5942356b26128bb506f", v: new $Int64(0, 9885) }, { k: "ddeba202ac48c7abe385c4aa1a4eef911b1920bdd77ebb8b071b4c2552579f6c", v: new $Int64(0, 9352) }, { k: "ddf4655c1029588c9a7dae8e776d0410d2b563aa657c53027e8705570109b5e5", v: new $Int64(0, 8872) }, { k: "ddf67c237a84131823b87082fb7c8e1cdb9bdb42052abc764b10eae2eedf3e06", v: new $Int64(0, 4959) }, { k: "ddf6a0d9bd5562902be7c75ec23d8d5d5bf1a7f6750dc9c4b655e2286a38586d", v: new $Int64(0, 3120) }, { k: "de07e498b56e2f8dfc6e69a1354b2f87307d40681e11e23ee5f7086206937a22", v: new $Int64(0, 896) }, { k: "de130ee9d5cf977309c806752bca3efc64fa2d737581b3a0ab94abff3b5ccc92", v: new $Int64(0, 961) }, { k: "de167f00923ec2bf15d570b9980006e9fb23f4141daee4057e5a100cf5beff18", v: new $Int64(0, 283) }, { k: "de194cc17ee9f316f87a92918268f8a229f5b6293901bba5dcf43af76767246c", v: new $Int64(0, 8307) }, { k: "de1cc3cba3bc8fcf3fd88e0654e70ff6d6956e2662f0330552f57860645dac37", v: new $Int64(0, 8446) }, { k: "de2773d958fdf03b54bce0df78a373a7b6904512243d42dc9fe81d1d8cafd177", v: new $Int64(0, 4474) }, { k: "de2c477780b8ca24d28b7e4548328ea932033ca681da04e5e121810b453afa1d", v: new $Int64(0, 4353) }, { k: "de2dfbe7b8400deca83cd0850f826bcd5845d84f5b13a303413601e01a5ba03f", v: new $Int64(0, 6820) }, { k: "de3e23c4e25643dfe27e885c013595b81bc21b6b2c9afbae3dd97e5532780a72", v: new $Int64(0, 2074) }, { k: "de40edd95abc0257d6b0cc493541e7346f3b931d26baaad6e8a0fd8ad7c5e5de", v: new $Int64(0, 5183) }, { k: "de44400980908606cde8bb086bcf4eec8dd668a433549929443007ee5579efdf", v: new $Int64(0, 143) }, { k: "de5c8c5c5f91b4b29eb9d201f68b1007c4fb50802fd2617cea346afd4f5017b0", v: new $Int64(0, 3786) }, { k: "de6c3b50f1083e38e6d57c7a5f708164d750c29f70a6fb78d544e498f21efca3", v: new $Int64(0, 5136) }, { k: "de6d1a1255de50f803f9b348f79322263644ff32577aa29e0c99c62fde8347c2", v: new $Int64(0, 9156) }, { k: "de71af8abb592ba5d43bc6d243636a121f855f5905969a34062c96761f460ef4", v: new $Int64(0, 1889) }, { k: "de7b4215ac5c8d147428a3261606d935f22651aa638ac5cff6c4ac8b4b3c11b0", v: new $Int64(0, 9898) }, { k: "de83036fced00ccc4d93e6222116f817c7aea21312b1493344e5907703166cc0", v: new $Int64(0, 3183) }, { k: "de85d990beab0e54ab646ef7e21b237e60d7493c2272696adf0f4e889a163051", v: new $Int64(0, 7138) }, { k: "de88ce1e31cc0c096fb9f48099566f4dad744caa1e57e7c43939a5f03a74c00c", v: new $Int64(0, 4522) }, { k: "de97f61748db3d8047ee474864282ad6a7947bbd6065022c5c2843888d3c0e10", v: new $Int64(0, 3763) }, { k: "de99d71a7d6754af123abdd30cea52abb8172bd358671ec24fe463c39cdec402", v: new $Int64(0, 7320) }, { k: "dea619e49b25098f6aedbcc1dfa556736b62a420782eeebfa3a056590f727b26", v: new $Int64(0, 2860) }, { k: "dea9493f7eb3329fb84af3c7ddf1372e0f805d06bf2b5c81315eb1eca2e01bab", v: new $Int64(0, 7826) }, { k: "debeff2cf01caac166ee02c9e6596ec997666ca62084766a1694b07d36dc02eb", v: new $Int64(0, 6290) }, { k: "dec27eb90099e48d5b7cbdd76cbd4ca20d0c96639a55fb3326d02bb591791b26", v: new $Int64(0, 2559) }, { k: "dec654b6e45959a82cc3d51178a974e015bf7c9126fb433737460db482c8dc5b", v: new $Int64(0, 5921) }, { k: "dec6d6392cf39a6a83ff34db75aa884acabe426f2ceb7e3d278c0d4a8d4e9129", v: new $Int64(0, 4131) }, { k: "dee125c5f2e9db0c720f5591826ee8481d27b6b293ddf4cea846b581fd700a32", v: new $Int64(0, 8324) }, { k: "dee39d66dd410ef80d57caf31055d6a9fd931c9c02b54cdfd3f1ab09c91551f7", v: new $Int64(0, 7705) }, { k: "dee4e4cae5035d8a480ab18907fb1566e54d3f152d297ac3638e8219494f6c92", v: new $Int64(0, 6225) }, { k: "dee66b53042c4516b88e56d5e630a2cf50cbef43fc8f01097214f1a8131ba029", v: new $Int64(0, 5150) }, { k: "dee79eb5fb1963d94b8b4c559fd4d8c1c2b613248efc8e518198c3113330efd1", v: new $Int64(0, 7358) }, { k: "dee7f647e759b16c94a86b6882cb3cf8d5dec8282278dbe753ad89a0a66b9237", v: new $Int64(0, 3781) }, { k: "dee859b21f62f7ff724a6d1bad40ac394596ec2aba402ef268449395b23bb0e9", v: new $Int64(0, 7863) }, { k: "deef895f302b808eb7ec5060c9becf151b6ea61c275c0f3cc6363a414dd16346", v: new $Int64(0, 4034) }, { k: "def16cc5e764fe1f11795d79a68561ece4e8f130ae56d19630753ee25053c7a6", v: new $Int64(0, 1714) }, { k: "def1a30f1bbaaa85d1069c4bed6f255c3eb8cded22cfb74afb64663d0ab5b021", v: new $Int64(0, 6069) }, { k: "df00e66d2581b69c775cfc7a6c1697e1cedf1783c134ba380eda28c7571ed620", v: new $Int64(0, 6583) }, { k: "df013b4d39bf62df8a6d16dbf2f6882519aebad6453a00fc8c2d98b38b045937", v: new $Int64(0, 1323) }, { k: "df02ac913f3db3254cde6f7c80ef1ecf066d5fc797fca74115b32ad91173d2e2", v: new $Int64(0, 523) }, { k: "df0fc864f4f3d5121b4b572eecf085e097da7e9c3155146c7b7f90c359d45938", v: new $Int64(0, 8957) }, { k: "df25ca4f534fb76db4eb6f575c99882378250e96e603919822626e8be506959e", v: new $Int64(0, 6324) }, { k: "df26b665a467df7123f8297288c7f78375ddbf21aeb53d93f8365a24318ac7ee", v: new $Int64(0, 2030) }, { k: "df306e7fb4f32c28f085ff978d24e5193fa3fa505ccaf8b33b3b81b7d57dbbb5", v: new $Int64(0, 603) }, { k: "df3940743006fe88c85da512d933060fccd9ba2fc7efbc34366b1daf6b37298e", v: new $Int64(0, 4736) }, { k: "df3df9db53e7efda806133ac222b86803960a232e622bebde238b15a3e72f059", v: new $Int64(0, 2026) }, { k: "df4c3321a7701087500f0d9c5eb678e6eb0195f2974fce7524fc029c8f5f9e9b", v: new $Int64(0, 9706) }, { k: "df551248bb8a5d8a91753273efa6514794a8ea50104fe1cd960d9214c42f6bb8", v: new $Int64(0, 4189) }, { k: "df5bc789a716497448ded2579f5644c318a0cd41b02c5654b671a217632f316f", v: new $Int64(0, 9663) }, { k: "df5c2eadc44c6d94a19a9aa118afe5ac3193d26401f76251f522ff042dfbcb92", v: new $Int64(0, 15) }, { k: "df61fd1267971416f462705edc0e98691875e390e6786748fa6d82ed657616d1", v: new $Int64(0, 5243) }, { k: "df670fac81fc925c1620878a0748e580e910dc18d22878f5b0607258ee60e5f8", v: new $Int64(0, 5904) }, { k: "df6ae640a115f11f2990327174edb1967b78deec93d177194860e8a4c41d5ebd", v: new $Int64(0, 1868) }, { k: "df6b613e482398d59f54a2acb131755e212eccf62627a08f72506e0987a5a5a6", v: new $Int64(0, 2598) }, { k: "df78a23a18e9aa38d086f270b0e2065ed44ea9073e4e6c266af7d681311356e8", v: new $Int64(0, 5914) }, { k: "df7c4af81f65183242c38c6344f97901095a6ba67bd97a67593b15e942926356", v: new $Int64(0, 4157) }, { k: "df7fbc3c97e807a0b97ce350245d5e6e799bac3859cf906464b0864f57984201", v: new $Int64(0, 4324) }, { k: "df849d2b9447c5884954c89216ed145383b88c79a29e2b5b0a72739551d4d954", v: new $Int64(0, 9704) }, { k: "df96c8aaadf8d5f364d2a9fb932e7cfb84ed02bd7b154491afe04124b70f9445", v: new $Int64(0, 472) }, { k: "dfa881942fc3d67a929ee018c039965d6cd720683b001fa6d4c8388c62083327", v: new $Int64(0, 6139) }, { k: "dfb4d8cb87fccad51572909d7bc26cfe815853f220b69329eb95733a7abe0b88", v: new $Int64(0, 9151) }, { k: "dfb791a67f6f670c2ff412e30afdf5df2a8c55a630063c613aad2a4b9d404acd", v: new $Int64(0, 2620) }, { k: "dfcd250b2f81083f32a4ee3fce223be6cd12d434c3edb99cb12c098599863c7a", v: new $Int64(0, 8248) }, { k: "dfcd4a484ee61753851ac10650c77634dc9d2023417021090aec802aebc8bab7", v: new $Int64(0, 8605) }, { k: "dfd04661d654f008d4b6a8c3fff0299ed682a93afc9dfb1ee9e7e15ad0750c3e", v: new $Int64(0, 2361) }, { k: "dfd4a47dd7ca7d19b268e2cb5c68bf00ce6c4224dfe3a7c0ac551563192e431c", v: new $Int64(0, 8142) }, { k: "dfd5f3ff37e720a45c62f9419a3bdd3a7e18029a3983af18c4af9a5884934c0b", v: new $Int64(0, 3275) }, { k: "dfda7788e7895ccb83688aea3dfae998eee8a5a66abd9ae02da6790424c4a2dd", v: new $Int64(0, 4757) }, { k: "dfdb0e769120054df1683746714e5f484602d35c49edc0fd3ede502081d63f1c", v: new $Int64(0, 8831) }, { k: "dfddb4a8024daa15d085be0bbf29be0cfa1daefe1ce29f983e41c0a402ad7257", v: new $Int64(0, 7171) }, { k: "dfdfdaf54916dbc11bca94c5ba86ae4dea61965c93cd3275ee144919135f4a59", v: new $Int64(0, 3290) }, { k: "dffc8fce11c92bdc0290ff5210d4a9bc160a37a080be7f6f5dfa234d318af618", v: new $Int64(0, 5612) }, { k: "e0022d1289ec4af304cbfbba481c15a31a1a6a5ff337962f831abe238c9dbfde", v: new $Int64(0, 7534) }, { k: "e0031ebec0a5bcb77c66f576888def47b53c325c315781a13319c9e4146005dd", v: new $Int64(0, 4405) }, { k: "e0097e9fe02910400c3d4fcf4d1fd36907b97bd4948d9380c43cba40f6a5991f", v: new $Int64(0, 3226) }, { k: "e00b4f085596daf1fedd085961d42eb55ca38e47c5a5365473207448f0ac0da1", v: new $Int64(0, 5408) }, { k: "e00c6500d012575b76908cd5830bcfa32daefee4dd9859eb58319db167a80d9e", v: new $Int64(0, 6915) }, { k: "e01619211294b54221cefa25cdad75907e5e18eb08364d5cba3fcadf2642f237", v: new $Int64(0, 5708) }, { k: "e0184f2dd1b42b1bcd8a1b5c6674539a5facd58f9b0a2d7f473cedcb84361729", v: new $Int64(0, 9699) }, { k: "e0333d6ec1807bdc4b22d47040b33594688e03b466a7c9e883ce2086630f2c1d", v: new $Int64(0, 8461) }, { k: "e033af538350bbd1bba65c7ce4f90ddfb216bf1971dbac73b79027567060e033", v: new $Int64(0, 126) }, { k: "e03442a1a8645505d76c4e93feb274853c6830d016621d703c8dccf5940a7fe8", v: new $Int64(0, 5833) }, { k: "e035ca117e3711690a12659f9155f7b4943b73260c2342bcc025c78fe8684191", v: new $Int64(0, 826) }, { k: "e0376098cbf37254b1363c39a2fc21d20c1437afef1cd90ccc02982240b6a5f5", v: new $Int64(0, 8462) }, { k: "e03d6cced78b6d96cf5939f5dfc8af5d582335bfc046f17115573d8f362a2c6f", v: new $Int64(0, 4894) }, { k: "e044c55b3d4aeeab11d5a4b9d96330c717ac9e543e62a4abdc0182ad271960cb", v: new $Int64(0, 6379) }, { k: "e04714ea470cf2d72b51808a08708a654add5984973d1c8088c027d55349f865", v: new $Int64(0, 9500) }, { k: "e048b69e07ff70d87e517b67a3ea7f0180b56beaf226358c0ed53940488fdba0", v: new $Int64(0, 8654) }, { k: "e052b5bdfa1725f140deebdc57a258f64cca53b9fe4afb2e27fd20b6785e5eb1", v: new $Int64(0, 6969) }, { k: "e0619cff2d949cf9a6452a0553cc53464864c87dbdcbb40603a2c9222a66c098", v: new $Int64(0, 8900) }, { k: "e0663efd11bc3c913b8d99d60aea1843d239aa308fc92f43a7d93815086b0ecc", v: new $Int64(0, 1306) }, { k: "e068ce46007558f96e8f506308c431a85988aa6709bfc9de42b90d095b37553a", v: new $Int64(0, 4097) }, { k: "e06940dc4fdbc120c4d579bb357866750821db56af2cef46ea91ae1644f8b5cf", v: new $Int64(0, 2928) }, { k: "e06af10d7eb9e88650425773ea2bc98f6a72656892da0b6b9cf5d7c7a765053c", v: new $Int64(0, 7819) }, { k: "e0793b850fc13a44a5a95d41beebe5337170e7bde05d0722914043da95cf564c", v: new $Int64(0, 9719) }, { k: "e07af2d002707f1902d01fbcdc70b7f06fe9badea008e9e834091062534441f9", v: new $Int64(0, 9228) }, { k: "e0863a3c48e894b8d2ad9c91020655b68b97924928871d48123a63eb76147084", v: new $Int64(0, 4942) }, { k: "e08bd00374c483dc9cbeaa4cb0ff31ff08ef767587220f2411f00a5221c9b508", v: new $Int64(0, 2382) }, { k: "e08d7edeb6c098c3a4f5a532a9371b789bb6e23c7967939eb0c4789558f4a2ed", v: new $Int64(0, 3588) }, { k: "e0a4f493eaf650e9ae2e0470d428fd2530be9e1c717648d347ae317b0ab04f28", v: new $Int64(0, 5212) }, { k: "e0a5e43bc79cb50d08e8b12e21a1b614019486abef7d039192400c65d40859b0", v: new $Int64(0, 7949) }, { k: "e0a959998019e25ab7c68b9d75fe6095ca8b14e2fad14dd8b13e64657599ea13", v: new $Int64(0, 2682) }, { k: "e0ac0635c42f88ae059dec5a2c59f686d76b7c5839862c6f9f685eada1905be0", v: new $Int64(0, 4791) }, { k: "e0b8eb75f3a78fb8afdc08aeef7a0233850f150a944403baa78aeca6985805ed", v: new $Int64(0, 6063) }, { k: "e0c7784a5892c8090265d0c6fe0adc99ddc75637183ec41ef98a8d33f133fc24", v: new $Int64(0, 8552) }, { k: "e0cd34fe807b8ef814f8ed5653beeedab16ab678e50ae0034781f21a57ceed7f", v: new $Int64(0, 2582) }, { k: "e0ce4a6b38db6d0da401ead9effbd40284ddd659f71d9bbc1ab0dbb0ef6aa3c7", v: new $Int64(0, 2287) }, { k: "e0d36b7cf828c342db05b4bba1e2b3e8399ab4af658b3b03815b6d458aff0740", v: new $Int64(0, 3581) }, { k: "e0d52e5c46920310a7ec89991859c47a095a41600254b4f09dc55cd92e61d70d", v: new $Int64(0, 5069) }, { k: "e0d8019900b143ad32b46fc25bc876769f37ffbad9fbb72f5e7e722a3137bad6", v: new $Int64(0, 8940) }, { k: "e0e69b714f58d489495bebb0f2dab4ac595e7b1a8782e81af815d37732ea394b", v: new $Int64(0, 1305) }, { k: "e0e9ab4b0541d338c84f03aa26ce5f23b6b927efb5f617b1f42edc2c7a0381ff", v: new $Int64(0, 4611) }, { k: "e0eb0fbede12f5155b2097da8ae5ce44908d3874e16287cf613b77127c7577e3", v: new $Int64(0, 481) }, { k: "e0f61ba3fab4481cf9d5241d61a9582cd04da13a9e0caa4b7e489bc52f97bcc1", v: new $Int64(0, 3293) }, { k: "e0fdaeba34408f824b391f78db97a59ce39529816daf52ca652c8b9e00d68b4d", v: new $Int64(0, 7789) }, { k: "e127577103cd221df5563b01ebcfc92c53fde7a5d0172d52f9fc8a380b58c3ad", v: new $Int64(0, 9955) }, { k: "e12ca8d51981773e5a43d0f78748382df1acef8cdc2ae2d3cbefe7255df24b03", v: new $Int64(0, 4708) }, { k: "e134a37211e3fb779d80cab6abdc9bf108786c0cd07320fc27d918d7c1ae429e", v: new $Int64(0, 1458) }, { k: "e136e5e8c9d97fa6aec13191419612e888604791cecf6403f215c2fcbb8b685a", v: new $Int64(0, 6457) }, { k: "e137aaac652c8d73aedf3da65f3c6aea7fac3988e0f091aa9058ba0f6691f0f5", v: new $Int64(0, 6654) }, { k: "e13b858dd4ebb4152a5d18798b6f1ec2cdbf0af8bdc86b0bbe09f69f4009ee69", v: new $Int64(0, 633) }, { k: "e13ed82eabf8015999e45f2eef245ddfc5d0d52545d36da0b67e40d319ae4d53", v: new $Int64(0, 5711) }, { k: "e1429e81f6fa13bbb126060482f18c42c008ef57e66464daa50a100e0fae0724", v: new $Int64(0, 2909) }, { k: "e1466163717cccc4f2a127c2f12bf69f7bc67e15ea748880aa474d5744175f95", v: new $Int64(0, 6942) }, { k: "e147e3598848765474f4ddd4031abfcf1489a020b8874f4ce2027527fa8330d2", v: new $Int64(0, 5122) }, { k: "e14ffd1fc38318ee979c743453a81960626d087421fd579ff35d626e0971eb9a", v: new $Int64(0, 2835) }, { k: "e1574637ea13e6e7f12dfcc53b43e586baa0fcea02e29fdd1d086652425d14b1", v: new $Int64(0, 9005) }, { k: "e15c505dde29ea656b3ada3486f15175537a6862f6d585e3be459a3ac7c023c9", v: new $Int64(0, 5353) }, { k: "e1604febaddb85b91c97558b74b48e9dae25d55c0d35480d8b61bc357418dc8f", v: new $Int64(0, 3768) }, { k: "e170e6833438988a9772c574de6a88b7d5d9b18c3976706b7848041bc2de1f34", v: new $Int64(0, 1517) }, { k: "e17291ee787312876e4d6395525f5fbcb259de6b9710c5f42c189dacb81c1b41", v: new $Int64(0, 7706) }, { k: "e179fe00d88023427c06694f02a7ada4bfd9d7a2e6758693a1c5a2841059a51e", v: new $Int64(0, 7318) }, { k: "e17c63ffcab2eac2657d9d5bb903433f100c35ad9439e0ea1fcf0b9e95eeced8", v: new $Int64(0, 7486) }, { k: "e1871468fb971eb5cd81dc84c52070767c8147195f33455b8d3365eeec97c6e6", v: new $Int64(0, 5848) }, { k: "e1885a6b1f84de2465315df2756e0026634c94b38622cea967cec77a3b2eb688", v: new $Int64(0, 7232) }, { k: "e1898413b9e62dd2fd7c16d73875310c273d445c590d07fbca622348c42ba1f1", v: new $Int64(0, 8820) }, { k: "e1898fbb3dde8f49e551e25600deba52f5bac68c43adb75c077f67930e76f408", v: new $Int64(0, 5225) }, { k: "e189b6593cbe89b912aecf7763269f5f286e27c0a99d32e8a1d3f7eea4652800", v: new $Int64(0, 8320) }, { k: "e18ac2fc13f7ffa4f9c725ba5311e932378070f0253f933395cc293ee58e4e31", v: new $Int64(0, 1572) }, { k: "e18c0e5960b889d19ca2d8c42cc0da2f685e8b5956893cf885a8dee021165c59", v: new $Int64(0, 72) }, { k: "e18fac239fa33e18b8cd95c5c2930cae4fa2e88e7ea37fc36b01606b5d22ca7b", v: new $Int64(0, 9145) }, { k: "e1929eb50a6f60b4a7968863d6dbaf8d240915c4e72dcdfbd816868b886d26c2", v: new $Int64(0, 962) }, { k: "e1996df16362273f93deb2545e2aaf584585e69f6561621539d9fd419e826ecf", v: new $Int64(0, 6402) }, { k: "e1a089d5e6aecf1e873ce9cc60b64051e53df46837e9c029fcd0c933dd0310f7", v: new $Int64(0, 1269) }, { k: "e1a3b503e3bcd901ce791ec09052aef340b485be16bfeff78dbccc3bf417ed96", v: new $Int64(0, 5953) }, { k: "e1bbecec237de3400a4af608caf54598a15a5d8d46def4697c4de6fcaaa39225", v: new $Int64(0, 45) }, { k: "e1bf57dbd4791fd9413d34870375d74ebaec4ed3beb9745c20e6f85a6b0ba86b", v: new $Int64(0, 4431) }, { k: "e1c650f47f94fd596777de2cd2071c65ad4a5e12b6554cff06ada2d9eed64a14", v: new $Int64(0, 864) }, { k: "e1c815a0b6da81e665b9eaf2dec701241f8335100535fa973a88439d59537df3", v: new $Int64(0, 5719) }, { k: "e1e06e23fe346a23cc890ef3abc2af9f7ed5c5ae94b649f8f83c2a74008a8869", v: new $Int64(0, 2630) }, { k: "e1e50bf002358046909544cdd8cb46bd680e69458b9a406e68d8aa8c5a35b2f2", v: new $Int64(0, 2859) }, { k: "e1e90052390a94fdc979f5ce4021c1676c6daf0de3c6668b32fa8d70ce0b8160", v: new $Int64(0, 2322) }, { k: "e1ebb8201f434df28f0c8b45fa0591bf0960f7e9a2a41a6b181adba70abd37d8", v: new $Int64(0, 2954) }, { k: "e1ec7601877e889a1ce0dc10ace7412cae3dd73ea422334222167d5dc6282306", v: new $Int64(0, 2087) }, { k: "e1eec0db40f02303e48742be31466778368f852c6580efac2760698eff1e40fa", v: new $Int64(0, 1094) }, { k: "e1ff99871cdc7ebea829b825431554c7b7d7fd52a9bbddc6002660062c1237e8", v: new $Int64(0, 1844) }, { k: "e21776e1c808c71e1c7f2ddb94539fc6b1cff903ac3ade98ae4a1b42d0effe0b", v: new $Int64(0, 9029) }, { k: "e21bbd2111126bd6cf8e4fc7177158bc635b0194a4cdd0c42b80dc6638db02ac", v: new $Int64(0, 1045) }, { k: "e232e92d72d681e7feef4f2abfa92a7ebcf8ed3ff9661b7947ca59927f07af2b", v: new $Int64(0, 2745) }, { k: "e23de43a5e75e21080afd151db89a3dbdae96adc812bd88e71911b12ae7176e8", v: new $Int64(0, 4370) }, { k: "e24f8d047c72b427acfe833dcf30577e4aba88cdcf21b58dc3bdfee822feafe8", v: new $Int64(0, 1642) }, { k: "e2513110a6d2f3f095eb9724e8930b1cf175a1711baa8318f4a7d33862f761db", v: new $Int64(0, 3810) }, { k: "e255a307792d4561d0147ab93902d85fcd7f8e4beca0e1fbb52e2cde1c32d4b2", v: new $Int64(0, 4802) }, { k: "e260bd5a5fdc75b5ddec5e8f49a9c55248b4f759f86fbf7c2db0358153abd1c9", v: new $Int64(0, 7892) }, { k: "e261791d41179d52e015506791221298703abb86bebf0172e7044c6c17f50ea7", v: new $Int64(0, 3053) }, { k: "e26ba3bc781e1d75c2e1d04c10c5bdddb3d98c54ef97ad540d9c513611747a5b", v: new $Int64(0, 160) }, { k: "e26e5e379c84facdc3f4353b499676014fe7ef0bb6f866625d6d5c21b60a6d75", v: new $Int64(0, 6261) }, { k: "e271866b3f01c48f884068109890ab50ce298a07df4e9b5572b896ef2a054b8e", v: new $Int64(0, 5535) }, { k: "e275372671900b99936fe348289919967f34d326aa9a979e2ce77609e05e4031", v: new $Int64(0, 954) }, { k: "e27868fe98e1719cfe1c5dbb3dd0c7168d1752db7673865b8adfe6083251b050", v: new $Int64(0, 6713) }, { k: "e27b1b3ddad5a51a0e14becc1440e3047f9234705efad120eca39a55f8490b6e", v: new $Int64(0, 3339) }, { k: "e27b256ccadb7e43e71d4478f392ad932583d37f24f3b27f9692d90e8b10b158", v: new $Int64(0, 8463) }, { k: "e2825592e1465e356ec8fc076c56c84d36302576c0c55751ed5ac0cb0ff52494", v: new $Int64(0, 6672) }, { k: "e289404589cd9fed36ba239c77c23fc1ab12e00b01122274b46eceb3f156451a", v: new $Int64(0, 8717) }, { k: "e2a2ae83efefc08b741e0ebd1900727e86df2d9de78ca0a17d3db6b7650aca4a", v: new $Int64(0, 2812) }, { k: "e2aa4b2e821fffab54f1b0a1290163510d7d4458773516ad11d7ca9bb024170c", v: new $Int64(0, 761) }, { k: "e2ae0b71cbbb37671ff642dac98c8b6a97c83c699cfc88c118a0951cd3ffcb68", v: new $Int64(0, 4814) }, { k: "e2b5d6c226c359e63e017f6dbaa4abda9e3ff52339f462b21d09cc275635751c", v: new $Int64(0, 3633) }, { k: "e2be5f06a89a7ab8e5b9bef3a9157dc60ed5890c27566aa1d140e91e82d108bb", v: new $Int64(0, 5493) }, { k: "e2bfb9e8c94521ffd1ab2e8d4588a886069870e94a3d7e8a1d03abe50f8f36c3", v: new $Int64(0, 9382) }, { k: "e2c433ed8745ad7f425840c183bf4fe72c04f742fe36e49abebbbc0150aaeaed", v: new $Int64(0, 145) }, { k: "e2c9c30b87a2ec601303adedac2864e6eb543d76990e761b77b679df30b47b3c", v: new $Int64(0, 1938) }, { k: "e2d0974fe70ea1be393b54f11208fd41b91db9396f4b56c8d2b3435a8871b478", v: new $Int64(0, 6126) }, { k: "e2d5f2f48cf15f215a50d0732cf62aa5225d1984e38818915aa2aafd70f8c354", v: new $Int64(0, 1079) }, { k: "e2d8ef9d695b5822c25c4a55c728315f79505ca66abc9cc4663b4e38eba34973", v: new $Int64(0, 3358) }, { k: "e2d9a43eb499712b6baeef327034126e379e5dfe04217be2d29bb36f3519f36a", v: new $Int64(0, 3913) }, { k: "e2e57f48607a67884a9fdd56e16fd622aa7aa5148e1a57ce473fb896b53a4535", v: new $Int64(0, 7266) }, { k: "e2ebd1cb694e25388a0011056197c5feeb2ea1990e64fbec7f3ef395905314d8", v: new $Int64(0, 9752) }, { k: "e2f04cdb2109942f1985502de5cabf8a444b1398f0bcdaf189798fd94242872f", v: new $Int64(0, 1858) }, { k: "e31cac673ddd254185be9fb257575fe0fcbc8012836edd70a2d85077d75dc870", v: new $Int64(0, 6167) }, { k: "e31d04e5586332e50309ba102dbc1a089449f0507c21b1c84270a8b923f560ec", v: new $Int64(0, 2417) }, { k: "e320a352e81ee484b9fdec00450571ea1a4cfd41e120be2c68ee1f514f31c207", v: new $Int64(0, 1859) }, { k: "e32a1a2e7d26eb8827c8cd46ffb410baf96b5e7adf97a789e31354793c8e3257", v: new $Int64(0, 387) }, { k: "e32c7757f20b9ed7db4e32e2c9f4a6b584847887ab97cfaaf2a402278bbce727", v: new $Int64(0, 648) }, { k: "e32ebc35aed41396b7f3e046d8d719366a887bc727fcec72216f0fc3e409cd48", v: new $Int64(0, 3718) }, { k: "e33059997ddb4c220021c4560ad4e252a8fdf18992ca24bec4d94e20ba5a6448", v: new $Int64(0, 6570) }, { k: "e3377969ef5ccdcc871fc0415c6eb6d0fadc6bf400fecc9d353e21224bbba811", v: new $Int64(0, 680) }, { k: "e33aeafe2c956740ee04f0adbf367315cd36bcc62dfcef04c3901d7001b6611e", v: new $Int64(0, 4234) }, { k: "e3405b60e2c49af3771c14badbc34a7ea255205981b839889868ce33d962a1b0", v: new $Int64(0, 5859) }, { k: "e34523c16e888a7e4e2635848069a95b8462d3601f20f2b06715560662a1a327", v: new $Int64(0, 6797) }, { k: "e34cb4496ace4fc61fcaf1a52bbfc465941a53c60e7c86fb564e1cf87bc291d2", v: new $Int64(0, 2033) }, { k: "e34d89bfb53ced725bee2912517f057515388f582bf52c077b199e75b58e0c93", v: new $Int64(0, 6784) }, { k: "e34df42684dd48cb82f64b62b3d1b9dd0ba59831fe473e4a8e9913c19b2f3447", v: new $Int64(0, 3701) }, { k: "e3517cfa6b1c193f14db7943ba682209dc05e2c5149a132027f1af57ed7491ef", v: new $Int64(0, 7160) }, { k: "e3528e01e7d293e28487dcea09266e862b0785cc0dc4e9607edc290e38c12dd8", v: new $Int64(0, 4455) }, { k: "e35424bf839bf18be8455d5665aef6ab1b5d99ceb68a78060eed94639dca6577", v: new $Int64(0, 6859) }, { k: "e364f944ca181307214ab1ff886a3e62afcf05883c42b1bdd07f8b76bdd7c563", v: new $Int64(0, 9944) }, { k: "e368df671d317331addc4854614b66212d83a77251c5ddf3ebe69b0bf5b780da", v: new $Int64(0, 8773) }, { k: "e36a839990efa593c543224cbd57896bac9e61565bfecaf41b09e249d80e8647", v: new $Int64(0, 2247) }, { k: "e36eef280021b772e49668b7e1a7c46dcdbf64c47f110716f3a4beec926e30e7", v: new $Int64(0, 720) }, { k: "e37141903de254cbd35d2fe76812f473473dbbb75a7f7382a961b17f88ca9f9e", v: new $Int64(0, 6934) }, { k: "e3748228b46fc86f982282977081210eb4068df3d001d1039628129d5da5bde6", v: new $Int64(0, 7259) }, { k: "e37d085cf7bca313c65aad30915717a2f9b9860fd576eb607a7e5f15453a8ed9", v: new $Int64(0, 9751) }, { k: "e37fefb90a0cdd5d9b1e65f75d98b8f7e7e849d78ec2604d245fe6a32bffbfdd", v: new $Int64(0, 9226) }, { k: "e382a6811bce93050db6a940637fbd79e0ea76997810d481ff818ac6feff79ec", v: new $Int64(0, 1811) }, { k: "e385ed46818cf02b69cc985e2c7ed695b57c9ff75d5efae1c41e294af204df6d", v: new $Int64(0, 3060) }, { k: "e38627f28a36608a67a382b063361d8e1d32a4a217d799e150155a077a303909", v: new $Int64(0, 3795) }, { k: "e3872bb3866f86bbf14d44120386fe09c6066f36ab4f21d0ef3dbcf14f658c7f", v: new $Int64(0, 9464) }, { k: "e3899f1fca8d8f4e75ca819a9ad74b804e17ff1206017482e42d04287625e832", v: new $Int64(0, 7597) }, { k: "e3953f207f0c8fffcc2aba8d8210a40de89433b036b17d6f7daebf5eb9509b47", v: new $Int64(0, 7531) }, { k: "e39ced66075bd442069c0f6d18aacfe413aed8afc807b7d72f02a87069bfafc5", v: new $Int64(0, 3167) }, { k: "e3ae99664658f6b97e6e014e25929695dcede2bc1176f05d1167682501d1b4c5", v: new $Int64(0, 1379) }, { k: "e3b104a8ad702654ae173d4d266b8f5d4bfab74697fd1144b50fe907c8e66d7a", v: new $Int64(0, 6540) }, { k: "e3b2100da47074c5daf896c05ab5baeb34e790e34966423aac81546ac86f0f1f", v: new $Int64(0, 5031) }, { k: "e3b811c24f9a85c8d98b1a8888a33f7d8c04b41f618565b6942b4ac8cc9ca33a", v: new $Int64(0, 4497) }, { k: "e3c625a24c7baa9ac99a0f02898f264fea63f0ed0823026a58361edb4d0630aa", v: new $Int64(0, 1358) }, { k: "e3d2742a099345c94eb0eda2ccd49b40b0c0ad90c9fdf0b11a0c9a9505b059e7", v: new $Int64(0, 9038) }, { k: "e3d584b7e66f9989f81ce0befee13ec13f3bd861d5a73fb5ba507379444b682a", v: new $Int64(0, 5290) }, { k: "e3e76100b0ba620bb03402678710a55a14f37a414b70116fa0e1756d8493e476", v: new $Int64(0, 1368) }, { k: "e3eaa6a8346ee968fe768a74a518d13d2932d7e6e40b70a168a23f08496270e8", v: new $Int64(0, 2795) }, { k: "e3ef7b20f911a2806ae4f626cfb76f97fc9f107253726ca8f3f70617ef416cfc", v: new $Int64(0, 3096) }, { k: "e3f4d516a532c0c0cb629261bf3c90d5a30ac08d2fc856b603f9e79780753e2a", v: new $Int64(0, 903) }, { k: "e3f534b2fcf9fa877434a4e0e695e935aca1cac868745deab6e8c03ba0988ef9", v: new $Int64(0, 8290) }, { k: "e3fd361d5235eaa8c627539041599228fa726c5e0a2ae99bb2b5f92343e25df8", v: new $Int64(0, 7177) }, { k: "e4093ef854df382e121fbfa039a97802a8fb33d13b6c259f60922c6ac832326d", v: new $Int64(0, 3449) }, { k: "e4184d2e4e93e2b0afffd81e015fe6161f4d1439243e8fc462234a0af547ff7a", v: new $Int64(0, 7577) }, { k: "e41bf7e6e3603f117a2b8706fdd16ec52d8cd602852376bf309c678764865da6", v: new $Int64(0, 4777) }, { k: "e41ccfa43de96879c0337cfc10e60a69e759468a07d9209942997170b6c469d2", v: new $Int64(0, 6922) }, { k: "e41e97466807f9e039472c5e51c1aa9fbd5dec009397741ef806c04603db92b2", v: new $Int64(0, 9016) }, { k: "e4233fdb70f91eba0111fea033b29ae6109d307420c41840db7adcd7b8605418", v: new $Int64(0, 963) }, { k: "e425462f0bfd027d6aab0ecbc5a608d6887d12e9f8cf7a2aa332204084e830dc", v: new $Int64(0, 442) }, { k: "e428bf8b8b1f546f2577f6b5390825cacee050923e5a91ce9bb5c7457a8df530", v: new $Int64(0, 1063) }, { k: "e42f26d09ce9f48a2abc0cd5d2d1799e12dc2f4e8d051fc6f169bee0b7e34cd0", v: new $Int64(0, 4647) }, { k: "e43a11b6376b862d36ed75eab896332dbdd4586a2005148b47f2f474820a8d14", v: new $Int64(0, 6233) }, { k: "e43bb3fa919b754224c5bd44cc9ba52a1f1c6b42fc118e59641580fce0dc053d", v: new $Int64(0, 5276) }, { k: "e43ee732918b4ff43acc479e9aa72a3f6cec007e8aedadd461efb44d6ea2ac06", v: new $Int64(0, 2680) }, { k: "e44fd812dde12fbdc870a08249823908885d3f1ac37a281837954c1cf27a46da", v: new $Int64(0, 3722) }, { k: "e45b5d2fb242798fc42531482b1281e210140dce619dbeb997e682dde0d9b009", v: new $Int64(0, 141) }, { k: "e46236dbe933eb4a6a2d4eef080b4c09ea0dedaa4c49b4cf6c02a8dbb20f04f3", v: new $Int64(0, 2828) }, { k: "e462b2c6b694aa461e58dfd45fa0840238c935160aa01ba2c214b96b3e9a09bb", v: new $Int64(0, 6215) }, { k: "e46836834f57f8e4c2fc8aa0174c02722774d798cef19bef4d7c725401d01131", v: new $Int64(0, 8499) }, { k: "e46d10056a68bcd8f44acc3a68329c9b069f61efb7cb136247e18c8c0040b0df", v: new $Int64(0, 2697) }, { k: "e46f1a6a74497c0371dfa74dc5f24fe2b5eab5e1489489574b32b08d6874af90", v: new $Int64(0, 6521) }, { k: "e47461725f9cf7416fadec17f57f7c17b9051af3927c205ca6f97d41dcb28415", v: new $Int64(0, 2377) }, { k: "e47d5320cc3ffe3d32e8c48e28eaff4b27a5c871c5ab702bd75c239d26432027", v: new $Int64(0, 8715) }, { k: "e48bb608d04e7873db9f9c7c05168edb4b650896b8c1b289c2d7889911b0e0af", v: new $Int64(0, 710) }, { k: "e48df2779e16f1dc7266311c2870b77cb60c8b1a273a9b50876ad94650db3672", v: new $Int64(0, 261) }, { k: "e490883f483b666e61606a6330ca0b0ff77b691bfad508babc7fdcb7866b4600", v: new $Int64(0, 6992) }, { k: "e499a438172d743b0bfaa194274aca4cc4a4f81a4844c569e669f79d199a2607", v: new $Int64(0, 785) }, { k: "e4a1629c8e25b5ad1ffc9ab062d5cf4cc57e9adfd93748471c68a3df7eda709c", v: new $Int64(0, 9988) }, { k: "e4a3084878df30b1b26e6822851de267856e284d8c20e1008a90681b78b0ba51", v: new $Int64(0, 1353) }, { k: "e4c0069f6cdf7b53d269f076e500de2cfa8f97247ebcd52cdf59fdf006be7ce4", v: new $Int64(0, 6444) }, { k: "e4c116818c9cce6e0e41212de482feecb9402d22141d32dd1e8c30e1380ba0b1", v: new $Int64(0, 6475) }, { k: "e4dd2991e8bcd66ab99f0166fd7a22e5ea3daaa417fdbafdafbb6b172a0355c7", v: new $Int64(0, 5679) }, { k: "e4e7ca38af9b38f193d6da99d3affaa9b309d716a33b6583c37c64943e29a926", v: new $Int64(0, 3706) }, { k: "e4f1995b29d0c3ef3903560efa88985973754c10b5201769c4b782d264b018a4", v: new $Int64(0, 1315) }, { k: "e4f3438da2480f7b54f4c32115112f9bf2d0b987a718d8306d8b5e2929c5e02c", v: new $Int64(0, 1897) }, { k: "e4f3d207745514a4209e7242f8f63fad7c381b1c9b1eedef7ac42c1dff402734", v: new $Int64(0, 30) }, { k: "e4f90e80992ceb88d3a200cd271333a3c341d005e374d09a3463ee8803043127", v: new $Int64(0, 6722) }, { k: "e50b24e47829d061991844a3eb384de8be8cbba1741350d65acb13c900836e15", v: new $Int64(0, 7625) }, { k: "e514b9e0ec1f8b20f4260f6c86d9ffbc0468b36dbdacaeb49574df8976e9f1c0", v: new $Int64(0, 4458) }, { k: "e520419042954f828212d1e5b215903c653773d9cf75ca720113fa553215e06b", v: new $Int64(0, 6439) }, { k: "e52c13cb39213b01eaccfca0b80d9861c8c343937e31211a9ebc3624840d21ab", v: new $Int64(0, 5693) }, { k: "e531e15c6d4b6caec8439e14a99b0569968f22615cc02708eb0c12ce84314df9", v: new $Int64(0, 1165) }, { k: "e5344a0873da73d47b522d834c6577d5381a64a127603fbdf36c1f60da790522", v: new $Int64(0, 3205) }, { k: "e54f6790f445d2ed6e41d20ec9b80a3e01ef614a05509897b108f80ee7aebc54", v: new $Int64(0, 3190) }, { k: "e552cd80966d52b8c413e5899bbe0a9c047565d41544cb7e1a1c7a8b94dc16a5", v: new $Int64(0, 617) }, { k: "e557517b8ab3ed551637df77374d7af3dfd2b8c9e37190f6ce6e9a39f1205b50", v: new $Int64(0, 4564) }, { k: "e55bece07a2d5a91114cdb8a255369ce364a332dd0433d19a7f5ba76c79c84c0", v: new $Int64(0, 5354) }, { k: "e55c7a430902ba8e870d4c1c5ece1209d1cee8124e051f3c3bd8d1124867a784", v: new $Int64(0, 7026) }, { k: "e55f6bf4ea86b33ef07bc06b736ec78b4a2563fd71fc06e9e08139f2706a2475", v: new $Int64(0, 3685) }, { k: "e566c40be65a50c6da81910e5687cfaa311cdc7222c20512bf7579e6a85ce3ba", v: new $Int64(0, 4797) }, { k: "e5673ee2b26041190a6ff0fbff7714d74337f67d367f378231af4fc7ffe759e1", v: new $Int64(0, 3163) }, { k: "e568b9d9cc7196a0f28e32bbd9cd347f717eb8b6e94735a905d7625e4f063cf5", v: new $Int64(0, 8306) }, { k: "e56e71b9f2cffa737ca3bb5811f5186a9466dee32f727c957ce2ed6af2a87440", v: new $Int64(0, 4512) }, { k: "e574ceffaef14436c80c401e7a4231484e1eb207b3711c08eefefeb3e1bcf2aa", v: new $Int64(0, 7031) }, { k: "e574f9e4284792601c98be25cd89235ce6ea950143f44ccfea3b40f09bfd1d54", v: new $Int64(0, 9948) }, { k: "e57c897edef41d7639d929a621cb9113bac256521fb563879a22e366ba08d7d9", v: new $Int64(0, 8140) }, { k: "e590bbd6eddb3de9f23d3135247227efd47049991e5d2fa211cd9e4dbe3f812f", v: new $Int64(0, 5578) }, { k: "e59715e7b7185e3a6330325513f03bc47a237275bf1d564232f9a7cdc51b3c2b", v: new $Int64(0, 249) }, { k: "e5a15f46973b1d700a46a685507334bf4d2e439878d9b8bcf8bffd7844f6fffc", v: new $Int64(0, 4733) }, { k: "e5a3114f030449884f758adb4160f6906cb2e3a9af6154b7d19d13f9ab1aaf2b", v: new $Int64(0, 2354) }, { k: "e5a6c0deb624317041080af39f9cbabecaaabcb8b1166aa434d75293d7511312", v: new $Int64(0, 112) }, { k: "e5b0edfee4e06a6169c2656d33f92759b1ed21efffee388c21fe4f1a6dada1db", v: new $Int64(0, 4446) }, { k: "e5b5237b768edcc0fa0b3b761e6cbdeadee66bc3359891dad1781d06d91df5fe", v: new $Int64(0, 8801) }, { k: "e5ca039008b5eb6810c9b4c13e96cf9530b8e920b925b19acd294378fac3f1aa", v: new $Int64(0, 1676) }, { k: "e5cd917ab4d7feec42d1ec5571ffc29876dd99352eec15a72705dddb8c564843", v: new $Int64(0, 9499) }, { k: "e5dc713524aa317cb801954562d6d149d3497ecec978cc32de495eb1e9a03366", v: new $Int64(0, 265) }, { k: "e5e08b0bcc2125d405bc1ee58f60bf2e51b56608512153c05a502222c04d221b", v: new $Int64(0, 7580) }, { k: "e5e2d8df06cd9a075d53a2404206289880fda1964fd8168e2c467ba31112b30f", v: new $Int64(0, 4918) }, { k: "e5e6277ecbb9051e6bd37ee404952b3e83b585e4a45ddc48bb9da550ddbb62b0", v: new $Int64(0, 9911) }, { k: "e5e62cf6a54f5645676e5cb101640cb341cd97b1eb6c205185dc2cc535796428", v: new $Int64(0, 495) }, { k: "e5eacbeea4dc233292ebd7ebe26f6caf93d252ba6033b51408be507906bafe86", v: new $Int64(0, 4792) }, { k: "e5ec8c28a1c5cbd2b7387827302f1fe5c6be78c3adf49cc61e2b2cc1dd354c3c", v: new $Int64(0, 8568) }, { k: "e5ee334dad4f7e236faa0ba1844d54bf090eb8b2661a96431450ef8ebcd75968", v: new $Int64(0, 1717) }, { k: "e5ef3a4b91b54682f813d6e7bed942a9a6f199216c2d01fdc8e4e6aeb9d73128", v: new $Int64(0, 8158) }, { k: "e5f10bd7cc3314fd46f72401f438a243771df36ef80db8dbbd8b5d6096618b4f", v: new $Int64(0, 2965) }, { k: "e5f4b985b22dc969e1feb469f0b36ade695710a866b3304028b47d41015aa8c0", v: new $Int64(0, 2347) }, { k: "e5fa16aecc76ca4b166f56b3e1c4f092fbc9d276ed15c535934a34f5c5932df9", v: new $Int64(0, 3793) }, { k: "e60188e114abcc7c3b1460601eec14310dcff91051bff611e66c1945dd77006f", v: new $Int64(0, 6874) }, { k: "e6050df522ee2d93ab024997bee05d000a4c6dcf2f3acb8c6cc79499ed9422db", v: new $Int64(0, 1001) }, { k: "e605b9c93ed11c64a23a678fc4c91c68c2d7bebf917f16ca472f8ab0d1392900", v: new $Int64(0, 5429) }, { k: "e60c97ea768df98f0f74b29df79e24b532285b70ebfe204aaae8bd5edfbccf2b", v: new $Int64(0, 6534) }, { k: "e6372240be189989f0871980584be43e2f75287faf582f74a86bf874101b7a88", v: new $Int64(0, 5474) }, { k: "e63cbacaad9374e5f1dfd8857cf582a75c1f2e127d4d0b1fad59877a50340853", v: new $Int64(0, 7980) }, { k: "e63eb8ba333f596cb351820d7754dd3e3189346a929e21064809bac202de97e1", v: new $Int64(0, 8971) }, { k: "e6418153774fb82dc457fe4c22b073204c5c13d606b17e125db96ba125d9ff2f", v: new $Int64(0, 3838) }, { k: "e6443b7fd1145df60d3adc73b39e63664c2b1cd396f20d7ffdfbdb0a552f2af4", v: new $Int64(0, 1941) }, { k: "e65341eba089b03c707ffa72a25fa8dcc39bf4394d00dad1e1898cccf8e581bf", v: new $Int64(0, 366) }, { k: "e654c49689db33754a98fbaf2f9bf8a9d7fd03c7c6efb648112cfe77b992c120", v: new $Int64(0, 1843) }, { k: "e654edde97659476fd97ee9e07fb1c375e8ba881a620a27495f018a770ae9e97", v: new $Int64(0, 5502) }, { k: "e65eab9b89768f20798cb4bf6cc7a9ab4e6d56f7f29c1705855ac47aa7b85679", v: new $Int64(0, 9749) }, { k: "e6653f0e3ae903c42f534c34d7ea44b3f32f0f2e419656a9294e580c75f92227", v: new $Int64(0, 6273) }, { k: "e6677284f06165b12022ecee2804619e1c00af3c4567f3c08d262b8669323c66", v: new $Int64(0, 7450) }, { k: "e66c43d77c9cd56bfead2ccb7c34154a5158434d83e5d1179d2ab9ef76aeaf2d", v: new $Int64(0, 4154) }, { k: "e66ccad44a3a9ee78871d4c2b8ca7aa8dc3b1de6e4a33103f4ee20cfcb0c87ff", v: new $Int64(0, 6815) }, { k: "e672cdb0856716f605a8c9a2d1b8471b7ad364acc6b93d2ca9a8bee51b1496c1", v: new $Int64(0, 4898) }, { k: "e673e529cc227c7fce39a0b7c0071295909bf44734ae171b2223073bcd1589cc", v: new $Int64(0, 5445) }, { k: "e67de58c270e39853f35d03383f51d967330db2ff2c9f35af052d0e3f9a750a1", v: new $Int64(0, 9913) }, { k: "e68241ccb104836943ea49570b73452c9563b6807d8f334fa0284fa654cc7f13", v: new $Int64(0, 304) }, { k: "e68254269c0a26b615c9df9f6593675ee123f9fdfcce90f24a951d5e0af2ee69", v: new $Int64(0, 1123) }, { k: "e6aeb3001115270a36e1eca2a04f3215ea4e267bbb414515aa9ffb666f4dd453", v: new $Int64(0, 8089) }, { k: "e6b06156f30aefbd24f9c4a5a0d671effb308edfd40aa57d712afb56ab03f1ad", v: new $Int64(0, 2485) }, { k: "e6b5cdec77219ea95fef9eb51c785a44258e0bcf9000ceb4c3f15a25a249b9fe", v: new $Int64(0, 6799) }, { k: "e6b7aca502543a6a36b91a3b664df60b7c121acae8c6a6b3dd626462c779b548", v: new $Int64(0, 1383) }, { k: "e6bbbbd943a502988f180195a65e027adb8e1fa23ffa5982036d481c9f9b4b88", v: new $Int64(0, 7535) }, { k: "e6bea41c5e98ba68746166d75512f3f4555eb2ebcf3e7072217f2821f0cb1380", v: new $Int64(0, 3815) }, { k: "e6c43a3d6590c9c63ae6f20595a7a0f6d825c3327a3b87bfa7427f9958304b93", v: new $Int64(0, 6951) }, { k: "e6cbe60acb8f7b827a28b7fe9058b36697dfad0a1610a6185c820a7fcbf7176a", v: new $Int64(0, 5343) }, { k: "e6d107112b3932cb950ad5d82de490d25f6032ff48c669d315a066dc5afb6e7e", v: new $Int64(0, 9634) }, { k: "e6dff17edb457e692b2c0a37cc2858f1a1ce0f701b801b7907c08181475dc57a", v: new $Int64(0, 5281) }, { k: "e6e7c843608f4564610b7cacc160c00624b5513abc6cea6ba1ea4c330ded827f", v: new $Int64(0, 7482) }, { k: "e6f5b670b884ac9786205ff36293ad28c00d1806bf9093350f526346269b48c9", v: new $Int64(0, 6813) }, { k: "e6f9cda3319198749c485ec1126bd13caee45b1ade2702b09b491ba0f71c1407", v: new $Int64(0, 2151) }, { k: "e6ffe654c5a760ce76c64781cfbd2a0cfbb892a8a78f79a379ccedc3d2a386d6", v: new $Int64(0, 1632) }, { k: "e709149ff47bf4ea7c1fa126d748fec8aa5faea2c06ba4d746578d30ed171327", v: new $Int64(0, 4319) }, { k: "e70d6457038c24cbfb80f07f9d0b2748c1101d49bfa24f63bfca30c2ffb9003b", v: new $Int64(0, 7330) }, { k: "e71d431d45094568646bef98df3ae8dc31f548bca7ba85bc1e00cb202fc5fd63", v: new $Int64(0, 5056) }, { k: "e72c20f2b31d69441e52560748238cf79779afb99a772494e9760a16ed0d0e09", v: new $Int64(0, 8531) }, { k: "e730631aa934d92edd4f30ea72ac340a1e6632243f4263f949623190168de6ff", v: new $Int64(0, 4080) }, { k: "e74a4899d134d150a651fa83995719d204e2261644e7d6addff976bb9756a102", v: new $Int64(0, 6175) }, { k: "e75bb2e8af8e1c794d4b589b8673370e0ee571bb0652051e414af91862a134d7", v: new $Int64(0, 326) }, { k: "e7604bc8dc52cd5be6848afe194b794475915a84e8b777cc9f99d7beeaed3263", v: new $Int64(0, 1946) }, { k: "e761fcdd4508d6700005f3a59419ed0396915f97e399eabe6bed0cfcc1339896", v: new $Int64(0, 1155) }, { k: "e764a11761c5e79927b1f3662509e8079f13e05c6f946c77b50440443d75df45", v: new $Int64(0, 4865) }, { k: "e774584f67c9128cf2dea1ef15cd9ebfea1248d836a50122cd3d79f75af28afc", v: new $Int64(0, 3570) }, { k: "e77867a762f61f2993c4c5aad7ec4a127e15fae78475404655c24e3d1446adc8", v: new $Int64(0, 1060) }, { k: "e77ac1dc55b25fcecaec4a51d202a4ece6f1ef58de9fbc558c0a970e6de49926", v: new $Int64(0, 2617) }, { k: "e780920ae89fe3ade85db7c8a26bd202d3dbbfb8e2c94cf8f0a2e04da959679d", v: new $Int64(0, 1978) }, { k: "e789d730e7ff4e0d1bb2015733166442565aece8f2383bb320f3778fd125866b", v: new $Int64(0, 4686) }, { k: "e791cd6eff1ffc4b8e0d49f05aa9531543596130b8f694528249f5bfc38579c1", v: new $Int64(0, 8764) }, { k: "e793fc3e786af8dbf26688fc3d92c4fe3414734e4ab4944da04879b46f6d74d2", v: new $Int64(0, 2718) }, { k: "e79cedcdf29ffd2682aba6a02387fb7771e327a5a2077f1f71c8393d40c93a0f", v: new $Int64(0, 1813) }, { k: "e7a47003029dbb7b147e165275f656abf28ddbaf0457bc69803766a177102ed8", v: new $Int64(0, 2975) }, { k: "e7a84e9e8a6913ce572f877bb2c536f25ceda29847c452808567f6ce77008f66", v: new $Int64(0, 6169) }, { k: "e7b8fdcb7d663e1ad399383aef09735202f4d2aa1adab0ca8532a926893ec586", v: new $Int64(0, 9754) }, { k: "e7caaa83373a94afae43fec59b447c99ba282b19a7616c24c785ad8966a1e10e", v: new $Int64(0, 1000) }, { k: "e7d2765735874fd996382270c3d3d80c73d9662c171a088d7629d7e591eb5590", v: new $Int64(0, 7143) }, { k: "e7d529f787e4aa2bd26e57f739218a29b1a879e59bf2f21ef270ee3ac1fa1222", v: new $Int64(0, 4983) }, { k: "e7d544bbb3f528dac808bacaff956ca33a5399a4c1845f9f97d3a9d8281cb6c8", v: new $Int64(0, 9245) }, { k: "e7dd74cdb783ba3b57bbf57556ef899a74825493210aa28ff26f387112b2ff3d", v: new $Int64(0, 8338) }, { k: "e7ea559794d9d23c38acea4d5e16b9ede85ecdfa62e0d2ef79776245d73d0180", v: new $Int64(0, 2127) }, { k: "e7ea8a78339ff4365d692d5f8358342f1eb5fd2ddb802b10635d1da3c2dfbd48", v: new $Int64(0, 8863) }, { k: "e7eed226252d147fba4ae605a8f0916ab81f0bc43e346e5728980b28d51537ff", v: new $Int64(0, 5130) }, { k: "e7f1390ec5bb9727013500a29bb78f0e3f001b9d347fb2694c1fa429b8e1ff7a", v: new $Int64(0, 7732) }, { k: "e7faeb1a6ea4fa10c32d1bc56aa9dd711cf1461057b0ce3673af4dc7d323fef0", v: new $Int64(0, 5740) }, { k: "e81e0af0d1158ebf9816d86e3982ae14e221d7969ceeb5c515373e8d891bdd4a", v: new $Int64(0, 956) }, { k: "e8244bfc6ca3f0234ea7e2600903ef0f7a0c3f38510296bd5ad06fbcec3d7e25", v: new $Int64(0, 2179) }, { k: "e82a47d8f94722fcb88a2f3d4135a5303b74c1878ba981dadffdfe6b5520890b", v: new $Int64(0, 7822) }, { k: "e82a52b043f1b99c5aac055966c2445fe2939961535528be7815858d5ef97217", v: new $Int64(0, 8279) }, { k: "e8327846361f8cfe523836940f3ce062c271ae598a2571aa417243ddfa7aa2d6", v: new $Int64(0, 4451) }, { k: "e8345c1e68e1ae3d37c791838768595323499b101eb4a54b96644b94b9895f4b", v: new $Int64(0, 9465) }, { k: "e835bc5a3df396452246605a89a4256695ee335616c640b08cd4a7bf3f2e3e9c", v: new $Int64(0, 7976) }, { k: "e838b5bd7ac97eb6ef8ca82a56d376840c0cea06202c3eed1286f4f27ce4e9b2", v: new $Int64(0, 73) }, { k: "e83f51dc9fabaae12b4c21720a90c59355d987ce7227974a73b30baebdc2016e", v: new $Int64(0, 4105) }, { k: "e8549118977dbfa3984f5d5551df9fa5df13d7c652781be6b594df1aa535e622", v: new $Int64(0, 2678) }, { k: "e86340dfc73ae785056e9394a5d7aef2fd390639e44a67d9eedfcf71c96da51f", v: new $Int64(0, 1682) }, { k: "e866874423c4ce6fa978913622b7e39ccf7c1511b7b5d75c29a63ec80fb00b76", v: new $Int64(0, 1090) }, { k: "e86822eedf437e9b1040c21de236e1e0ec9841b62c459643acaf1e3c788b48f3", v: new $Int64(0, 4658) }, { k: "e86d7bace4001f30ea89dd2ddc2eba83f20a0da2f37b47cfa0b03ba491d563bb", v: new $Int64(0, 2255) }, { k: "e87050652f34e97fed05d303d376b881c6373d9677e81687462f8e01c0afd03f", v: new $Int64(0, 6529) }, { k: "e873046c50e73ffaced2d38d84428d666081a71b5c92ea80e0bd871267ec4a48", v: new $Int64(0, 5665) }, { k: "e876f0995d90b360294d4b6abfb977a8867503780b6b4aca286afc48a760f481", v: new $Int64(0, 3623) }, { k: "e87f6f0cb60eca181431389b8b7e53acdcad546aa2f4ce7a01921afec6f93f12", v: new $Int64(0, 7666) }, { k: "e87ff3c59febebe178e1bf27d51fc765374ca28df64b98b003d060b3258c9f0b", v: new $Int64(0, 158) }, { k: "e88d34957c95e06bd7a9f551db5d9b9f153b3996cdf650da0ecb70837abd4f13", v: new $Int64(0, 6627) }, { k: "e892cf0e992f123eb190cc3b2426359970058cfd918937003944bec36e16bd11", v: new $Int64(0, 238) }, { k: "e8938b0064f79cb874e0e649484d4d48b619a140b7d932417c8237a12ddcd254", v: new $Int64(0, 512) }, { k: "e8952bd363818108412f3f5c0c38c749f69f350490ef9a82c7684b88484de86a", v: new $Int64(0, 5997) }, { k: "e89e18176ab3621fdf321f039e546e727c6375b722e7b665396a3b0f5fd6b48f", v: new $Int64(0, 518) }, { k: "e8a55cf005417cb058684c27b3939e10f3e4149a7cf09c761dc004095050803e", v: new $Int64(0, 6513) }, { k: "e8b285c4d00626778be46316445367b0b7af596eadca74b22d2c302a7571a316", v: new $Int64(0, 70) }, { k: "e8b45af6ef9aa17c511b558d3ded284c1187bbb1f5ed3bfb9dfa3afafb27edad", v: new $Int64(0, 8510) }, { k: "e8b86ec8c80f360223068fc809d4579fe810f6156d53e083271edb01ebead2bb", v: new $Int64(0, 5393) }, { k: "e8bc8104ef1f3e6bd77066961b02805fcbc6d4a2c29b5a63af78ebde32311532", v: new $Int64(0, 1471) }, { k: "e8bebb0c37df4df1ce57d767f9048a518d1924db3fa19e17b714d4c0e69ffd4c", v: new $Int64(0, 4371) }, { k: "e8c0d32df1272c9ee90d9bb1ee461b081af1a27e9d9d7dc9ac7d5e7a1b64ebf3", v: new $Int64(0, 3170) }, { k: "e8d10e27ab2e517148a7537fd6e9fd344a974bd38cff59ce9279be146e447153", v: new $Int64(0, 3738) }, { k: "e8d6afb5d5349b729fb15ec0c74c2b0b54be949c2eb70c224f0f677a06d10489", v: new $Int64(0, 4637) }, { k: "e8d8a51bf12974571fcd48bf07799abdb5a8c898d5635d8559b662f1123c7002", v: new $Int64(0, 776) }, { k: "e8db3085aaadfdda3f105e8d5c0315b28a03d9cc0880941e15b487b10f368eb9", v: new $Int64(0, 1250) }, { k: "e8e111b05c7964e56b738abf9fdf22e5baa66ee36e72e9bfbc111c7485c0d306", v: new $Int64(0, 7378) }, { k: "e8e2f41bb08dcfa14b71fd674fb36940206ef0d422049055ae87ff3cc6008d6b", v: new $Int64(0, 1673) }, { k: "e8e9a1166a497df2433ba5544cd23b0319d62c5492565985c400dc8683909b86", v: new $Int64(0, 943) }, { k: "e8ea7113d33730b46c8829a8cd3743cc5d20d0fda057e8b77c92e2d33f3ead89", v: new $Int64(0, 7282) }, { k: "e8ebbba7803e9201ff482db41cbb1beb0bc764d8e8d2e2736c6eba97e68ae248", v: new $Int64(0, 4335) }, { k: "e8f1153f81ef1a739424c8fd4635120648c3da130c0d1f394342c3db08a66e24", v: new $Int64(0, 9281) }, { k: "e8f9a70406cc5e4e1d0aa6056ee173ac8f5af9a24047c0fb43f93be6fd5d811e", v: new $Int64(0, 1849) }, { k: "e8fc23e6366af47837b11d71c5af88c11d01abf9233d8a89b1636aacc7073129", v: new $Int64(0, 7756) }, { k: "e904da354d4dbe78fd134045a3dea4e5f52e747997058a57f3b56892f7072a9d", v: new $Int64(0, 3294) }, { k: "e90767cc83533a9ad6eb0aff9c5d0da0ef7ce7660720eb7aa5af0e43d1a69b65", v: new $Int64(0, 2972) }, { k: "e9132481c62661596e4fc1ad6d2ee1afe8bf72988e33a05ae3c57c9737b809e8", v: new $Int64(0, 9402) }, { k: "e914fb56b6d8c40d12eaa156867db316a52e6e795eb905bfd612105f224b9c30", v: new $Int64(0, 9231) }, { k: "e916acd9f3d30b3874ffd50fda17a475156f66b7a9edbf62d7820dc87e71ab3a", v: new $Int64(0, 4575) }, { k: "e916e40b2db69fdb24f4f22e94d5b22e7884af25e5cefa1f96403f568ececbe5", v: new $Int64(0, 5020) }, { k: "e9247fff28ae65ec858d98e123845d896058d06215f415213859e7eafb09aaae", v: new $Int64(0, 9110) }, { k: "e9334b22c1f89f8ff1ff880c9db808ce150f11e8ee8e66254de755d7cdedc4ce", v: new $Int64(0, 6794) }, { k: "e93978951bf16388c2b16ed814031d6aa8bb1e73b5a39ae9525843bc21c34118", v: new $Int64(0, 8899) }, { k: "e939aab2c3d3a134a4e0885d4b18d523cf8c016cbbc6254985189c467e3040ba", v: new $Int64(0, 5618) }, { k: "e94179c0e4aa27ec3f43e8f3e926dfffc18194ea34d89551d4a61e770fceb29a", v: new $Int64(0, 7085) }, { k: "e94e831373125921650e57a24446e3daa3796bb2c4e4ddd1c5e4c2e8c43f4fe7", v: new $Int64(0, 9867) }, { k: "e95619a8e4cea402f0900aadd468dcb36ec1fb75c39ca65aeb472369a892ca04", v: new $Int64(0, 1047) }, { k: "e95dd71e646880ef6cebbf9604bcbbb932f6311be9083289a2459626104c71a7", v: new $Int64(0, 6227) }, { k: "e9661754df819d4a717caef90ec50b7530f77d4e4d53fd398e6e8be20aa38685", v: new $Int64(0, 6605) }, { k: "e969aa7d04b7663a6af446dd6212e04899978b3c8406061445f38619f54eddfc", v: new $Int64(0, 8304) }, { k: "e96a9ea2f2760a72d4f2691c9808aae6cf6c0b442a60c1e95c57400ba4c577c2", v: new $Int64(0, 5519) }, { k: "e97652b1c4d97637a041ae99ea3029a57e979405c57abbc305c2cabddd6db529", v: new $Int64(0, 6509) }, { k: "e97a105f8657b30fbd27e0003571ba253a07ed370b3c9a6abb0ceb1be5aa8c39", v: new $Int64(0, 6832) }, { k: "e97f01faa4e476c6fe4941d294f67facc378e2837e601cf23e9966ef6c3e9403", v: new $Int64(0, 7494) }, { k: "e98269add2cd53b4f7361e3f28760f1c7025d5e492ea7e101062807a092c02a9", v: new $Int64(0, 4659) }, { k: "e98705fa93f4b9b1a8d523b1aad5059ae88b59222f705ff2c829940e3fef5abb", v: new $Int64(0, 5913) }, { k: "e98ef35b0f9c5e35e842ccfcfe1c7a29fd98d9326ed839e5f92f0e3d2b358924", v: new $Int64(0, 7783) }, { k: "e98f563e33224e6983171fbeac42e606b749be239608ce0b699e46bf16b84c5e", v: new $Int64(0, 7237) }, { k: "e990ce41acd0a0ceef04444db88cd0ff61cadffec7e2570067a69e321e3879f9", v: new $Int64(0, 2805) }, { k: "e992affc57ed92319d8ce61a8f1d51b5bd5598209ebe8a4cbcc6d70a0e407678", v: new $Int64(0, 1910) }, { k: "e99daba791219c38a59ec8212bf94cf90415be575afcfa9f64086d17a1616836", v: new $Int64(0, 9189) }, { k: "e9a046d5ab6681e8bbfacce5b54231042b277a990c34cf5db422a59e2b5c83f6", v: new $Int64(0, 5910) }, { k: "e9a3a14871905e605c909cb1d5b151f4e15e7db25ce89146797cc0304f8fd81b", v: new $Int64(0, 9130) }, { k: "e9ae491f5c53b2ed9e0394355e9078827274a7c6f65a258e8de2101aaaefc188", v: new $Int64(0, 9954) }, { k: "e9b4f35cadda91cf72e7415ab7c880c4d17e7fbd9f0cbf3c59290da4ee26303d", v: new $Int64(0, 4085) }, { k: "e9bb8458b58767e2263350165afab35c00fa1fbadd6f0f1d9990d952530b41f0", v: new $Int64(0, 2271) }, { k: "e9bf7329d8da45e7b83e3c1fce9431142f72df0f0b6d919a7c2d80c2cc8344bc", v: new $Int64(0, 5732) }, { k: "e9d2ed10a968ba74ce14480051fd98867eb36400f673e0ed0d103cda804bc243", v: new $Int64(0, 6117) }, { k: "e9d952e830ea22171084f66d2043d9ef524cbda5922a7535aaa027221bee1fa5", v: new $Int64(0, 828) }, { k: "e9edd71ddbbcf051dd3cffa24d5fbc7e98e70bcc3e62e1014f2b30be41e27792", v: new $Int64(0, 1535) }, { k: "e9ef411e1bf0aab3e9c71ec87dab416dd312a988f419f4b4b535a41014a8de84", v: new $Int64(0, 6312) }, { k: "e9f00c424bdf686fadf3a0a563d4ac074d6b481d39c7b9b3c863c583850bc1dc", v: new $Int64(0, 340) }, { k: "e9f924b428b456a58d073c4a31ccf22a6347ad6170978494d81e2b7eea825174", v: new $Int64(0, 5188) }, { k: "e9fc10cfdf2f61c784e12189a132a5102c3619752928b639359a1ef17d91969d", v: new $Int64(0, 3075) }, { k: "ea04d971d8919cb3d9c6a5b844b3c8aade3a87b8afa4fa1c6a215a2042b0deda", v: new $Int64(0, 1750) }, { k: "ea1348f5146087e9a83d6312b5d9c8168d5292016317ff3c62121af1ba75ce2f", v: new $Int64(0, 285) }, { k: "ea195d6a735140d1585edf90fd28b64a6b8c673fe7a881fbbcbed9aadaf42934", v: new $Int64(0, 7964) }, { k: "ea1e6c320933a99e47b943edc519bf0cc070fc400a4a2552c62ea9ba101103fd", v: new $Int64(0, 3833) }, { k: "ea20c0950025150f9c50fa27c1a14f4537e984e4a6d30c36bd0fa60cc42fe056", v: new $Int64(0, 7122) }, { k: "ea23e9dcbc88bc29e9b82a590427feb9aab772d5dde1c4bed815555336b5504c", v: new $Int64(0, 8017) }, { k: "ea306f3b6812087e8fc67280d44f2c942dae6aa319edc2f02cb89ae097187695", v: new $Int64(0, 8137) }, { k: "ea47d6906a8c4b56a92521a38acb5ad438f762b134d1de8cac5f537b063caa08", v: new $Int64(0, 2530) }, { k: "ea55a33af20dbae4268c8dc353742a948241d217b079e4b7aafd12c122598ec7", v: new $Int64(0, 4632) }, { k: "ea633e36d5d594651e8c49b4860f574828815d059abbaa92223b95a6ef73aec1", v: new $Int64(0, 8897) }, { k: "ea67048eea834ccb89090cb4a93a96ae6cdf9aa27597fec0b8ad89711808e9bb", v: new $Int64(0, 6516) }, { k: "ea6a5e855e37af0c3eff1e4b6d6515a7bfd36f03403d975f1a49f73bd96a4f5a", v: new $Int64(0, 6943) }, { k: "ea6d4e777bdd2d33b3c63319702ff75005b9d71ee9b9051e5973242632eeac3e", v: new $Int64(0, 8038) }, { k: "ea7543118d5616d52ace7cba45ca6ed91a11c31a21b935cbffe8791495df6d3f", v: new $Int64(0, 4962) }, { k: "ea799e68c1e661acdabbf27fa3ff5f6e257efcfa6d0a6de33d4378a524e2c1e7", v: new $Int64(0, 3398) }, { k: "ea7eac9981ac6953f3a6802b9f76d333680d8b7d448fe6172b7168d5c877820f", v: new $Int64(0, 1365) }, { k: "ea82c3c7fd42b5aa6f434db1264214d2b3ece0e5016a2a678bbd8a5005021c51", v: new $Int64(0, 7979) }, { k: "ea855ba8048647a1d9208fbf2740563c6d4f27795c5b1f345fe5273fe497b992", v: new $Int64(0, 9170) }, { k: "ea869169325c41c3c3beb9d5f769352c085b302fc6ab180cdbc4ef02bed8ccb4", v: new $Int64(0, 905) }, { k: "ea89b3723c7550cce4c30a60c5574ebe42d9405b93872085d1a06391b137c758", v: new $Int64(0, 7376) }, { k: "eaa0404b967188c2c6d371955465d8cce21ff93f22e8f4269a37f113a431e2e4", v: new $Int64(0, 199) }, { k: "eaa15e9264de462184c5548faf0160b2c26708783e9edcf504a4cd2a1f2be129", v: new $Int64(0, 5282) }, { k: "eaa1fe9fbe7650e30da0b017eb36c0ea23982932f9a1515fdbbff89cb818915b", v: new $Int64(0, 7947) }, { k: "eaa2f1c43ec5f1293083b28547f3b7a042aabf749ed883891db6fa9c5a9fe546", v: new $Int64(0, 2393) }, { k: "eaa7d065029d00d00c80c282ad89753e4b0d9c8971d438cf17d95db3cbc91754", v: new $Int64(0, 9062) }, { k: "eaa9cd8d8edc817cb95c01bf09d7d3046fb1e92e702bc0c974d9497c269825aa", v: new $Int64(0, 562) }, { k: "eab1dcbe64837230466492df9e8f1394f4ac0230affd2e130ec81bcf31af3165", v: new $Int64(0, 2699) }, { k: "eabc1abfc5816bccade3e70de2646092471487038367fd8a138a076c1cd161c7", v: new $Int64(0, 1533) }, { k: "eacb2c5f9289905403f9ee5bb51199f7854f4cf8344294562a8325674a2b609e", v: new $Int64(0, 173) }, { k: "ead428850645aeead49b993beed6f488aee2c7ebd4389ba941070aa400dfb054", v: new $Int64(0, 4428) }, { k: "ead4cba0b84af0e2f174b1806dea20e27beb0b6daca72ef1f1db46859d432675", v: new $Int64(0, 596) }, { k: "eae88b98d75fb6ae4524196f76bdde613e938235cf53300890659a3be529f04a", v: new $Int64(0, 6568) }, { k: "eaf2147503674c4d7bfa0adbd66958aa3a2c78fd9cafe8fb34d2c19c744da296", v: new $Int64(0, 87) }, { k: "eaf31d1eb24edba66ec29c61ec80be0dc99109209bcdb326863a84a746bd094c", v: new $Int64(0, 2903) }, { k: "eaf6f33352f4c1710c2e47fdf020382fdd5a5df54165a1d5286a09f111210640", v: new $Int64(0, 6171) }, { k: "eaf88916e833c827c4cefb81822da58e57d1bd54a054525d832e026408ca129d", v: new $Int64(0, 4961) }, { k: "eafd9a521a594e127dfb2d9b7deae91855456c88f5312fa5097a1d92696329a1", v: new $Int64(0, 1985) }, { k: "eb02a7ba065a0f5ae8c09e3431d1d9b44e62028ad2755de470154335c0d58667", v: new $Int64(0, 8337) }, { k: "eb1415eba4682728b1bc1de22c6a1870f4998ddd519a8503379c42ed6445be3f", v: new $Int64(0, 5634) }, { k: "eb1694c292233cd0a17a3e29e4ba20e582d2c6f0c6af06a8c4d2465d9931353f", v: new $Int64(0, 8009) }, { k: "eb1a5c231a180473149b3632681d8910ec96b6d21d2d8c226ef3d1212cd9013e", v: new $Int64(0, 7425) }, { k: "eb2076666f964ab1827739f770f020322c4b4616e736d25935a53677e3de00ed", v: new $Int64(0, 751) }, { k: "eb2767c137ab7ad8279c078eff116ab0786ead3a2e0f989f72c37f82f2969670", v: new $Int64(0, 16) }, { k: "eb380da9050038d3aabc617b57bf729f3ccfe6ffe30f341e8bd540c76b3a8575", v: new $Int64(0, 2202) }, { k: "eb40e4655d53a70a9b09dad70a6adca86b43ce1a7006795116ad30c1ffedc73c", v: new $Int64(0, 9545) }, { k: "eb477e9a720090013f664b20881e44a6b1ebf7a4192ec047cdf70cfbb0e87bf3", v: new $Int64(0, 3957) }, { k: "eb59b3a9a9a8c309fc2dfbeb535b0519cb4ca17a4bc558c5f5f41ac5a9d8230f", v: new $Int64(0, 4048) }, { k: "eb5a92b9bb300bef7be82c53467f2d8e2b8ada6403977e5a085c962a454e30f5", v: new $Int64(0, 4761) }, { k: "eb5d322b6d866f09518814215467712887cf99322f07e030fb6a821d656e9d0d", v: new $Int64(0, 2590) }, { k: "eb5fe83bd1072743834ea3421ac19734721da84ed8213c4e92b5b9e90f469e9e", v: new $Int64(0, 6644) }, { k: "eb60ea00db62d94a49d98c9dc11f234e973f860b021afc8c538552e33e917740", v: new $Int64(0, 5862) }, { k: "eb65d3ebd6e8d2d3c0606be807477164b1714bb3056eadfb34e185601c1543e3", v: new $Int64(0, 4382) }, { k: "eb65ee2cce1f17d98e8facc65164253fecac3d6165acf93dd5c0eff6cefee7c2", v: new $Int64(0, 6339) }, { k: "eb66740a95c14728f45f0ba2941c8580ef32dfcd5894fe2ef937939683d97fa0", v: new $Int64(0, 311) }, { k: "eb71e6906d21c3eb1b46c7634d9d71fec76e2af8972bd197bbc5ef88abad6507", v: new $Int64(0, 4039) }, { k: "eb7412db40143776477c53fbb90815b1df82c055b96396465e8a69e0ad370c6d", v: new $Int64(0, 9518) }, { k: "eb80c0663a31cf1effe88928fd52ffdd6a72e6475bb73c8b6d1a54d6b7d38e49", v: new $Int64(0, 9873) }, { k: "eb92e3fa4100249fb093c545922bbcd7b80f58965c1f484c65a92654a881e459", v: new $Int64(0, 3283) }, { k: "eb97ffea1bf7adde0371a4f1774c6983098da3593752b48d87b72a31f2eae62f", v: new $Int64(0, 746) }, { k: "eb995a39c6f8ba2ae9d60456000622fbeb25568b7e5d7b0033f4f6d45e1b2728", v: new $Int64(0, 5615) }, { k: "eba1095dcdae09afb37c6b7e42df151859db28c0eeaed717561f5407973e820b", v: new $Int64(0, 8365) }, { k: "ebac0b0c2a9d90e9f331a260bb6bd5f869abe07dbc8103c79377923c0d45d3af", v: new $Int64(0, 1143) }, { k: "ebb141ee6f70b48cf2e5a63a8815fd7ea2c29600840feb940684357c55b3a8c3", v: new $Int64(0, 3877) }, { k: "ebb357fa0e6a2b8b340ccbe6cad9e23a36e3104c9d90e03e857e3164940ce7d2", v: new $Int64(0, 6865) }, { k: "ebc46ee4f434443d6ba3b9071fd55d68bb34a9901bb0072aad4e33a38c4eb779", v: new $Int64(0, 6020) }, { k: "ebcb4d586ad61b22e9969006ef4a564cccac140cfe640e5d650ea879610100c9", v: new $Int64(0, 7102) }, { k: "ebe55d6f0d9f13b29496e140bab348e0a83188ba5b308765fb0f4529477d1e01", v: new $Int64(0, 6903) }, { k: "ebe6c8e850610a8d6bbc63641a9ed3bbec52bed476966bee546beae216306f4c", v: new $Int64(0, 4573) }, { k: "ebe96d3fd1506204f143f1bbb95a2a883ca2df7b0b12bd573c73cb7418b66973", v: new $Int64(0, 7222) }, { k: "ebf5fa0a61343fefd5d01100b53d9264227be885334650010b1d3eb454cc481e", v: new $Int64(0, 6325) }, { k: "ebf6f19f48c682544c93219d196cf021ac38eee637fef8d76da3d84550fea2b6", v: new $Int64(0, 2282) }, { k: "ec02c775553a14630a789056dcadab6b43c72776612bf0f53c021185addabc8f", v: new $Int64(0, 3065) }, { k: "ec05096ca6ccd86b289c8489486a758d85822540367769294f25763c3b4b2e8f", v: new $Int64(0, 5759) }, { k: "ec0556d0d28f1ade81aaadce519ec1ab6ef9dbe85719fb8573f34f3b8a5803fd", v: new $Int64(0, 5458) }, { k: "ec06342564c4b5bc8bc8b25b69bcc1d966e85886a954ce9f41b0ae42d9b30261", v: new $Int64(0, 8634) }, { k: "ec0a0fbdf570fd42385c526d052e1359af0e6de72167d90bc861b29e3612acdd", v: new $Int64(0, 6209) }, { k: "ec0f2bf4bfd924ba293f20f2b298f5b426ebf26fe7548722dc2f08c3ccbacdbf", v: new $Int64(0, 5654) }, { k: "ec1225bb1c5fb3cf84ec9609d7497b9397a516d285619233acb6596f1f80435b", v: new $Int64(0, 1617) }, { k: "ec246a21efa2f058669a36bdd65bfb6c5b1816c56cdf9d682da9fd0b7f4432f5", v: new $Int64(0, 5086) }, { k: "ec28fb10cbd9fb9ba76f24ff98a9b47cebf1029213b0bac9dee9577a42a96599", v: new $Int64(0, 1698) }, { k: "ec32b052aae1de9cdad65c2d5745a831e705cbf44cecd01648675d0259e25dda", v: new $Int64(0, 3888) }, { k: "ec344318aa37da7e7a06e984d11b623033fd02b4f0c865e51995e6e3c0c5887e", v: new $Int64(0, 9689) }, { k: "ec376ba1a92d14b5b35b96ad219f8516d780de8d5046da02d1a4f1128754887c", v: new $Int64(0, 277) }, { k: "ec42a1f617db9f127671806832d2039de340e1ec5ef265ca09804143416e7ed6", v: new $Int64(0, 3307) }, { k: "ec4b202e1bb39d2ad74f54f3b56605ffda4562e7ed90983418cc3a5d5723fab6", v: new $Int64(0, 4297) }, { k: "ec5e051ed142275e65f82cddd2cf28f26e64ba017fec0b2c5313a712e8a49710", v: new $Int64(0, 1574) }, { k: "ec5fe83f34f2e7c9812b74654f8e4076c066933ce8b23bbe8b28854d87bfc787", v: new $Int64(0, 7100) }, { k: "ec6468e1a0ac263933de7ac5478ff0925c2614f1751d69346955f3f3a90242e0", v: new $Int64(0, 6276) }, { k: "ec6add37e38fc498cbccdeb5fa2f6389ddce7e242382ed2d490b6bbae514d84f", v: new $Int64(0, 5852) }, { k: "ec6b83231427909f68a1570328297a079d54a32017f6e7518260b2f3f61f5350", v: new $Int64(0, 8574) }, { k: "ec776adc9d81fc2b25e4e8b74bedf80b617040a25a6d7ebc456c4e5aca0889cb", v: new $Int64(0, 7735) }, { k: "ec80620b0306aaf2d0f27b212bffb1ee56365572e19ac4dc59c9d896ced88a82", v: new $Int64(0, 2734) }, { k: "ec84ee78401d148c0e44b5bf23632368b609e680e7ccac10e02d71c86c325a8f", v: new $Int64(0, 8503) }, { k: "ec8f0060890ae14626e79bda0dace1ec5a651ac042aab02e5964b8deffc939cf", v: new $Int64(0, 2192) }, { k: "ec9c9f26c0c6e7d68f9887eba7d89438429dc3f137ec37fcce01edd8d8027423", v: new $Int64(0, 9122) }, { k: "ec9fa355aad11fe09ab090cce6a28fe3069886224b2627a48638c77c4f00eac9", v: new $Int64(0, 9801) }, { k: "eca47e94e46532f1a3dde4e7205ea8ea5cc456eaa5f84deb0b0abab51a953ccc", v: new $Int64(0, 6342) }, { k: "eca652918241914e6c12d3dc4a64f93185538693dcb00d0bd084bf43b9eb93d7", v: new $Int64(0, 8007) }, { k: "eca941aa73018ca8cac533cca13a688e46c7e0051a4da81cd37a2e97e46e7db0", v: new $Int64(0, 6249) }, { k: "ecb74b8198aa3f0541694ccf3ed2ba9b34b411376bab5dd15172106e4670fc82", v: new $Int64(0, 3024) }, { k: "ecbb489094afef47e07f1b7d6658918c9a990261f424d4b9c69a888377aafe22", v: new $Int64(0, 6352) }, { k: "ecbcd30ce804645f2b53306c33fb97de05efc1a6f65fe78211f112ee74723e58", v: new $Int64(0, 5477) }, { k: "ecc082bef190b9c647f1818569782dd916da55069254ab12656a79b4028dc1ac", v: new $Int64(0, 2351) }, { k: "ecc09cf5409ff402e014184d17cf6084f4bf8fc153ba7b8020d2fd597dd8f832", v: new $Int64(0, 7809) }, { k: "ecdf1b48a35775ce2ad9e023aab8f4b0f83017f0e89dc5ec8c646f45382caa1a", v: new $Int64(0, 5606) }, { k: "ece269a23e921201281f88999199edf15556d1f4f4d7bb112ad734e48b62dbf3", v: new $Int64(0, 8604) }, { k: "ecf843e3a5401de7b9c04e223652a9d8c7e899eefc396fa3617ad635b1fc903e", v: new $Int64(0, 5756) }, { k: "ecfa284b2cd7cd8c7cae1ee30b2b7441d640189aa33f798a5577ac3d7c3cc905", v: new $Int64(0, 9920) }, { k: "ecfb154fe2a195494345c1e88e3072ed51a2b89eae09227e6180f97bffba20f7", v: new $Int64(0, 3571) }, { k: "ecfc2a05f7987d9e7cba884709d6453b4607ed19f1b0b9ee80ef3de7fa1c06a6", v: new $Int64(0, 6629) }, { k: "ecfedbfc6aadf83647527d1a8b3762539b36a59832ac929f1af4acd76590b384", v: new $Int64(0, 5906) }, { k: "ed05e2724a75cc120cad9858d81d05b82df37ffe21390a4975e51323d5ff53a6", v: new $Int64(0, 9618) }, { k: "ed161519d605c0a119cfd3d35b49edf36c9498fdb4d8188197110ec88f2b4355", v: new $Int64(0, 6235) }, { k: "ed23dd95ab59d09f862b441b8c6cd0b68c1f59883e8bd398cec38b34e692aa99", v: new $Int64(0, 6393) }, { k: "ed28d95c2c4c0021f59861c8898736c94fe7ac6b760c9dd33a6304f786c53c23", v: new $Int64(0, 6291) }, { k: "ed313d305c1b7bc04632a67fb63d34b2df79a21a09c8be9eac6a430e311caace", v: new $Int64(0, 4339) }, { k: "ed333a00dfec91a698d814b466cf2f8e1fc10e7c87a8ffcbc615bca36386c320", v: new $Int64(0, 7901) }, { k: "ed3ea4a337461d47795c6cc40dc6afcf54b632e4bd63f70adffb88d6b2d57042", v: new $Int64(0, 1744) }, { k: "ed436dba4d800082772b3617f245efd9478f74e5167436ce9deb3d1eaec38109", v: new $Int64(0, 4282) }, { k: "ed532377aafdf154e1d7424c7209f5decdf8a01950e1e31fc8f4b502d751fa6d", v: new $Int64(0, 2887) }, { k: "ed541112b5f6fe98e766ea723672a0527c8bdbd2bf87200f912871936afee216", v: new $Int64(0, 9376) }, { k: "ed5aae168a8df9505b1707ab340e97d1b08ed61d9232df4a14e65398b7d2fea3", v: new $Int64(0, 5723) }, { k: "ed5ad911bbe359c3d2559561e529963d848352161fc3a6455231bcdaf8e2b781", v: new $Int64(0, 4558) }, { k: "ed5c34ebe8937593e28b36a15d3373950c390dd72afda996a4a694b2950414af", v: new $Int64(0, 8209) }, { k: "ed63b23aa1d042983509793b5dbf00869c061c9533a02bc1109d889785f0817b", v: new $Int64(0, 6183) }, { k: "ed6c7fde9db94876af300ffd8e0fac767e0f716a3a7699a98df482fb50de4ae3", v: new $Int64(0, 6488) }, { k: "ed6ff6d3c3592f10c72141298e0179c222e5a54f792688278f3fa5f4022e7151", v: new $Int64(0, 8848) }, { k: "ed8ff185962abea4223eccbbd3756c0f52b5d64067b2f38b85344a444f538b85", v: new $Int64(0, 7280) }, { k: "ed967435187e179140dddce83da5fc6d8010fca31b44ac100f73d253dccdffe1", v: new $Int64(0, 4195) }, { k: "ed9a25385a8c2e908756349059e0737f6dc4c914b95af46b84acb2aee518c678", v: new $Int64(0, 5041) }, { k: "eda8041fe6b89c8fc141da487a75e40ed7ea96512da92e89257817a6d51cf8b1", v: new $Int64(0, 9340) }, { k: "edb4229de724d7339263a9d9cacb8c2f5186f42737dfdd837c9b53b676f04215", v: new $Int64(0, 8445) }, { k: "edb6e615656c3a3ad77c8abf70c6ad47dbd9482448456ea46fce385be3d231ce", v: new $Int64(0, 8981) }, { k: "edb973ff8a3e5d3ed12bdcc90ea46671aa6988cf2e6b69bb381d86e8f41a7d82", v: new $Int64(0, 9128) }, { k: "edbfd4c57da9e5840639594c132b331705186e9a9f99327eb1cb389f1ac3dcec", v: new $Int64(0, 4681) }, { k: "edc506e4c2567f5199687335e8715373a7d480b3b980c7c9ea4ef4db7ec6fb2e", v: new $Int64(0, 5307) }, { k: "edc876d6831fd2105d0b4389ca2e283166469289146e2ce06faefe98b22548df", v: new $Int64(0, 5) }, { k: "edc8d1ecc4dacc7e1ce909ac7f35a054afe818c46c7d1930bbb8e8b60ee6bf87", v: new $Int64(0, 1223) }, { k: "eddc7cbd50a7435c83999edd826dd9dc55ad16a5117154997d588403ba0cd9d3", v: new $Int64(0, 3509) }, { k: "ede529406271c280f1a4f18b8b42ae18248d93d9c256c366d7d95aea20549e4f", v: new $Int64(0, 5027) }, { k: "ede8edfa7d488a841131caabf520b3a06db781e84d9bfba9ceafd5facbba3850", v: new $Int64(0, 3058) }, { k: "edeb8d7f0ae26ce3fbac7dc67c829da0bb5fc758ce634a47ee309cebf5db1806", v: new $Int64(0, 9010) }, { k: "edec3ec1663bab78dcec1f9421ee538ffcda6e2b0a9c160e0f08671de2ed3849", v: new $Int64(0, 5892) }, { k: "edfb199d5e3a0efe6b70781f0a884f49fca36059e8f739af1f5a58df31c97393", v: new $Int64(0, 1095) }, { k: "edfeb50d5dc4e3a21a1fd7f45b0f392d2b493cce7f3aef44aaa7aeda124c1bec", v: new $Int64(0, 5533) }, { k: "edffff4bf5d04ca00d653ceb2a88377fb23ca2cd11e05bc46c656a3c3f82283e", v: new $Int64(0, 4253) }, { k: "ee02eea2fa783602614a4ad535d5b5adb563779531e38b45da6c6b542c790953", v: new $Int64(0, 187) }, { k: "ee051432c77305cb1b1f1d0521295fbca0c4e1cf1071d3efc44da1015cc74833", v: new $Int64(0, 3628) }, { k: "ee100120f2fdeb0cf29710e58c9f119f09e4ca7363ed7e6fe608672011bcac91", v: new $Int64(0, 5269) }, { k: "ee107445f706dea3719faa8e88114f38b37188f49980343ca7f3deeb176ba541", v: new $Int64(0, 8550) }, { k: "ee1531eeda38d8171234cb52ffe7963f6d6b306402aad5b32283785b3a798821", v: new $Int64(0, 9516) }, { k: "ee15ef07ba2182ba8fd453b5756c72093d1292ba02a86df0fbc92b556eedb018", v: new $Int64(0, 7835) }, { k: "ee1d2bdb9891801fb40fc9890101f7af76344a4e5b717c70d67bc9b5722994d3", v: new $Int64(0, 9781) }, { k: "ee303d590586ec71be8304550f1997cada4b180f571df56017959c420055811e", v: new $Int64(0, 4833) }, { k: "ee3081e38ff21ab8ed8aeeb9118fd82c702b72e26132962863cec2e12724f4a5", v: new $Int64(0, 7620) }, { k: "ee309c31daa6b905ec6b62c90cf435f721713a6bf4873860c92e0c418c891118", v: new $Int64(0, 8178) }, { k: "ee393281fb1957b27cba8b3689b2b752a9738de88d86b6ad4de44b830432abbd", v: new $Int64(0, 9703) }, { k: "ee484e04e2167077486845a39cadcf8541923450c7602d4fa4c7f18040aa7c6d", v: new $Int64(0, 6299) }, { k: "ee62457666ea0b225bf8770de9eed5210e419334fd8290afb73ccd28b887189e", v: new $Int64(0, 9888) }, { k: "ee6b9d91a698c5d2e13f6b9787acf5b5b0a428403a40b55b21b67a6366a39032", v: new $Int64(0, 5983) }, { k: "ee742580443186d9d502d74858541c17c535f266c17bb354efb6ac4a32fe1ddb", v: new $Int64(0, 7451) }, { k: "ee8b732173e308681f896edcac9a71bfb18938299111b4bab7a35d263424e045", v: new $Int64(0, 1852) }, { k: "ee971008da38b2ac7a705643f51568b2b3bb24c59041e426a85d6d62e5cf4fa5", v: new $Int64(0, 5105) }, { k: "ee9bfd912fd9a95c7f9e10ade4feee222c14f645072dbc24e4866fe7798b75b2", v: new $Int64(0, 3946) }, { k: "eea2a377d31161c60e205d25354283654e57fa7894af2612019394608e5f4399", v: new $Int64(0, 6712) }, { k: "eea53e42c3409bcb673102604e2b9acde3be3811d4076c6d514c751ff7564fc6", v: new $Int64(0, 2775) }, { k: "eea9322a5ecb0eb1208a566afbbe4a767844ba937744c2ac8c391b65d80244d1", v: new $Int64(0, 5857) }, { k: "eeafbdc38c50d2516daafcf21c33724282c72fca98ab5d1218228952fc9c48b0", v: new $Int64(0, 2771) }, { k: "eeb777a9edbc9cd2119f28f67bddcd42417bbca35f13b7ba9c343b8e853b249a", v: new $Int64(0, 6510) }, { k: "eeb81bd8452f9e54986949a93e3246b72f0591b0dac491cc3c934eb8a4766dcc", v: new $Int64(0, 5737) }, { k: "eec0332b78793d66ab6993a41f7b270405e546fc239af64d9ab7579c550c24a3", v: new $Int64(0, 23) }, { k: "eec85ec118c63c83851e07d28be9c75d3e20bd9772a5fd5bc471ccf9496b5c93", v: new $Int64(0, 5933) }, { k: "eee0284433cd623385ef40b3d5f451b6826cc01fd3ed43e36c6df2c1767e352f", v: new $Int64(0, 637) }, { k: "eee2a61678ade41afb36cbe0b466bfc16001e4f47b01f9d3f1fd408c249fcb01", v: new $Int64(0, 4481) }, { k: "eeed6d3af21c8dbce63b7c7a56ecddf310d2e97468d530b6181056ab9aec5cef", v: new $Int64(0, 8941) }, { k: "eefbdb6e1bbf2d6e6eea1ffe89bf85941eac85df8f7bd252337f54199ebb5969", v: new $Int64(0, 5851) }, { k: "eefc3ed4b7bc1ca19342036506b187b3223d8c98ee05954cd918cde856bfe28e", v: new $Int64(0, 3018) }, { k: "ef0142cb2a7b717a894696d18d3044fe3b07ddfdfb3e55a41aa5510c1678019c", v: new $Int64(0, 5205) }, { k: "ef063b5cdbb09ddbb243c3df3bdde9dd08fa71b7154209e90472d935bd4403cb", v: new $Int64(0, 8501) }, { k: "ef14bfad0f7986c0a9197b404f23695a77924cc55c8e1ce5945d08da5d66c9f6", v: new $Int64(0, 9903) }, { k: "ef15cfd30b984bae464b4a47b1e76df47f8bb463fd875dddef005cd38162f33d", v: new $Int64(0, 4862) }, { k: "ef17e01ac0ad674ca0bb64197ff0ef0a4ff1bf9cb9a3d63b83a301e2e500599e", v: new $Int64(0, 5884) }, { k: "ef1d4efd42e01d75088880ca7524c2ca593502eccc15c4b8f992f9d0d7a527ed", v: new $Int64(0, 7555) }, { k: "ef1f1b25e8ea9e20b12c1776f1413d32ad5f42f78d68ece4c2325e4de65dfbf0", v: new $Int64(0, 2440) }, { k: "ef2303cece906c8836a4a113943bf1a7506bbb9b4978a72fac85aca930fca655", v: new $Int64(0, 2141) }, { k: "ef2a91babb7d2703d2fa115e7d62c8a76c6e61f6c63e4b31d9fb7a7e9c051747", v: new $Int64(0, 4628) }, { k: "ef2ab008485f837291369d1258bb538c98f777a0f1e677d3209227763d49bacc", v: new $Int64(0, 6681) }, { k: "ef2b1709afa67d261080835e4c26aa35935786d8666b0309b0de799d7c366243", v: new $Int64(0, 450) }, { k: "ef393d1edfe35e7ba929a7cf28df4941c2d35a3013fee25eb6a822552a6912e2", v: new $Int64(0, 8239) }, { k: "ef3d15db084b25b91e1c4aecfde809a23985414f2dfe96befe2d9b7d2e79ff13", v: new $Int64(0, 6356) }, { k: "ef46dd0ee0201d7ae2585d844bbdab9e26519ec0d4116ac85c305977d1811ce8", v: new $Int64(0, 2397) }, { k: "ef4ddbcd1e935ef28a8868606123a184890e47fd7edf50f558b405cf3681ddf6", v: new $Int64(0, 4989) }, { k: "ef4ff8fe002a6ba828817072ca1f778109386b0ab456aee6cd64797ea2b11af2", v: new $Int64(0, 6472) }, { k: "ef6062ca406e7e4e1df2c860d34826de393b87ff04ed5b9644fc33d517084535", v: new $Int64(0, 3202) }, { k: "ef65bb32353a6f9e10ebece07a160214702bd6631d05738fa9a89ef5718a8f12", v: new $Int64(0, 5709) }, { k: "ef78e56888dc467534e75a5abab13252c6c3f9e7b3f70049db28ae0ceebeb17c", v: new $Int64(0, 8085) }, { k: "ef8e56c95deddb31e133086d3be6e6ab2e77248c59bbbb95152ffa8a944dae2b", v: new $Int64(0, 1565) }, { k: "ef9cec10949f8236722e7821b6b7c6dcb5ea426e5b6ea7247dbd2445aabc0dae", v: new $Int64(0, 4477) }, { k: "efaeb79b1df46e572148962b4fe4de23c53a2e8ee8e8084311dd327185ad9771", v: new $Int64(0, 7689) }, { k: "efaf2d77a5aca2d97f367a57cebc163567252111b555b2cd819c135ba1fc14d0", v: new $Int64(0, 3155) }, { k: "efb67c59e0d7ffa2b0196b5acbe67bbf40933b4f53b36ccca8635679ad5a0aca", v: new $Int64(0, 6026) }, { k: "efbc071cee45d7e027eb6c478d9eb6ac36812b9590d6752dfd4917fe2ceb05af", v: new $Int64(0, 5028) }, { k: "efbd3088706fa28f28fc3662ed4067a7640e361a4d1dfc463693a269e3171b1a", v: new $Int64(0, 6555) }, { k: "efc5f8e04b71607ef5bc39fba8ba4173a08762bf516f4b0694d672beb13e97f4", v: new $Int64(0, 8419) }, { k: "efc705e6ec4ce5dcbc3cf2f57464be330c9db48bcccb65369ff8d41f7619720a", v: new $Int64(0, 4389) }, { k: "efcbf4e5eb61e47e71c7158dbbccfbbf0df15ad93d2eb6155f1f8a60f7d8a68b", v: new $Int64(0, 5157) }, { k: "efcc7e9c66bb35deb1d76e7a9f96db9438e79bf48e5d5c723ade062264de9d38", v: new $Int64(0, 8771) }, { k: "efd9e688fad02994103afae6fe12fd6836e1498abd7ccbcc12b08c75e303f44c", v: new $Int64(0, 4345) }, { k: "efe1470ed2ea8ec3975a7f095787ccc42f86eba4490bc4cdebd82a2caba85040", v: new $Int64(0, 8581) }, { k: "efe4959504ce400a199164dd34e3f72dc781f674a2808599d16dc5a418d684d7", v: new $Int64(0, 3041) }, { k: "efe5af4b8aa66311cbf520af0c18ce6b9e14440c47ffad17ca4141b9d6b09c86", v: new $Int64(0, 1108) }, { k: "eff3b318a9dab08d1b165f556c6cb76336fdd9849bea23b84fb357d527d446a1", v: new $Int64(0, 7264) }, { k: "eff4946d387dfae7d37af87d2c0385cfca51fa0ea1ed8aafb22a93e381ded617", v: new $Int64(0, 1291) }, { k: "eff9bc495a9fb0a02cd0bbd1adb036c25334a707b256e65f48aea65ad5d3d2f3", v: new $Int64(0, 7609) }, { k: "f003ecf5681ae7554f1da7fb78ea2ce345d7ce3c86b754170ad809e7cf3fa106", v: new $Int64(0, 4330) }, { k: "f008d0727a81d4e5a1e4818cb07e009e9a6ef3fa52b1512ed1633cc72f99fb37", v: new $Int64(0, 3476) }, { k: "f00a2d2eeddb5587b368491ca3e4b9a9a616fd9f50902560d15bda7b97687d94", v: new $Int64(0, 5423) }, { k: "f01e6ccce81cbac33aa0ce2f016b5a4d363987bff057e9a780a98303b61077a4", v: new $Int64(0, 5168) }, { k: "f01e85a1756732d9df8f4eccb4454949407cb9a87eb6e1e4de3dcac5ae8c8e15", v: new $Int64(0, 4747) }, { k: "f02c08acb76e5e42c7ca3bd3a347b05fc5c825f7e0022dd5180a371897e2c488", v: new $Int64(0, 9791) }, { k: "f02e8ce66bacfd39f62b0fb4ff5d14127e9d07b785f338c573ccf2cc88754d24", v: new $Int64(0, 2380) }, { k: "f031434f49495c2a69b3694dff18e26473626cba6a831d17e5de0a1b528dc4e9", v: new $Int64(0, 1437) }, { k: "f03a7744b67f6d2ea08c5e74f778d916ac993a9a3168fdec9246aa6de3f26ee8", v: new $Int64(0, 1217) }, { k: "f04577dc54a04bd08f51c1dc9cc49459a97999e81bae154d9cdaf820693f9418", v: new $Int64(0, 9015) }, { k: "f047cf3aa4cd0ab4917307298e062d4c0991ba0a7a439cced283db34e2dceec5", v: new $Int64(0, 9081) }, { k: "f0501c2a83686347f5ca4216ec8d4eba6845551ec57f6cdcdb0c7d14dedb21ff", v: new $Int64(0, 1542) }, { k: "f050ab46c0e7b7de2d6eacea94880c61bc307dc0e6ce13cfea7bbb5a2cac8678", v: new $Int64(0, 7986) }, { k: "f05b181bbc50949c35e223e3658d5767b1fa344f25c099a36a8e680c060b41cb", v: new $Int64(0, 1615) }, { k: "f05ce6ac6f7976961c167fdec253201397252d3bdd1f2781c96193d9ddcc90f0", v: new $Int64(0, 2429) }, { k: "f05eab143bfd9ac8666b315b27897025772a29843d9174198b67096ac735318b", v: new $Int64(0, 7215) }, { k: "f070c2b75a19b4a6b59afc6cadf2ddb5ceef5fd256f7877ef00a4ae3d96834d8", v: new $Int64(0, 7599) }, { k: "f07aa3c01e544741145527e670a77904957ba37e9f839d8aa22d90c11eff92a3", v: new $Int64(0, 3477) }, { k: "f0855f575230144d375be12c61fc342f94f3eeb366e97be5a1ced8495b1fbf40", v: new $Int64(0, 9493) }, { k: "f088d1171662b5620821d84fe6a96dc950aa25e05096b3c0137aba271d3687f4", v: new $Int64(0, 2277) }, { k: "f08d3029ede288e8071e6bee94ccdd8f172f9f3137f4cddeab6955e6baaef09a", v: new $Int64(0, 4194) }, { k: "f08dfa57c51695dc7b66081ddf95dc753477eb0c5845b555e4330cea6c267540", v: new $Int64(0, 9413) }, { k: "f09b6703fce1a9c23a686444192222d31d82f118029cdcdfab6855f1ac0e6c59", v: new $Int64(0, 1656) }, { k: "f0a307121d3d8c962f98090363ac5a39f73af14bfbf31301e2c13220622b9c31", v: new $Int64(0, 6899) }, { k: "f0ac31a64ed662d4f0967fd2fc369a79628706f95260f647bcd9aa6922f7dff4", v: new $Int64(0, 2772) }, { k: "f0ac53d4b33af295db48608662fbc865b56cddfbc8ffad470ae41b963679235d", v: new $Int64(0, 8762) }, { k: "f0bc3b422de33f9b8a463bdc132dc92a02f28c8f3b4eaa3146519e11a2ea881a", v: new $Int64(0, 2829) }, { k: "f0d0a8f0464c7775fbc7257c2e7933875df53efb80f4cbfe20e947d721f636ff", v: new $Int64(0, 3402) }, { k: "f0d670765adf3e0b104dc616ae845903fdb5c5b539ab7753ecbcecd380cfabf8", v: new $Int64(0, 9354) }, { k: "f0dba130dbd36a0ea57d6f50966060498e57b3cf7c17b6ed93932599cd6859f2", v: new $Int64(0, 2083) }, { k: "f0dc75ec03dfce9f192076519512ccf2c781e91b7649dc79e7f791309faa110e", v: new $Int64(0, 878) }, { k: "f0dfca768351f6241256c716d47d87108b73406072609b46b40518f2a52c63d1", v: new $Int64(0, 6736) }, { k: "f0e3ddcf6ba9fd05f9718942a2a1b388353d67c47f039044e9ec1cc3f9789171", v: new $Int64(0, 4388) }, { k: "f0e45d8a2839c0b0307c3a2ac1bd6281dbe09b9c64c7fdca827295351db76c1b", v: new $Int64(0, 2625) }, { k: "f0eadde0f974e4b93bf91c8646ec2ff1f8d957732a11602c209d6f579264cad1", v: new $Int64(0, 4609) }, { k: "f0f1c142fce5256915ca0e9c184fd6bbfdd4a5685d30ef700ca5268b280a0b2b", v: new $Int64(0, 9934) }, { k: "f0f4d8dad7250e1e0f5b5e317ab0fb9d7c411a6058182c3db7898414df296504", v: new $Int64(0, 5761) }, { k: "f10367b0afc6a352860626af9107651d7b392d5b07e571c437778caaedd3d970", v: new $Int64(0, 1008) }, { k: "f10c34cf27c04617ed704137d76a5ecfadbba3db754c44a71dcc12cbabd1253c", v: new $Int64(0, 8472) }, { k: "f12186c9422e9acb2ce11133a9c2f8cedcb444c629443dd32f43470aa610807a", v: new $Int64(0, 4017) }, { k: "f1285fddc11363d0cbc2b7ba437f82ee2f4c841dc456441645d901e358538283", v: new $Int64(0, 8189) }, { k: "f12cd20243c8e2e1499828d32d3a62a52c2dae8e9f12a0e4a3e9aadebe103f5c", v: new $Int64(0, 3447) }, { k: "f12e477192b9b0b4a9f88dbeb5253e7197d441eeb26d082a52bf6ce355189e3f", v: new $Int64(0, 5002) }, { k: "f12fc2ed2e5a6096bf7a2c28ffd4d29d91fa05c163ec46cd3cec5d668c08cabc", v: new $Int64(0, 343) }, { k: "f131acbf78e40a2c8d2fa3254fbc60bd0053551b62db9e47b898cb93620744f9", v: new $Int64(0, 7677) }, { k: "f150ea002443246b21f995d2f7d37bddd600755a6aea0fca7139b2c7b2bb4d04", v: new $Int64(0, 3805) }, { k: "f15c91f1f2519fa386df1780cb2f43a5e048d4705f3b50d33b6369e3fa99bdb4", v: new $Int64(0, 8396) }, { k: "f16a061140fb144855dc8ca86889d0278ac4e814722b51346dbe3c3c4e8e3845", v: new $Int64(0, 7670) }, { k: "f16a09982f3d4cf8840a8680eefdb3c27a7fe534df83dd939a3eed758511261d", v: new $Int64(0, 4900) }, { k: "f16b9636d54ca599eebe57e238b975d0af88a8795a7a35f58c1c7a741e3cba89", v: new $Int64(0, 4235) }, { k: "f1700456918264cb1347993ad0d290da3a4804c785c06d0ecc8c2556ff5776f3", v: new $Int64(0, 7825) }, { k: "f1752e4975a589917a8efc0c6495f4a686221c222015a5fcc60cb5aae8e04a8c", v: new $Int64(0, 9521) }, { k: "f1797bed4f44b2e7080dc20812d29fdfcd93208acf33ca6d89b977c8931b4ee0", v: new $Int64(0, 24) }, { k: "f18b1978394643d313e30a0fb06ff4f75955c221e2218ab2ef0b1cd6d3f6f950", v: new $Int64(0, 6274) }, { k: "f191bf1ac3320b74810a631158873b7272a0030ada8de4df2069d62db73218b7", v: new $Int64(0, 1467) }, { k: "f19471c87062dbbf2d259c2cf2e505df85b40f5a527f3e4d954cc301ca14c123", v: new $Int64(0, 4024) }, { k: "f1988673096f2ad47891f3f435916ebffc09dff1aab224958a56c8e6b9cc71cb", v: new $Int64(0, 9503) }, { k: "f1998fe6bd3fde01e61cae86daa07bdd810cccc7bd8a8bece9e3023e04542223", v: new $Int64(0, 3405) }, { k: "f1b1e95ea08369e3d6332d160b23d8d93d7df0402bd1799c2fe1528fa1f286cf", v: new $Int64(0, 6787) }, { k: "f1b8104a4d5643e63b50dd6280aee657ff15b8520a1f6a8512abbdf56f17a904", v: new $Int64(0, 66) }, { k: "f1bab7b55c37eb7b57a84c9df5cc239d5d9f9c9f9f7fb6fe82666c67c477376d", v: new $Int64(0, 8275) }, { k: "f1bafe052805cd1854222fd4a14bd516c0cb23dcfc28825634c657647105fdf3", v: new $Int64(0, 2063) }, { k: "f1be07c15de6dde23a036ee9e960c3cd995165352b60cd8f61a1d3d89acf4920", v: new $Int64(0, 9490) }, { k: "f1c092739ed7582d64fd8cb7a58a0bb92a808945820e65e269079032119e5813", v: new $Int64(0, 6317) }, { k: "f1d2a8c98ab078b8ad0597f70631cf6d2f24158143cc891817f965fa7f775828", v: new $Int64(0, 644) }, { k: "f1e07f582dabd11cc9793e8042cf5159ad41955a1127d2498b6ab01887207625", v: new $Int64(0, 6600) }, { k: "f1e49b021d9d29eb134969c74b617d4f27b4b253ce2cd0ee2c05ec627a1e4bd9", v: new $Int64(0, 3416) }, { k: "f1ea5b6d8e83a4febc6cdefe911fee9b713b9b1e07a5979efce9e8ebb9e317ae", v: new $Int64(0, 3098) }, { k: "f1efa2b1eeaeac45f268951b48f205ff98089732f946773695d98dd28acce317", v: new $Int64(0, 1114) }, { k: "f1f0f9a2816608c61ff496bc89f363f2191151bc466376ce0d784486566bd468", v: new $Int64(0, 3866) }, { k: "f1f6980aec1e92d57ff6a8f6ea53cdfb78b60fe003d6153f8f90fd193012086a", v: new $Int64(0, 4225) }, { k: "f1f9744dda66d2d250364c18e9a4fcd1ec84351ae15ebd9133894be2bc8c1d1c", v: new $Int64(0, 4810) }, { k: "f1faa944e8ea431a36b1cb499bfdb93184783e08d1507c92cd7f6612922c19bb", v: new $Int64(0, 6255) }, { k: "f1fdd83d6da6ebe598a6447b3ebd1c63b1fb39346f63c8dd5746fbf3e213e842", v: new $Int64(0, 3407) }, { k: "f200b1643f077fdf8d683b7276d2216d6fc05e45bf34b5a30484f02a08973549", v: new $Int64(0, 1030) }, { k: "f2032c8e971676d80a931f2ec503926897b6f80d55ce739de907a619b9496854", v: new $Int64(0, 3248) }, { k: "f20cd7905278222e802fc03120753cdf6a816e027d3b532118894d009cadea05", v: new $Int64(0, 9659) }, { k: "f2118321b005303531b6fc8f0edd19725e996768044e254d5e0fbaa700a41905", v: new $Int64(0, 876) }, { k: "f2148b8cbfd7a2f7d2fd2af82694c440b6e625184c7e45226fa12897472cadbb", v: new $Int64(0, 2367) }, { k: "f21d3541b48d904ba146fb04386128212aff284f88cc87324816f0811cb6936c", v: new $Int64(0, 670) }, { k: "f21da925103b93e46c612b0d71c7a17f2efd8a431bc62aa2e87e3c58abfab130", v: new $Int64(0, 9297) }, { k: "f21ff18a0378aa53a216d58fac898b8a6bc87d3a110276e6a95a6bca7db9d6fc", v: new $Int64(0, 1956) }, { k: "f2216dc452b87ac65b86ec71975cebc6d597d0d9003cc98e19ca1ab7089c6971", v: new $Int64(0, 2466) }, { k: "f22f0015c4dd4358428a580298f9ffd49d707107c482937260de023b603e0415", v: new $Int64(0, 9960) }, { k: "f2318ce1c515b306694eb8533f7fecced9520ce84a9584251799a88f65c47941", v: new $Int64(0, 3649) }, { k: "f234879543e9ccfdcc077ae41257272ff1a941bb1a9dc3e9fbaa3a7eceb16180", v: new $Int64(0, 2053) }, { k: "f23a5e8156881ccbc70dfa67cff0107a53f2930076cefe71471f3a617b105550", v: new $Int64(0, 1415) }, { k: "f23fe30e1de4cc95a784e1b45eeae57c35629a5c1d41d36732ed8dbe7f7d5827", v: new $Int64(0, 8141) }, { k: "f2470f64ca01b71ea8f4b49fc831688c10090d989cbbf918beed9585aaafb86a", v: new $Int64(0, 4680) }, { k: "f2473c4d9201ff1c8dc2ac015a19c5d375e580c9bc45b30d67e5db228c3fffc8", v: new $Int64(0, 7029) }, { k: "f25211e0472d3a9fd46f3c18deeacf1452d1f55d18942e5413a55c31cd8a78cb", v: new $Int64(0, 2041) }, { k: "f265ef97bbcf225652deb04a4d650e77250fb1ea4d6bd0e6c4b483921955c38b", v: new $Int64(0, 4029) }, { k: "f2661108ead6f5a5014f74cfaa4446b3f32c14d29e1e4f4ae26db442c0e19dcc", v: new $Int64(0, 7717) }, { k: "f2661712eabb80bb97086ddf6b0efc6e3eb27ee7ef32ee76925f80ca343b4298", v: new $Int64(0, 4357) }, { k: "f266cea36f90e6789356339df2843635ffd35b29555273c9f1d60bc5902a1992", v: new $Int64(0, 4574) }, { k: "f2737ba9abd6a0170da1b6f2ad40d9d664939b778b5cb70061632a1b7e5cf5b5", v: new $Int64(0, 480) }, { k: "f27c6453b2ff6f8ecb79f990fd5023fb4dee7d88190deca354f53239e47d6d87", v: new $Int64(0, 8526) }, { k: "f286e9c0778f77dd2baeb59ae1472ae31e69bd82475d59224a32b13253f9860a", v: new $Int64(0, 7203) }, { k: "f28dec1ec8393dd45ff27efe6d25845e03067ca8e971eeb09ad92899d781d160", v: new $Int64(0, 4694) }, { k: "f28ef21f4cd7e3478c15886b8b79a8452ceb5efa45688e587bcc984159d8e01b", v: new $Int64(0, 2099) }, { k: "f290c08957b83d568897f92ab0902ef30f125b5411d21e0c79360f5a03602397", v: new $Int64(0, 7616) }, { k: "f294aa8974b16df2b77ceb54c90d25c49fa822965d54e5bea99c25a83d3b175b", v: new $Int64(0, 2552) }, { k: "f2a6496d5c76a4945d12d518401a7f7e7c6ea39e34aac1d1cccbe8f50e3f694e", v: new $Int64(0, 2212) }, { k: "f2a6572edf32df7eaf0a5996ccba47dd9c8d374c3c2244a038ff2da75f6ea7cf", v: new $Int64(0, 7200) }, { k: "f2bae4658a41bfeb0670e2977e5b2869d4c8b10c498166041c70d12fd4d261ee", v: new $Int64(0, 9849) }, { k: "f2c1d28afeae91caae26db96a0fdc1a24f1a2bd2a76b14616d0ac433503e9066", v: new $Int64(0, 4569) }, { k: "f2c279eb0b0e42a0e32d9a039adcd0976231121f14f850159ea231ad709dc2f1", v: new $Int64(0, 2710) }, { k: "f2c387db5925005e7a1897f14813d905c76d484080d7101e78bf9ef7b7848450", v: new $Int64(0, 4001) }, { k: "f2c45dbec92de4127a704e95c513d91e6eb63c28439c5f783dfe856abc1c94a5", v: new $Int64(0, 8149) }, { k: "f2c8e2988246e7d265b706c58d96d4ded388e3b7b33ce8d3a3bcb69f35e6c771", v: new $Int64(0, 4713) }, { k: "f2ca954050e931426e8796e10b5520993add77d02af166f8565654c254c08832", v: new $Int64(0, 7370) }, { k: "f2cc45d980d0b4c1f838d86e069be94eff721421d4683e6584f259daec5d16f5", v: new $Int64(0, 279) }, { k: "f2de2434beab2ca7d66cf2cf8a6ccb724f046309a633ec14deeae6f331c63a66", v: new $Int64(0, 3870) }, { k: "f2f0ae7fd15f4a9c75beb0295783d5e260ed63dd982970bd9aeff701d866b38e", v: new $Int64(0, 4822) }, { k: "f2f24554393afb9fb7190bbc4d1e4eb9c85bc9214aa6f8d78ee9c9d3fc8d0de8", v: new $Int64(0, 1747) }, { k: "f2f45fb702d9bf4c94d2caeb71827829cc05052607329751c9537a2eef2eb20a", v: new $Int64(0, 5842) }, { k: "f30ecd095ed54568832eeb1ad0cc0abb5b741bae01eba57abd67124f9dc5d9dc", v: new $Int64(0, 5062) }, { k: "f31543b5af5ae8bf072b88e23a305a85ee63a9390499f3185aea35174b985925", v: new $Int64(0, 9127) }, { k: "f327cf95e4a24bd3b7eb696679ecafb890b6f6e27efdac77981b576931db69aa", v: new $Int64(0, 2684) }, { k: "f33b56259e9f13736d581e37eb4bf220e1eaaf3e7938cb7b142346a92fbb9e25", v: new $Int64(0, 2579) }, { k: "f340813ebae0b44e2bd3d4ba09995861084aede44eab5aee53068cbd3a01f937", v: new $Int64(0, 6904) }, { k: "f34b95ba7b7adafe5a12d0ab6cdc37f8592e1c5d7672ad86c0d7dff1d81fce7b", v: new $Int64(0, 2585) }, { k: "f34d634c5a8969b4e2f23a5806e31e3743456588c4d4a5d7a4e521dd526ff010", v: new $Int64(0, 8477) }, { k: "f34dc744d295ce626e66d283cf6bfb23557cd29ad8649033d6be416a3930ee76", v: new $Int64(0, 3541) }, { k: "f35b5ccba5a2cde573ac4fee5fea0b6adbfe48334e7beff713b54790a277bd00", v: new $Int64(0, 6403) }, { k: "f35cfa32b14abfd79db79aec127ff32db323f9d9dac08f3cc3cb1ca04d339d98", v: new $Int64(0, 964) }, { k: "f35d624b56043e9d9b6d97ef6b56f4ee44aa13a6b9bf0a101ca06681250c2d0c", v: new $Int64(0, 4362) }, { k: "f3670dd24b119e3b2dd7aff80aeae4eae1d4aef556ab84773391acaed767f06d", v: new $Int64(0, 1119) }, { k: "f3695bdf0e1e958c2526d6df546c274e463e98b8bc76c7aa05e9102da91b851e", v: new $Int64(0, 2577) }, { k: "f36e5afe0e903f7d1b2213cba0af41b11cc0f96da066cf42349258946481ca68", v: new $Int64(0, 2396) }, { k: "f3749f87cd78dfa75df380de811c199f35338b177d4ca4116118779d8bd6f177", v: new $Int64(0, 5531) }, { k: "f38baca7e594949a592b43eba4d1bcca776a0ceaf19daf72dac5e5357827c8b1", v: new $Int64(0, 8323) }, { k: "f38bb13f55451ba89506c2f22988d33726bb4c48ac3ae14a1075cd30a3d7bc01", v: new $Int64(0, 5332) }, { k: "f38e6f1971bed6965b6013455548ea265723596b08da1bd60117459d8278a556", v: new $Int64(0, 5328) }, { k: "f3917dee4eed02c700c415956e2dc8c2b7eab5fb8dc6ff72281d1ab0c1543cf6", v: new $Int64(0, 6577) }, { k: "f398ef94ab015677d4d3a180fe5cc89f656f3992f92190a219baea1377bfb4ca", v: new $Int64(0, 7476) }, { k: "f39fbf320d5f9664d15d507066a0166193ab2462b9d64bb2159a6e7dec54c9ac", v: new $Int64(0, 4969) }, { k: "f3a38118a7cd05b58e7a115cedc506a4c685cc1f174622182e80bfaf759bdd89", v: new $Int64(0, 4889) }, { k: "f3b006a770bfcd837e11de454510e30281f327f8c0175be8fe0df5573bd9c2e0", v: new $Int64(0, 4391) }, { k: "f3b99749a5090b9753d8fd6d74450d246f2c6c1ea04cdeb9bceb7c9c8d5c1d48", v: new $Int64(0, 4183) }, { k: "f3bd79811f8c256194c245ad167a074d6ff19735323abe017a773f6952e0ffd0", v: new $Int64(0, 2366) }, { k: "f3bea0ed71caafdb5c58790ed0c62cc5b2fab7e33bfd0c57cdb2320f1ba52a09", v: new $Int64(0, 1022) }, { k: "f3c4028eeda1bd4a36664f414468fd589778533b7d20a3f200a89cf9998b7d30", v: new $Int64(0, 618) }, { k: "f3cc7ed6585b1469c0ac0cfb483b56dcc5b38ad7e5728f61264d15b3364c1d77", v: new $Int64(0, 8041) }, { k: "f3cd116bffb65158f22e74c57374cd93535991fe2777389d7cc5dc4ae87db000", v: new $Int64(0, 9803) }, { k: "f3d5a4a35d7199512a5b8f8179eaf265cdd5c678af0d642390f6d27bd4e27dec", v: new $Int64(0, 5265) }, { k: "f3db6491771357684a3fc2dd9b58e567d44b7a0c77ea42caefcf9e77ef28a5d6", v: new $Int64(0, 1508) }, { k: "f3e9a507702f8856da932b91a4364d9ab23bffb3094d57dba64e5b8f726ab355", v: new $Int64(0, 3790) }, { k: "f3ec4480c45af2da10cbbbf3e5bbf12bc138c590537725870438223ed30b0148", v: new $Int64(0, 938) }, { k: "f3f263974220aae0e5ef6866318f1a4462ae53c0ed3b368945c8ad13d94ef37d", v: new $Int64(0, 7830) }, { k: "f400219d58f0c08564ab41812807012c7524d9c6b2aa1c4ea8a45fa247428382", v: new $Int64(0, 5911) }, { k: "f4022c6240c0f06686282237db714b2e62d2f9c98aa4524f6b4770e481847928", v: new $Int64(0, 8216) }, { k: "f40ced4f78bae099bdc5a2cb4d3bb768af4446fe519685a46215cbefcef295b3", v: new $Int64(0, 9238) }, { k: "f40e8e4bdcf86289bddb0de67d3d4458fd623acda486bfe648a1bb4d53808cdf", v: new $Int64(0, 7747) }, { k: "f40f121308def578d7aaa529c28666be7820d016fab1e814b69f61d500b730a7", v: new $Int64(0, 1034) }, { k: "f4102d174fb212edb113228dfec4de7adca077d779532549f6593616ff527be2", v: new $Int64(0, 8212) }, { k: "f411dd08c58a4ea3d97dc6ca5ee4724ba8956eab05d42a800a513a985c2dcb58", v: new $Int64(0, 7712) }, { k: "f4135ec403c385d02c34dee7a5df7aa0ef8dc2a3c521591c32e28ab0ec34b99a", v: new $Int64(0, 8945) }, { k: "f418fb8956a32f594fe6e175450a0699f1c81928028e2424d2469cf5d04addcb", v: new $Int64(0, 2428) }, { k: "f41ef0058f7c7e7fe8bf10489ad902517429f050a34b252a7284dc77390a48f7", v: new $Int64(0, 3366) }, { k: "f4241060c300c7892ccc49d9ebf62f0a60a631f61619b9d9893cb784a7008d06", v: new $Int64(0, 526) }, { k: "f428b2cbc025d9b200933638396f91e21d5a57c4007cf6b9b2b8ff7311d5996e", v: new $Int64(0, 440) }, { k: "f42c50c19aa16a77b553397d5c30a002e71f9b26dd261dbefa00dc6f7c5bdfe7", v: new $Int64(0, 744) }, { k: "f43a12175cc8154ba64ecb7dfa70a8b614295fd5ad664e4e3500db631dc65407", v: new $Int64(0, 5126) }, { k: "f43cce5ca10fa9410f2123a1c6b9a97e60e650f0d51bbea5366f39605ceabf0e", v: new $Int64(0, 9566) }, { k: "f43ea289fae51721d2edb16baf10cdfd979de819413bd1ed6f60434bf93079e8", v: new $Int64(0, 3695) }, { k: "f447538b74c1720166723bb5b8ea4bc49b3e4d2d8d56db0b70ba69fa14f6990e", v: new $Int64(0, 3317) }, { k: "f44a2d3e3da072063172fcd5d9b055fc09bfe2a3e4d7c8be9fb2a424d362e8e6", v: new $Int64(0, 2750) }, { k: "f44a4de2943be1d9bbd480bd15f56342cd1219e4aa7254183bfd837a91ed4fe9", v: new $Int64(0, 8972) }, { k: "f44e5e47d8665a0da199b7db58e13e2e9de12eed71b67c6720a05a6617b1435e", v: new $Int64(0, 2550) }, { k: "f44f0c10296e5dcf06fb64aafa3bdb39aef3d223f896622865dd391a08849c99", v: new $Int64(0, 7440) }, { k: "f45387e9dbd6b3fb3fe4169846e4612995c83b9cb475dd58ba6670e6cd993bda", v: new $Int64(0, 3484) }, { k: "f4585ec1d731ed05635f39987a11c8f66e93c87d133b8041131eb33c6f014ad4", v: new $Int64(0, 4483) }, { k: "f4597159da0884077f538042998c8709391fc13e2202eb193c01777efed4e49b", v: new $Int64(0, 9416) }, { k: "f459b86d2d5fb77db8c455e0e4d817b8f4d2e2df5b31cc583d84cc53b246f8ed", v: new $Int64(0, 3029) }, { k: "f461fb933ab1d86a08daa5f36809ad4b7a86950386c08f96d36f7d62c490a663", v: new $Int64(0, 7112) }, { k: "f464ebd961214e51eeae85be73add1489138b79fc10cf86c997ff706f98ff2fe", v: new $Int64(0, 6694) }, { k: "f471513664fc3c91fe04e0d78fe7429f4bf9d29ca224d7143daaaba707e6b56e", v: new $Int64(0, 4015) }, { k: "f47248a7c5968c58d19f7a73969cd2602dee9dcc9c46d2aa31c3c52329f0877b", v: new $Int64(0, 1876) }, { k: "f47a83f56dc6868ae6e5eab1cb53b68246ed3d085567f35e9f78b277ebc75423", v: new $Int64(0, 6302) }, { k: "f47e49f9d07ad2c1606b4d94067c41f9777d4ffda709b71da1d88628fce34d85", v: new $Int64(0, 6) }, { k: "f484046649a02babcb1df00c6dfd1ba1604a51bebc1f0a5855fff6f4709be7b3", v: new $Int64(0, 7493) }, { k: "f49ae74f1365310c74ddf99adfb24e08867c7c3253f7e3fbd30bf3369c674c28", v: new $Int64(0, 5624) }, { k: "f4a2e6848b87b7ea0fec5a61e82893654bcfba66ff9bf64e859b745af404648b", v: new $Int64(0, 4640) }, { k: "f4a6ac7b0221d24668f144a857d82aafb55639de16fa1646961e662060698515", v: new $Int64(0, 7870) }, { k: "f4a798c6593ca5baa3974e950408bd016301d80b7ae786431ff211dc5e0b1943", v: new $Int64(0, 2090) }, { k: "f4acd58f8dc93cc491cfb09bd84c758010c43a2c53d44d3f9994edfabeb49aae", v: new $Int64(0, 2251) }, { k: "f4b10199dbec4b93f6427d17e6df419cd318dd4f40cc7b8799876a1fb1b14087", v: new $Int64(0, 6377) }, { k: "f4b169ade32d7cc01f82043b1037a98bbb7b322ee73202ab73eb5700615f4c91", v: new $Int64(0, 1085) }, { k: "f4b4f7455ba1c482f3ebd64bb095fdec8c23822f4f3c1f5a5c63bb2447a73999", v: new $Int64(0, 1525) }, { k: "f4b98d9992d5f092dc6757e49795bb055eb444dfec25f487c6c2bf44922373e5", v: new $Int64(0, 2434) }, { k: "f4bb49ae9188ea41a9a66df84ec03042bca49dca1c7d9203822eaca43394b395", v: new $Int64(0, 5219) }, { k: "f4bd9fb4b7cc5d904cc7b2615e92f0e4ea171642ff20ac14199a9bf0097fae20", v: new $Int64(0, 7392) }, { k: "f4c23cfd21f196c6c4aebd4b19d1c6c68f7222f1e31c354a8301cbff60d9092a", v: new $Int64(0, 3563) }, { k: "f4db1f010c4708f34568e2ce2d5a7b23a140d16db338a464c27b8b1f2b28d391", v: new $Int64(0, 7048) }, { k: "f4def67139a5ff9e40e0d48b518835f7104d6332813d74789c61394bf4b04543", v: new $Int64(0, 5068) }, { k: "f4e1f4244b3346e0cd27d4053c52683c975245970fc910f355e2b49f6e375af4", v: new $Int64(0, 8846) }, { k: "f4f482ebf10fec7dcf4661134ec6bdf1bffb95b23510b42756043636cc314c45", v: new $Int64(0, 5463) }, { k: "f4f4e23ea18f1211a8fd28e36fe4a172ad38e5f3e151160e2cd6152e80b287a6", v: new $Int64(0, 5923) }, { k: "f4f56865ea1a96f1d08eff8cca6d41a1a757c29e6bf9b58abf0e579c486ba2c8", v: new $Int64(0, 3525) }, { k: "f4f88de6df409e0cc04949767a19db4466e640210fdabb48f7282a9c81f71b1f", v: new $Int64(0, 9779) }, { k: "f4fa2f42d6d65fd1190ba542c10da08654662be8abcd4a7e40ab2562a1179287", v: new $Int64(0, 7360) }, { k: "f4fd19ea9c8447b0ae871b49fff97d737d3d66657dbbb31803c4a9705b45422c", v: new $Int64(0, 6226) }, { k: "f4fd59da87e0edf0cdde3bfadb42fd052a33edd12e4a41e4d3e8735b9c04e983", v: new $Int64(0, 6384) }, { k: "f4ff6e3aac6e402f41f80d90433a22d6643c2c5724d41d012bef1ebd2a2c237b", v: new $Int64(0, 4124) }, { k: "f5053b01e8364269f7a5a4d78e70f5e370cf722ffbb706264acabd232e64347d", v: new $Int64(0, 5957) }, { k: "f5093955c1950d73a146d136885aee1c0d9c1c0b1953d194c049f636e1f2be6e", v: new $Int64(0, 7632) }, { k: "f510e7ebfe6d328cd8217dea9e429e53b26be50ada250f736d301f6593c493ab", v: new $Int64(0, 4936) }, { k: "f515040eae43aabbe25d662a6c10b1d210e37d935e5be0d02c4019a13ca8b541", v: new $Int64(0, 3672) }, { k: "f517acfc88dddaf72ca4a60b9152fb590f568d05e4f3f366d2a082ed365ca7cf", v: new $Int64(0, 7672) }, { k: "f519457e525b85a2b8ccb51454e712da80458be434b523d5b9f590ac488feea9", v: new $Int64(0, 5061) }, { k: "f51ac1cac633703dfe1cd1b280e784bfd7333cfd34c432944abaea2c6cd77e72", v: new $Int64(0, 8115) }, { k: "f51c94fb8ff0f6a82f6c28c3d378efdcd6cac4fad075708633564904afa919d7", v: new $Int64(0, 8479) }, { k: "f51e96f6597b3990b0a29c1a772ae417264874f86f2e55dbfef9fc17a6a74280", v: new $Int64(0, 6665) }, { k: "f520ef38548fa5b89a928498af065439a6b1b29c78dd7c376cf8aee40c8002ba", v: new $Int64(0, 8825) }, { k: "f521cc90917810b495a28ec845499bee719e331453ded7be435df1a67997c71e", v: new $Int64(0, 5014) }, { k: "f529424e52989c1dc9078fb985d5005a8ffd64914713bcfaa4998f6ab446c99a", v: new $Int64(0, 1549) }, { k: "f529b1c637278f3249c2cb8a48366993f94dfa4427b026ff3e8e2580f6d7fa0b", v: new $Int64(0, 8996) }, { k: "f534688b328abc4e967ae9e73a23f7d6826200f4068a82224416b8176aa5365c", v: new $Int64(0, 3614) }, { k: "f538f5520c49a43250e874919a6089786d8c5e59a648e415d48038efef1345cc", v: new $Int64(0, 8295) }, { k: "f546d6f09819813c6b953b8934a293138f596ebe008b049498c969f49eaf0944", v: new $Int64(0, 8294) }, { k: "f54bde517b16f17be6f0e6b6f7c3d6eeb5abc1841e9eaa06ff4bcd964733c991", v: new $Int64(0, 1074) }, { k: "f54dcb229c1bc6effedca5cb01442069da3e8c5ba3cf73046858aededa5e9587", v: new $Int64(0, 9100) }, { k: "f5508ef53e918c9e2a74b8226b8c4f93c6f1e05d46aee258f7bd35dd9c74378a", v: new $Int64(0, 6092) }, { k: "f558768edfd7101dae57e1393fec851a5e9fb0d6984eaa01186955429acfe3b8", v: new $Int64(0, 8130) }, { k: "f5603d077a8cc85a5f7c059e6b74ac4d44ac1aaa29089e182424eab23b53f052", v: new $Int64(0, 2318) }, { k: "f563f8fdab25c23698b7b71e6b62da04a7f67c7261836e1f2f89cace853c56af", v: new $Int64(0, 1414) }, { k: "f579f5c5cbae03353f06d94c267623cd073cdb9d4249cfada110d02a28e0b4ba", v: new $Int64(0, 4045) }, { k: "f57a889f15bf87145922babc16f725793881c3e1a7d72b004e275f7a0607bc50", v: new $Int64(0, 8044) }, { k: "f57ccaafeb7499460c2dedf866882f064f7ea9e9c434eb73dc54bd3ada1087eb", v: new $Int64(0, 2136) }, { k: "f588383b726fdba84bb00354e1a30522717c3fcd6c4eb420e2d6785c972464da", v: new $Int64(0, 8021) }, { k: "f58a870f343e460595d41f5757f9bf8917c8f5dbbc8d29129f0a827952d28894", v: new $Int64(0, 9014) }, { k: "f58b3ca123b0ff6c365db5688e4c8863d606447e0585e32498681aee316772b0", v: new $Int64(0, 1152) }, { k: "f59114d086695b1cd5341254b3fe750dffe3ddf9448a7bb2b2421303c4657288", v: new $Int64(0, 9149) }, { k: "f5a105b26398e8dbf9880e7917a7816f6616d425f75cc9d98ffeb832b828da2b", v: new $Int64(0, 4858) }, { k: "f5a5df2368e6692ab0a17179807cbadd6256c008ace54f91bbd5eb3ec7526ca6", v: new $Int64(0, 7912) }, { k: "f5a8bff73895da52d13d1692d34030cae9c7211b10394902795ddb3c8188fd7e", v: new $Int64(0, 8169) }, { k: "f5adaf5fda6974c86123f6856429a615123fbb1a0b25208c1a56515db56555e6", v: new $Int64(0, 2121) }, { k: "f5b9ae15acbe671d53c99a0291fa584934cc25e10fef7bb024651e15b49a36b8", v: new $Int64(0, 2677) }, { k: "f5ba8738249d68f67d392d472a2a3eb59e0a19430c4c826c51ec6860d3fb54b5", v: new $Int64(0, 2392) }, { k: "f5c28942827d41a8981b0fc552fac49bdd57377f31889a64dc2371440d09e1fc", v: new $Int64(0, 4819) }, { k: "f5c69c90bade43d3624911dbe94542cc48aa2e828dc039189babc76ee834638c", v: new $Int64(0, 3889) }, { k: "f5c6ad7a9e8c070bdffd57344e95e8928ca1c51f3dbb9d7414caff4ddbed9cd6", v: new $Int64(0, 7937) }, { k: "f5cc4b6211bd696ea7d4339650df49b60f042023325acb1102c0e0e32fa5a9b1", v: new $Int64(0, 8011) }, { k: "f5cf882269d0e0702ae3e0b22e5920ba4e8960bf9c39f014234335a83c0586e1", v: new $Int64(0, 3371) }, { k: "f5da29e0fc7b54862d22f022e5a0926438d40807455df280be17a346d1084d03", v: new $Int64(0, 4292) }, { k: "f5dd6be0f558a2afd1bc6f403d4cf1d6f2312eb61cd9496a456c1e5e5390ac6e", v: new $Int64(0, 6428) }, { k: "f5e3edce43e470f337c04e5bf461f293ba2d4dc4519a7955e460fbdce1f1004a", v: new $Int64(0, 865) }, { k: "f5e904ebd741ba9cc397644b0e82262ab7898d0dee8434198069bb02ba37e34b", v: new $Int64(0, 4999) }, { k: "f5ee0706a2cc3818caa7df1a5709b3e6a67e76e45737eeb692de71c6501b3289", v: new $Int64(0, 4094) }, { k: "f5f9e5ad30c83aec16feba2a9f0bf2e83f592b8f440845a3f41397289ea801a1", v: new $Int64(0, 7834) }, { k: "f60d0b026378b4b3cc82a327e83828eacb721c3889552c1181d56576ab8948a9", v: new $Int64(0, 2836) }, { k: "f61089f3c165b16601ecfab727a35c2145bee7a67b8cd595011f0375e515a9c5", v: new $Int64(0, 6688) }, { k: "f622fdf963b74b940698642e4e599ff375849e3bbfd5ce1d9b0cdb1ab2073d17", v: new $Int64(0, 6101) }, { k: "f62304eead6e4d51cd479ce0674562a68686e2c7a43fead998b7d80b8e5f15cb", v: new $Int64(0, 1604) }, { k: "f63349bfc23b9ce9c0e9722603e0feca75b960322ff7f20dcedcc3f99ee28cae", v: new $Int64(0, 6005) }, { k: "f6352be01059800a645ca857b7af7d7c965bc040bd7c4ea72820892ef07f2aab", v: new $Int64(0, 3083) }, { k: "f635915806deb8121a5f7efbf00b428f249f6c069d68f98f2f00a0cf2d90b581", v: new $Int64(0, 3739) }, { k: "f6359f22bdce3fef014eac08da9bee0699cc7d8eeb19e2b44ad859e3b4d64fbe", v: new $Int64(0, 6051) }, { k: "f63af92200b82003012252f44fc7595ae63050c72bf5084dc2b5038e961991dc", v: new $Int64(0, 1647) }, { k: "f63c3054187d4ce51dfa530e44ed7b9dd095d9a82aa7ae0da85f74584be3340d", v: new $Int64(0, 9041) }, { k: "f63f126bf1d2821150dcb9b48477bac3cd3c83aa4b7132a51bc053b61b89ea53", v: new $Int64(0, 9363) }, { k: "f6452bd978170773d5aa2d02ba0d641b4ed72204622eef0f70b34ccbec6e08c8", v: new $Int64(0, 3151) }, { k: "f6492a756cb0f5edf17a7b664f39c864832eb109503dace9bfd697cfd26a6b02", v: new $Int64(0, 2231) }, { k: "f649eca95f5e426491e8987c6caded3318225665a5bbab50cfe819498fd365d4", v: new $Int64(0, 2993) }, { k: "f64cf083fb3d77c475ba4f693343091721269de2bda04aa8d233028d135c2801", v: new $Int64(0, 650) }, { k: "f65eb2e1501e1d95ff838357b47525b0a779a7016d8e7a9c494a0ea4ee343d54", v: new $Int64(0, 6349) }, { k: "f6662af7e9a7d9a799794af5ac794d6c69031874fb1b9efed8fe48deb00131e8", v: new $Int64(0, 8097) }, { k: "f6680123e30c45ec868d7143767f28553008ec69868994fb2d085393762a7c4e", v: new $Int64(0, 4056) }, { k: "f678bdc66209b7808ac884bb7e459b63c1d9fbfcb8040ae30782af237aae430a", v: new $Int64(0, 9125) }, { k: "f679a004db939046f42dd6026524511be665ecab61d9d4f9509d832752a0bd0e", v: new $Int64(0, 1653) }, { k: "f68101f68cc364575ec4124b155478a0a731894ccdb0f734fd9b6f3f9e8c4a20", v: new $Int64(0, 7386) }, { k: "f6960256f4cd0a0201c11265eb69b3f12246405e76725613a34de4defa230806", v: new $Int64(0, 9469) }, { k: "f69ea7181676776ee9b1cfc2308ccb9c6a0efe5588d321cffc22a7c1f0f075fd", v: new $Int64(0, 9739) }, { k: "f6a27b96e3fc6ce59a4af161bccafddfec3581f0a6226ce018aa7b146e4e2591", v: new $Int64(0, 4944) }, { k: "f6a44feb7fc6219354fef9ab869831cd3424e3459c1dd8d7a64a057e85cb8f36", v: new $Int64(0, 4975) }, { k: "f6a6a7aa224e410df85f998c0ae2ff9e327b194749cc2c459b8e32f5d69dee65", v: new $Int64(0, 9119) }, { k: "f6bd77f3a06cabd570013430a35dfc9621f4adde692189953f226cf925f62bf1", v: new $Int64(0, 9092) }, { k: "f6bee6d522a4e4d86f5aaec7d670e01e3741d04be1ae73252b47d9756d3c54ed", v: new $Int64(0, 1394) }, { k: "f6bfb1701b728129884bbe8cbdfc2cd21319e9ef694311e72d6f541e0c28e1b7", v: new $Int64(0, 6015) }, { k: "f6c183287a53ad79bad2e0094985d8697e61b73edc8575cca6495b8cb9664464", v: new $Int64(0, 756) }, { k: "f6c437490c96dd7794d2eab8aec88f930992df16a5ceeb355add159e127bd4e2", v: new $Int64(0, 7704) }, { k: "f6c63058dd56a99568aca8db30faeff82a132a250c30fb897ff61ad96f4ca1f6", v: new $Int64(0, 5767) }, { k: "f6c6748db3849a49e33f23279e416d594db04fb69e20263cffbc70c94e8ae5bc", v: new $Int64(0, 320) }, { k: "f6d1a72efba05e66cfa7ba9e09ef8439b7d6c27b968487ec1d933c722d18c8f4", v: new $Int64(0, 7213) }, { k: "f6ea1b3df7c48dcfbc8cba501097c62ea27080f3642e66ced0934e58173fb106", v: new $Int64(0, 4831) }, { k: "f6f3976bcb8f9bab46d7291531d55e79c1dbda4613d4e8c79370985485a38e93", v: new $Int64(0, 5797) }, { k: "f6fe3ae977f7c7cb0764c48d22e2cd0e123c1c264641bdb2e0e7a189ca9dbd4e", v: new $Int64(0, 547) }, { k: "f715005646327dbf9d8e9bd0ec3b0cd36045a4c079d9117a44fe0564f51ad856", v: new $Int64(0, 7195) }, { k: "f725685358b29e8c6f5a8b33fb7a342d1d115303469dc56a2bc4a876a5413f3f", v: new $Int64(0, 3343) }, { k: "f7277e0207d3c9cd206ef2ac971b649429127f199b4eab900f0cb4d6313ee276", v: new $Int64(0, 6435) }, { k: "f733d67ebef9e3661871cd6cec27e7065f5f8f8c494c07bdde027045b0abc702", v: new $Int64(0, 1657) }, { k: "f73568d121ed2f20d2c3f8c39a97a9520ced002a024e32120db0ab4d22e69590", v: new $Int64(0, 8778) }, { k: "f739a387ab250c71ca678b9a2d60aa7ae320ca367af4f2a64dd7c67150957b2a", v: new $Int64(0, 1312) }, { k: "f742e933d60c81acd2153c99b6fd66a87d0c29c9828c2226f0de925cf9e53c62", v: new $Int64(0, 2238) }, { k: "f745fdb311e1ca1b83893469de098bba02b1393ce3f56237ee0c06086898619d", v: new $Int64(0, 5553) }, { k: "f752c28f47f98b7cc5f73dffc05f362a038f4857cbdf00b75544207e5c8b3801", v: new $Int64(0, 7337) }, { k: "f75aa0d0c33e2061870b8445e2a446161581717472d42b242733ac75ef5f67ce", v: new $Int64(0, 1620) }, { k: "f75aeb10cc267dd1c12d06ef8ca07afa7047d23e6982553f466de43d7497241a", v: new $Int64(0, 9622) }, { k: "f76129ad92e9dc69626ba3863d628123ac3d3c59e7ad0a2c40fe83b0de4bb150", v: new $Int64(0, 8718) }, { k: "f7655e6ab7d49941df5f39deb01df60e504cd8df6aafd526e7862e24edb1bfb6", v: new $Int64(0, 5455) }, { k: "f769673b4318a3053ca9b67667823248882aaf4b9cdcf9eaf8509802f7284c58", v: new $Int64(0, 3714) }, { k: "f77d274ecc0966555c2afe5d3fb0320b35cc7e7e74fb93b8ae28150f87a93c09", v: new $Int64(0, 3217) }, { k: "f78ba6a2d2cf65617abea866ce92d8ac84011d4e1a5a31cb3b5e8cf2f0ba4718", v: new $Int64(0, 5133) }, { k: "f7b6e3d3101397920f998384a8ff0a86a0e428e4446b7ec5f81070946978ac04", v: new $Int64(0, 6994) }, { k: "f7b8c35f978f8a133348a147adaefffc5c54d1ee03e176eb71b332b82e853a6d", v: new $Int64(0, 406) }, { k: "f7bf07071aaa8bc0f938768eb1fc35f9ab90ba65c0de5bf5ad62a45e96ed9d42", v: new $Int64(0, 7432) }, { k: "f7c39a8dac6747f0dbbf0f814c5ebf6c3de284d5975846b120e61ae0dcd395ca", v: new $Int64(0, 368) }, { k: "f7c7fd65118caa06fa763fcc12f699f7847162e88adf1e385ce90898ae86f3bd", v: new $Int64(0, 7895) }, { k: "f7c8686d804b8728fc7db10272355ed2de26ad13cf358c50a5e554006012af8a", v: new $Int64(0, 6035) }, { k: "f7cb5bf80be55f342117456eeee66463f0545f651c43a393576a6b6d53572dc1", v: new $Int64(0, 2983) }, { k: "f7cd87cfdcf055eb2c7f5c21837f899442bd54664429c32266e8c388b4e55ba3", v: new $Int64(0, 9443) }, { k: "f7cda114d8ebe20443eb4fe33954e19acdf656861c15b85ecf021fc8c18c8404", v: new $Int64(0, 384) }, { k: "f7d6baa2c80a3dd02366c65cd5db49abbc5d7599d88f4d22dcef318d5131d0fa", v: new $Int64(0, 5072) }, { k: "f7dcc45a8c9c518461a0e955999b17955cc13b4938b8c990c41c973b65e1efe9", v: new $Int64(0, 6800) }, { k: "f7f1ee652eae9f7d9a54c0c3fd86e3c66e2573ab8e14dae7894b9380d27c4db1", v: new $Int64(0, 1222) }, { k: "f7f4416409744955549ef10be0cdcdf59f645c5150abb2fc19a49e9e392c64aa", v: new $Int64(0, 9660) }, { k: "f80d2d4babca94f1c72e2b64ec53b35e3e8ab520d43549b4e2f8e7d2cf933e85", v: new $Int64(0, 7442) }, { k: "f80d624c59d45582c80dc845f11e4d18b7cbcc3dae1f911f4a6c708b26634dc0", v: new $Int64(0, 8523) }, { k: "f8122a79bb5159ab5640a1dabb537fed427b6b53dfcf4f2c902d6e0caa04b166", v: new $Int64(0, 4304) }, { k: "f8201db30733b550d96404b00ca27d034faa7ff9bcc1b7382962c0450560bd45", v: new $Int64(0, 7230) }, { k: "f82295dfcbb34f350254d61faafa4e1cf2230a520f5182aabdba38717c4b20a5", v: new $Int64(0, 174) }, { k: "f82fa53af00205a6f6c4e62edd66f02b24de07d7f8c207ca047f33fc6785dd25", v: new $Int64(0, 4323) }, { k: "f8449362a641c56ae48efd47019c731205b50fdc0c919b623c8badbca391b962", v: new $Int64(0, 9891) }, { k: "f8475ef07df24019fbfc32336fb97170f46f3990cc69a286849d2e02f9c314b3", v: new $Int64(0, 9058) }, { k: "f864b6f7c22fc74b7405167ce9937d58c833ead30a24cbdb0a2ec16b3509de3f", v: new $Int64(0, 6927) }, { k: "f870ad91bd2372ca561da1bfd84d20ad34a5cfdd254a4260e3330a7111e16e22", v: new $Int64(0, 6840) }, { k: "f87c01ecb02ba31d29e59712c766b893f1d9f86d0d9927ab553fc3aa802d3a1a", v: new $Int64(0, 2809) }, { k: "f882e691e4f41a21eaba7c3ec17c8faf6604f4aeed81996e9b457dbea7e0d258", v: new $Int64(0, 7760) }, { k: "f8859dacd9b712da5a506d55dc4058f28aff95e6c0a9ebfb58b270b33cfab37a", v: new $Int64(0, 4909) }, { k: "f88d64b4c8b145e3ca02440f311b3d9fed1a7da90c28e382594f6dd480ecec71", v: new $Int64(0, 1584) }, { k: "f8b0eb14760926cd3823b23d2448ff4994a7501e9206ac740d04926f79b0ce1f", v: new $Int64(0, 8428) }, { k: "f8b5e62b9091ce4622938d64a3e4f19f3b5aee5a5e2a57a7c6058583a077a8ef", v: new $Int64(0, 3655) }, { k: "f8b746f03d74fce98464407871a571374cb710839975c579c5224639be8f67d2", v: new $Int64(0, 9462) }, { k: "f8bda91ed7c1db8ee146a94fa159ec766f538f6f604309c063d0cdf3441b9da9", v: new $Int64(0, 8960) }, { k: "f8bfdd155605adc976cc532fe68db4e3ac62fa1c4525b4b19c4ddfc27dc9a0bc", v: new $Int64(0, 4688) }, { k: "f8c245a84771504ff9b169275161b57949572a62385d82e2ecb3af50f40c30de", v: new $Int64(0, 7928) }, { k: "f8c7407689b285b8d16b28bb78e2d210a85a2cba2e6d0012ef6ca8e2d098595e", v: new $Int64(0, 6754) }, { k: "f8c9d24d1d43517c8c0a247af4e7c36f38c75a9f1983378e0f892c379be038c4", v: new $Int64(0, 7025) }, { k: "f8cdf5242d1f9267916fa0c2f7f6118476394f6c789a9387049257b0590228bc", v: new $Int64(0, 9826) }, { k: "f8d0364feee4f949849b88d46f40624cee5842c9881533af98fe55d67ec07127", v: new $Int64(0, 3587) }, { k: "f8d0c1ca00c7dc252f1f851ecc90c63887ba4ee369a5c5a2b16fa34c07ee00a9", v: new $Int64(0, 7773) }, { k: "f8e17994d7f16c7de8bd14522ead950f909815b0387f8a423149abb9bc66a3e7", v: new $Int64(0, 206) }, { k: "f8e7d6e06a493e678105507f0936c3b234f2294c1b0f3d666c664f818a9fbaf7", v: new $Int64(0, 8393) }, { k: "f8efcb0d0ee32c3cbb12a47368f53f98b06c2ba4d04c35f8f98f4b2d82c6bae9", v: new $Int64(0, 3157) }, { k: "f8f7eced23750cad0a42d824886930ef4f37202f59c29b43102f31e0d12ea0de", v: new $Int64(0, 885) }, { k: "f90036a2f53b8ea880721f7fc72a905f92a8223a1188222f14f4a3bb5d050db2", v: new $Int64(0, 1792) }, { k: "f9090d34197f7a66f0853bba6aeedc1c3d2ff526fb92e1922d021e07affdae19", v: new $Int64(0, 9560) }, { k: "f91603aadc43860a5c226cf33060cece00a227679ead0f8b97520c6381a6b96e", v: new $Int64(0, 1901) }, { k: "f91707ef49525d6a02ab4c05053512f0b8dc68ca5e70be5929d305f099bfb074", v: new $Int64(0, 9527) }, { k: "f9178301e5ccf23636bcc8b13527a9a1ac77df8efb161496465248b56c3333f7", v: new $Int64(0, 5503) }, { k: "f91a4965ac50ffbb62fe4ba09c53b2c61af63422278086639dd4cf34669badcf", v: new $Int64(0, 5638) }, { k: "f9207fb28d0d7a43ea311b58efc410a597606784a05f72f4826a659a4b8bd9d7", v: new $Int64(0, 3852) }, { k: "f925f88d6e7db1ca1b6634ecb83ddc015326cda4931b78750d19b84a66b4f143", v: new $Int64(0, 5509) }, { k: "f9312e2be6f806caebfaf5bb6fbbc22727b49341f2598819e95f0480dd974fb1", v: new $Int64(0, 461) }, { k: "f93e0fa170ded886d37694557904eac7aa9918b363fb1579c22252199185f158", v: new $Int64(0, 3723) }, { k: "f93fbe3a1d82f3e3f0cd68518cc3d6a9f449bb4ae9609fb11195178b68ade225", v: new $Int64(0, 2257) }, { k: "f9460ee6f65cbd0c6e88e4c7d87c5eff28d1c5bb7e2ca239f367d55dec8744ba", v: new $Int64(0, 486) }, { k: "f9482e9995dbad11850f6946039dba455ac7c1edf39fd61f2184540a44aa3605", v: new $Int64(0, 3638) }, { k: "f950f4686aa89948185db2450bc5bfc6675e17006db6fedac2120e7c98f3461e", v: new $Int64(0, 9478) }, { k: "f958bf0cfb770e35ebf4280955257d6b13c0a71408f540909743807b00f0371f", v: new $Int64(0, 5532) }, { k: "f95bf57b6bb6c6dd2713f06a589eea4208e4f6cb36b442bbae317727cc77e07a", v: new $Int64(0, 8849) }, { k: "f96073493059750d77b93935d35a5a8897b5598c0d80bc91640083ae7419c728", v: new $Int64(0, 7206) }, { k: "f963b03978cb18d8d9412d5141652ea6ae000f03c528036c6b86b5b12c0d7707", v: new $Int64(0, 6053) }, { k: "f96a19a22a413115f1991a10f17bcb2d52487a6bc9588afc4671181113c8b3f6", v: new $Int64(0, 3942) }, { k: "f96cf38a829ab66875e0ad759ebe64622287fe0576ab483513b6027767fe8a2f", v: new $Int64(0, 2599) }, { k: "f9909640ea0b4de5cfa72f042eaa97ce4ca371ddea686821181ef5cf39830a6c", v: new $Int64(0, 3005) }, { k: "f99f406ffef3556da2bc3e7821db923efabf18c9a1f33b27a5dedf34816f1e1d", v: new $Int64(0, 2492) }, { k: "f9a3e67c56cb0ba6919b9483a38efc3c2f92719ccefc78d4bf9b4b38d902f3fa", v: new $Int64(0, 8894) }, { k: "f9a5423762d85155245068c06c74bcc53a0ad7d09ed5a2e976f76f18a629b26e", v: new $Int64(0, 6304) }, { k: "f9a8545d0afdb6f8cf636028566b004bd7140b964def3fb8d513cbe0a1f23054", v: new $Int64(0, 2344) }, { k: "f9ab36b4dcb6f18d7e487dbd562947d5378087c885fb84dfed215871d2ebbafb", v: new $Int64(0, 2256) }, { k: "f9acb315ea4c2c52a2f132e136e3059172d7fac31778a5762361d064bc69a571", v: new $Int64(0, 7669) }, { k: "f9aeec4e1dd44854af656a9797d9bab2b4fc370b731e9f71b0ef1f6d5013db8c", v: new $Int64(0, 5981) }, { k: "f9b29682d9337ff53cccd24d52dceedcdc0e65d8649cf5a89df5556d43cdea62", v: new $Int64(0, 4872) }, { k: "f9bf99a202eaf26d47e675bbf9fb69625e3efe05d605c328bbc6953afdba91f6", v: new $Int64(0, 623) }, { k: "f9c6817d7e8b0c5e529dc346c278c041aaaa6a4a2cdb6221354c121c42277c34", v: new $Int64(0, 6410) }, { k: "f9ca3a44ece4328c7d11e3a864b11375e1ff086e7153dff2dc0779c937fea3d4", v: new $Int64(0, 989) }, { k: "f9cadaa50ba2fac8d07dce5923de5bc035b1b65cc1db8c481713564fea4d6ebb", v: new $Int64(0, 4443) }, { k: "f9d0d4f06afb668417b850b65a2777b4308977d1e0be984925700146d7be239b", v: new $Int64(0, 3569) }, { k: "f9dcab4b2f9ac463e974c685e8306263a6c314297490791456f69d7bacdeddd3", v: new $Int64(0, 5431) }, { k: "f9e42d2edc81d23367967352b47e4856b82578634e6c1de72280ce8b60ce70c0", v: new $Int64(0, 12) }, { k: "f9e7ad6195a03c06f94f63a8f06308229dc566f1ba567ee1f08a2e34edca4eac", v: new $Int64(0, 1231) }, { k: "f9ead616f241f079dfc7fc21b78088516fbad0bf7311c6427ab1699ad4d85567", v: new $Int64(0, 2157) }, { k: "f9efb1a89d7691e3b50abcebe821e846cae2c6c0b42df0ee9a616941ee2cc1f9", v: new $Int64(0, 9695) }, { k: "f9efd45f4411fc46f70b7501c1e144b475da348218df538e5395127d1ef0e438", v: new $Int64(0, 6862) }, { k: "f9f512ac6599ef2d1656075be862106c58dbd94a3b9d08c4d9b090f3d23141e1", v: new $Int64(0, 5416) }, { k: "f9f52b39b391dc8751ef455af520d5f6cf1fc112192369958d07ef3f2756b1bd", v: new $Int64(0, 6651) }, { k: "fa07e97596a0d30ffdfd3d5756369bfbfca012cde34974d2d73502991ae152ba", v: new $Int64(0, 8100) }, { k: "fa09732ec878e8125807469a0abf6df4d778a4d91565d2cad8001d8ff517c13e", v: new $Int64(0, 3492) }, { k: "fa0e296109c9301aba78648b0df5777e3c5aa8f0ff9847556b765b7278cb2cca", v: new $Int64(0, 3162) }, { k: "fa10b34d91c25b30a8f424a23d38e3829d5b68289a6dba8bd94b4b39a3eabbb9", v: new $Int64(0, 3758) }, { k: "fa167f0bda19e8ad54a573ef65fffa2b2cd4edcf8164ead1d0e1fe61bed3115d", v: new $Int64(0, 1873) }, { k: "fa1adb65111dda4d562ed6940726911e8e792c98863c21add26827a5de050df7", v: new $Int64(0, 4785) }, { k: "fa1fb01c8751ed5ecb75b2aa6bb404b68c878a4d168a4bd657f16e8724ff36fb", v: new $Int64(0, 6524) }, { k: "fa222367c97e9ac89d40446957fb31df6bc302e7572650cd09a67c4a87b0bf8f", v: new $Int64(0, 2489) }, { k: "fa27538d37c6afdb188a99631ed76a818d207d32ad55a890142c948356976fe6", v: new $Int64(0, 3070) }, { k: "fa2f447b3ba454d07187d31ead1a74d3826dc147ebad6b0d7b598b773fc0ff56", v: new $Int64(0, 7040) }, { k: "fa2f731733258db602b6bae850c25090f9e48ec51ecf34ce65753b9ccb76a527", v: new $Int64(0, 3594) }, { k: "fa33048df12283d486aab65529390389f3303cff887eba21ade45408df1ca7b6", v: new $Int64(0, 1027) }, { k: "fa39215043865fb90c763c5b396f778e4f2402a9c20c0e3fe7fceae4cd0ad733", v: new $Int64(0, 5260) }, { k: "fa4147affeee0cfb8cd2488350906fe8ce153fc1505319ea274922280730e223", v: new $Int64(0, 1728) }, { k: "fa43be94154875e7bbe227047f3920775a9b25adcb8225698a471b634cbaa077", v: new $Int64(0, 2888) }, { k: "fa4c6aced162edf4303e0f61b4332085a6daea38ea38e06306e708ed5667c0b8", v: new $Int64(0, 2480) }, { k: "fa4ef3469b2f8811d7d50d4c362100d26a0456f8a730ed71a7befc85310d6ea8", v: new $Int64(0, 4059) }, { k: "fa539fcc638f9932eeffc96ac5021ddfce039703ff6c4a9a7fa0db66ac163388", v: new $Int64(0, 2961) }, { k: "fa5a58d35a4e9c6c9d0b9fc8eece0f445e253527a61dc0acfaa3358d8f5ce124", v: new $Int64(0, 2177) }, { k: "fa664481e1789318f81e044869584bf8fc9a27641cb68c0ad977cfbf3dc1a351", v: new $Int64(0, 3872) }, { k: "fa73c752b18580e4a6b7ad27fe7543e700b8809a7e8717f479c6d486d9657362", v: new $Int64(0, 3954) }, { k: "fa74949febca6f43b66d2bacb51ddd0cc17498032e722bbf54e778ab6672dd99", v: new $Int64(0, 2726) }, { k: "fa7a8b438e3fe1671e59e3fa10e4248b97d90c202962d63f52fc35813a70e1d2", v: new $Int64(0, 6357) }, { k: "fa8913a74655f4e2c2dc1dc015626ff2bbf9af65c50de199a468fbfaaf6ad1dc", v: new $Int64(0, 7242) }, { k: "fa8ed205f3f0373d00c0211427999c8ecb538b9608e63fe99143d92a335402da", v: new $Int64(0, 1538) }, { k: "fa99ab3f09e40fbb96578a958f309eb0d721a6e021e9ab82eed2b90cb1ed2640", v: new $Int64(0, 5520) }, { k: "fa9b4e5a8e51b92601fddef23e551f07f8047424f49419f290357c5601a70972", v: new $Int64(0, 8180) }, { k: "fa9b507d0aebdd1d7655310c9cf63656154b481072554ace322ef0b6dae9517e", v: new $Int64(0, 7123) }, { k: "faa0e2bcd0da935320f708fb214600a9d469e190b31b224e391986f83d638675", v: new $Int64(0, 1496) }, { k: "faa338ca33d0f76100d3095e5737b6d2964833334b351380f4548e070a3aa4d9", v: new $Int64(0, 5321) }, { k: "faaa743438d3eb5881498091f19b00cf46a5378b4fcc602c092f9e9c7b5965df", v: new $Int64(0, 4578) }, { k: "fab54eeb5d045b661b3fd4200cfd42c436576b978cfaa3e94e0315fa49c66636", v: new $Int64(0, 2681) }, { k: "fab9615264223486b92af0ad970ca4f64d2b690831606dae004bb177c9874398", v: new $Int64(0, 3047) }, { k: "faba80db959c9d59afab45b62d528d946757238fde1962ab72cbf062f3a7a0cc", v: new $Int64(0, 734) }, { k: "fac367bf7a68bdf54e7f4f8920209226dd4b481563cab977ddde822e6b12ed4b", v: new $Int64(0, 7336) }, { k: "fac4420cb3aaf7587742cf5124686a0c04cb6adcc7c06615e8d22faa69b910b9", v: new $Int64(0, 4816) }, { k: "fac6547e6ea262db391ad21e91bc021c5048937055a7ab803f8b748a12fa77e2", v: new $Int64(0, 3341) }, { k: "fac7ef310bcad9387da4f5d59d098d43a3b113bda3a54cbb56ebc6cd9f0712db", v: new $Int64(0, 4722) }, { k: "fae9a5b5f81253e0e6b52516cb4409bdf5ca7cc16595ab171b1e8fa7b98514a7", v: new $Int64(0, 531) }, { k: "faec0724bb87e71a5ee856f26c72e123af662e8577b1e47875e479f91217a4ad", v: new $Int64(0, 1420) }, { k: "faec6dc7582a5dd0c4ccb5958d4828027e697786f915af376f1cf289914500e6", v: new $Int64(0, 8208) }, { k: "faecc6a05f1c71cfe31602088d8444089fc6f9db7c515ca886e6337c6b28f313", v: new $Int64(0, 1914) }, { k: "faf1e0785450091cbbaa53a14acc69e37135a4d5b66a13cf1000fcaa0740b314", v: new $Int64(0, 3999) }, { k: "faf28add3e7615033182100b1181612c9a11cb65bd0921161317f8ede0572c54", v: new $Int64(0, 8951) }, { k: "fafa3ba8938cbaeb7fd630b5d77b6899440e8c4e61cde402c00e564518f0d60c", v: new $Int64(0, 5902) }, { k: "faffa312739a30e2fd965236536080c1eb844a0bb68d385ca1c3c72b34e64390", v: new $Int64(0, 5915) }, { k: "fb00536db15e0487abdc35bbdcd38908596dbc2cba3b7cc6c7e889eb27bd4b9a", v: new $Int64(0, 5370) }, { k: "fb0bb657c21dbee6025fc95b0d0538010f8618e15e2166c6c2a94c6b46403d3e", v: new $Int64(0, 2629) }, { k: "fb13a716264bda56cc828bb7fb17d24f0ef0b4dfcbe871621ef43571a6fd72bc", v: new $Int64(0, 7545) }, { k: "fb15d013bc67cfa969ed2d175ba8d513789af09f6c0c9bbdc5389ac202394f7f", v: new $Int64(0, 1031) }, { k: "fb21e3f6be29307b31ac4822440eec9041591a3e2cee16e49b95ebba115e41b3", v: new $Int64(0, 8935) }, { k: "fb30e82c8aa6ad7108b9c883df110d43a6470ace1243eca693c4adf9ae4a31a2", v: new $Int64(0, 1104) }, { k: "fb34c93cfba9fdb74ec05b673f42e6974cfb8e5fe3601932b0bf256340be9237", v: new $Int64(0, 6239) }, { k: "fb373a73c1c0af4e78dd93931c704900da0f471a82d3dfa15fdcfd41933f03a0", v: new $Int64(0, 3586) }, { k: "fb4f1024d8ab86ab1e74aef16c1030f829abbbe8831e3fed47de33c4e14ab9df", v: new $Int64(0, 2142) }, { k: "fb641921c4a61668499e019d87cb3f218eb6c00d4ed0ae20c7d9c2a70a761b26", v: new $Int64(0, 4701) }, { k: "fb6d8bf9ff02e863864d4c4c8917bae318b447d738d9c10e0ec2c4de571e0879", v: new $Int64(0, 7135) }, { k: "fb6ee9b944ddb96990e7eced656a30ab0fd84a12c35e7c3e9c43f9941711bc66", v: new $Int64(0, 3693) }, { k: "fb783db6aa97acae69faf6c6bf1c40acffc17098f68bab2ee8ecfae3050dfe44", v: new $Int64(0, 3643) }, { k: "fb7ac728bd0b8a621010695382b94377e57cda9d7050b9489cbfb8106933d1e9", v: new $Int64(0, 7468) }, { k: "fb7e69a972f181894c98aff211ce9fb78ca5fc154bd2683940330668d5753b03", v: new $Int64(0, 5186) }, { k: "fb803b5b7ef794a2417e7c5ad82d267e5275088e560104a114f960c8f461e458", v: new $Int64(0, 7349) }, { k: "fb860b8df2179a8425f9bb9fa07ee0317714220e1a8550313c0738230ba123bb", v: new $Int64(0, 1109) }, { k: "fb945c2594f3b62e99b1ddb5bb4513a022a1ba176f70e7efe6b640e3cbf4e376", v: new $Int64(0, 4631) }, { k: "fb9c0f110c99b3105f28526eb023b2e17baf13f308efc0e606baa23d83b1c436", v: new $Int64(0, 1237) }, { k: "fb9ce2b4d8a0c9196340f93c0f5e03744a61ad2c5cdd28730a65aa651e7bde9f", v: new $Int64(0, 1356) }, { k: "fba25bda2a88c013a788a511f5bf866c2a8a3d3a920c940fb34c0602be181ba4", v: new $Int64(0, 5224) }, { k: "fba60c7f91b00466fe3f70ef57a544ae97958f724ef2c1ddfaeeac3c879cdc04", v: new $Int64(0, 1342) }, { k: "fbaa7d11a332c77c176c7cdb393a38d421b2c299ffd35457a4ab68586f1668e5", v: new $Int64(0, 1905) }, { k: "fbb1ba260465c453684b74ff5d490b6ce79ef4ae7b7fcef4393f434af6d63618", v: new $Int64(0, 7401) }, { k: "fbc36ed10228c46fba5fe817ecaee33baf464066980e8823d7c204ae8753ecf4", v: new $Int64(0, 6280) }, { k: "fbc6e6aeddb0659d556dce8d2dd826a5162eb404275c415e1983e52cc9da2d05", v: new $Int64(0, 2963) }, { k: "fbda4716af0364f94fe3ba2908f4b580fe9124767bab42e64b4cd05ab11f85f0", v: new $Int64(0, 1080) }, { k: "fbe3af08f883b9cbac04defe968383ed1cef023247bb0f476758fbe884048ca8", v: new $Int64(0, 8670) }, { k: "fbe5e0209a6c2cfd879b0131efd4ceb5674336567639af6200d59fb71a4a7a03", v: new $Int64(0, 6658) }, { k: "fbf0a9738f46bbc533035558ed1541a5815178e0534fe37d830424e74cd2fefb", v: new $Int64(0, 2769) }, { k: "fbf9f66513ec6b6a6660d763801c417b75aa91f47d55dfc29b61add892162bc9", v: new $Int64(0, 4617) }, { k: "fc063bf3173ee6301c470683e4e7e1e4176948a488f1f39fc09deddbb3ae519e", v: new $Int64(0, 2839) }, { k: "fc0bd902a6a897167831e8e691361a928df58f1ec0be1c5005f898f28be6b30a", v: new $Int64(0, 3923) }, { k: "fc144de4d52ad5984e825949b84dd3f903c9a5a88e83bd13b7874a35521b9d90", v: new $Int64(0, 5059) }, { k: "fc1d94fe0021674a8a537b592daa4348fe78c28d5013379552b730c9e21654f4", v: new $Int64(0, 2444) }, { k: "fc24606b45860a3d364718564511f90e7a2f57340040e7f951d4bc459745f24c", v: new $Int64(0, 1988) }, { k: "fc282c95dcefe6ee78cbb30d9100a9bf64c0671cffcdcc02dbbe23cbfc677be2", v: new $Int64(0, 7833) }, { k: "fc297f6f1e06c6f6d84763f707047584236d5995801b52f5dd62b19189f4183e", v: new $Int64(0, 5801) }, { k: "fc3149a61db892615823b9e1c7cf4708a5092ce61b9b2467e047e99c93e6f15d", v: new $Int64(0, 8060) }, { k: "fc45fbfe08a7048d7b9cb79ce902aabeb972ef794458f2ce8c42774a46cdfeea", v: new $Int64(0, 4184) }, { k: "fc4695380185dd82700353d16c0557a5567ef6209ae9f5fc9de183f781af30a6", v: new $Int64(0, 3260) }, { k: "fc5117bcd3f7cc0bbac232c3273805e19d68b60c6ee79d808dbb99d2a9f247b1", v: new $Int64(0, 9491) }, { k: "fc527711c2493bda30f1c503d16f2e2195036303093528ad0ffc76b9c0e041b3", v: new $Int64(0, 8092) }, { k: "fc555394c637be8b73edf11ec69ff75de94f37686ce99e8e5948bb7608eb971b", v: new $Int64(0, 2867) }, { k: "fc5648a0b6aa88dc2c839a3f132fcf763b8eed438de07ce8a5ab00064419aa0f", v: new $Int64(0, 4211) }, { k: "fc578b49e1a6b07af5a3357c5e0c0ea0e0f8166bfe3680eca0fff159f4a817cc", v: new $Int64(0, 815) }, { k: "fc5909a8c8319dacce5944fe64e2549a1e496cc0255239fcf1dbdb96ea4eb84d", v: new $Int64(0, 1242) }, { k: "fc5b33bb37370b36082b9c41d42b4ceb2bcd1ae3ecc389a483ead8f3af225bf8", v: new $Int64(0, 6241) }, { k: "fc5baee4d1496679d0a98047cc11fde2a4d70bd7bdd76565b77f81877f8f8189", v: new $Int64(0, 1321) }, { k: "fc733e454481edd29f009e96a8a2df0ae6f03bba86018d7cd0718d310e58e34c", v: new $Int64(0, 7585) }, { k: "fc785e7a23bc3f48c1a754d20bb6862a582e35d9a1f9c4ed47d76ab301f363ae", v: new $Int64(0, 7374) }, { k: "fc792e94d270244a777573af52e6c61237ba97a9bdd2c76f7f2dc42807a6e532", v: new $Int64(0, 8587) }, { k: "fc7c8747941a80647f029c06201c2ac5cc355c50b02fbcd89e42a9bd6098aee5", v: new $Int64(0, 4835) }, { k: "fc8333086ec74a803f7b2199850d131f6ffc247180a55dd166e2bcbdf0193107", v: new $Int64(0, 4663) }, { k: "fc85602d13e4b549365216cac670ae7ebaa57380def144b025455182c91c6dc1", v: new $Int64(0, 4136) }, { k: "fc864b08eee7a0fd21450934c1613223fc9b55485399f763d099ce01e09feba8", v: new $Int64(0, 128) }, { k: "fc89753b9862a6bdc26a39cba1535b989473a79b73f46abac98c2c9e5da99eb8", v: new $Int64(0, 6422) }, { k: "fc9309e48bb44a74e9ac7d3deebf5902ecd514f6a4ca3af412e413b6ff285897", v: new $Int64(0, 8737) }, { k: "fca1c7eeda1c5f34e112ab132922adaa2c7a349dcdaa6c8ff187f2a0b609f2a9", v: new $Int64(0, 2002) }, { k: "fcb08a30956304194f3b784d1c2d54ff23fb87b87c0de4caca49bd0b8aa183c0", v: new $Int64(0, 7718) }, { k: "fcb1e95bc4b8d392e3c49152134b65064af8c93b792664b943c90cd72221cb04", v: new $Int64(0, 6967) }, { k: "fcc11b8eaae15d89105c60cffb1c0f61e763181bb4fc2b7ac293552b762bdaaa", v: new $Int64(0, 8707) }, { k: "fcc5bc8015d717780d87c6c778719701c24120f8eb452772d87883be77df7c10", v: new $Int64(0, 8245) }, { k: "fcc83260ea2c0d7836cbf161be9e50ba81a711e25e190ab04b375f921f4fc4a3", v: new $Int64(0, 541) }, { k: "fccc5d079277af31de73740e8241b30adf6e99a7b6c3782ae84280f677e2065e", v: new $Int64(0, 4111) }, { k: "fccd2407560b5e2f05c2068c4d5f298e83ed99725b11145f9a648969648e7e1f", v: new $Int64(0, 3374) }, { k: "fccda2b32d25bc4bf91ca984cda766d28539d5d2fbfc85dde99f35d074aa27d5", v: new $Int64(0, 1751) }, { k: "fcd5353884d50102af8f5092f4d2a270df5e83214fbb4c21b9c3dbb7b0a97eb2", v: new $Int64(0, 3592) }, { k: "fcdeec611a5acebc2ea6c4c27cb5704645ea5a36bf548af0712d37e855d54ccb", v: new $Int64(0, 8880) }, { k: "fcdf7e00ab1b9d3c77f78a0dc1e6121d4374aa0e82f672540254224ca1228918", v: new $Int64(0, 6586) }, { k: "fce09808d44457f708880ad2574b072f0575de14b57c09a08ce3f41453f01286", v: new $Int64(0, 3349) }, { k: "fcea7889da792e6b89f0d9e09dcb4b9588a8f998f1ab36ca6584f11db2a446f7", v: new $Int64(0, 3691) }, { k: "fcecbb0d5577c9e07a538037bb5a469a7c2913f1b2d915fefd01579591bca758", v: new $Int64(0, 9278) }, { k: "fcf63b94a95239ec5da80199c6eac57911a47b42efa8c6ce580058b408664d13", v: new $Int64(0, 1071) }, { k: "fd081b0a8db4f48811ddb067730a3448b8fae2525857f385c8111071b87f935a", v: new $Int64(0, 1181) }, { k: "fd105ee80e3f1c8f60b2069e020591086f9927b7ceb7ec15f128b8de3fc20137", v: new $Int64(0, 9573) }, { k: "fd11ab8a69f73e959ead28c0cbf5e99e18ee41b5c1f267dbd4839e78dd86d28f", v: new $Int64(0, 873) }, { k: "fd1ad66df83dee268f82295970a0156217a7de9f3ca52c5a3b897ee335e3cb76", v: new $Int64(0, 8627) }, { k: "fd1b97b79626ac6ff0db4d743c4db721f82054f2783d413830207329b2f99550", v: new $Int64(0, 8864) }, { k: "fd1fb9b7b6b16e7540c52472e4a0d060ca0ddcdfaa812d2ceccdf2a33fab6592", v: new $Int64(0, 152) }, { k: "fd2572a3d94385a0f6979ecfea83e7db1e9e52060f1b9df52ec51927566c9fd1", v: new $Int64(0, 7052) }, { k: "fd29dbebecc5a610eded62f24f9d1246876c632a51d3a8ad91a791b80ab21f81", v: new $Int64(0, 907) }, { k: "fd2f442b6ffaf40557fc9d67c2ffa197ad2ebbf0eeb00c9a3df77ad96305afbd", v: new $Int64(0, 6495) }, { k: "fd3386e668f99ef90083df4267a6b6e8bc3a409d1be25122c199e17247c1d7ba", v: new $Int64(0, 1374) }, { k: "fd365dda729d7e35337c7efa0efd0e5602dd2457344a0fb2695fab2b07c10171", v: new $Int64(0, 1297) }, { k: "fd3ca66fe75f1435b6294adb01c0340f72a4a7204fd2b979ba2fe56359db308a", v: new $Int64(0, 3436) }, { k: "fd3f61ef018e2f0188b1487aac3ddeb2f64876b0a19a2bf2549d11d8535abd32", v: new $Int64(0, 4679) }, { k: "fd47b99a840ee118916829da81101753c3e9717d376edc9f7f9c3cebe2fcb9b4", v: new $Int64(0, 3529) }, { k: "fd50413ded23599a95f72a176583ac9634520142e248f7dd9c3742f2f66f5e0c", v: new $Int64(0, 7515) }, { k: "fd52cf10dcd65fb9f59845ab4989740ee183ba1ab333ae475d11f820b571503c", v: new $Int64(0, 9093) }, { k: "fd540a10305caa3139ff361f18b056427e72520356c2bef20c8fada2e7db1728", v: new $Int64(0, 8397) }, { k: "fd5babe656bc55604f42cdd655c42ba192fbd63c1e5659cb005c28a010742009", v: new $Int64(0, 6074) }, { k: "fd6715714ca4426010f7c6c8702d0b24337d89b01896a0381417914d20e8a40d", v: new $Int64(0, 46) }, { k: "fd67d9bb9d897229a62005cf8dbe14e0bcb9a8c53273afe6ab9e03c54369623c", v: new $Int64(0, 2353) }, { k: "fd6aee738a81c103eea45c14e39a3adb756b99866f8f11708d5e500b0d78d38d", v: new $Int64(0, 8799) }, { k: "fd704a75db770ab972d1c114c81eb7f3b2037ae8e25ad972a8d91fb1f21092b9", v: new $Int64(0, 7582) }, { k: "fd704d74d858accf84ea736ba1beba8e83140aec4ea4a62096c9b27fd25132dd", v: new $Int64(0, 5178) }, { k: "fd789efe242d2dd7c5f4410176795e177f4aa984f7e0ed8f2bd621e574355e72", v: new $Int64(0, 8685) }, { k: "fd81258a0660bb06c4ccaa9fd898b4babaf00f5cedddb00dc95765a60be1400e", v: new $Int64(0, 3667) }, { k: "fd82966c9fe0c72821c19686a01192ac56ad022819cf6c5cd038896cf84816a8", v: new $Int64(0, 8225) }, { k: "fd95e5947891d5f7482fd62d4f5c550fc4338b5855783d1e7cf58ae0b2326565", v: new $Int64(0, 5252) }, { k: "fd9a06615bffcea715c0d81d063e670393563698c998068235b6d3b930cd57db", v: new $Int64(0, 6469) }, { k: "fd9b9f5d3daddc96816788078cd8aea12551c96df5cfe466678a2c53b1b929b4", v: new $Int64(0, 3979) }, { k: "fd9f7887212b47d7b3d2015d968720a610baed7b94c97f2f6b0828c809df1684", v: new $Int64(0, 2670) }, { k: "fda3c44d48771cded76eecd0ee13ab74fcdeb532e51846f1a6747bf50bad373a", v: new $Int64(0, 2869) }, { k: "fda49436ed14231ec3696f645d8f9c673ea4d7c7967f5d2f40e8c200e4da7531", v: new $Int64(0, 9146) }, { k: "fdbe597c8146f9d0bd832799157e2d515ea675035195c66e8ae07f47fbcf9ad2", v: new $Int64(0, 9112) }, { k: "fdc6ac3c4cf73b2983230ab02e63582188b5977458ffc0644f0e694a13748ba3", v: new $Int64(0, 7413) }, { k: "fdc768d502e9f4f0736276c03448210bd8bc3c63443dbe27c73cda72fa7f223f", v: new $Int64(0, 1981) }, { k: "fdd6ea74a700b3076edca42b30e8c6d286c38cb48888d5bc04de3a020247d836", v: new $Int64(0, 5006) }, { k: "fddbfb098593b90447d92d501a0cfa719bdf1a24ab95661d2ffd368a30c3f956", v: new $Int64(0, 7662) }, { k: "fdeb2850ea3e04af3b980a1a27968c512025dba8d0790b00de998dfd544338bf", v: new $Int64(0, 8624) }, { k: "fdf6cab2464b3c852cbdaf3beb59073f18b1666eceed12c4bf0572eca2390b4d", v: new $Int64(0, 2611) }, { k: "fdff64f9e57ebc0e85435f529beb4dd7e2585c75c3c8a9eff5a36910d3310d09", v: new $Int64(0, 5472) }, { k: "fe109312da00df19284505e7d848d0b5bf32481721ee2089203a1fb257ab6930", v: new $Int64(0, 3573) }, { k: "fe11b2fa1f5094be28225047282d09a81998884b01f1c105c808096dbb71db3a", v: new $Int64(0, 7508) }, { k: "fe12f2c76fc37d9009b71dab37950aaf35a6f37dc45d989fdfb195ba8e7849cf", v: new $Int64(0, 6284) }, { k: "fe17080d046b99ca0478c26ffee7640c04808babe3bf459f5af8342962430a99", v: new $Int64(0, 8118) }, { k: "fe1dd18b7006ada3db26b70e1012433bfbbc11c9082596eeea320342036be63c", v: new $Int64(0, 6380) }, { k: "fe1e03a4329dcde8c654f43a2d278898663e4f043a1feb975686463851ebbfc8", v: new $Int64(0, 4114) }, { k: "fe26f56451479fd982635060d12c2f809676156c3c7688500285404255ab2777", v: new $Int64(0, 1392) }, { k: "fe2766fd6c6a353c46f02fa2213bdd4af2575d4233ee73276f22993a7c24856e", v: new $Int64(0, 6501) }, { k: "fe2ae62c909f142bd27a1c79b17cad6e7479c1f4a54d71507127b2caae265f8e", v: new $Int64(0, 1164) }, { k: "fe3185f79b1a83df762b194285607cabfeb4e8c5d7bd1da4a3d2623adee85282", v: new $Int64(0, 8213) }, { k: "fe43f5c0f31984cee67e16a0180297e7db272db3b26207ac83a20029e38ebb5b", v: new $Int64(0, 9530) }, { k: "fe467b53c0526179b87334c3eb800da26dcaf71bc467dfc3b1e49f597847f6e1", v: new $Int64(0, 4935) }, { k: "fe49c6d49938828e8dc408d3e928fb11d5b07e8ffcdda01e6a24477f7597b49c", v: new $Int64(0, 1962) }, { k: "fe68bd7fd72d4b9e895b9cf9a7a3814706cb343e5d621dfca9b985de7b3136a9", v: new $Int64(0, 4625) }, { k: "fe6d1e8b64457a8bb816cb0db64b39299bf83d6e5458a35bce521b6491cee6a4", v: new $Int64(0, 1784) }, { k: "fe6dcb5bc8d4c6fb43f514ac10bd710426208940b8308ce5eeb38470a0017834", v: new $Int64(0, 7842) }, { k: "fe81b77a512deb0cf3cde9c19cb6d0a524d7aec4ad5a191ec3bc3e8c8d051aa8", v: new $Int64(0, 8380) }, { k: "fe8e1a41258576bb941bc8ada889ebc69f2676b8461a291a644fc5a8fb3667b9", v: new $Int64(0, 9474) }, { k: "fe91f813701121d32948f0e4b6f9831bdfdebd867a8a051f503cd32fb91015bd", v: new $Int64(0, 231) }, { k: "fe98e5ccc82c21af4aa7c17417a9807289131fe92b5661901195f845727a7e0a", v: new $Int64(0, 1715) }, { k: "fe998bd0b1774f4c7e1c8c53a956684f9404f2ca078ed30ca416d4e035a05aca", v: new $Int64(0, 1102) }, { k: "fe9a22fdda8ba650f7862944d168757aa9666117639a0bb5900cb694abeee926", v: new $Int64(0, 9728) }, { k: "fe9dadff2de01774ae478218f3c064b3db8e8c9b03a7894d33f1d4d423a6d98e", v: new $Int64(0, 7631) }, { k: "feac76b15524d9e8b5a9f10df6a7a5999f62a6195ced9f3b759a580170ffc62a", v: new $Int64(0, 5530) }, { k: "feadea7385916c1e716e4daa20b14b495c65e6083f1de035405679175d060b36", v: new $Int64(0, 7541) }, { k: "fec6da22923ad64505f5cd1aef7bd4e6f24dbd17eb11c295c68d2870c03c4865", v: new $Int64(0, 5081) }, { k: "fed891d1000e839fea6076e39f2fdfc592a9c285c17980ce030d75fa17f19d35", v: new $Int64(0, 838) }, { k: "fedb5b4577e019b19820e91a354c2d2fda1e3aeaf61cc1edb62015c6635589ee", v: new $Int64(0, 7671) }, { k: "fedfb8c03875ef1abc6685ea6effbde3ba16ead7dc5aa6e4376436be03e10ae5", v: new $Int64(0, 4801) }, { k: "fee4c39b5767488654384bfec9ef40028a9f83553d1908b88cf98510da758292", v: new $Int64(0, 3577) }, { k: "fefba0d78e22118e51e8cc2dcbc1d2971e3f341737d52a68d21fd4d00bd83dba", v: new $Int64(0, 6180) }, { k: "fefcc048d2ad286e005d46e77fa9a6d533ff0cb52f60ebb17520a4d6ba86d877", v: new $Int64(0, 2279) }, { k: "ff0b7cedce9a6714c32f630707f8d056b571da3b8d6eb570f23648c99f1d3042", v: new $Int64(0, 6345) }, { k: "ff0ccd93dfe9e67887ef1a738b055c4827143172dda122287d67090a324f9d19", v: new $Int64(0, 5965) }, { k: "ff0e6989d09a326bb657bff10fc01b1c796314a85b6249801a997ae563e7b4c4", v: new $Int64(0, 3604) }, { k: "ff1f10514c3e9b4a882cc3e5aec6a25bd856aadf80534081804a1dafb2bc6f9f", v: new $Int64(0, 3061) }, { k: "ff278b6521af9aae3466d2fb6d761bf7be81aff04859ab6f639510f3bf44d69c", v: new $Int64(0, 2007) }, { k: "ff295e84f531c592e14ba97df229461d199439f41abd9ef717a0858152330204", v: new $Int64(0, 893) }, { k: "ff2ced5526333cb742a794b0d5eceaac16bedb18f983ff718fc62cf22a8827c5", v: new $Int64(0, 2150) }, { k: "ff48519e2ec3324f6cc7c299dabb172c72fba2f77545222f9909b9f917c82e39", v: new $Int64(0, 7678) }, { k: "ff4a747bd4af36b493c286a1f2ec9cbe710a0df4c22e7516618eaf9bb6f86251", v: new $Int64(0, 4249) }, { k: "ff4aed99dd639f2301b9fb5153d92cefea12e21b6370150a23b9716a67ec1bb7", v: new $Int64(0, 7350) }, { k: "ff531006dcd44068587bfeaa1bfd3edd3bb7e75b81df9ddc38351140631dcc86", v: new $Int64(0, 4459) }, { k: "ff53e32ac0b5676b4ebb1d46794eda12a4a41b8dc3579fb23620a67f6c4b109c", v: new $Int64(0, 6391) }, { k: "ff55ae7d894056910df3935c014220e8a5bcd8754e4a9fc9cfefad8b07e15416", v: new $Int64(0, 9844) }, { k: "ff580aed2b9ea7e4d94933ae634b3c90ad72bbded190f41b89cc6836b13f7e74", v: new $Int64(0, 3285) }, { k: "ff62c353d9bb6d8f911ba640fb3214dcf3fa1a1e07d82f509759c9849faf9cc7", v: new $Int64(0, 2899) }, { k: "ff639efde1f544a0454d023b4c6fc8d77c3dc3187c905fc389a9f1eb0f0a2ff2", v: new $Int64(0, 1557) }, { k: "ff660bfab0874269f0182caf43b7d8111a1145750144aa07aae7e17c3a9115d7", v: new $Int64(0, 3269) }, { k: "ff6b3b274bc86848ec045dcce0987ecd41d11bf66716beffa5737c3e8664caea", v: new $Int64(0, 6307) }, { k: "ff6d670fd9d2813929958c832b7163df462ca5c66df45e4c5ddb47b1197eed9e", v: new $Int64(0, 9774) }, { k: "ff6fce114a24d9b650b5118540a0f16f2beae0eadcc6fa37641526149245f0a6", v: new $Int64(0, 4139) }, { k: "ff71333ed5dc8f159442219591ad8d71cb99f331348ccf3bcb91f4bb9cf25fcc", v: new $Int64(0, 5614) }, { k: "ff78d665bb2c94a76d576c307d8c7babd70258017bc938336047c41b5fc87e2d", v: new $Int64(0, 6447) }, { k: "ff867b5dec1ba29549d9a7e216766830da9ff9b51c7d9db6ec9301be92208520", v: new $Int64(0, 2810) }, { k: "ff8dc64a9e3f2e9a60ece377c0b9f6d4e11ad85c027b362bb6da65d46c63b5eb", v: new $Int64(0, 6453) }, { k: "ff910f9013d977166bd0141186123dd4ff1dcd3f81d818db4c6285fb1d94de91", v: new $Int64(0, 4306) }, { k: "ff9c4bbe20d5ea35b1e987737290689e6f502ecaf5142e50adc945fa721533f9", v: new $Int64(0, 8644) }, { k: "ffa211a8a05eb71852883394332702ffeac6190f2ab2363c91907f8490b53dc0", v: new $Int64(0, 7797) }, { k: "ffb2c7885c3e909972a181df0c5da66405705289a80d957a0c6b6670b9dcf7d0", v: new $Int64(0, 284) }, { k: "ffb6cfefcd68576aecc6a4a0db5046686ca9d94417ab12de81f877160603b334", v: new $Int64(0, 8904) }, { k: "ffbeff3f2b2358d2e03fb6c00ebacb9555b8a911f39d81fff045dc0f3453a076", v: new $Int64(0, 9986) }, { k: "ffc6ce42c2e664b080ea2927e338f555a7e3c82e0677c491083988c47bd9cca6", v: new $Int64(0, 8870) }, { k: "ffc8a0a5e75a95b037467d5719ca09bc41d5da06e49e0a5156b00ed0179344b3", v: new $Int64(0, 7119) }, { k: "ffcbaef900496ffcac8d61a2c20aecbdeda4fa9ba6eefeff4c167fe4e3f83bd2", v: new $Int64(0, 355) }, { k: "ffd39cc0d43aa8f8d96e02f51b331964c7daec63c1e2316d3b73cc2a6e4f0219", v: new $Int64(0, 2308) }, { k: "ffd4c45c9542da7d27e561f7f2c83566d335683fe8e27d4216480748630be11d", v: new $Int64(0, 5011) }, { k: "ffdc6807a3f7d4ce5055082d3db992ea0a8be0b82b851d636089b50138ae6889", v: new $Int64(0, 5890) }, { k: "ffdc8c0936726dc91e254c982b5e5e25c34f6447158cda909c772aa2cfa3fd05", v: new $Int64(0, 2535) }, { k: "ffde459e1269e7149d78afebce9d220ae24161e58841164c3d498fb74bd25f5c", v: new $Int64(0, 5579) }, { k: "ffe02346e3c6b080e490630f4a3d94f195b07acbadd3a130f5d84c0dec7b2000", v: new $Int64(0, 4933) }, { k: "ffe216153fc3288f1fe0dd88f11bbae4954686555ca02b078b046289dfb9d39e", v: new $Int64(0, 6525) }, { k: "ffe4d6ceb653cadfe346a71fcae6cdbdbcd85c8575ec80f79edd9159825a55ee", v: new $Int64(0, 916) }, { k: "ffe65c952d30774f7bc705fc3bb8cd43ec56d22211b6e2c9e3c568fb7c064a0c", v: new $Int64(0, 8469) }, { k: "fff8d46b2782e2d5ec53012fbc4a278c3798b35bdea79f9c8273ab64ac81786c", v: new $Int64(0, 3500) }, { k: "fff991cfa79e1b55430a18f4c829dc97410470477fd3794baf186e961cd0f18b", v: new $Int64(0, 7767) }, { k: "fffd6cbfc28e75a9bcadef92be5bfaa59f90604ea45a840ce9a008ba6300dfc1", v: new $Int64(0, 2113) }]);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["errors"] = (function() {
+ var $pkg = {}, $init, errorString, ptrType, New;
+ errorString = $pkg.errorString = $newType(0, $kindStruct, "errors.errorString", true, "errors", false, function(s_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.s = "";
+ return;
+ }
+ this.s = s_;
+ });
+ ptrType = $ptrType(errorString);
+ New = function(text) {
+ var $ptr, text;
+ return new errorString.ptr(text);
+ };
+ $pkg.New = New;
+ errorString.ptr.prototype.Error = function() {
+ var $ptr, e;
+ e = this;
+ return e.s;
+ };
+ errorString.prototype.Error = function() { return this.$val.Error(); };
+ ptrType.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ errorString.init("errors", [{prop: "s", name: "s", exported: false, typ: $String, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["internal/race"] = (function() {
+ var $pkg = {}, $init, Acquire, Release, ReleaseMerge, Disable, Enable, ReadRange, WriteRange;
+ Acquire = function(addr) {
+ var $ptr, addr;
+ };
+ $pkg.Acquire = Acquire;
+ Release = function(addr) {
+ var $ptr, addr;
+ };
+ $pkg.Release = Release;
+ ReleaseMerge = function(addr) {
+ var $ptr, addr;
+ };
+ $pkg.ReleaseMerge = ReleaseMerge;
+ Disable = function() {
+ var $ptr;
+ };
+ $pkg.Disable = Disable;
+ Enable = function() {
+ var $ptr;
+ };
+ $pkg.Enable = Enable;
+ ReadRange = function(addr, len) {
+ var $ptr, addr, len;
+ };
+ $pkg.ReadRange = ReadRange;
+ WriteRange = function(addr, len) {
+ var $ptr, addr, len;
+ };
+ $pkg.WriteRange = WriteRange;
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["sync/atomic"] = (function() {
+ var $pkg = {}, $init, js, CompareAndSwapInt32, AddInt32, LoadUint32, StoreUint32;
+ js = $packages["github.com/gopherjs/gopherjs/js"];
+ CompareAndSwapInt32 = function(addr, old, new$1) {
+ var $ptr, addr, new$1, old;
+ if (addr.$get() === old) {
+ addr.$set(new$1);
+ return true;
+ }
+ return false;
+ };
+ $pkg.CompareAndSwapInt32 = CompareAndSwapInt32;
+ AddInt32 = function(addr, delta) {
+ var $ptr, addr, delta, new$1;
+ new$1 = addr.$get() + delta >> 0;
+ addr.$set(new$1);
+ return new$1;
+ };
+ $pkg.AddInt32 = AddInt32;
+ LoadUint32 = function(addr) {
+ var $ptr, addr;
+ return addr.$get();
+ };
+ $pkg.LoadUint32 = LoadUint32;
+ StoreUint32 = function(addr, val) {
+ var $ptr, addr, val;
+ addr.$set(val);
+ };
+ $pkg.StoreUint32 = StoreUint32;
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = js.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["sync"] = (function() {
+ var $pkg = {}, $init, race, runtime, atomic, Pool, Mutex, Locker, Once, poolLocal, notifyList, RWMutex, rlocker, ptrType, sliceType, ptrType$1, chanType, sliceType$1, ptrType$3, ptrType$6, sliceType$4, ptrType$7, ptrType$8, funcType, ptrType$14, funcType$1, ptrType$15, arrayType$2, semWaiters, runtime_SemacquireMutex, allPools, runtime_registerPoolCleanup, runtime_Semacquire, runtime_Semrelease, runtime_notifyListCheck, runtime_canSpin, throw$1, poolCleanup, init, indexLocal, init$1, runtime_doSpin;
+ race = $packages["internal/race"];
+ runtime = $packages["runtime"];
+ atomic = $packages["sync/atomic"];
+ Pool = $pkg.Pool = $newType(0, $kindStruct, "sync.Pool", true, "sync", true, function(local_, localSize_, store_, New_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.local = 0;
+ this.localSize = 0;
+ this.store = sliceType$4.nil;
+ this.New = $throwNilPointerError;
+ return;
+ }
+ this.local = local_;
+ this.localSize = localSize_;
+ this.store = store_;
+ this.New = New_;
+ });
+ Mutex = $pkg.Mutex = $newType(0, $kindStruct, "sync.Mutex", true, "sync", true, function(state_, sema_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.state = 0;
+ this.sema = 0;
+ return;
+ }
+ this.state = state_;
+ this.sema = sema_;
+ });
+ Locker = $pkg.Locker = $newType(8, $kindInterface, "sync.Locker", true, "sync", true, null);
+ Once = $pkg.Once = $newType(0, $kindStruct, "sync.Once", true, "sync", true, function(m_, done_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.m = new Mutex.ptr(0, 0);
+ this.done = 0;
+ return;
+ }
+ this.m = m_;
+ this.done = done_;
+ });
+ poolLocal = $pkg.poolLocal = $newType(0, $kindStruct, "sync.poolLocal", true, "sync", false, function(private$0_, shared_, Mutex_, pad_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.private$0 = $ifaceNil;
+ this.shared = sliceType$4.nil;
+ this.Mutex = new Mutex.ptr(0, 0);
+ this.pad = arrayType$2.zero();
+ return;
+ }
+ this.private$0 = private$0_;
+ this.shared = shared_;
+ this.Mutex = Mutex_;
+ this.pad = pad_;
+ });
+ notifyList = $pkg.notifyList = $newType(0, $kindStruct, "sync.notifyList", true, "sync", false, function(wait_, notify_, lock_, head_, tail_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.wait = 0;
+ this.notify = 0;
+ this.lock = 0;
+ this.head = 0;
+ this.tail = 0;
+ return;
+ }
+ this.wait = wait_;
+ this.notify = notify_;
+ this.lock = lock_;
+ this.head = head_;
+ this.tail = tail_;
+ });
+ RWMutex = $pkg.RWMutex = $newType(0, $kindStruct, "sync.RWMutex", true, "sync", true, function(w_, writerSem_, readerSem_, readerCount_, readerWait_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.w = new Mutex.ptr(0, 0);
+ this.writerSem = 0;
+ this.readerSem = 0;
+ this.readerCount = 0;
+ this.readerWait = 0;
+ return;
+ }
+ this.w = w_;
+ this.writerSem = writerSem_;
+ this.readerSem = readerSem_;
+ this.readerCount = readerCount_;
+ this.readerWait = readerWait_;
+ });
+ rlocker = $pkg.rlocker = $newType(0, $kindStruct, "sync.rlocker", true, "sync", false, function(w_, writerSem_, readerSem_, readerCount_, readerWait_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.w = new Mutex.ptr(0, 0);
+ this.writerSem = 0;
+ this.readerSem = 0;
+ this.readerCount = 0;
+ this.readerWait = 0;
+ return;
+ }
+ this.w = w_;
+ this.writerSem = writerSem_;
+ this.readerSem = readerSem_;
+ this.readerCount = readerCount_;
+ this.readerWait = readerWait_;
+ });
+ ptrType = $ptrType(Pool);
+ sliceType = $sliceType(ptrType);
+ ptrType$1 = $ptrType($Uint32);
+ chanType = $chanType($Bool, false, false);
+ sliceType$1 = $sliceType(chanType);
+ ptrType$3 = $ptrType($Int32);
+ ptrType$6 = $ptrType(poolLocal);
+ sliceType$4 = $sliceType($emptyInterface);
+ ptrType$7 = $ptrType(rlocker);
+ ptrType$8 = $ptrType(RWMutex);
+ funcType = $funcType([], [$emptyInterface], false);
+ ptrType$14 = $ptrType(Mutex);
+ funcType$1 = $funcType([], [], false);
+ ptrType$15 = $ptrType(Once);
+ arrayType$2 = $arrayType($Uint8, 128);
+ Pool.ptr.prototype.Get = function() {
+ var $ptr, _r, p, x, x$1, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; p = $f.p; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ /* */ if (p.store.$length === 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (p.store.$length === 0) { */ case 1:
+ /* */ if (!(p.New === $throwNilPointerError)) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!(p.New === $throwNilPointerError)) { */ case 3:
+ _r = p.New(); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* } */ case 4:
+ $s = -1; return $ifaceNil;
+ /* } */ case 2:
+ x$2 = (x = p.store, x$1 = p.store.$length - 1 >> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ p.store = $subslice(p.store, 0, (p.store.$length - 1 >> 0));
+ $s = -1; return x$2;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Pool.ptr.prototype.Get }; } $f.$ptr = $ptr; $f._r = _r; $f.p = p; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Pool.prototype.Get = function() { return this.$val.Get(); };
+ Pool.ptr.prototype.Put = function(x) {
+ var $ptr, p, x;
+ p = this;
+ if ($interfaceIsEqual(x, $ifaceNil)) {
+ return;
+ }
+ p.store = $append(p.store, x);
+ };
+ Pool.prototype.Put = function(x) { return this.$val.Put(x); };
+ runtime_registerPoolCleanup = function(cleanup) {
+ var $ptr, cleanup;
+ };
+ runtime_Semacquire = function(s) {
+ var $ptr, _entry, _key, _r, ch, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _key = $f._key; _r = $f._r; ch = $f.ch; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ if (s.$get() === 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (s.$get() === 0) { */ case 1:
+ ch = new $Chan($Bool, 0);
+ _key = s; (semWaiters || $throwRuntimeError("assignment to entry in nil map"))[ptrType$1.keyFor(_key)] = { k: _key, v: $append((_entry = semWaiters[ptrType$1.keyFor(s)], _entry !== undefined ? _entry.v : sliceType$1.nil), ch) };
+ _r = $recv(ch); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r[0];
+ /* } */ case 2:
+ s.$set(s.$get() - (1) >>> 0);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: runtime_Semacquire }; } $f.$ptr = $ptr; $f._entry = _entry; $f._key = _key; $f._r = _r; $f.ch = ch; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ runtime_Semrelease = function(s) {
+ var $ptr, _entry, _key, ch, s, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _key = $f._key; ch = $f.ch; s = $f.s; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ s.$set(s.$get() + (1) >>> 0);
+ w = (_entry = semWaiters[ptrType$1.keyFor(s)], _entry !== undefined ? _entry.v : sliceType$1.nil);
+ if (w.$length === 0) {
+ $s = -1; return;
+ }
+ ch = (0 >= w.$length ? ($throwRuntimeError("index out of range"), undefined) : w.$array[w.$offset + 0]);
+ w = $subslice(w, 1);
+ _key = s; (semWaiters || $throwRuntimeError("assignment to entry in nil map"))[ptrType$1.keyFor(_key)] = { k: _key, v: w };
+ if (w.$length === 0) {
+ delete semWaiters[ptrType$1.keyFor(s)];
+ }
+ $r = $send(ch, true); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: runtime_Semrelease }; } $f.$ptr = $ptr; $f._entry = _entry; $f._key = _key; $f.ch = ch; $f.s = s; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ runtime_notifyListCheck = function(size) {
+ var $ptr, size;
+ };
+ runtime_canSpin = function(i) {
+ var $ptr, i;
+ return false;
+ };
+ throw$1 = function() {
+ $throwRuntimeError("native function not implemented: sync.throw");
+ };
+ Mutex.ptr.prototype.Lock = function() {
+ var $ptr, awoke, iter, m, new$1, old, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; awoke = $f.awoke; iter = $f.iter; m = $f.m; new$1 = $f.new$1; old = $f.old; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ m = this;
+ if (atomic.CompareAndSwapInt32((m.$ptr_state || (m.$ptr_state = new ptrType$3(function() { return this.$target.state; }, function($v) { this.$target.state = $v; }, m))), 0, 1)) {
+ if (false) {
+ race.Acquire((m));
+ }
+ $s = -1; return;
+ }
+ awoke = false;
+ iter = 0;
+ /* while (true) { */ case 1:
+ old = m.state;
+ new$1 = old | 1;
+ /* */ if (!(((old & 1) === 0))) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!(((old & 1) === 0))) { */ case 3:
+ if (runtime_canSpin(iter)) {
+ if (!awoke && ((old & 2) === 0) && !(((old >> 2 >> 0) === 0)) && atomic.CompareAndSwapInt32((m.$ptr_state || (m.$ptr_state = new ptrType$3(function() { return this.$target.state; }, function($v) { this.$target.state = $v; }, m))), old, old | 2)) {
+ awoke = true;
+ }
+ runtime_doSpin();
+ iter = iter + (1) >> 0;
+ /* continue; */ $s = 1; continue;
+ }
+ new$1 = old + 4 >> 0;
+ /* } */ case 4:
+ if (awoke) {
+ if ((new$1 & 2) === 0) {
+ throw$1("sync: inconsistent mutex state");
+ }
+ new$1 = (new$1 & ~(2)) >> 0;
+ }
+ /* */ if (atomic.CompareAndSwapInt32((m.$ptr_state || (m.$ptr_state = new ptrType$3(function() { return this.$target.state; }, function($v) { this.$target.state = $v; }, m))), old, new$1)) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (atomic.CompareAndSwapInt32((m.$ptr_state || (m.$ptr_state = new ptrType$3(function() { return this.$target.state; }, function($v) { this.$target.state = $v; }, m))), old, new$1)) { */ case 5:
+ if ((old & 1) === 0) {
+ /* break; */ $s = 2; continue;
+ }
+ $r = runtime_SemacquireMutex((m.$ptr_sema || (m.$ptr_sema = new ptrType$1(function() { return this.$target.sema; }, function($v) { this.$target.sema = $v; }, m)))); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ awoke = true;
+ iter = 0;
+ /* } */ case 6:
+ /* } */ $s = 1; continue; case 2:
+ if (false) {
+ race.Acquire((m));
+ }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Mutex.ptr.prototype.Lock }; } $f.$ptr = $ptr; $f.awoke = awoke; $f.iter = iter; $f.m = m; $f.new$1 = new$1; $f.old = old; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Mutex.prototype.Lock = function() { return this.$val.Lock(); };
+ Mutex.ptr.prototype.Unlock = function() {
+ var $ptr, m, new$1, old, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; m = $f.m; new$1 = $f.new$1; old = $f.old; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ m = this;
+ if (false) {
+ $unused(m.state);
+ race.Release((m));
+ }
+ new$1 = atomic.AddInt32((m.$ptr_state || (m.$ptr_state = new ptrType$3(function() { return this.$target.state; }, function($v) { this.$target.state = $v; }, m))), -1);
+ if ((((new$1 + 1 >> 0)) & 1) === 0) {
+ throw$1("sync: unlock of unlocked mutex");
+ }
+ old = new$1;
+ /* while (true) { */ case 1:
+ if (((old >> 2 >> 0) === 0) || !(((old & 3) === 0))) {
+ $s = -1; return;
+ }
+ new$1 = ((old - 4 >> 0)) | 2;
+ /* */ if (atomic.CompareAndSwapInt32((m.$ptr_state || (m.$ptr_state = new ptrType$3(function() { return this.$target.state; }, function($v) { this.$target.state = $v; }, m))), old, new$1)) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (atomic.CompareAndSwapInt32((m.$ptr_state || (m.$ptr_state = new ptrType$3(function() { return this.$target.state; }, function($v) { this.$target.state = $v; }, m))), old, new$1)) { */ case 3:
+ $r = runtime_Semrelease((m.$ptr_sema || (m.$ptr_sema = new ptrType$1(function() { return this.$target.sema; }, function($v) { this.$target.sema = $v; }, m)))); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* } */ case 4:
+ old = m.state;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Mutex.ptr.prototype.Unlock }; } $f.$ptr = $ptr; $f.m = m; $f.new$1 = new$1; $f.old = old; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Mutex.prototype.Unlock = function() { return this.$val.Unlock(); };
+ Once.ptr.prototype.Do = function(f) {
+ var $ptr, f, o, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; o = $f.o; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ o = this;
+ if (atomic.LoadUint32((o.$ptr_done || (o.$ptr_done = new ptrType$1(function() { return this.$target.done; }, function($v) { this.$target.done = $v; }, o)))) === 1) {
+ $s = -1; return;
+ }
+ $r = o.m.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(o.m, "Unlock"), []]);
+ /* */ if (o.done === 0) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (o.done === 0) { */ case 2:
+ $deferred.push([atomic.StoreUint32, [(o.$ptr_done || (o.$ptr_done = new ptrType$1(function() { return this.$target.done; }, function($v) { this.$target.done = $v; }, o))), 1]]);
+ $r = f(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 3:
+ $s = -1; return;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: Once.ptr.prototype.Do }; } $f.$ptr = $ptr; $f.f = f; $f.o = o; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ Once.prototype.Do = function(f) { return this.$val.Do(f); };
+ poolCleanup = function() {
+ var $ptr, _i, _i$1, _ref, _ref$1, i, i$1, j, l, p, x;
+ _ref = allPools;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ p = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ ((i < 0 || i >= allPools.$length) ? ($throwRuntimeError("index out of range"), undefined) : allPools.$array[allPools.$offset + i] = ptrType.nil);
+ i$1 = 0;
+ while (true) {
+ if (!(i$1 < ((p.localSize >> 0)))) { break; }
+ l = indexLocal(p.local, i$1);
+ l.private$0 = $ifaceNil;
+ _ref$1 = l.shared;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ j = _i$1;
+ (x = l.shared, ((j < 0 || j >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + j] = $ifaceNil));
+ _i$1++;
+ }
+ l.shared = sliceType$4.nil;
+ i$1 = i$1 + (1) >> 0;
+ }
+ p.local = 0;
+ p.localSize = 0;
+ _i++;
+ }
+ allPools = new sliceType([]);
+ };
+ init = function() {
+ var $ptr;
+ runtime_registerPoolCleanup(poolCleanup);
+ };
+ indexLocal = function(l, i) {
+ var $ptr, i, l, x;
+ return (x = (l), (x.nilCheck, ((i < 0 || i >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[i])));
+ };
+ init$1 = function() {
+ var $ptr, n;
+ n = new notifyList.ptr(0, 0, 0, 0, 0);
+ runtime_notifyListCheck(20);
+ };
+ runtime_doSpin = function() {
+ $throwRuntimeError("native function not implemented: sync.runtime_doSpin");
+ };
+ RWMutex.ptr.prototype.RLock = function() {
+ var $ptr, rw, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; rw = $f.rw; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ rw = this;
+ if (false) {
+ $unused(rw.w.state);
+ race.Disable();
+ }
+ /* */ if (atomic.AddInt32((rw.$ptr_readerCount || (rw.$ptr_readerCount = new ptrType$3(function() { return this.$target.readerCount; }, function($v) { this.$target.readerCount = $v; }, rw))), 1) < 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (atomic.AddInt32((rw.$ptr_readerCount || (rw.$ptr_readerCount = new ptrType$3(function() { return this.$target.readerCount; }, function($v) { this.$target.readerCount = $v; }, rw))), 1) < 0) { */ case 1:
+ $r = runtime_Semacquire((rw.$ptr_readerSem || (rw.$ptr_readerSem = new ptrType$1(function() { return this.$target.readerSem; }, function($v) { this.$target.readerSem = $v; }, rw)))); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 2:
+ if (false) {
+ race.Enable();
+ race.Acquire(((rw.$ptr_readerSem || (rw.$ptr_readerSem = new ptrType$1(function() { return this.$target.readerSem; }, function($v) { this.$target.readerSem = $v; }, rw)))));
+ }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: RWMutex.ptr.prototype.RLock }; } $f.$ptr = $ptr; $f.rw = rw; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ RWMutex.prototype.RLock = function() { return this.$val.RLock(); };
+ RWMutex.ptr.prototype.RUnlock = function() {
+ var $ptr, r, rw, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; r = $f.r; rw = $f.rw; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ rw = this;
+ if (false) {
+ $unused(rw.w.state);
+ race.ReleaseMerge(((rw.$ptr_writerSem || (rw.$ptr_writerSem = new ptrType$1(function() { return this.$target.writerSem; }, function($v) { this.$target.writerSem = $v; }, rw)))));
+ race.Disable();
+ }
+ r = atomic.AddInt32((rw.$ptr_readerCount || (rw.$ptr_readerCount = new ptrType$3(function() { return this.$target.readerCount; }, function($v) { this.$target.readerCount = $v; }, rw))), -1);
+ /* */ if (r < 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (r < 0) { */ case 1:
+ if (((r + 1 >> 0) === 0) || ((r + 1 >> 0) === -1073741824)) {
+ race.Enable();
+ throw$1("sync: RUnlock of unlocked RWMutex");
+ }
+ /* */ if (atomic.AddInt32((rw.$ptr_readerWait || (rw.$ptr_readerWait = new ptrType$3(function() { return this.$target.readerWait; }, function($v) { this.$target.readerWait = $v; }, rw))), -1) === 0) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (atomic.AddInt32((rw.$ptr_readerWait || (rw.$ptr_readerWait = new ptrType$3(function() { return this.$target.readerWait; }, function($v) { this.$target.readerWait = $v; }, rw))), -1) === 0) { */ case 3:
+ $r = runtime_Semrelease((rw.$ptr_writerSem || (rw.$ptr_writerSem = new ptrType$1(function() { return this.$target.writerSem; }, function($v) { this.$target.writerSem = $v; }, rw)))); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 4:
+ /* } */ case 2:
+ if (false) {
+ race.Enable();
+ }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: RWMutex.ptr.prototype.RUnlock }; } $f.$ptr = $ptr; $f.r = r; $f.rw = rw; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ RWMutex.prototype.RUnlock = function() { return this.$val.RUnlock(); };
+ RWMutex.ptr.prototype.Lock = function() {
+ var $ptr, r, rw, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; r = $f.r; rw = $f.rw; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ rw = this;
+ if (false) {
+ $unused(rw.w.state);
+ race.Disable();
+ }
+ $r = rw.w.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ r = atomic.AddInt32((rw.$ptr_readerCount || (rw.$ptr_readerCount = new ptrType$3(function() { return this.$target.readerCount; }, function($v) { this.$target.readerCount = $v; }, rw))), -1073741824) + 1073741824 >> 0;
+ /* */ if (!((r === 0)) && !((atomic.AddInt32((rw.$ptr_readerWait || (rw.$ptr_readerWait = new ptrType$3(function() { return this.$target.readerWait; }, function($v) { this.$target.readerWait = $v; }, rw))), r) === 0))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!((r === 0)) && !((atomic.AddInt32((rw.$ptr_readerWait || (rw.$ptr_readerWait = new ptrType$3(function() { return this.$target.readerWait; }, function($v) { this.$target.readerWait = $v; }, rw))), r) === 0))) { */ case 2:
+ $r = runtime_Semacquire((rw.$ptr_writerSem || (rw.$ptr_writerSem = new ptrType$1(function() { return this.$target.writerSem; }, function($v) { this.$target.writerSem = $v; }, rw)))); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 3:
+ if (false) {
+ race.Enable();
+ race.Acquire(((rw.$ptr_readerSem || (rw.$ptr_readerSem = new ptrType$1(function() { return this.$target.readerSem; }, function($v) { this.$target.readerSem = $v; }, rw)))));
+ race.Acquire(((rw.$ptr_writerSem || (rw.$ptr_writerSem = new ptrType$1(function() { return this.$target.writerSem; }, function($v) { this.$target.writerSem = $v; }, rw)))));
+ }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: RWMutex.ptr.prototype.Lock }; } $f.$ptr = $ptr; $f.r = r; $f.rw = rw; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ RWMutex.prototype.Lock = function() { return this.$val.Lock(); };
+ RWMutex.ptr.prototype.Unlock = function() {
+ var $ptr, i, r, rw, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; i = $f.i; r = $f.r; rw = $f.rw; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ rw = this;
+ if (false) {
+ $unused(rw.w.state);
+ race.Release(((rw.$ptr_readerSem || (rw.$ptr_readerSem = new ptrType$1(function() { return this.$target.readerSem; }, function($v) { this.$target.readerSem = $v; }, rw)))));
+ race.Release(((rw.$ptr_writerSem || (rw.$ptr_writerSem = new ptrType$1(function() { return this.$target.writerSem; }, function($v) { this.$target.writerSem = $v; }, rw)))));
+ race.Disable();
+ }
+ r = atomic.AddInt32((rw.$ptr_readerCount || (rw.$ptr_readerCount = new ptrType$3(function() { return this.$target.readerCount; }, function($v) { this.$target.readerCount = $v; }, rw))), 1073741824);
+ if (r >= 1073741824) {
+ race.Enable();
+ throw$1("sync: Unlock of unlocked RWMutex");
+ }
+ i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(i < ((r >> 0)))) { break; } */ if(!(i < ((r >> 0)))) { $s = 2; continue; }
+ $r = runtime_Semrelease((rw.$ptr_readerSem || (rw.$ptr_readerSem = new ptrType$1(function() { return this.$target.readerSem; }, function($v) { this.$target.readerSem = $v; }, rw)))); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i = i + (1) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ $r = rw.w.Unlock(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if (false) {
+ race.Enable();
+ }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: RWMutex.ptr.prototype.Unlock }; } $f.$ptr = $ptr; $f.i = i; $f.r = r; $f.rw = rw; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ RWMutex.prototype.Unlock = function() { return this.$val.Unlock(); };
+ RWMutex.ptr.prototype.RLocker = function() {
+ var $ptr, rw;
+ rw = this;
+ return ($pointerOfStructConversion(rw, ptrType$7));
+ };
+ RWMutex.prototype.RLocker = function() { return this.$val.RLocker(); };
+ rlocker.ptr.prototype.Lock = function() {
+ var $ptr, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ $r = ($pointerOfStructConversion(r, ptrType$8)).RLock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: rlocker.ptr.prototype.Lock }; } $f.$ptr = $ptr; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ rlocker.prototype.Lock = function() { return this.$val.Lock(); };
+ rlocker.ptr.prototype.Unlock = function() {
+ var $ptr, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ $r = ($pointerOfStructConversion(r, ptrType$8)).RUnlock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: rlocker.ptr.prototype.Unlock }; } $f.$ptr = $ptr; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ rlocker.prototype.Unlock = function() { return this.$val.Unlock(); };
+ ptrType.methods = [{prop: "Get", name: "Get", pkg: "", typ: $funcType([], [$emptyInterface], false)}, {prop: "Put", name: "Put", pkg: "", typ: $funcType([$emptyInterface], [], false)}, {prop: "getSlow", name: "getSlow", pkg: "sync", typ: $funcType([], [$emptyInterface], false)}, {prop: "pin", name: "pin", pkg: "sync", typ: $funcType([], [ptrType$6], false)}, {prop: "pinSlow", name: "pinSlow", pkg: "sync", typ: $funcType([], [ptrType$6], false)}];
+ ptrType$14.methods = [{prop: "Lock", name: "Lock", pkg: "", typ: $funcType([], [], false)}, {prop: "Unlock", name: "Unlock", pkg: "", typ: $funcType([], [], false)}];
+ ptrType$15.methods = [{prop: "Do", name: "Do", pkg: "", typ: $funcType([funcType$1], [], false)}];
+ ptrType$8.methods = [{prop: "RLock", name: "RLock", pkg: "", typ: $funcType([], [], false)}, {prop: "RUnlock", name: "RUnlock", pkg: "", typ: $funcType([], [], false)}, {prop: "Lock", name: "Lock", pkg: "", typ: $funcType([], [], false)}, {prop: "Unlock", name: "Unlock", pkg: "", typ: $funcType([], [], false)}, {prop: "RLocker", name: "RLocker", pkg: "", typ: $funcType([], [Locker], false)}];
+ ptrType$7.methods = [{prop: "Lock", name: "Lock", pkg: "", typ: $funcType([], [], false)}, {prop: "Unlock", name: "Unlock", pkg: "", typ: $funcType([], [], false)}];
+ Pool.init("sync", [{prop: "local", name: "local", exported: false, typ: $UnsafePointer, tag: ""}, {prop: "localSize", name: "localSize", exported: false, typ: $Uintptr, tag: ""}, {prop: "store", name: "store", exported: false, typ: sliceType$4, tag: ""}, {prop: "New", name: "New", exported: true, typ: funcType, tag: ""}]);
+ Mutex.init("sync", [{prop: "state", name: "state", exported: false, typ: $Int32, tag: ""}, {prop: "sema", name: "sema", exported: false, typ: $Uint32, tag: ""}]);
+ Locker.init([{prop: "Lock", name: "Lock", pkg: "", typ: $funcType([], [], false)}, {prop: "Unlock", name: "Unlock", pkg: "", typ: $funcType([], [], false)}]);
+ Once.init("sync", [{prop: "m", name: "m", exported: false, typ: Mutex, tag: ""}, {prop: "done", name: "done", exported: false, typ: $Uint32, tag: ""}]);
+ poolLocal.init("sync", [{prop: "private$0", name: "private", exported: false, typ: $emptyInterface, tag: ""}, {prop: "shared", name: "shared", exported: false, typ: sliceType$4, tag: ""}, {prop: "Mutex", name: "", exported: true, typ: Mutex, tag: ""}, {prop: "pad", name: "pad", exported: false, typ: arrayType$2, tag: ""}]);
+ notifyList.init("sync", [{prop: "wait", name: "wait", exported: false, typ: $Uint32, tag: ""}, {prop: "notify", name: "notify", exported: false, typ: $Uint32, tag: ""}, {prop: "lock", name: "lock", exported: false, typ: $Uintptr, tag: ""}, {prop: "head", name: "head", exported: false, typ: $UnsafePointer, tag: ""}, {prop: "tail", name: "tail", exported: false, typ: $UnsafePointer, tag: ""}]);
+ RWMutex.init("sync", [{prop: "w", name: "w", exported: false, typ: Mutex, tag: ""}, {prop: "writerSem", name: "writerSem", exported: false, typ: $Uint32, tag: ""}, {prop: "readerSem", name: "readerSem", exported: false, typ: $Uint32, tag: ""}, {prop: "readerCount", name: "readerCount", exported: false, typ: $Int32, tag: ""}, {prop: "readerWait", name: "readerWait", exported: false, typ: $Int32, tag: ""}]);
+ rlocker.init("sync", [{prop: "w", name: "w", exported: false, typ: Mutex, tag: ""}, {prop: "writerSem", name: "writerSem", exported: false, typ: $Uint32, tag: ""}, {prop: "readerSem", name: "readerSem", exported: false, typ: $Uint32, tag: ""}, {prop: "readerCount", name: "readerCount", exported: false, typ: $Int32, tag: ""}, {prop: "readerWait", name: "readerWait", exported: false, typ: $Int32, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = race.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = atomic.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ allPools = sliceType.nil;
+ semWaiters = {};
+ runtime_SemacquireMutex = runtime_Semacquire;
+ init();
+ init$1();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["io"] = (function() {
+ var $pkg = {}, $init, errors, sync, Reader, Writer, ReaderFrom, WriterTo, ByteReader, ByteScanner, RuneReader, RuneScanner, stringWriter, sliceType, errWhence, errOffset, WriteString, ReadAtLeast, ReadFull;
+ errors = $packages["errors"];
+ sync = $packages["sync"];
+ Reader = $pkg.Reader = $newType(8, $kindInterface, "io.Reader", true, "io", true, null);
+ Writer = $pkg.Writer = $newType(8, $kindInterface, "io.Writer", true, "io", true, null);
+ ReaderFrom = $pkg.ReaderFrom = $newType(8, $kindInterface, "io.ReaderFrom", true, "io", true, null);
+ WriterTo = $pkg.WriterTo = $newType(8, $kindInterface, "io.WriterTo", true, "io", true, null);
+ ByteReader = $pkg.ByteReader = $newType(8, $kindInterface, "io.ByteReader", true, "io", true, null);
+ ByteScanner = $pkg.ByteScanner = $newType(8, $kindInterface, "io.ByteScanner", true, "io", true, null);
+ RuneReader = $pkg.RuneReader = $newType(8, $kindInterface, "io.RuneReader", true, "io", true, null);
+ RuneScanner = $pkg.RuneScanner = $newType(8, $kindInterface, "io.RuneScanner", true, "io", true, null);
+ stringWriter = $pkg.stringWriter = $newType(8, $kindInterface, "io.stringWriter", true, "io", false, null);
+ sliceType = $sliceType($Uint8);
+ WriteString = function(w, s) {
+ var $ptr, _r, _r$1, _tuple, _tuple$1, _tuple$2, err, n, ok, s, sw, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; err = $f.err; n = $f.n; ok = $f.ok; s = $f.s; sw = $f.sw; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ _tuple = $assertType(w, stringWriter, true);
+ sw = _tuple[0];
+ ok = _tuple[1];
+ /* */ if (ok) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (ok) { */ case 1:
+ _r = sw.WriteString(s); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple$1 = _r;
+ n = _tuple$1[0];
+ err = _tuple$1[1];
+ $s = -1; return [n, err];
+ /* } */ case 2:
+ _r$1 = w.Write((new sliceType($stringToBytes(s)))); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$2 = _r$1;
+ n = _tuple$2[0];
+ err = _tuple$2[1];
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: WriteString }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f.err = err; $f.n = n; $f.ok = ok; $f.s = s; $f.sw = sw; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.WriteString = WriteString;
+ ReadAtLeast = function(r, buf, min) {
+ var $ptr, _r, _tmp, _tmp$1, _tuple, buf, err, min, n, nn, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tuple = $f._tuple; buf = $f.buf; err = $f.err; min = $f.min; n = $f.n; nn = $f.nn; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ if (buf.$length < min) {
+ _tmp = 0;
+ _tmp$1 = $pkg.ErrShortBuffer;
+ n = _tmp;
+ err = _tmp$1;
+ $s = -1; return [n, err];
+ }
+ /* while (true) { */ case 1:
+ /* if (!(n < min && $interfaceIsEqual(err, $ifaceNil))) { break; } */ if(!(n < min && $interfaceIsEqual(err, $ifaceNil))) { $s = 2; continue; }
+ nn = 0;
+ _r = r.Read($subslice(buf, n)); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ nn = _tuple[0];
+ err = _tuple[1];
+ n = n + (nn) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ if (n >= min) {
+ err = $ifaceNil;
+ } else if (n > 0 && $interfaceIsEqual(err, $pkg.EOF)) {
+ err = $pkg.ErrUnexpectedEOF;
+ }
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ReadAtLeast }; } $f.$ptr = $ptr; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tuple = _tuple; $f.buf = buf; $f.err = err; $f.min = min; $f.n = n; $f.nn = nn; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.ReadAtLeast = ReadAtLeast;
+ ReadFull = function(r, buf) {
+ var $ptr, _r, _tuple, buf, err, n, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; buf = $f.buf; err = $f.err; n = $f.n; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ _r = ReadAtLeast(r, buf, buf.$length); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ n = _tuple[0];
+ err = _tuple[1];
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ReadFull }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.buf = buf; $f.err = err; $f.n = n; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.ReadFull = ReadFull;
+ Reader.init([{prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}]);
+ Writer.init([{prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}]);
+ ReaderFrom.init([{prop: "ReadFrom", name: "ReadFrom", pkg: "", typ: $funcType([Reader], [$Int64, $error], false)}]);
+ WriterTo.init([{prop: "WriteTo", name: "WriteTo", pkg: "", typ: $funcType([Writer], [$Int64, $error], false)}]);
+ ByteReader.init([{prop: "ReadByte", name: "ReadByte", pkg: "", typ: $funcType([], [$Uint8, $error], false)}]);
+ ByteScanner.init([{prop: "ReadByte", name: "ReadByte", pkg: "", typ: $funcType([], [$Uint8, $error], false)}, {prop: "UnreadByte", name: "UnreadByte", pkg: "", typ: $funcType([], [$error], false)}]);
+ RuneReader.init([{prop: "ReadRune", name: "ReadRune", pkg: "", typ: $funcType([], [$Int32, $Int, $error], false)}]);
+ RuneScanner.init([{prop: "ReadRune", name: "ReadRune", pkg: "", typ: $funcType([], [$Int32, $Int, $error], false)}, {prop: "UnreadRune", name: "UnreadRune", pkg: "", typ: $funcType([], [$error], false)}]);
+ stringWriter.init([{prop: "WriteString", name: "WriteString", pkg: "", typ: $funcType([$String], [$Int, $error], false)}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = errors.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $pkg.ErrShortWrite = errors.New("short write");
+ $pkg.ErrShortBuffer = errors.New("short buffer");
+ $pkg.EOF = errors.New("EOF");
+ $pkg.ErrUnexpectedEOF = errors.New("unexpected EOF");
+ $pkg.ErrNoProgress = errors.New("multiple Read calls return no data or error");
+ errWhence = errors.New("Seek: invalid whence");
+ errOffset = errors.New("Seek: invalid offset");
+ $pkg.ErrClosedPipe = errors.New("io: read/write on closed pipe");
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["math"] = (function() {
+ var $pkg = {}, $init, js, arrayType, arrayType$1, arrayType$2, structType, arrayType$3, math, zero, posInf, negInf, nan, buf, pow10tab, Exp, Frexp, Inf, IsInf, IsNaN, Log, Log2, NaN, init, Float32bits, Float32frombits, Float64bits, Float64frombits, Abs, normalize, frexp, log2, init$1;
+ js = $packages["github.com/gopherjs/gopherjs/js"];
+ arrayType = $arrayType($Uint32, 2);
+ arrayType$1 = $arrayType($Float32, 2);
+ arrayType$2 = $arrayType($Float64, 1);
+ structType = $structType("math", [{prop: "uint32array", name: "uint32array", exported: false, typ: arrayType, tag: ""}, {prop: "float32array", name: "float32array", exported: false, typ: arrayType$1, tag: ""}, {prop: "float64array", name: "float64array", exported: false, typ: arrayType$2, tag: ""}]);
+ arrayType$3 = $arrayType($Float64, 70);
+ Exp = function(x) {
+ var $ptr, x;
+ return $parseFloat(math.exp(x));
+ };
+ $pkg.Exp = Exp;
+ Frexp = function(f) {
+ var $ptr, _tuple, exp$1, f, frac;
+ frac = 0;
+ exp$1 = 0;
+ _tuple = frexp(f);
+ frac = _tuple[0];
+ exp$1 = _tuple[1];
+ return [frac, exp$1];
+ };
+ $pkg.Frexp = Frexp;
+ Inf = function(sign) {
+ var $ptr, sign;
+ if (sign >= 0) {
+ return posInf;
+ } else {
+ return negInf;
+ }
+ };
+ $pkg.Inf = Inf;
+ IsInf = function(f, sign) {
+ var $ptr, f, sign;
+ if (f === posInf) {
+ return sign >= 0;
+ }
+ if (f === negInf) {
+ return sign <= 0;
+ }
+ return false;
+ };
+ $pkg.IsInf = IsInf;
+ IsNaN = function(f) {
+ var $ptr, f, is;
+ is = false;
+ is = !((f === f));
+ return is;
+ };
+ $pkg.IsNaN = IsNaN;
+ Log = function(x) {
+ var $ptr, x;
+ if (!((x === x))) {
+ return nan;
+ }
+ return $parseFloat(math.log(x));
+ };
+ $pkg.Log = Log;
+ Log2 = function(x) {
+ var $ptr, x;
+ return log2(x);
+ };
+ $pkg.Log2 = Log2;
+ NaN = function() {
+ var $ptr;
+ return nan;
+ };
+ $pkg.NaN = NaN;
+ init = function() {
+ var $ptr, ab;
+ ab = new ($global.ArrayBuffer)(8);
+ buf.uint32array = new ($global.Uint32Array)(ab);
+ buf.float32array = new ($global.Float32Array)(ab);
+ buf.float64array = new ($global.Float64Array)(ab);
+ };
+ Float32bits = function(f) {
+ var $ptr, f;
+ buf.float32array[0] = f;
+ return buf.uint32array[0];
+ };
+ $pkg.Float32bits = Float32bits;
+ Float32frombits = function(b) {
+ var $ptr, b;
+ buf.uint32array[0] = b;
+ return buf.float32array[0];
+ };
+ $pkg.Float32frombits = Float32frombits;
+ Float64bits = function(f) {
+ var $ptr, f, x, x$1;
+ buf.float64array[0] = f;
+ return (x = $shiftLeft64((new $Uint64(0, buf.uint32array[1])), 32), x$1 = (new $Uint64(0, buf.uint32array[0])), new $Uint64(x.$high + x$1.$high, x.$low + x$1.$low));
+ };
+ $pkg.Float64bits = Float64bits;
+ Float64frombits = function(b) {
+ var $ptr, b;
+ buf.uint32array[0] = ((b.$low >>> 0));
+ buf.uint32array[1] = (($shiftRightUint64(b, 32).$low >>> 0));
+ return buf.float64array[0];
+ };
+ $pkg.Float64frombits = Float64frombits;
+ Abs = function(x) {
+ var $ptr, x;
+ if (x < 0) {
+ return -x;
+ }
+ if (x === 0) {
+ return 0;
+ }
+ return x;
+ };
+ $pkg.Abs = Abs;
+ normalize = function(x) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, exp$1, x, y;
+ y = 0;
+ exp$1 = 0;
+ if (Abs(x) < 2.2250738585072014e-308) {
+ _tmp = x * 4.503599627370496e+15;
+ _tmp$1 = -52;
+ y = _tmp;
+ exp$1 = _tmp$1;
+ return [y, exp$1];
+ }
+ _tmp$2 = x;
+ _tmp$3 = 0;
+ y = _tmp$2;
+ exp$1 = _tmp$3;
+ return [y, exp$1];
+ };
+ frexp = function(f) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tuple, exp$1, f, frac, x, x$1, x$2, x$3;
+ frac = 0;
+ exp$1 = 0;
+ if ((f === 0)) {
+ _tmp = f;
+ _tmp$1 = 0;
+ frac = _tmp;
+ exp$1 = _tmp$1;
+ return [frac, exp$1];
+ } else if (IsInf(f, 0) || IsNaN(f)) {
+ _tmp$2 = f;
+ _tmp$3 = 0;
+ frac = _tmp$2;
+ exp$1 = _tmp$3;
+ return [frac, exp$1];
+ }
+ _tuple = normalize(f);
+ f = _tuple[0];
+ exp$1 = _tuple[1];
+ x = Float64bits(f);
+ exp$1 = exp$1 + ((((((x$1 = $shiftRightUint64(x, 52), new $Uint64(x$1.$high & 0, (x$1.$low & 2047) >>> 0)).$low >> 0)) - 1023 >> 0) + 1 >> 0)) >> 0;
+ x = (x$2 = new $Uint64(2146435072, 0), new $Uint64(x.$high & ~x$2.$high, (x.$low & ~x$2.$low) >>> 0));
+ x = (x$3 = new $Uint64(1071644672, 0), new $Uint64(x.$high | x$3.$high, (x.$low | x$3.$low) >>> 0));
+ frac = Float64frombits(x);
+ return [frac, exp$1];
+ };
+ log2 = function(x) {
+ var $ptr, _tuple, exp$1, frac, x;
+ _tuple = Frexp(x);
+ frac = _tuple[0];
+ exp$1 = _tuple[1];
+ if (frac === 0.5) {
+ return ((exp$1 - 1 >> 0));
+ }
+ return Log(frac) * 1.4426950408889634 + (exp$1);
+ };
+ init$1 = function() {
+ var $ptr, _q, i, m, x;
+ pow10tab[0] = 1;
+ pow10tab[1] = 10;
+ i = 2;
+ while (true) {
+ if (!(i < 70)) { break; }
+ m = (_q = i / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ ((i < 0 || i >= pow10tab.length) ? ($throwRuntimeError("index out of range"), undefined) : pow10tab[i] = ((m < 0 || m >= pow10tab.length) ? ($throwRuntimeError("index out of range"), undefined) : pow10tab[m]) * (x = i - m >> 0, ((x < 0 || x >= pow10tab.length) ? ($throwRuntimeError("index out of range"), undefined) : pow10tab[x])));
+ i = i + (1) >> 0;
+ }
+ };
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = js.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ buf = new structType.ptr(arrayType.zero(), arrayType$1.zero(), arrayType$2.zero());
+ pow10tab = arrayType$3.zero();
+ math = $global.Math;
+ zero = 0;
+ posInf = 1 / zero;
+ negInf = -1 / zero;
+ nan = 0 / zero;
+ init();
+ init$1();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["unicode/utf8"] = (function() {
+ var $pkg = {}, $init, acceptRange, first, acceptRanges, FullRune, DecodeRune, DecodeRuneInString, DecodeLastRune, DecodeLastRuneInString, RuneLen, EncodeRune, RuneCount, RuneCountInString, RuneStart, ValidRune;
+ acceptRange = $pkg.acceptRange = $newType(0, $kindStruct, "utf8.acceptRange", true, "unicode/utf8", false, function(lo_, hi_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.lo = 0;
+ this.hi = 0;
+ return;
+ }
+ this.lo = lo_;
+ this.hi = hi_;
+ });
+ FullRune = function(p) {
+ var $ptr, accept, c, n, p, x, x$1, x$2;
+ n = p.$length;
+ if (n === 0) {
+ return false;
+ }
+ x$1 = (x = (0 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 0]), ((x < 0 || x >= first.length) ? ($throwRuntimeError("index out of range"), undefined) : first[x]));
+ if (n >= ((((x$1 & 7) >>> 0) >> 0))) {
+ return true;
+ }
+ accept = $clone((x$2 = x$1 >>> 4 << 24 >>> 24, ((x$2 < 0 || x$2 >= acceptRanges.length) ? ($throwRuntimeError("index out of range"), undefined) : acceptRanges[x$2])), acceptRange);
+ if (n > 1) {
+ c = (1 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 1]);
+ if (c < accept.lo || accept.hi < c) {
+ return true;
+ } else if (n > 2 && ((2 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 2]) < 128 || 191 < (2 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 2]))) {
+ return true;
+ }
+ }
+ return false;
+ };
+ $pkg.FullRune = FullRune;
+ DecodeRune = function(p) {
+ var $ptr, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, accept, b1, b2, b3, mask, n, p, p0, r, size, sz, x, x$1;
+ r = 0;
+ size = 0;
+ n = p.$length;
+ if (n < 1) {
+ _tmp = 65533;
+ _tmp$1 = 0;
+ r = _tmp;
+ size = _tmp$1;
+ return [r, size];
+ }
+ p0 = (0 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 0]);
+ x = ((p0 < 0 || p0 >= first.length) ? ($throwRuntimeError("index out of range"), undefined) : first[p0]);
+ if (x >= 240) {
+ mask = (((x >> 0)) << 31 >> 0) >> 31 >> 0;
+ _tmp$2 = (((((0 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 0]) >> 0)) & ~mask) >> 0) | (65533 & mask);
+ _tmp$3 = 1;
+ r = _tmp$2;
+ size = _tmp$3;
+ return [r, size];
+ }
+ sz = (x & 7) >>> 0;
+ accept = $clone((x$1 = x >>> 4 << 24 >>> 24, ((x$1 < 0 || x$1 >= acceptRanges.length) ? ($throwRuntimeError("index out of range"), undefined) : acceptRanges[x$1])), acceptRange);
+ if (n < ((sz >> 0))) {
+ _tmp$4 = 65533;
+ _tmp$5 = 1;
+ r = _tmp$4;
+ size = _tmp$5;
+ return [r, size];
+ }
+ b1 = (1 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 1]);
+ if (b1 < accept.lo || accept.hi < b1) {
+ _tmp$6 = 65533;
+ _tmp$7 = 1;
+ r = _tmp$6;
+ size = _tmp$7;
+ return [r, size];
+ }
+ if (sz === 2) {
+ _tmp$8 = (((((p0 & 31) >>> 0) >> 0)) << 6 >> 0) | ((((b1 & 63) >>> 0) >> 0));
+ _tmp$9 = 2;
+ r = _tmp$8;
+ size = _tmp$9;
+ return [r, size];
+ }
+ b2 = (2 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 2]);
+ if (b2 < 128 || 191 < b2) {
+ _tmp$10 = 65533;
+ _tmp$11 = 1;
+ r = _tmp$10;
+ size = _tmp$11;
+ return [r, size];
+ }
+ if (sz === 3) {
+ _tmp$12 = ((((((p0 & 15) >>> 0) >> 0)) << 12 >> 0) | (((((b1 & 63) >>> 0) >> 0)) << 6 >> 0)) | ((((b2 & 63) >>> 0) >> 0));
+ _tmp$13 = 3;
+ r = _tmp$12;
+ size = _tmp$13;
+ return [r, size];
+ }
+ b3 = (3 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 3]);
+ if (b3 < 128 || 191 < b3) {
+ _tmp$14 = 65533;
+ _tmp$15 = 1;
+ r = _tmp$14;
+ size = _tmp$15;
+ return [r, size];
+ }
+ _tmp$16 = (((((((p0 & 7) >>> 0) >> 0)) << 18 >> 0) | (((((b1 & 63) >>> 0) >> 0)) << 12 >> 0)) | (((((b2 & 63) >>> 0) >> 0)) << 6 >> 0)) | ((((b3 & 63) >>> 0) >> 0));
+ _tmp$17 = 4;
+ r = _tmp$16;
+ size = _tmp$17;
+ return [r, size];
+ };
+ $pkg.DecodeRune = DecodeRune;
+ DecodeRuneInString = function(s) {
+ var $ptr, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, accept, mask, n, r, s, s0, s1, s2, s3, size, sz, x, x$1;
+ r = 0;
+ size = 0;
+ n = s.length;
+ if (n < 1) {
+ _tmp = 65533;
+ _tmp$1 = 0;
+ r = _tmp;
+ size = _tmp$1;
+ return [r, size];
+ }
+ s0 = s.charCodeAt(0);
+ x = ((s0 < 0 || s0 >= first.length) ? ($throwRuntimeError("index out of range"), undefined) : first[s0]);
+ if (x >= 240) {
+ mask = (((x >> 0)) << 31 >> 0) >> 31 >> 0;
+ _tmp$2 = ((((s.charCodeAt(0) >> 0)) & ~mask) >> 0) | (65533 & mask);
+ _tmp$3 = 1;
+ r = _tmp$2;
+ size = _tmp$3;
+ return [r, size];
+ }
+ sz = (x & 7) >>> 0;
+ accept = $clone((x$1 = x >>> 4 << 24 >>> 24, ((x$1 < 0 || x$1 >= acceptRanges.length) ? ($throwRuntimeError("index out of range"), undefined) : acceptRanges[x$1])), acceptRange);
+ if (n < ((sz >> 0))) {
+ _tmp$4 = 65533;
+ _tmp$5 = 1;
+ r = _tmp$4;
+ size = _tmp$5;
+ return [r, size];
+ }
+ s1 = s.charCodeAt(1);
+ if (s1 < accept.lo || accept.hi < s1) {
+ _tmp$6 = 65533;
+ _tmp$7 = 1;
+ r = _tmp$6;
+ size = _tmp$7;
+ return [r, size];
+ }
+ if (sz === 2) {
+ _tmp$8 = (((((s0 & 31) >>> 0) >> 0)) << 6 >> 0) | ((((s1 & 63) >>> 0) >> 0));
+ _tmp$9 = 2;
+ r = _tmp$8;
+ size = _tmp$9;
+ return [r, size];
+ }
+ s2 = s.charCodeAt(2);
+ if (s2 < 128 || 191 < s2) {
+ _tmp$10 = 65533;
+ _tmp$11 = 1;
+ r = _tmp$10;
+ size = _tmp$11;
+ return [r, size];
+ }
+ if (sz === 3) {
+ _tmp$12 = ((((((s0 & 15) >>> 0) >> 0)) << 12 >> 0) | (((((s1 & 63) >>> 0) >> 0)) << 6 >> 0)) | ((((s2 & 63) >>> 0) >> 0));
+ _tmp$13 = 3;
+ r = _tmp$12;
+ size = _tmp$13;
+ return [r, size];
+ }
+ s3 = s.charCodeAt(3);
+ if (s3 < 128 || 191 < s3) {
+ _tmp$14 = 65533;
+ _tmp$15 = 1;
+ r = _tmp$14;
+ size = _tmp$15;
+ return [r, size];
+ }
+ _tmp$16 = (((((((s0 & 7) >>> 0) >> 0)) << 18 >> 0) | (((((s1 & 63) >>> 0) >> 0)) << 12 >> 0)) | (((((s2 & 63) >>> 0) >> 0)) << 6 >> 0)) | ((((s3 & 63) >>> 0) >> 0));
+ _tmp$17 = 4;
+ r = _tmp$16;
+ size = _tmp$17;
+ return [r, size];
+ };
+ $pkg.DecodeRuneInString = DecodeRuneInString;
+ DecodeLastRune = function(p) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tuple, end, lim, p, r, size, start;
+ r = 0;
+ size = 0;
+ end = p.$length;
+ if (end === 0) {
+ _tmp = 65533;
+ _tmp$1 = 0;
+ r = _tmp;
+ size = _tmp$1;
+ return [r, size];
+ }
+ start = end - 1 >> 0;
+ r = ((((start < 0 || start >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + start]) >> 0));
+ if (r < 128) {
+ _tmp$2 = r;
+ _tmp$3 = 1;
+ r = _tmp$2;
+ size = _tmp$3;
+ return [r, size];
+ }
+ lim = end - 4 >> 0;
+ if (lim < 0) {
+ lim = 0;
+ }
+ start = start - (1) >> 0;
+ while (true) {
+ if (!(start >= lim)) { break; }
+ if (RuneStart(((start < 0 || start >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + start]))) {
+ break;
+ }
+ start = start - (1) >> 0;
+ }
+ if (start < 0) {
+ start = 0;
+ }
+ _tuple = DecodeRune($subslice(p, start, end));
+ r = _tuple[0];
+ size = _tuple[1];
+ if (!(((start + size >> 0) === end))) {
+ _tmp$4 = 65533;
+ _tmp$5 = 1;
+ r = _tmp$4;
+ size = _tmp$5;
+ return [r, size];
+ }
+ _tmp$6 = r;
+ _tmp$7 = size;
+ r = _tmp$6;
+ size = _tmp$7;
+ return [r, size];
+ };
+ $pkg.DecodeLastRune = DecodeLastRune;
+ DecodeLastRuneInString = function(s) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tuple, end, lim, r, s, size, start;
+ r = 0;
+ size = 0;
+ end = s.length;
+ if (end === 0) {
+ _tmp = 65533;
+ _tmp$1 = 0;
+ r = _tmp;
+ size = _tmp$1;
+ return [r, size];
+ }
+ start = end - 1 >> 0;
+ r = ((s.charCodeAt(start) >> 0));
+ if (r < 128) {
+ _tmp$2 = r;
+ _tmp$3 = 1;
+ r = _tmp$2;
+ size = _tmp$3;
+ return [r, size];
+ }
+ lim = end - 4 >> 0;
+ if (lim < 0) {
+ lim = 0;
+ }
+ start = start - (1) >> 0;
+ while (true) {
+ if (!(start >= lim)) { break; }
+ if (RuneStart(s.charCodeAt(start))) {
+ break;
+ }
+ start = start - (1) >> 0;
+ }
+ if (start < 0) {
+ start = 0;
+ }
+ _tuple = DecodeRuneInString($substring(s, start, end));
+ r = _tuple[0];
+ size = _tuple[1];
+ if (!(((start + size >> 0) === end))) {
+ _tmp$4 = 65533;
+ _tmp$5 = 1;
+ r = _tmp$4;
+ size = _tmp$5;
+ return [r, size];
+ }
+ _tmp$6 = r;
+ _tmp$7 = size;
+ r = _tmp$6;
+ size = _tmp$7;
+ return [r, size];
+ };
+ $pkg.DecodeLastRuneInString = DecodeLastRuneInString;
+ RuneLen = function(r) {
+ var $ptr, r;
+ if (r < 0) {
+ return -1;
+ } else if (r <= 127) {
+ return 1;
+ } else if (r <= 2047) {
+ return 2;
+ } else if (55296 <= r && r <= 57343) {
+ return -1;
+ } else if (r <= 65535) {
+ return 3;
+ } else if (r <= 1114111) {
+ return 4;
+ }
+ return -1;
+ };
+ $pkg.RuneLen = RuneLen;
+ EncodeRune = function(p, r) {
+ var $ptr, i, p, r;
+ i = ((r >>> 0));
+ if (i <= 127) {
+ (0 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 0] = ((r << 24 >>> 24)));
+ return 1;
+ } else if (i <= 2047) {
+ $unused((1 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 1]));
+ (0 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 0] = ((192 | (((r >> 6 >> 0) << 24 >>> 24))) >>> 0));
+ (1 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 1] = ((128 | ((((r << 24 >>> 24)) & 63) >>> 0)) >>> 0));
+ return 2;
+ } else if ((i > 1114111) || (55296 <= i && i <= 57343)) {
+ r = 65533;
+ $unused((2 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 2]));
+ (0 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 0] = ((224 | (((r >> 12 >> 0) << 24 >>> 24))) >>> 0));
+ (1 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 1] = ((128 | (((((r >> 6 >> 0) << 24 >>> 24)) & 63) >>> 0)) >>> 0));
+ (2 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 2] = ((128 | ((((r << 24 >>> 24)) & 63) >>> 0)) >>> 0));
+ return 3;
+ } else if (i <= 65535) {
+ $unused((2 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 2]));
+ (0 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 0] = ((224 | (((r >> 12 >> 0) << 24 >>> 24))) >>> 0));
+ (1 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 1] = ((128 | (((((r >> 6 >> 0) << 24 >>> 24)) & 63) >>> 0)) >>> 0));
+ (2 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 2] = ((128 | ((((r << 24 >>> 24)) & 63) >>> 0)) >>> 0));
+ return 3;
+ } else {
+ $unused((3 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 3]));
+ (0 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 0] = ((240 | (((r >> 18 >> 0) << 24 >>> 24))) >>> 0));
+ (1 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 1] = ((128 | (((((r >> 12 >> 0) << 24 >>> 24)) & 63) >>> 0)) >>> 0));
+ (2 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 2] = ((128 | (((((r >> 6 >> 0) << 24 >>> 24)) & 63) >>> 0)) >>> 0));
+ (3 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 3] = ((128 | ((((r << 24 >>> 24)) & 63) >>> 0)) >>> 0));
+ return 4;
+ }
+ };
+ $pkg.EncodeRune = EncodeRune;
+ RuneCount = function(p) {
+ var $ptr, accept, c, c$1, c$2, c$3, i, n, np, p, size, x, x$1, x$2, x$3, x$4;
+ np = p.$length;
+ n = 0;
+ i = 0;
+ while (true) {
+ if (!(i < np)) { break; }
+ n = n + (1) >> 0;
+ c = ((i < 0 || i >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + i]);
+ if (c < 128) {
+ i = i + (1) >> 0;
+ continue;
+ }
+ x = ((c < 0 || c >= first.length) ? ($throwRuntimeError("index out of range"), undefined) : first[c]);
+ if (x === 241) {
+ i = i + (1) >> 0;
+ continue;
+ }
+ size = ((((x & 7) >>> 0) >> 0));
+ if ((i + size >> 0) > np) {
+ i = i + (1) >> 0;
+ continue;
+ }
+ accept = $clone((x$1 = x >>> 4 << 24 >>> 24, ((x$1 < 0 || x$1 >= acceptRanges.length) ? ($throwRuntimeError("index out of range"), undefined) : acceptRanges[x$1])), acceptRange);
+ c$1 = (x$2 = i + 1 >> 0, ((x$2 < 0 || x$2 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$2]));
+ if (c$1 < accept.lo || accept.hi < c$1) {
+ size = 1;
+ } else if (size === 2) {
+ } else {
+ c$2 = (x$3 = i + 2 >> 0, ((x$3 < 0 || x$3 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$3]));
+ if (c$2 < 128 || 191 < c$2) {
+ size = 1;
+ } else if (size === 3) {
+ } else {
+ c$3 = (x$4 = i + 3 >> 0, ((x$4 < 0 || x$4 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$4]));
+ if (c$3 < 128 || 191 < c$3) {
+ size = 1;
+ }
+ }
+ }
+ i = i + (size) >> 0;
+ }
+ return n;
+ };
+ $pkg.RuneCount = RuneCount;
+ RuneCountInString = function(s) {
+ var $ptr, accept, c, c$1, c$2, c$3, i, n, ns, s, size, x, x$1;
+ n = 0;
+ ns = s.length;
+ i = 0;
+ while (true) {
+ if (!(i < ns)) { break; }
+ c = s.charCodeAt(i);
+ if (c < 128) {
+ i = i + (1) >> 0;
+ n = n + (1) >> 0;
+ continue;
+ }
+ x = ((c < 0 || c >= first.length) ? ($throwRuntimeError("index out of range"), undefined) : first[c]);
+ if (x === 241) {
+ i = i + (1) >> 0;
+ n = n + (1) >> 0;
+ continue;
+ }
+ size = ((((x & 7) >>> 0) >> 0));
+ if ((i + size >> 0) > ns) {
+ i = i + (1) >> 0;
+ n = n + (1) >> 0;
+ continue;
+ }
+ accept = $clone((x$1 = x >>> 4 << 24 >>> 24, ((x$1 < 0 || x$1 >= acceptRanges.length) ? ($throwRuntimeError("index out of range"), undefined) : acceptRanges[x$1])), acceptRange);
+ c$1 = s.charCodeAt((i + 1 >> 0));
+ if (c$1 < accept.lo || accept.hi < c$1) {
+ size = 1;
+ } else if (size === 2) {
+ } else {
+ c$2 = s.charCodeAt((i + 2 >> 0));
+ if (c$2 < 128 || 191 < c$2) {
+ size = 1;
+ } else if (size === 3) {
+ } else {
+ c$3 = s.charCodeAt((i + 3 >> 0));
+ if (c$3 < 128 || 191 < c$3) {
+ size = 1;
+ }
+ }
+ }
+ i = i + (size) >> 0;
+ n = n + (1) >> 0;
+ }
+ n = n;
+ return n;
+ };
+ $pkg.RuneCountInString = RuneCountInString;
+ RuneStart = function(b) {
+ var $ptr, b;
+ return !((((b & 192) >>> 0) === 128));
+ };
+ $pkg.RuneStart = RuneStart;
+ ValidRune = function(r) {
+ var $ptr, r;
+ if (0 <= r && r < 55296) {
+ return true;
+ } else if (57343 < r && r <= 1114111) {
+ return true;
+ }
+ return false;
+ };
+ $pkg.ValidRune = ValidRune;
+ acceptRange.init("unicode/utf8", [{prop: "lo", name: "lo", exported: false, typ: $Uint8, tag: ""}, {prop: "hi", name: "hi", exported: false, typ: $Uint8, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ first = $toNativeArray($kindUint8, [240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 19, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 35, 3, 3, 52, 4, 4, 4, 68, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241]);
+ acceptRanges = $toNativeArray($kindStruct, [new acceptRange.ptr(128, 191), new acceptRange.ptr(160, 191), new acceptRange.ptr(128, 159), new acceptRange.ptr(144, 191), new acceptRange.ptr(128, 143)]);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["strconv"] = (function() {
+ var $pkg = {}, $init, errors, math, utf8, NumError, decimal, leftCheat, extFloat, floatInfo, decimalSlice, sliceType, sliceType$1, sliceType$2, sliceType$3, sliceType$4, sliceType$5, arrayType, ptrType, sliceType$6, arrayType$1, arrayType$2, ptrType$1, arrayType$3, arrayType$4, ptrType$2, ptrType$3, ptrType$4, optimize, powtab, float64pow10, float32pow10, leftcheats, smallPowersOfTen, powersOfTen, uint64pow10, float32info, float32info$24ptr, float64info, float64info$24ptr, isPrint16, isNotPrint16, isPrint32, isNotPrint32, isGraphic, shifts, ParseBool, FormatBool, AppendBool, equalIgnoreCase, special, readFloat, atof64exact, atof32exact, atof32, atof64, ParseFloat, syntaxError, rangeError, ParseUint, ParseInt, Atoi, digitZero, trim, rightShift, prefixIsLessThan, leftShift, shouldRoundUp, frexp10Many, adjustLastDigitFixed, adjustLastDigit, FormatFloat, AppendFloat, genericFtoa, bigFtoa, formatDigits, roundShortest, fmtE, fmtF, fmtB, min, max, FormatUint, FormatInt, Itoa, AppendInt, AppendUint, formatBits, quoteWith, appendQuotedWith, appendQuotedRuneWith, appendEscapedRune, Quote, AppendQuote, QuoteToASCII, AppendQuoteToASCII, AppendQuoteRune, AppendQuoteRuneToASCII, CanBackquote, unhex, UnquoteChar, Unquote, contains, bsearch16, bsearch32, IsPrint, isInGraphicList;
+ errors = $packages["errors"];
+ math = $packages["math"];
+ utf8 = $packages["unicode/utf8"];
+ NumError = $pkg.NumError = $newType(0, $kindStruct, "strconv.NumError", true, "strconv", true, function(Func_, Num_, Err_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Func = "";
+ this.Num = "";
+ this.Err = $ifaceNil;
+ return;
+ }
+ this.Func = Func_;
+ this.Num = Num_;
+ this.Err = Err_;
+ });
+ decimal = $pkg.decimal = $newType(0, $kindStruct, "strconv.decimal", true, "strconv", false, function(d_, nd_, dp_, neg_, trunc_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.d = arrayType.zero();
+ this.nd = 0;
+ this.dp = 0;
+ this.neg = false;
+ this.trunc = false;
+ return;
+ }
+ this.d = d_;
+ this.nd = nd_;
+ this.dp = dp_;
+ this.neg = neg_;
+ this.trunc = trunc_;
+ });
+ leftCheat = $pkg.leftCheat = $newType(0, $kindStruct, "strconv.leftCheat", true, "strconv", false, function(delta_, cutoff_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.delta = 0;
+ this.cutoff = "";
+ return;
+ }
+ this.delta = delta_;
+ this.cutoff = cutoff_;
+ });
+ extFloat = $pkg.extFloat = $newType(0, $kindStruct, "strconv.extFloat", true, "strconv", false, function(mant_, exp_, neg_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.mant = new $Uint64(0, 0);
+ this.exp = 0;
+ this.neg = false;
+ return;
+ }
+ this.mant = mant_;
+ this.exp = exp_;
+ this.neg = neg_;
+ });
+ floatInfo = $pkg.floatInfo = $newType(0, $kindStruct, "strconv.floatInfo", true, "strconv", false, function(mantbits_, expbits_, bias_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.mantbits = 0;
+ this.expbits = 0;
+ this.bias = 0;
+ return;
+ }
+ this.mantbits = mantbits_;
+ this.expbits = expbits_;
+ this.bias = bias_;
+ });
+ decimalSlice = $pkg.decimalSlice = $newType(0, $kindStruct, "strconv.decimalSlice", true, "strconv", false, function(d_, nd_, dp_, neg_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.d = sliceType$6.nil;
+ this.nd = 0;
+ this.dp = 0;
+ this.neg = false;
+ return;
+ }
+ this.d = d_;
+ this.nd = nd_;
+ this.dp = dp_;
+ this.neg = neg_;
+ });
+ sliceType = $sliceType($Int);
+ sliceType$1 = $sliceType($Float64);
+ sliceType$2 = $sliceType($Float32);
+ sliceType$3 = $sliceType(leftCheat);
+ sliceType$4 = $sliceType($Uint16);
+ sliceType$5 = $sliceType($Uint32);
+ arrayType = $arrayType($Uint8, 800);
+ ptrType = $ptrType(NumError);
+ sliceType$6 = $sliceType($Uint8);
+ arrayType$1 = $arrayType($Uint8, 24);
+ arrayType$2 = $arrayType($Uint8, 32);
+ ptrType$1 = $ptrType(floatInfo);
+ arrayType$3 = $arrayType($Uint8, 65);
+ arrayType$4 = $arrayType($Uint8, 4);
+ ptrType$2 = $ptrType(decimal);
+ ptrType$3 = $ptrType(decimalSlice);
+ ptrType$4 = $ptrType(extFloat);
+ ParseBool = function(str) {
+ var $ptr, _1, str;
+ _1 = str;
+ if (_1 === ("1") || _1 === ("t") || _1 === ("T") || _1 === ("true") || _1 === ("TRUE") || _1 === ("True")) {
+ return [true, $ifaceNil];
+ } else if (_1 === ("0") || _1 === ("f") || _1 === ("F") || _1 === ("false") || _1 === ("FALSE") || _1 === ("False")) {
+ return [false, $ifaceNil];
+ }
+ return [false, syntaxError("ParseBool", str)];
+ };
+ $pkg.ParseBool = ParseBool;
+ FormatBool = function(b) {
+ var $ptr, b;
+ if (b) {
+ return "true";
+ }
+ return "false";
+ };
+ $pkg.FormatBool = FormatBool;
+ AppendBool = function(dst, b) {
+ var $ptr, b, dst;
+ if (b) {
+ return $appendSlice(dst, "true");
+ }
+ return $appendSlice(dst, "false");
+ };
+ $pkg.AppendBool = AppendBool;
+ equalIgnoreCase = function(s1, s2) {
+ var $ptr, c1, c2, i, s1, s2;
+ if (!((s1.length === s2.length))) {
+ return false;
+ }
+ i = 0;
+ while (true) {
+ if (!(i < s1.length)) { break; }
+ c1 = s1.charCodeAt(i);
+ if (65 <= c1 && c1 <= 90) {
+ c1 = c1 + (32) << 24 >>> 24;
+ }
+ c2 = s2.charCodeAt(i);
+ if (65 <= c2 && c2 <= 90) {
+ c2 = c2 + (32) << 24 >>> 24;
+ }
+ if (!((c1 === c2))) {
+ return false;
+ }
+ i = i + (1) >> 0;
+ }
+ return true;
+ };
+ special = function(s) {
+ var $ptr, _1, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, f, ok, s;
+ f = 0;
+ ok = false;
+ if (s.length === 0) {
+ return [f, ok];
+ }
+ _1 = s.charCodeAt(0);
+ if (_1 === (43)) {
+ if (equalIgnoreCase(s, "+inf") || equalIgnoreCase(s, "+infinity")) {
+ _tmp = math.Inf(1);
+ _tmp$1 = true;
+ f = _tmp;
+ ok = _tmp$1;
+ return [f, ok];
+ }
+ } else if (_1 === (45)) {
+ if (equalIgnoreCase(s, "-inf") || equalIgnoreCase(s, "-infinity")) {
+ _tmp$2 = math.Inf(-1);
+ _tmp$3 = true;
+ f = _tmp$2;
+ ok = _tmp$3;
+ return [f, ok];
+ }
+ } else if ((_1 === (110)) || (_1 === (78))) {
+ if (equalIgnoreCase(s, "nan")) {
+ _tmp$4 = math.NaN();
+ _tmp$5 = true;
+ f = _tmp$4;
+ ok = _tmp$5;
+ return [f, ok];
+ }
+ } else if ((_1 === (105)) || (_1 === (73))) {
+ if (equalIgnoreCase(s, "inf") || equalIgnoreCase(s, "infinity")) {
+ _tmp$6 = math.Inf(1);
+ _tmp$7 = true;
+ f = _tmp$6;
+ ok = _tmp$7;
+ return [f, ok];
+ }
+ } else {
+ return [f, ok];
+ }
+ return [f, ok];
+ };
+ decimal.ptr.prototype.set = function(s) {
+ var $ptr, b, e, esign, i, ok, s, sawdigits, sawdot, x, x$1;
+ ok = false;
+ b = this;
+ i = 0;
+ b.neg = false;
+ b.trunc = false;
+ if (i >= s.length) {
+ return ok;
+ }
+ if ((s.charCodeAt(i) === 43)) {
+ i = i + (1) >> 0;
+ } else if ((s.charCodeAt(i) === 45)) {
+ b.neg = true;
+ i = i + (1) >> 0;
+ }
+ sawdot = false;
+ sawdigits = false;
+ while (true) {
+ if (!(i < s.length)) { break; }
+ if ((s.charCodeAt(i) === 46)) {
+ if (sawdot) {
+ return ok;
+ }
+ sawdot = true;
+ b.dp = b.nd;
+ i = i + (1) >> 0;
+ continue;
+ } else if (48 <= s.charCodeAt(i) && s.charCodeAt(i) <= 57) {
+ sawdigits = true;
+ if ((s.charCodeAt(i) === 48) && (b.nd === 0)) {
+ b.dp = b.dp - (1) >> 0;
+ i = i + (1) >> 0;
+ continue;
+ }
+ if (b.nd < 800) {
+ (x = b.d, x$1 = b.nd, ((x$1 < 0 || x$1 >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[x$1] = s.charCodeAt(i)));
+ b.nd = b.nd + (1) >> 0;
+ } else if (!((s.charCodeAt(i) === 48))) {
+ b.trunc = true;
+ }
+ i = i + (1) >> 0;
+ continue;
+ }
+ break;
+ }
+ if (!sawdigits) {
+ return ok;
+ }
+ if (!sawdot) {
+ b.dp = b.nd;
+ }
+ if (i < s.length && ((s.charCodeAt(i) === 101) || (s.charCodeAt(i) === 69))) {
+ i = i + (1) >> 0;
+ if (i >= s.length) {
+ return ok;
+ }
+ esign = 1;
+ if (s.charCodeAt(i) === 43) {
+ i = i + (1) >> 0;
+ } else if (s.charCodeAt(i) === 45) {
+ i = i + (1) >> 0;
+ esign = -1;
+ }
+ if (i >= s.length || s.charCodeAt(i) < 48 || s.charCodeAt(i) > 57) {
+ return ok;
+ }
+ e = 0;
+ while (true) {
+ if (!(i < s.length && 48 <= s.charCodeAt(i) && s.charCodeAt(i) <= 57)) { break; }
+ if (e < 10000) {
+ e = (($imul(e, 10)) + ((s.charCodeAt(i) >> 0)) >> 0) - 48 >> 0;
+ }
+ i = i + (1) >> 0;
+ }
+ b.dp = b.dp + (($imul(e, esign))) >> 0;
+ }
+ if (!((i === s.length))) {
+ return ok;
+ }
+ ok = true;
+ return ok;
+ };
+ decimal.prototype.set = function(s) { return this.$val.set(s); };
+ readFloat = function(s) {
+ var $ptr, _1, c, dp, e, esign, exp, i, mantissa, nd, ndMant, neg, ok, s, sawdigits, sawdot, trunc, x;
+ mantissa = new $Uint64(0, 0);
+ exp = 0;
+ neg = false;
+ trunc = false;
+ ok = false;
+ i = 0;
+ if (i >= s.length) {
+ return [mantissa, exp, neg, trunc, ok];
+ }
+ if ((s.charCodeAt(i) === 43)) {
+ i = i + (1) >> 0;
+ } else if ((s.charCodeAt(i) === 45)) {
+ neg = true;
+ i = i + (1) >> 0;
+ }
+ sawdot = false;
+ sawdigits = false;
+ nd = 0;
+ ndMant = 0;
+ dp = 0;
+ while (true) {
+ if (!(i < s.length)) { break; }
+ c = s.charCodeAt(i);
+ _1 = true;
+ if (_1 === ((c === 46))) {
+ if (sawdot) {
+ return [mantissa, exp, neg, trunc, ok];
+ }
+ sawdot = true;
+ dp = nd;
+ i = i + (1) >> 0;
+ continue;
+ } else if (_1 === (48 <= c && c <= 57)) {
+ sawdigits = true;
+ if ((c === 48) && (nd === 0)) {
+ dp = dp - (1) >> 0;
+ i = i + (1) >> 0;
+ continue;
+ }
+ nd = nd + (1) >> 0;
+ if (ndMant < 19) {
+ mantissa = $mul64(mantissa, (new $Uint64(0, 10)));
+ mantissa = (x = (new $Uint64(0, (c - 48 << 24 >>> 24))), new $Uint64(mantissa.$high + x.$high, mantissa.$low + x.$low));
+ ndMant = ndMant + (1) >> 0;
+ } else if (!((s.charCodeAt(i) === 48))) {
+ trunc = true;
+ }
+ i = i + (1) >> 0;
+ continue;
+ }
+ break;
+ }
+ if (!sawdigits) {
+ return [mantissa, exp, neg, trunc, ok];
+ }
+ if (!sawdot) {
+ dp = nd;
+ }
+ if (i < s.length && ((s.charCodeAt(i) === 101) || (s.charCodeAt(i) === 69))) {
+ i = i + (1) >> 0;
+ if (i >= s.length) {
+ return [mantissa, exp, neg, trunc, ok];
+ }
+ esign = 1;
+ if (s.charCodeAt(i) === 43) {
+ i = i + (1) >> 0;
+ } else if (s.charCodeAt(i) === 45) {
+ i = i + (1) >> 0;
+ esign = -1;
+ }
+ if (i >= s.length || s.charCodeAt(i) < 48 || s.charCodeAt(i) > 57) {
+ return [mantissa, exp, neg, trunc, ok];
+ }
+ e = 0;
+ while (true) {
+ if (!(i < s.length && 48 <= s.charCodeAt(i) && s.charCodeAt(i) <= 57)) { break; }
+ if (e < 10000) {
+ e = (($imul(e, 10)) + ((s.charCodeAt(i) >> 0)) >> 0) - 48 >> 0;
+ }
+ i = i + (1) >> 0;
+ }
+ dp = dp + (($imul(e, esign))) >> 0;
+ }
+ if (!((i === s.length))) {
+ return [mantissa, exp, neg, trunc, ok];
+ }
+ if (!((mantissa.$high === 0 && mantissa.$low === 0))) {
+ exp = dp - ndMant >> 0;
+ }
+ ok = true;
+ return [mantissa, exp, neg, trunc, ok];
+ };
+ decimal.ptr.prototype.floatBits = function(flt) {
+ var $ptr, _tmp, _tmp$1, b, bits, d, exp, flt, mant, n, n$1, n$2, overflow, x, x$1, x$2, x$3, x$4, x$5, x$6, x$7, x$8, y, y$1, y$2, y$3, $s;
+ /* */ $s = 0; s: while (true) { switch ($s) { case 0:
+ b = new $Uint64(0, 0);
+ overflow = false;
+ d = this;
+ exp = 0;
+ mant = new $Uint64(0, 0);
+ /* */ if (d.nd === 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (d.nd === 0) { */ case 1:
+ mant = new $Uint64(0, 0);
+ exp = flt.bias;
+ /* goto out */ $s = 3; continue;
+ /* } */ case 2:
+ /* */ if (d.dp > 310) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (d.dp > 310) { */ case 4:
+ /* goto overflow */ $s = 6; continue;
+ /* } */ case 5:
+ /* */ if (d.dp < -330) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (d.dp < -330) { */ case 7:
+ mant = new $Uint64(0, 0);
+ exp = flt.bias;
+ /* goto out */ $s = 3; continue;
+ /* } */ case 8:
+ exp = 0;
+ while (true) {
+ if (!(d.dp > 0)) { break; }
+ n = 0;
+ if (d.dp >= powtab.$length) {
+ n = 27;
+ } else {
+ n = (x = d.dp, ((x < 0 || x >= powtab.$length) ? ($throwRuntimeError("index out of range"), undefined) : powtab.$array[powtab.$offset + x]));
+ }
+ d.Shift(-n);
+ exp = exp + (n) >> 0;
+ }
+ while (true) {
+ if (!(d.dp < 0 || (d.dp === 0) && d.d[0] < 53)) { break; }
+ n$1 = 0;
+ if (-d.dp >= powtab.$length) {
+ n$1 = 27;
+ } else {
+ n$1 = (x$1 = -d.dp, ((x$1 < 0 || x$1 >= powtab.$length) ? ($throwRuntimeError("index out of range"), undefined) : powtab.$array[powtab.$offset + x$1]));
+ }
+ d.Shift(n$1);
+ exp = exp - (n$1) >> 0;
+ }
+ exp = exp - (1) >> 0;
+ if (exp < (flt.bias + 1 >> 0)) {
+ n$2 = (flt.bias + 1 >> 0) - exp >> 0;
+ d.Shift(-n$2);
+ exp = exp + (n$2) >> 0;
+ }
+ /* */ if ((exp - flt.bias >> 0) >= (((y = flt.expbits, y < 32 ? (1 << y) : 0) >> 0) - 1 >> 0)) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if ((exp - flt.bias >> 0) >= (((y = flt.expbits, y < 32 ? (1 << y) : 0) >> 0) - 1 >> 0)) { */ case 9:
+ /* goto overflow */ $s = 6; continue;
+ /* } */ case 10:
+ d.Shift((((1 + flt.mantbits >>> 0) >> 0)));
+ mant = d.RoundedInteger();
+ /* */ if ((x$2 = $shiftLeft64(new $Uint64(0, 2), flt.mantbits), (mant.$high === x$2.$high && mant.$low === x$2.$low))) { $s = 11; continue; }
+ /* */ $s = 12; continue;
+ /* if ((x$2 = $shiftLeft64(new $Uint64(0, 2), flt.mantbits), (mant.$high === x$2.$high && mant.$low === x$2.$low))) { */ case 11:
+ mant = $shiftRightUint64(mant, (1));
+ exp = exp + (1) >> 0;
+ /* */ if ((exp - flt.bias >> 0) >= (((y$1 = flt.expbits, y$1 < 32 ? (1 << y$1) : 0) >> 0) - 1 >> 0)) { $s = 13; continue; }
+ /* */ $s = 14; continue;
+ /* if ((exp - flt.bias >> 0) >= (((y$1 = flt.expbits, y$1 < 32 ? (1 << y$1) : 0) >> 0) - 1 >> 0)) { */ case 13:
+ /* goto overflow */ $s = 6; continue;
+ /* } */ case 14:
+ /* } */ case 12:
+ if ((x$3 = (x$4 = $shiftLeft64(new $Uint64(0, 1), flt.mantbits), new $Uint64(mant.$high & x$4.$high, (mant.$low & x$4.$low) >>> 0)), (x$3.$high === 0 && x$3.$low === 0))) {
+ exp = flt.bias;
+ }
+ /* goto out */ $s = 3; continue;
+ /* overflow: */ case 6:
+ mant = new $Uint64(0, 0);
+ exp = (((y$2 = flt.expbits, y$2 < 32 ? (1 << y$2) : 0) >> 0) - 1 >> 0) + flt.bias >> 0;
+ overflow = true;
+ /* out: */ case 3:
+ bits = (x$5 = (x$6 = $shiftLeft64(new $Uint64(0, 1), flt.mantbits), new $Uint64(x$6.$high - 0, x$6.$low - 1)), new $Uint64(mant.$high & x$5.$high, (mant.$low & x$5.$low) >>> 0));
+ bits = (x$7 = $shiftLeft64((new $Uint64(0, (((exp - flt.bias >> 0)) & ((((y$3 = flt.expbits, y$3 < 32 ? (1 << y$3) : 0) >> 0) - 1 >> 0))))), flt.mantbits), new $Uint64(bits.$high | x$7.$high, (bits.$low | x$7.$low) >>> 0));
+ if (d.neg) {
+ bits = (x$8 = $shiftLeft64($shiftLeft64(new $Uint64(0, 1), flt.mantbits), flt.expbits), new $Uint64(bits.$high | x$8.$high, (bits.$low | x$8.$low) >>> 0));
+ }
+ _tmp = bits;
+ _tmp$1 = overflow;
+ b = _tmp;
+ overflow = _tmp$1;
+ $s = -1; return [b, overflow];
+ /* */ } return; }
+ };
+ decimal.prototype.floatBits = function(flt) { return this.$val.floatBits(flt); };
+ atof64exact = function(mantissa, exp, neg) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, exp, f, mantissa, neg, ok, x, x$1, x$2;
+ f = 0;
+ ok = false;
+ if (!((x = $shiftRightUint64(mantissa, float64info.mantbits), (x.$high === 0 && x.$low === 0)))) {
+ return [f, ok];
+ }
+ f = ($flatten64(mantissa));
+ if (neg) {
+ f = -f;
+ }
+ if ((exp === 0)) {
+ _tmp = f;
+ _tmp$1 = true;
+ f = _tmp;
+ ok = _tmp$1;
+ return [f, ok];
+ } else if (exp > 0 && exp <= 37) {
+ if (exp > 22) {
+ f = f * ((x$1 = exp - 22 >> 0, ((x$1 < 0 || x$1 >= float64pow10.$length) ? ($throwRuntimeError("index out of range"), undefined) : float64pow10.$array[float64pow10.$offset + x$1])));
+ exp = 22;
+ }
+ if (f > 1e+15 || f < -1e+15) {
+ return [f, ok];
+ }
+ _tmp$2 = f * ((exp < 0 || exp >= float64pow10.$length) ? ($throwRuntimeError("index out of range"), undefined) : float64pow10.$array[float64pow10.$offset + exp]);
+ _tmp$3 = true;
+ f = _tmp$2;
+ ok = _tmp$3;
+ return [f, ok];
+ } else if (exp < 0 && exp >= -22) {
+ _tmp$4 = f / (x$2 = -exp, ((x$2 < 0 || x$2 >= float64pow10.$length) ? ($throwRuntimeError("index out of range"), undefined) : float64pow10.$array[float64pow10.$offset + x$2]));
+ _tmp$5 = true;
+ f = _tmp$4;
+ ok = _tmp$5;
+ return [f, ok];
+ }
+ return [f, ok];
+ };
+ atof32exact = function(mantissa, exp, neg) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, exp, f, mantissa, neg, ok, x, x$1, x$2;
+ f = 0;
+ ok = false;
+ if (!((x = $shiftRightUint64(mantissa, float32info.mantbits), (x.$high === 0 && x.$low === 0)))) {
+ return [f, ok];
+ }
+ f = ($flatten64(mantissa));
+ if (neg) {
+ f = -f;
+ }
+ if ((exp === 0)) {
+ _tmp = f;
+ _tmp$1 = true;
+ f = _tmp;
+ ok = _tmp$1;
+ return [f, ok];
+ } else if (exp > 0 && exp <= 17) {
+ if (exp > 10) {
+ f = $fround(f * ((x$1 = exp - 10 >> 0, ((x$1 < 0 || x$1 >= float32pow10.$length) ? ($throwRuntimeError("index out of range"), undefined) : float32pow10.$array[float32pow10.$offset + x$1]))));
+ exp = 10;
+ }
+ if (f > 1e+07 || f < -1e+07) {
+ return [f, ok];
+ }
+ _tmp$2 = $fround(f * ((exp < 0 || exp >= float32pow10.$length) ? ($throwRuntimeError("index out of range"), undefined) : float32pow10.$array[float32pow10.$offset + exp]));
+ _tmp$3 = true;
+ f = _tmp$2;
+ ok = _tmp$3;
+ return [f, ok];
+ } else if (exp < 0 && exp >= -10) {
+ _tmp$4 = $fround(f / (x$2 = -exp, ((x$2 < 0 || x$2 >= float32pow10.$length) ? ($throwRuntimeError("index out of range"), undefined) : float32pow10.$array[float32pow10.$offset + x$2])));
+ _tmp$5 = true;
+ f = _tmp$4;
+ ok = _tmp$5;
+ return [f, ok];
+ }
+ return [f, ok];
+ };
+ atof32 = function(s) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, b, b$1, d, err, exp, ext, f, f$1, mantissa, neg, ok, ok$1, ok$2, ok$3, ovf, ovf$1, s, trunc, val;
+ f = 0;
+ err = $ifaceNil;
+ _tuple = special(s);
+ val = _tuple[0];
+ ok = _tuple[1];
+ if (ok) {
+ _tmp = ($fround(val));
+ _tmp$1 = $ifaceNil;
+ f = _tmp;
+ err = _tmp$1;
+ return [f, err];
+ }
+ if (optimize) {
+ _tuple$1 = readFloat(s);
+ mantissa = _tuple$1[0];
+ exp = _tuple$1[1];
+ neg = _tuple$1[2];
+ trunc = _tuple$1[3];
+ ok$1 = _tuple$1[4];
+ if (ok$1) {
+ if (!trunc) {
+ _tuple$2 = atof32exact(mantissa, exp, neg);
+ f$1 = _tuple$2[0];
+ ok$2 = _tuple$2[1];
+ if (ok$2) {
+ _tmp$2 = f$1;
+ _tmp$3 = $ifaceNil;
+ f = _tmp$2;
+ err = _tmp$3;
+ return [f, err];
+ }
+ }
+ ext = new extFloat.ptr(new $Uint64(0, 0), 0, false);
+ ok$3 = ext.AssignDecimal(mantissa, exp, neg, trunc, float32info);
+ if (ok$3) {
+ _tuple$3 = ext.floatBits(float32info);
+ b = _tuple$3[0];
+ ovf = _tuple$3[1];
+ f = math.Float32frombits(((b.$low >>> 0)));
+ if (ovf) {
+ err = rangeError("ParseFloat", s);
+ }
+ _tmp$4 = f;
+ _tmp$5 = err;
+ f = _tmp$4;
+ err = _tmp$5;
+ return [f, err];
+ }
+ }
+ }
+ d = new decimal.ptr(arrayType.zero(), 0, 0, false, false);
+ if (!d.set(s)) {
+ _tmp$6 = 0;
+ _tmp$7 = syntaxError("ParseFloat", s);
+ f = _tmp$6;
+ err = _tmp$7;
+ return [f, err];
+ }
+ _tuple$4 = d.floatBits(float32info);
+ b$1 = _tuple$4[0];
+ ovf$1 = _tuple$4[1];
+ f = math.Float32frombits(((b$1.$low >>> 0)));
+ if (ovf$1) {
+ err = rangeError("ParseFloat", s);
+ }
+ _tmp$8 = f;
+ _tmp$9 = err;
+ f = _tmp$8;
+ err = _tmp$9;
+ return [f, err];
+ };
+ atof64 = function(s) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, b, b$1, d, err, exp, ext, f, f$1, mantissa, neg, ok, ok$1, ok$2, ok$3, ovf, ovf$1, s, trunc, val;
+ f = 0;
+ err = $ifaceNil;
+ _tuple = special(s);
+ val = _tuple[0];
+ ok = _tuple[1];
+ if (ok) {
+ _tmp = val;
+ _tmp$1 = $ifaceNil;
+ f = _tmp;
+ err = _tmp$1;
+ return [f, err];
+ }
+ if (optimize) {
+ _tuple$1 = readFloat(s);
+ mantissa = _tuple$1[0];
+ exp = _tuple$1[1];
+ neg = _tuple$1[2];
+ trunc = _tuple$1[3];
+ ok$1 = _tuple$1[4];
+ if (ok$1) {
+ if (!trunc) {
+ _tuple$2 = atof64exact(mantissa, exp, neg);
+ f$1 = _tuple$2[0];
+ ok$2 = _tuple$2[1];
+ if (ok$2) {
+ _tmp$2 = f$1;
+ _tmp$3 = $ifaceNil;
+ f = _tmp$2;
+ err = _tmp$3;
+ return [f, err];
+ }
+ }
+ ext = new extFloat.ptr(new $Uint64(0, 0), 0, false);
+ ok$3 = ext.AssignDecimal(mantissa, exp, neg, trunc, float64info);
+ if (ok$3) {
+ _tuple$3 = ext.floatBits(float64info);
+ b = _tuple$3[0];
+ ovf = _tuple$3[1];
+ f = math.Float64frombits(b);
+ if (ovf) {
+ err = rangeError("ParseFloat", s);
+ }
+ _tmp$4 = f;
+ _tmp$5 = err;
+ f = _tmp$4;
+ err = _tmp$5;
+ return [f, err];
+ }
+ }
+ }
+ d = new decimal.ptr(arrayType.zero(), 0, 0, false, false);
+ if (!d.set(s)) {
+ _tmp$6 = 0;
+ _tmp$7 = syntaxError("ParseFloat", s);
+ f = _tmp$6;
+ err = _tmp$7;
+ return [f, err];
+ }
+ _tuple$4 = d.floatBits(float64info);
+ b$1 = _tuple$4[0];
+ ovf$1 = _tuple$4[1];
+ f = math.Float64frombits(b$1);
+ if (ovf$1) {
+ err = rangeError("ParseFloat", s);
+ }
+ _tmp$8 = f;
+ _tmp$9 = err;
+ f = _tmp$8;
+ err = _tmp$9;
+ return [f, err];
+ };
+ ParseFloat = function(s, bitSize) {
+ var $ptr, _tuple, bitSize, err, f, s;
+ if (bitSize === 32) {
+ _tuple = atof32(s);
+ f = _tuple[0];
+ err = _tuple[1];
+ return [(f), err];
+ }
+ return atof64(s);
+ };
+ $pkg.ParseFloat = ParseFloat;
+ NumError.ptr.prototype.Error = function() {
+ var $ptr, _r, e, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; e = $f.e; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ _r = e.Err.Error(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return "strconv." + e.Func + ": " + "parsing " + Quote(e.Num) + ": " + _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: NumError.ptr.prototype.Error }; } $f.$ptr = $ptr; $f._r = _r; $f.e = e; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ NumError.prototype.Error = function() { return this.$val.Error(); };
+ syntaxError = function(fn, str) {
+ var $ptr, fn, str;
+ return new NumError.ptr(fn, str, $pkg.ErrSyntax);
+ };
+ rangeError = function(fn, str) {
+ var $ptr, fn, str;
+ return new NumError.ptr(fn, str, $pkg.ErrRange);
+ };
+ ParseUint = function(s, base, bitSize) {
+ var $ptr, _1, _tmp, _tmp$1, base, bitSize, cutoff, d, err, i, maxVal, n, n1, s, v, x, x$1, x$2, $s;
+ /* */ $s = 0; s: while (true) { switch ($s) { case 0:
+ n = new $Uint64(0, 0);
+ err = $ifaceNil;
+ _tmp = new $Uint64(0, 0);
+ _tmp$1 = new $Uint64(0, 0);
+ cutoff = _tmp;
+ maxVal = _tmp$1;
+ if (bitSize === 0) {
+ bitSize = 32;
+ }
+ i = 0;
+ /* */ if (s.length < 1) { $s = 2; continue; }
+ /* */ if (2 <= base && base <= 36) { $s = 3; continue; }
+ /* */ if ((base === 0)) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (s.length < 1) { */ case 2:
+ err = $pkg.ErrSyntax;
+ /* goto Error */ $s = 7; continue;
+ $s = 6; continue;
+ /* } else if (2 <= base && base <= 36) { */ case 3:
+ $s = 6; continue;
+ /* } else if ((base === 0)) { */ case 4:
+ /* */ if ((s.charCodeAt(0) === 48) && s.length > 1 && ((s.charCodeAt(1) === 120) || (s.charCodeAt(1) === 88))) { $s = 9; continue; }
+ /* */ if ((s.charCodeAt(0) === 48)) { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if ((s.charCodeAt(0) === 48) && s.length > 1 && ((s.charCodeAt(1) === 120) || (s.charCodeAt(1) === 88))) { */ case 9:
+ /* */ if (s.length < 3) { $s = 13; continue; }
+ /* */ $s = 14; continue;
+ /* if (s.length < 3) { */ case 13:
+ err = $pkg.ErrSyntax;
+ /* goto Error */ $s = 7; continue;
+ /* } */ case 14:
+ base = 16;
+ i = 2;
+ $s = 12; continue;
+ /* } else if ((s.charCodeAt(0) === 48)) { */ case 10:
+ base = 8;
+ i = 1;
+ $s = 12; continue;
+ /* } else { */ case 11:
+ base = 10;
+ /* } */ case 12:
+ case 8:
+ $s = 6; continue;
+ /* } else { */ case 5:
+ err = errors.New("invalid base " + Itoa(base));
+ /* goto Error */ $s = 7; continue;
+ /* } */ case 6:
+ case 1:
+ _1 = base;
+ if (_1 === (10)) {
+ cutoff = new $Uint64(429496729, 2576980378);
+ } else if (_1 === (16)) {
+ cutoff = new $Uint64(268435456, 0);
+ } else {
+ cutoff = (x = $div64(new $Uint64(4294967295, 4294967295), (new $Uint64(0, base)), false), new $Uint64(x.$high + 0, x.$low + 1));
+ }
+ maxVal = (x$1 = $shiftLeft64(new $Uint64(0, 1), ((bitSize >>> 0))), new $Uint64(x$1.$high - 0, x$1.$low - 1));
+ /* while (true) { */ case 15:
+ /* if (!(i < s.length)) { break; } */ if(!(i < s.length)) { $s = 16; continue; }
+ v = 0;
+ d = s.charCodeAt(i);
+ /* */ if (48 <= d && d <= 57) { $s = 18; continue; }
+ /* */ if (97 <= d && d <= 122) { $s = 19; continue; }
+ /* */ if (65 <= d && d <= 90) { $s = 20; continue; }
+ /* */ $s = 21; continue;
+ /* if (48 <= d && d <= 57) { */ case 18:
+ v = d - 48 << 24 >>> 24;
+ $s = 22; continue;
+ /* } else if (97 <= d && d <= 122) { */ case 19:
+ v = (d - 97 << 24 >>> 24) + 10 << 24 >>> 24;
+ $s = 22; continue;
+ /* } else if (65 <= d && d <= 90) { */ case 20:
+ v = (d - 65 << 24 >>> 24) + 10 << 24 >>> 24;
+ $s = 22; continue;
+ /* } else { */ case 21:
+ n = new $Uint64(0, 0);
+ err = $pkg.ErrSyntax;
+ /* goto Error */ $s = 7; continue;
+ /* } */ case 22:
+ case 17:
+ /* */ if (v >= ((base << 24 >>> 24))) { $s = 23; continue; }
+ /* */ $s = 24; continue;
+ /* if (v >= ((base << 24 >>> 24))) { */ case 23:
+ n = new $Uint64(0, 0);
+ err = $pkg.ErrSyntax;
+ /* goto Error */ $s = 7; continue;
+ /* } */ case 24:
+ /* */ if ((n.$high > cutoff.$high || (n.$high === cutoff.$high && n.$low >= cutoff.$low))) { $s = 25; continue; }
+ /* */ $s = 26; continue;
+ /* if ((n.$high > cutoff.$high || (n.$high === cutoff.$high && n.$low >= cutoff.$low))) { */ case 25:
+ n = new $Uint64(4294967295, 4294967295);
+ err = $pkg.ErrRange;
+ /* goto Error */ $s = 7; continue;
+ /* } */ case 26:
+ n = $mul64(n, ((new $Uint64(0, base))));
+ n1 = (x$2 = (new $Uint64(0, v)), new $Uint64(n.$high + x$2.$high, n.$low + x$2.$low));
+ /* */ if ((n1.$high < n.$high || (n1.$high === n.$high && n1.$low < n.$low)) || (n1.$high > maxVal.$high || (n1.$high === maxVal.$high && n1.$low > maxVal.$low))) { $s = 27; continue; }
+ /* */ $s = 28; continue;
+ /* if ((n1.$high < n.$high || (n1.$high === n.$high && n1.$low < n.$low)) || (n1.$high > maxVal.$high || (n1.$high === maxVal.$high && n1.$low > maxVal.$low))) { */ case 27:
+ n = new $Uint64(4294967295, 4294967295);
+ err = $pkg.ErrRange;
+ /* goto Error */ $s = 7; continue;
+ /* } */ case 28:
+ n = n1;
+ i = i + (1) >> 0;
+ /* } */ $s = 15; continue; case 16:
+ $s = -1; return [n, $ifaceNil];
+ /* Error: */ case 7:
+ $s = -1; return [n, new NumError.ptr("ParseUint", s, err)];
+ $s = -1; return [new $Uint64(0, 0), $ifaceNil];
+ /* */ } return; }
+ };
+ $pkg.ParseUint = ParseUint;
+ ParseInt = function(s, base, bitSize) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, base, bitSize, cutoff, err, i, n, neg, s, s0, un, x, x$1;
+ i = new $Int64(0, 0);
+ err = $ifaceNil;
+ if (bitSize === 0) {
+ bitSize = 32;
+ }
+ if (s.length === 0) {
+ _tmp = new $Int64(0, 0);
+ _tmp$1 = syntaxError("ParseInt", s);
+ i = _tmp;
+ err = _tmp$1;
+ return [i, err];
+ }
+ s0 = s;
+ neg = false;
+ if (s.charCodeAt(0) === 43) {
+ s = $substring(s, 1);
+ } else if (s.charCodeAt(0) === 45) {
+ neg = true;
+ s = $substring(s, 1);
+ }
+ un = new $Uint64(0, 0);
+ _tuple = ParseUint(s, base, bitSize);
+ un = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil)) && !($interfaceIsEqual($assertType(err, ptrType).Err, $pkg.ErrRange))) {
+ $assertType(err, ptrType).Func = "ParseInt";
+ $assertType(err, ptrType).Num = s0;
+ _tmp$2 = new $Int64(0, 0);
+ _tmp$3 = err;
+ i = _tmp$2;
+ err = _tmp$3;
+ return [i, err];
+ }
+ cutoff = ($shiftLeft64(new $Uint64(0, 1), (((bitSize - 1 >> 0) >>> 0))));
+ if (!neg && (un.$high > cutoff.$high || (un.$high === cutoff.$high && un.$low >= cutoff.$low))) {
+ _tmp$4 = ((x = new $Uint64(cutoff.$high - 0, cutoff.$low - 1), new $Int64(x.$high, x.$low)));
+ _tmp$5 = rangeError("ParseInt", s0);
+ i = _tmp$4;
+ err = _tmp$5;
+ return [i, err];
+ }
+ if (neg && (un.$high > cutoff.$high || (un.$high === cutoff.$high && un.$low > cutoff.$low))) {
+ _tmp$6 = (x$1 = (new $Int64(cutoff.$high, cutoff.$low)), new $Int64(-x$1.$high, -x$1.$low));
+ _tmp$7 = rangeError("ParseInt", s0);
+ i = _tmp$6;
+ err = _tmp$7;
+ return [i, err];
+ }
+ n = (new $Int64(un.$high, un.$low));
+ if (neg) {
+ n = new $Int64(-n.$high, -n.$low);
+ }
+ _tmp$8 = n;
+ _tmp$9 = $ifaceNil;
+ i = _tmp$8;
+ err = _tmp$9;
+ return [i, err];
+ };
+ $pkg.ParseInt = ParseInt;
+ Atoi = function(s) {
+ var $ptr, _tuple, _tuple$1, err, i64, nerr, ok, s;
+ _tuple = ParseInt(s, 10, 0);
+ i64 = _tuple[0];
+ err = _tuple[1];
+ _tuple$1 = $assertType(err, ptrType, true);
+ nerr = _tuple$1[0];
+ ok = _tuple$1[1];
+ if (ok) {
+ nerr.Func = "Atoi";
+ }
+ return [(((i64.$low + ((i64.$high >> 31) * 4294967296)) >> 0)), err];
+ };
+ $pkg.Atoi = Atoi;
+ decimal.ptr.prototype.String = function() {
+ var $ptr, a, buf, n, w;
+ a = this;
+ n = 10 + a.nd >> 0;
+ if (a.dp > 0) {
+ n = n + (a.dp) >> 0;
+ }
+ if (a.dp < 0) {
+ n = n + (-a.dp) >> 0;
+ }
+ buf = $makeSlice(sliceType$6, n);
+ w = 0;
+ if ((a.nd === 0)) {
+ return "0";
+ } else if (a.dp <= 0) {
+ ((w < 0 || w >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + w] = 48);
+ w = w + (1) >> 0;
+ ((w < 0 || w >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + w] = 46);
+ w = w + (1) >> 0;
+ w = w + (digitZero($subslice(buf, w, (w + -a.dp >> 0)))) >> 0;
+ w = w + ($copySlice($subslice(buf, w), $subslice(new sliceType$6(a.d), 0, a.nd))) >> 0;
+ } else if (a.dp < a.nd) {
+ w = w + ($copySlice($subslice(buf, w), $subslice(new sliceType$6(a.d), 0, a.dp))) >> 0;
+ ((w < 0 || w >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + w] = 46);
+ w = w + (1) >> 0;
+ w = w + ($copySlice($subslice(buf, w), $subslice(new sliceType$6(a.d), a.dp, a.nd))) >> 0;
+ } else {
+ w = w + ($copySlice($subslice(buf, w), $subslice(new sliceType$6(a.d), 0, a.nd))) >> 0;
+ w = w + (digitZero($subslice(buf, w, ((w + a.dp >> 0) - a.nd >> 0)))) >> 0;
+ }
+ return ($bytesToString($subslice(buf, 0, w)));
+ };
+ decimal.prototype.String = function() { return this.$val.String(); };
+ digitZero = function(dst) {
+ var $ptr, _i, _ref, dst, i;
+ _ref = dst;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ ((i < 0 || i >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + i] = 48);
+ _i++;
+ }
+ return dst.$length;
+ };
+ trim = function(a) {
+ var $ptr, a, x, x$1;
+ while (true) {
+ if (!(a.nd > 0 && ((x = a.d, x$1 = a.nd - 1 >> 0, ((x$1 < 0 || x$1 >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[x$1])) === 48))) { break; }
+ a.nd = a.nd - (1) >> 0;
+ }
+ if (a.nd === 0) {
+ a.dp = 0;
+ }
+ };
+ decimal.ptr.prototype.Assign = function(v) {
+ var $ptr, a, buf, n, v, v1, x, x$1, x$2;
+ a = this;
+ buf = arrayType$1.zero();
+ n = 0;
+ while (true) {
+ if (!((v.$high > 0 || (v.$high === 0 && v.$low > 0)))) { break; }
+ v1 = $div64(v, new $Uint64(0, 10), false);
+ v = (x = $mul64(new $Uint64(0, 10), v1), new $Uint64(v.$high - x.$high, v.$low - x.$low));
+ ((n < 0 || n >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[n] = ((new $Uint64(v.$high + 0, v.$low + 48).$low << 24 >>> 24)));
+ n = n + (1) >> 0;
+ v = v1;
+ }
+ a.nd = 0;
+ n = n - (1) >> 0;
+ while (true) {
+ if (!(n >= 0)) { break; }
+ (x$1 = a.d, x$2 = a.nd, ((x$2 < 0 || x$2 >= x$1.length) ? ($throwRuntimeError("index out of range"), undefined) : x$1[x$2] = ((n < 0 || n >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[n])));
+ a.nd = a.nd + (1) >> 0;
+ n = n - (1) >> 0;
+ }
+ a.dp = a.nd;
+ trim(a);
+ };
+ decimal.prototype.Assign = function(v) { return this.$val.Assign(v); };
+ rightShift = function(a, k) {
+ var $ptr, a, c, c$1, dig, dig$1, k, mask, n, r, w, x, x$1, x$2, x$3, y, y$1, y$2, y$3, y$4;
+ r = 0;
+ w = 0;
+ n = 0;
+ while (true) {
+ if (!(((y = k, y < 32 ? (n >>> y) : 0) >>> 0) === 0)) { break; }
+ if (r >= a.nd) {
+ if (n === 0) {
+ a.nd = 0;
+ return;
+ }
+ while (true) {
+ if (!(((y$1 = k, y$1 < 32 ? (n >>> y$1) : 0) >>> 0) === 0)) { break; }
+ n = n * 10 >>> 0;
+ r = r + (1) >> 0;
+ }
+ break;
+ }
+ c = (((x = a.d, ((r < 0 || r >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[r])) >>> 0));
+ n = ((n * 10 >>> 0) + c >>> 0) - 48 >>> 0;
+ r = r + (1) >> 0;
+ }
+ a.dp = a.dp - ((r - 1 >> 0)) >> 0;
+ mask = (((y$2 = k, y$2 < 32 ? (1 << y$2) : 0) >>> 0)) - 1 >>> 0;
+ while (true) {
+ if (!(r < a.nd)) { break; }
+ c$1 = (((x$1 = a.d, ((r < 0 || r >= x$1.length) ? ($throwRuntimeError("index out of range"), undefined) : x$1[r])) >>> 0));
+ dig = (y$3 = k, y$3 < 32 ? (n >>> y$3) : 0) >>> 0;
+ n = (n & (mask)) >>> 0;
+ (x$2 = a.d, ((w < 0 || w >= x$2.length) ? ($throwRuntimeError("index out of range"), undefined) : x$2[w] = (((dig + 48 >>> 0) << 24 >>> 24))));
+ w = w + (1) >> 0;
+ n = ((n * 10 >>> 0) + c$1 >>> 0) - 48 >>> 0;
+ r = r + (1) >> 0;
+ }
+ while (true) {
+ if (!(n > 0)) { break; }
+ dig$1 = (y$4 = k, y$4 < 32 ? (n >>> y$4) : 0) >>> 0;
+ n = (n & (mask)) >>> 0;
+ if (w < 800) {
+ (x$3 = a.d, ((w < 0 || w >= x$3.length) ? ($throwRuntimeError("index out of range"), undefined) : x$3[w] = (((dig$1 + 48 >>> 0) << 24 >>> 24))));
+ w = w + (1) >> 0;
+ } else if (dig$1 > 0) {
+ a.trunc = true;
+ }
+ n = n * 10 >>> 0;
+ }
+ a.nd = w;
+ trim(a);
+ };
+ prefixIsLessThan = function(b, s) {
+ var $ptr, b, i, s;
+ i = 0;
+ while (true) {
+ if (!(i < s.length)) { break; }
+ if (i >= b.$length) {
+ return true;
+ }
+ if (!((((i < 0 || i >= b.$length) ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + i]) === s.charCodeAt(i)))) {
+ return ((i < 0 || i >= b.$length) ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + i]) < s.charCodeAt(i);
+ }
+ i = i + (1) >> 0;
+ }
+ return false;
+ };
+ leftShift = function(a, k) {
+ var $ptr, _q, _q$1, a, delta, k, n, quo, quo$1, r, rem, rem$1, w, x, x$1, x$2, y;
+ delta = ((k < 0 || k >= leftcheats.$length) ? ($throwRuntimeError("index out of range"), undefined) : leftcheats.$array[leftcheats.$offset + k]).delta;
+ if (prefixIsLessThan($subslice(new sliceType$6(a.d), 0, a.nd), ((k < 0 || k >= leftcheats.$length) ? ($throwRuntimeError("index out of range"), undefined) : leftcheats.$array[leftcheats.$offset + k]).cutoff)) {
+ delta = delta - (1) >> 0;
+ }
+ r = a.nd;
+ w = a.nd + delta >> 0;
+ n = 0;
+ r = r - (1) >> 0;
+ while (true) {
+ if (!(r >= 0)) { break; }
+ n = n + (((y = k, y < 32 ? ((((((x = a.d, ((r < 0 || r >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[r])) >>> 0)) - 48 >>> 0)) << y) : 0) >>> 0)) >>> 0;
+ quo = (_q = n / 10, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero"));
+ rem = n - (10 * quo >>> 0) >>> 0;
+ w = w - (1) >> 0;
+ if (w < 800) {
+ (x$1 = a.d, ((w < 0 || w >= x$1.length) ? ($throwRuntimeError("index out of range"), undefined) : x$1[w] = (((rem + 48 >>> 0) << 24 >>> 24))));
+ } else if (!((rem === 0))) {
+ a.trunc = true;
+ }
+ n = quo;
+ r = r - (1) >> 0;
+ }
+ while (true) {
+ if (!(n > 0)) { break; }
+ quo$1 = (_q$1 = n / 10, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >>> 0 : $throwRuntimeError("integer divide by zero"));
+ rem$1 = n - (10 * quo$1 >>> 0) >>> 0;
+ w = w - (1) >> 0;
+ if (w < 800) {
+ (x$2 = a.d, ((w < 0 || w >= x$2.length) ? ($throwRuntimeError("index out of range"), undefined) : x$2[w] = (((rem$1 + 48 >>> 0) << 24 >>> 24))));
+ } else if (!((rem$1 === 0))) {
+ a.trunc = true;
+ }
+ n = quo$1;
+ }
+ a.nd = a.nd + (delta) >> 0;
+ if (a.nd >= 800) {
+ a.nd = 800;
+ }
+ a.dp = a.dp + (delta) >> 0;
+ trim(a);
+ };
+ decimal.ptr.prototype.Shift = function(k) {
+ var $ptr, a, k;
+ a = this;
+ if ((a.nd === 0)) {
+ } else if (k > 0) {
+ while (true) {
+ if (!(k > 28)) { break; }
+ leftShift(a, 28);
+ k = k - (28) >> 0;
+ }
+ leftShift(a, ((k >>> 0)));
+ } else if (k < 0) {
+ while (true) {
+ if (!(k < -28)) { break; }
+ rightShift(a, 28);
+ k = k + (28) >> 0;
+ }
+ rightShift(a, ((-k >>> 0)));
+ }
+ };
+ decimal.prototype.Shift = function(k) { return this.$val.Shift(k); };
+ shouldRoundUp = function(a, nd) {
+ var $ptr, _r, a, nd, x, x$1, x$2, x$3;
+ if (nd < 0 || nd >= a.nd) {
+ return false;
+ }
+ if (((x = a.d, ((nd < 0 || nd >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[nd])) === 53) && ((nd + 1 >> 0) === a.nd)) {
+ if (a.trunc) {
+ return true;
+ }
+ return nd > 0 && !(((_r = (((x$1 = a.d, x$2 = nd - 1 >> 0, ((x$2 < 0 || x$2 >= x$1.length) ? ($throwRuntimeError("index out of range"), undefined) : x$1[x$2])) - 48 << 24 >>> 24)) % 2, _r === _r ? _r : $throwRuntimeError("integer divide by zero")) === 0));
+ }
+ return (x$3 = a.d, ((nd < 0 || nd >= x$3.length) ? ($throwRuntimeError("index out of range"), undefined) : x$3[nd])) >= 53;
+ };
+ decimal.ptr.prototype.Round = function(nd) {
+ var $ptr, a, nd;
+ a = this;
+ if (nd < 0 || nd >= a.nd) {
+ return;
+ }
+ if (shouldRoundUp(a, nd)) {
+ a.RoundUp(nd);
+ } else {
+ a.RoundDown(nd);
+ }
+ };
+ decimal.prototype.Round = function(nd) { return this.$val.Round(nd); };
+ decimal.ptr.prototype.RoundDown = function(nd) {
+ var $ptr, a, nd;
+ a = this;
+ if (nd < 0 || nd >= a.nd) {
+ return;
+ }
+ a.nd = nd;
+ trim(a);
+ };
+ decimal.prototype.RoundDown = function(nd) { return this.$val.RoundDown(nd); };
+ decimal.ptr.prototype.RoundUp = function(nd) {
+ var $ptr, a, c, i, nd, x, x$1, x$2;
+ a = this;
+ if (nd < 0 || nd >= a.nd) {
+ return;
+ }
+ i = nd - 1 >> 0;
+ while (true) {
+ if (!(i >= 0)) { break; }
+ c = (x = a.d, ((i < 0 || i >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[i]));
+ if (c < 57) {
+ (x$2 = a.d, ((i < 0 || i >= x$2.length) ? ($throwRuntimeError("index out of range"), undefined) : x$2[i] = ((x$1 = a.d, ((i < 0 || i >= x$1.length) ? ($throwRuntimeError("index out of range"), undefined) : x$1[i])) + (1) << 24 >>> 24)));
+ a.nd = i + 1 >> 0;
+ return;
+ }
+ i = i - (1) >> 0;
+ }
+ a.d[0] = 49;
+ a.nd = 1;
+ a.dp = a.dp + (1) >> 0;
+ };
+ decimal.prototype.RoundUp = function(nd) { return this.$val.RoundUp(nd); };
+ decimal.ptr.prototype.RoundedInteger = function() {
+ var $ptr, a, i, n, x, x$1, x$2, x$3;
+ a = this;
+ if (a.dp > 20) {
+ return new $Uint64(4294967295, 4294967295);
+ }
+ i = 0;
+ n = new $Uint64(0, 0);
+ i = 0;
+ while (true) {
+ if (!(i < a.dp && i < a.nd)) { break; }
+ n = (x = $mul64(n, new $Uint64(0, 10)), x$1 = (new $Uint64(0, ((x$2 = a.d, ((i < 0 || i >= x$2.length) ? ($throwRuntimeError("index out of range"), undefined) : x$2[i])) - 48 << 24 >>> 24))), new $Uint64(x.$high + x$1.$high, x.$low + x$1.$low));
+ i = i + (1) >> 0;
+ }
+ while (true) {
+ if (!(i < a.dp)) { break; }
+ n = $mul64(n, (new $Uint64(0, 10)));
+ i = i + (1) >> 0;
+ }
+ if (shouldRoundUp(a, a.dp)) {
+ n = (x$3 = new $Uint64(0, 1), new $Uint64(n.$high + x$3.$high, n.$low + x$3.$low));
+ }
+ return n;
+ };
+ decimal.prototype.RoundedInteger = function() { return this.$val.RoundedInteger(); };
+ extFloat.ptr.prototype.floatBits = function(flt) {
+ var $ptr, bits, exp, f, flt, mant, n, overflow, x, x$1, x$10, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, y, y$1, y$2;
+ bits = new $Uint64(0, 0);
+ overflow = false;
+ f = this;
+ f.Normalize();
+ exp = f.exp + 63 >> 0;
+ if (exp < (flt.bias + 1 >> 0)) {
+ n = (flt.bias + 1 >> 0) - exp >> 0;
+ f.mant = $shiftRightUint64(f.mant, (((n >>> 0))));
+ exp = exp + (n) >> 0;
+ }
+ mant = $shiftRightUint64(f.mant, ((63 - flt.mantbits >>> 0)));
+ if (!((x = (x$1 = f.mant, x$2 = $shiftLeft64(new $Uint64(0, 1), ((62 - flt.mantbits >>> 0))), new $Uint64(x$1.$high & x$2.$high, (x$1.$low & x$2.$low) >>> 0)), (x.$high === 0 && x.$low === 0)))) {
+ mant = (x$3 = new $Uint64(0, 1), new $Uint64(mant.$high + x$3.$high, mant.$low + x$3.$low));
+ }
+ if ((x$4 = $shiftLeft64(new $Uint64(0, 2), flt.mantbits), (mant.$high === x$4.$high && mant.$low === x$4.$low))) {
+ mant = $shiftRightUint64(mant, (1));
+ exp = exp + (1) >> 0;
+ }
+ if ((exp - flt.bias >> 0) >= (((y = flt.expbits, y < 32 ? (1 << y) : 0) >> 0) - 1 >> 0)) {
+ mant = new $Uint64(0, 0);
+ exp = (((y$1 = flt.expbits, y$1 < 32 ? (1 << y$1) : 0) >> 0) - 1 >> 0) + flt.bias >> 0;
+ overflow = true;
+ } else if ((x$5 = (x$6 = $shiftLeft64(new $Uint64(0, 1), flt.mantbits), new $Uint64(mant.$high & x$6.$high, (mant.$low & x$6.$low) >>> 0)), (x$5.$high === 0 && x$5.$low === 0))) {
+ exp = flt.bias;
+ }
+ bits = (x$7 = (x$8 = $shiftLeft64(new $Uint64(0, 1), flt.mantbits), new $Uint64(x$8.$high - 0, x$8.$low - 1)), new $Uint64(mant.$high & x$7.$high, (mant.$low & x$7.$low) >>> 0));
+ bits = (x$9 = $shiftLeft64((new $Uint64(0, (((exp - flt.bias >> 0)) & ((((y$2 = flt.expbits, y$2 < 32 ? (1 << y$2) : 0) >> 0) - 1 >> 0))))), flt.mantbits), new $Uint64(bits.$high | x$9.$high, (bits.$low | x$9.$low) >>> 0));
+ if (f.neg) {
+ bits = (x$10 = $shiftLeft64(new $Uint64(0, 1), ((flt.mantbits + flt.expbits >>> 0))), new $Uint64(bits.$high | x$10.$high, (bits.$low | x$10.$low) >>> 0));
+ }
+ return [bits, overflow];
+ };
+ extFloat.prototype.floatBits = function(flt) { return this.$val.floatBits(flt); };
+ extFloat.ptr.prototype.AssignComputeBounds = function(mant, exp, neg, flt) {
+ var $ptr, _tmp, _tmp$1, exp, expBiased, f, flt, lower, mant, neg, upper, x, x$1, x$2, x$3, x$4;
+ lower = new extFloat.ptr(new $Uint64(0, 0), 0, false);
+ upper = new extFloat.ptr(new $Uint64(0, 0), 0, false);
+ f = this;
+ f.mant = mant;
+ f.exp = exp - ((flt.mantbits >> 0)) >> 0;
+ f.neg = neg;
+ if (f.exp <= 0 && (x = $shiftLeft64(($shiftRightUint64(mant, ((-f.exp >>> 0)))), ((-f.exp >>> 0))), (mant.$high === x.$high && mant.$low === x.$low))) {
+ f.mant = $shiftRightUint64(f.mant, (((-f.exp >>> 0))));
+ f.exp = 0;
+ _tmp = $clone(f, extFloat);
+ _tmp$1 = $clone(f, extFloat);
+ extFloat.copy(lower, _tmp);
+ extFloat.copy(upper, _tmp$1);
+ return [lower, upper];
+ }
+ expBiased = exp - flt.bias >> 0;
+ extFloat.copy(upper, new extFloat.ptr((x$1 = $mul64(new $Uint64(0, 2), f.mant), new $Uint64(x$1.$high + 0, x$1.$low + 1)), f.exp - 1 >> 0, f.neg));
+ if (!((x$2 = $shiftLeft64(new $Uint64(0, 1), flt.mantbits), (mant.$high === x$2.$high && mant.$low === x$2.$low))) || (expBiased === 1)) {
+ extFloat.copy(lower, new extFloat.ptr((x$3 = $mul64(new $Uint64(0, 2), f.mant), new $Uint64(x$3.$high - 0, x$3.$low - 1)), f.exp - 1 >> 0, f.neg));
+ } else {
+ extFloat.copy(lower, new extFloat.ptr((x$4 = $mul64(new $Uint64(0, 4), f.mant), new $Uint64(x$4.$high - 0, x$4.$low - 1)), f.exp - 2 >> 0, f.neg));
+ }
+ return [lower, upper];
+ };
+ extFloat.prototype.AssignComputeBounds = function(mant, exp, neg, flt) { return this.$val.AssignComputeBounds(mant, exp, neg, flt); };
+ extFloat.ptr.prototype.Normalize = function() {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, exp, f, mant, shift, x, x$1, x$2, x$3, x$4, x$5;
+ shift = 0;
+ f = this;
+ _tmp = f.mant;
+ _tmp$1 = f.exp;
+ mant = _tmp;
+ exp = _tmp$1;
+ if ((mant.$high === 0 && mant.$low === 0)) {
+ shift = 0;
+ return shift;
+ }
+ if ((x = $shiftRightUint64(mant, 32), (x.$high === 0 && x.$low === 0))) {
+ mant = $shiftLeft64(mant, (32));
+ exp = exp - (32) >> 0;
+ }
+ if ((x$1 = $shiftRightUint64(mant, 48), (x$1.$high === 0 && x$1.$low === 0))) {
+ mant = $shiftLeft64(mant, (16));
+ exp = exp - (16) >> 0;
+ }
+ if ((x$2 = $shiftRightUint64(mant, 56), (x$2.$high === 0 && x$2.$low === 0))) {
+ mant = $shiftLeft64(mant, (8));
+ exp = exp - (8) >> 0;
+ }
+ if ((x$3 = $shiftRightUint64(mant, 60), (x$3.$high === 0 && x$3.$low === 0))) {
+ mant = $shiftLeft64(mant, (4));
+ exp = exp - (4) >> 0;
+ }
+ if ((x$4 = $shiftRightUint64(mant, 62), (x$4.$high === 0 && x$4.$low === 0))) {
+ mant = $shiftLeft64(mant, (2));
+ exp = exp - (2) >> 0;
+ }
+ if ((x$5 = $shiftRightUint64(mant, 63), (x$5.$high === 0 && x$5.$low === 0))) {
+ mant = $shiftLeft64(mant, (1));
+ exp = exp - (1) >> 0;
+ }
+ shift = (((f.exp - exp >> 0) >>> 0));
+ _tmp$2 = mant;
+ _tmp$3 = exp;
+ f.mant = _tmp$2;
+ f.exp = _tmp$3;
+ return shift;
+ };
+ extFloat.prototype.Normalize = function() { return this.$val.Normalize(); };
+ extFloat.ptr.prototype.Multiply = function(g) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, cross1, cross2, f, fhi, flo, g, ghi, glo, rem, x, x$1, x$10, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ f = this;
+ _tmp = $shiftRightUint64(f.mant, 32);
+ _tmp$1 = (new $Uint64(0, ((f.mant.$low >>> 0))));
+ fhi = _tmp;
+ flo = _tmp$1;
+ _tmp$2 = $shiftRightUint64(g.mant, 32);
+ _tmp$3 = (new $Uint64(0, ((g.mant.$low >>> 0))));
+ ghi = _tmp$2;
+ glo = _tmp$3;
+ cross1 = $mul64(fhi, glo);
+ cross2 = $mul64(flo, ghi);
+ f.mant = (x = (x$1 = $mul64(fhi, ghi), x$2 = $shiftRightUint64(cross1, 32), new $Uint64(x$1.$high + x$2.$high, x$1.$low + x$2.$low)), x$3 = $shiftRightUint64(cross2, 32), new $Uint64(x.$high + x$3.$high, x.$low + x$3.$low));
+ rem = (x$4 = (x$5 = (new $Uint64(0, ((cross1.$low >>> 0)))), x$6 = (new $Uint64(0, ((cross2.$low >>> 0)))), new $Uint64(x$5.$high + x$6.$high, x$5.$low + x$6.$low)), x$7 = $shiftRightUint64(($mul64(flo, glo)), 32), new $Uint64(x$4.$high + x$7.$high, x$4.$low + x$7.$low));
+ rem = (x$8 = new $Uint64(0, 2147483648), new $Uint64(rem.$high + x$8.$high, rem.$low + x$8.$low));
+ f.mant = (x$9 = f.mant, x$10 = ($shiftRightUint64(rem, 32)), new $Uint64(x$9.$high + x$10.$high, x$9.$low + x$10.$low));
+ f.exp = (f.exp + g.exp >> 0) + 64 >> 0;
+ };
+ extFloat.prototype.Multiply = function(g) { return this.$val.Multiply(g); };
+ extFloat.ptr.prototype.AssignDecimal = function(mantissa, exp10, neg, trunc, flt) {
+ var $ptr, _q, _r, adjExp, denormalExp, errors$1, exp10, extrabits, f, flt, halfway, i, mant_extra, mantissa, neg, ok, shift, trunc, x, x$1, x$10, x$11, x$12, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, y;
+ ok = false;
+ f = this;
+ errors$1 = 0;
+ if (trunc) {
+ errors$1 = errors$1 + (4) >> 0;
+ }
+ f.mant = mantissa;
+ f.exp = 0;
+ f.neg = neg;
+ i = (_q = ((exp10 - -348 >> 0)) / 8, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ if (exp10 < -348 || i >= 87) {
+ ok = false;
+ return ok;
+ }
+ adjExp = (_r = ((exp10 - -348 >> 0)) % 8, _r === _r ? _r : $throwRuntimeError("integer divide by zero"));
+ if (adjExp < 19 && (x = (x$1 = 19 - adjExp >> 0, ((x$1 < 0 || x$1 >= uint64pow10.length) ? ($throwRuntimeError("index out of range"), undefined) : uint64pow10[x$1])), (mantissa.$high < x.$high || (mantissa.$high === x.$high && mantissa.$low < x.$low)))) {
+ f.mant = $mul64(f.mant, (((adjExp < 0 || adjExp >= uint64pow10.length) ? ($throwRuntimeError("index out of range"), undefined) : uint64pow10[adjExp])));
+ f.Normalize();
+ } else {
+ f.Normalize();
+ f.Multiply($clone(((adjExp < 0 || adjExp >= smallPowersOfTen.length) ? ($throwRuntimeError("index out of range"), undefined) : smallPowersOfTen[adjExp]), extFloat));
+ errors$1 = errors$1 + (4) >> 0;
+ }
+ f.Multiply($clone(((i < 0 || i >= powersOfTen.length) ? ($throwRuntimeError("index out of range"), undefined) : powersOfTen[i]), extFloat));
+ if (errors$1 > 0) {
+ errors$1 = errors$1 + (1) >> 0;
+ }
+ errors$1 = errors$1 + (4) >> 0;
+ shift = f.Normalize();
+ errors$1 = (y = (shift), y < 32 ? (errors$1 << y) : 0) >> 0;
+ denormalExp = flt.bias - 63 >> 0;
+ extrabits = 0;
+ if (f.exp <= denormalExp) {
+ extrabits = ((63 - flt.mantbits >>> 0) + 1 >>> 0) + (((denormalExp - f.exp >> 0) >>> 0)) >>> 0;
+ } else {
+ extrabits = 63 - flt.mantbits >>> 0;
+ }
+ halfway = $shiftLeft64(new $Uint64(0, 1), ((extrabits - 1 >>> 0)));
+ mant_extra = (x$2 = f.mant, x$3 = (x$4 = $shiftLeft64(new $Uint64(0, 1), extrabits), new $Uint64(x$4.$high - 0, x$4.$low - 1)), new $Uint64(x$2.$high & x$3.$high, (x$2.$low & x$3.$low) >>> 0));
+ if ((x$5 = (x$6 = (new $Int64(halfway.$high, halfway.$low)), x$7 = (new $Int64(0, errors$1)), new $Int64(x$6.$high - x$7.$high, x$6.$low - x$7.$low)), x$8 = (new $Int64(mant_extra.$high, mant_extra.$low)), (x$5.$high < x$8.$high || (x$5.$high === x$8.$high && x$5.$low < x$8.$low))) && (x$9 = (new $Int64(mant_extra.$high, mant_extra.$low)), x$10 = (x$11 = (new $Int64(halfway.$high, halfway.$low)), x$12 = (new $Int64(0, errors$1)), new $Int64(x$11.$high + x$12.$high, x$11.$low + x$12.$low)), (x$9.$high < x$10.$high || (x$9.$high === x$10.$high && x$9.$low < x$10.$low)))) {
+ ok = false;
+ return ok;
+ }
+ ok = true;
+ return ok;
+ };
+ extFloat.prototype.AssignDecimal = function(mantissa, exp10, neg, trunc, flt) { return this.$val.AssignDecimal(mantissa, exp10, neg, trunc, flt); };
+ extFloat.ptr.prototype.frexp10 = function() {
+ var $ptr, _q, _q$1, _tmp, _tmp$1, approxExp10, exp, exp10, f, i, index;
+ exp10 = 0;
+ index = 0;
+ f = this;
+ approxExp10 = (_q = ($imul(((-46 - f.exp >> 0)), 28)) / 93, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ i = (_q$1 = ((approxExp10 - -348 >> 0)) / 8, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero"));
+ Loop:
+ while (true) {
+ exp = (f.exp + ((i < 0 || i >= powersOfTen.length) ? ($throwRuntimeError("index out of range"), undefined) : powersOfTen[i]).exp >> 0) + 64 >> 0;
+ if (exp < -60) {
+ i = i + (1) >> 0;
+ } else if (exp > -32) {
+ i = i - (1) >> 0;
+ } else {
+ break Loop;
+ }
+ }
+ f.Multiply($clone(((i < 0 || i >= powersOfTen.length) ? ($throwRuntimeError("index out of range"), undefined) : powersOfTen[i]), extFloat));
+ _tmp = -((-348 + ($imul(i, 8)) >> 0));
+ _tmp$1 = i;
+ exp10 = _tmp;
+ index = _tmp$1;
+ return [exp10, index];
+ };
+ extFloat.prototype.frexp10 = function() { return this.$val.frexp10(); };
+ frexp10Many = function(a, b, c) {
+ var $ptr, _tuple, a, b, c, exp10, i;
+ exp10 = 0;
+ _tuple = c.frexp10();
+ exp10 = _tuple[0];
+ i = _tuple[1];
+ a.Multiply($clone(((i < 0 || i >= powersOfTen.length) ? ($throwRuntimeError("index out of range"), undefined) : powersOfTen[i]), extFloat));
+ b.Multiply($clone(((i < 0 || i >= powersOfTen.length) ? ($throwRuntimeError("index out of range"), undefined) : powersOfTen[i]), extFloat));
+ return exp10;
+ };
+ extFloat.ptr.prototype.FixedDecimal = function(d, n) {
+ var $CE$B5, $ptr, _q, _q$1, _tmp, _tmp$1, _tuple, buf, d, digit, exp10, f, fraction, i, i$1, i$2, integer, integerDigits, n, nd, needed, ok, pos, pow, pow10, rest, shift, v, v1, x, x$1, x$10, x$11, x$12, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ f = this;
+ if ((x = f.mant, (x.$high === 0 && x.$low === 0))) {
+ d.nd = 0;
+ d.dp = 0;
+ d.neg = f.neg;
+ return true;
+ }
+ if (n === 0) {
+ $panic(new $String("strconv: internal error: extFloat.FixedDecimal called with n == 0"));
+ }
+ f.Normalize();
+ _tuple = f.frexp10();
+ exp10 = _tuple[0];
+ shift = ((-f.exp >>> 0));
+ integer = (($shiftRightUint64(f.mant, shift).$low >>> 0));
+ fraction = (x$1 = f.mant, x$2 = $shiftLeft64((new $Uint64(0, integer)), shift), new $Uint64(x$1.$high - x$2.$high, x$1.$low - x$2.$low));
+ $CE$B5 = new $Uint64(0, 1);
+ needed = n;
+ integerDigits = 0;
+ pow10 = new $Uint64(0, 1);
+ _tmp = 0;
+ _tmp$1 = new $Uint64(0, 1);
+ i = _tmp;
+ pow = _tmp$1;
+ while (true) {
+ if (!(i < 20)) { break; }
+ if ((x$3 = (new $Uint64(0, integer)), (pow.$high > x$3.$high || (pow.$high === x$3.$high && pow.$low > x$3.$low)))) {
+ integerDigits = i;
+ break;
+ }
+ pow = $mul64(pow, (new $Uint64(0, 10)));
+ i = i + (1) >> 0;
+ }
+ rest = integer;
+ if (integerDigits > needed) {
+ pow10 = (x$4 = integerDigits - needed >> 0, ((x$4 < 0 || x$4 >= uint64pow10.length) ? ($throwRuntimeError("index out of range"), undefined) : uint64pow10[x$4]));
+ integer = (_q = integer / (((pow10.$low >>> 0))), (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero"));
+ rest = rest - (($imul(integer, ((pow10.$low >>> 0))) >>> 0)) >>> 0;
+ } else {
+ rest = 0;
+ }
+ buf = arrayType$2.zero();
+ pos = 32;
+ v = integer;
+ while (true) {
+ if (!(v > 0)) { break; }
+ v1 = (_q$1 = v / 10, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >>> 0 : $throwRuntimeError("integer divide by zero"));
+ v = v - (($imul(10, v1) >>> 0)) >>> 0;
+ pos = pos - (1) >> 0;
+ ((pos < 0 || pos >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[pos] = (((v + 48 >>> 0) << 24 >>> 24)));
+ v = v1;
+ }
+ i$1 = pos;
+ while (true) {
+ if (!(i$1 < 32)) { break; }
+ (x$5 = d.d, x$6 = i$1 - pos >> 0, ((x$6 < 0 || x$6 >= x$5.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$5.$array[x$5.$offset + x$6] = ((i$1 < 0 || i$1 >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[i$1])));
+ i$1 = i$1 + (1) >> 0;
+ }
+ nd = 32 - pos >> 0;
+ d.nd = nd;
+ d.dp = integerDigits + exp10 >> 0;
+ needed = needed - (nd) >> 0;
+ if (needed > 0) {
+ if (!((rest === 0)) || !((pow10.$high === 0 && pow10.$low === 1))) {
+ $panic(new $String("strconv: internal error, rest != 0 but needed > 0"));
+ }
+ while (true) {
+ if (!(needed > 0)) { break; }
+ fraction = $mul64(fraction, (new $Uint64(0, 10)));
+ $CE$B5 = $mul64($CE$B5, (new $Uint64(0, 10)));
+ if ((x$7 = $mul64(new $Uint64(0, 2), $CE$B5), x$8 = $shiftLeft64(new $Uint64(0, 1), shift), (x$7.$high > x$8.$high || (x$7.$high === x$8.$high && x$7.$low > x$8.$low)))) {
+ return false;
+ }
+ digit = $shiftRightUint64(fraction, shift);
+ (x$9 = d.d, ((nd < 0 || nd >= x$9.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$9.$array[x$9.$offset + nd] = ((new $Uint64(digit.$high + 0, digit.$low + 48).$low << 24 >>> 24))));
+ fraction = (x$10 = $shiftLeft64(digit, shift), new $Uint64(fraction.$high - x$10.$high, fraction.$low - x$10.$low));
+ nd = nd + (1) >> 0;
+ needed = needed - (1) >> 0;
+ }
+ d.nd = nd;
+ }
+ ok = adjustLastDigitFixed(d, (x$11 = $shiftLeft64((new $Uint64(0, rest)), shift), new $Uint64(x$11.$high | fraction.$high, (x$11.$low | fraction.$low) >>> 0)), pow10, shift, $CE$B5);
+ if (!ok) {
+ return false;
+ }
+ i$2 = d.nd - 1 >> 0;
+ while (true) {
+ if (!(i$2 >= 0)) { break; }
+ if (!(((x$12 = d.d, ((i$2 < 0 || i$2 >= x$12.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$12.$array[x$12.$offset + i$2])) === 48))) {
+ d.nd = i$2 + 1 >> 0;
+ break;
+ }
+ i$2 = i$2 - (1) >> 0;
+ }
+ return true;
+ };
+ extFloat.prototype.FixedDecimal = function(d, n) { return this.$val.FixedDecimal(d, n); };
+ adjustLastDigitFixed = function(d, num, den, shift, $CE$B5) {
+ var $CE$B5, $ptr, d, den, i, num, shift, x, x$1, x$10, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ if ((x = $shiftLeft64(den, shift), (num.$high > x.$high || (num.$high === x.$high && num.$low > x.$low)))) {
+ $panic(new $String("strconv: num > den<<shift in adjustLastDigitFixed"));
+ }
+ if ((x$1 = $mul64(new $Uint64(0, 2), $CE$B5), x$2 = $shiftLeft64(den, shift), (x$1.$high > x$2.$high || (x$1.$high === x$2.$high && x$1.$low > x$2.$low)))) {
+ $panic(new $String("strconv: \xCE\xB5 > (den<<shift)/2"));
+ }
+ if ((x$3 = $mul64(new $Uint64(0, 2), (new $Uint64(num.$high + $CE$B5.$high, num.$low + $CE$B5.$low))), x$4 = $shiftLeft64(den, shift), (x$3.$high < x$4.$high || (x$3.$high === x$4.$high && x$3.$low < x$4.$low)))) {
+ return true;
+ }
+ if ((x$5 = $mul64(new $Uint64(0, 2), (new $Uint64(num.$high - $CE$B5.$high, num.$low - $CE$B5.$low))), x$6 = $shiftLeft64(den, shift), (x$5.$high > x$6.$high || (x$5.$high === x$6.$high && x$5.$low > x$6.$low)))) {
+ i = d.nd - 1 >> 0;
+ while (true) {
+ if (!(i >= 0)) { break; }
+ if ((x$7 = d.d, ((i < 0 || i >= x$7.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$7.$array[x$7.$offset + i])) === 57) {
+ d.nd = d.nd - (1) >> 0;
+ } else {
+ break;
+ }
+ i = i - (1) >> 0;
+ }
+ if (i < 0) {
+ (x$8 = d.d, (0 >= x$8.$length ? ($throwRuntimeError("index out of range"), undefined) : x$8.$array[x$8.$offset + 0] = 49));
+ d.nd = 1;
+ d.dp = d.dp + (1) >> 0;
+ } else {
+ (x$10 = d.d, ((i < 0 || i >= x$10.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$10.$array[x$10.$offset + i] = ((x$9 = d.d, ((i < 0 || i >= x$9.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$9.$array[x$9.$offset + i])) + (1) << 24 >>> 24)));
+ }
+ return true;
+ }
+ return false;
+ };
+ extFloat.ptr.prototype.ShortestDecimal = function(d, lower, upper) {
+ var $ptr, _q, _tmp, _tmp$1, _tmp$2, _tmp$3, allowance, buf, currentDiff, d, digit, digit$1, exp10, f, fraction, i, i$1, i$2, integer, integerDigits, lower, multiplier, n, nd, pow, pow$1, shift, targetDiff, upper, v, v1, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$19, x$2, x$20, x$21, x$22, x$23, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ f = this;
+ if ((x = f.mant, (x.$high === 0 && x.$low === 0))) {
+ d.nd = 0;
+ d.dp = 0;
+ d.neg = f.neg;
+ return true;
+ }
+ if ((f.exp === 0) && $equal(lower, f, extFloat) && $equal(lower, upper, extFloat)) {
+ buf = arrayType$1.zero();
+ n = 23;
+ v = f.mant;
+ while (true) {
+ if (!((v.$high > 0 || (v.$high === 0 && v.$low > 0)))) { break; }
+ v1 = $div64(v, new $Uint64(0, 10), false);
+ v = (x$1 = $mul64(new $Uint64(0, 10), v1), new $Uint64(v.$high - x$1.$high, v.$low - x$1.$low));
+ ((n < 0 || n >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[n] = ((new $Uint64(v.$high + 0, v.$low + 48).$low << 24 >>> 24)));
+ n = n - (1) >> 0;
+ v = v1;
+ }
+ nd = (24 - n >> 0) - 1 >> 0;
+ i = 0;
+ while (true) {
+ if (!(i < nd)) { break; }
+ (x$3 = d.d, ((i < 0 || i >= x$3.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + i] = (x$2 = (n + 1 >> 0) + i >> 0, ((x$2 < 0 || x$2 >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[x$2]))));
+ i = i + (1) >> 0;
+ }
+ _tmp = nd;
+ _tmp$1 = nd;
+ d.nd = _tmp;
+ d.dp = _tmp$1;
+ while (true) {
+ if (!(d.nd > 0 && ((x$4 = d.d, x$5 = d.nd - 1 >> 0, ((x$5 < 0 || x$5 >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + x$5])) === 48))) { break; }
+ d.nd = d.nd - (1) >> 0;
+ }
+ if (d.nd === 0) {
+ d.dp = 0;
+ }
+ d.neg = f.neg;
+ return true;
+ }
+ upper.Normalize();
+ if (f.exp > upper.exp) {
+ f.mant = $shiftLeft64(f.mant, ((((f.exp - upper.exp >> 0) >>> 0))));
+ f.exp = upper.exp;
+ }
+ if (lower.exp > upper.exp) {
+ lower.mant = $shiftLeft64(lower.mant, ((((lower.exp - upper.exp >> 0) >>> 0))));
+ lower.exp = upper.exp;
+ }
+ exp10 = frexp10Many(lower, f, upper);
+ upper.mant = (x$6 = upper.mant, x$7 = new $Uint64(0, 1), new $Uint64(x$6.$high + x$7.$high, x$6.$low + x$7.$low));
+ lower.mant = (x$8 = lower.mant, x$9 = new $Uint64(0, 1), new $Uint64(x$8.$high - x$9.$high, x$8.$low - x$9.$low));
+ shift = ((-upper.exp >>> 0));
+ integer = (($shiftRightUint64(upper.mant, shift).$low >>> 0));
+ fraction = (x$10 = upper.mant, x$11 = $shiftLeft64((new $Uint64(0, integer)), shift), new $Uint64(x$10.$high - x$11.$high, x$10.$low - x$11.$low));
+ allowance = (x$12 = upper.mant, x$13 = lower.mant, new $Uint64(x$12.$high - x$13.$high, x$12.$low - x$13.$low));
+ targetDiff = (x$14 = upper.mant, x$15 = f.mant, new $Uint64(x$14.$high - x$15.$high, x$14.$low - x$15.$low));
+ integerDigits = 0;
+ _tmp$2 = 0;
+ _tmp$3 = new $Uint64(0, 1);
+ i$1 = _tmp$2;
+ pow = _tmp$3;
+ while (true) {
+ if (!(i$1 < 20)) { break; }
+ if ((x$16 = (new $Uint64(0, integer)), (pow.$high > x$16.$high || (pow.$high === x$16.$high && pow.$low > x$16.$low)))) {
+ integerDigits = i$1;
+ break;
+ }
+ pow = $mul64(pow, (new $Uint64(0, 10)));
+ i$1 = i$1 + (1) >> 0;
+ }
+ i$2 = 0;
+ while (true) {
+ if (!(i$2 < integerDigits)) { break; }
+ pow$1 = (x$17 = (integerDigits - i$2 >> 0) - 1 >> 0, ((x$17 < 0 || x$17 >= uint64pow10.length) ? ($throwRuntimeError("index out of range"), undefined) : uint64pow10[x$17]));
+ digit = (_q = integer / ((pow$1.$low >>> 0)), (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero"));
+ (x$18 = d.d, ((i$2 < 0 || i$2 >= x$18.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$18.$array[x$18.$offset + i$2] = (((digit + 48 >>> 0) << 24 >>> 24))));
+ integer = integer - (($imul(digit, ((pow$1.$low >>> 0))) >>> 0)) >>> 0;
+ currentDiff = (x$19 = $shiftLeft64((new $Uint64(0, integer)), shift), new $Uint64(x$19.$high + fraction.$high, x$19.$low + fraction.$low));
+ if ((currentDiff.$high < allowance.$high || (currentDiff.$high === allowance.$high && currentDiff.$low < allowance.$low))) {
+ d.nd = i$2 + 1 >> 0;
+ d.dp = integerDigits + exp10 >> 0;
+ d.neg = f.neg;
+ return adjustLastDigit(d, currentDiff, targetDiff, allowance, $shiftLeft64(pow$1, shift), new $Uint64(0, 2));
+ }
+ i$2 = i$2 + (1) >> 0;
+ }
+ d.nd = integerDigits;
+ d.dp = d.nd + exp10 >> 0;
+ d.neg = f.neg;
+ digit$1 = 0;
+ multiplier = new $Uint64(0, 1);
+ while (true) {
+ fraction = $mul64(fraction, (new $Uint64(0, 10)));
+ multiplier = $mul64(multiplier, (new $Uint64(0, 10)));
+ digit$1 = (($shiftRightUint64(fraction, shift).$low >> 0));
+ (x$20 = d.d, x$21 = d.nd, ((x$21 < 0 || x$21 >= x$20.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$20.$array[x$20.$offset + x$21] = (((digit$1 + 48 >> 0) << 24 >>> 24))));
+ d.nd = d.nd + (1) >> 0;
+ fraction = (x$22 = $shiftLeft64((new $Uint64(0, digit$1)), shift), new $Uint64(fraction.$high - x$22.$high, fraction.$low - x$22.$low));
+ if ((x$23 = $mul64(allowance, multiplier), (fraction.$high < x$23.$high || (fraction.$high === x$23.$high && fraction.$low < x$23.$low)))) {
+ return adjustLastDigit(d, fraction, $mul64(targetDiff, multiplier), $mul64(allowance, multiplier), $shiftLeft64(new $Uint64(0, 1), shift), $mul64(multiplier, new $Uint64(0, 2)));
+ }
+ }
+ };
+ extFloat.prototype.ShortestDecimal = function(d, lower, upper) { return this.$val.ShortestDecimal(d, lower, upper); };
+ adjustLastDigit = function(d, currentDiff, targetDiff, maxDiff, ulpDecimal, ulpBinary) {
+ var $ptr, _index, currentDiff, d, maxDiff, targetDiff, ulpBinary, ulpDecimal, x, x$1, x$10, x$11, x$12, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ if ((x = $mul64(new $Uint64(0, 2), ulpBinary), (ulpDecimal.$high < x.$high || (ulpDecimal.$high === x.$high && ulpDecimal.$low < x.$low)))) {
+ return false;
+ }
+ while (true) {
+ if (!((x$1 = (x$2 = (x$3 = $div64(ulpDecimal, new $Uint64(0, 2), false), new $Uint64(currentDiff.$high + x$3.$high, currentDiff.$low + x$3.$low)), new $Uint64(x$2.$high + ulpBinary.$high, x$2.$low + ulpBinary.$low)), (x$1.$high < targetDiff.$high || (x$1.$high === targetDiff.$high && x$1.$low < targetDiff.$low))))) { break; }
+ _index = d.nd - 1 >> 0;
+ (x$5 = d.d, ((_index < 0 || _index >= x$5.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$5.$array[x$5.$offset + _index] = ((x$4 = d.d, ((_index < 0 || _index >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + _index])) - (1) << 24 >>> 24)));
+ currentDiff = (x$6 = ulpDecimal, new $Uint64(currentDiff.$high + x$6.$high, currentDiff.$low + x$6.$low));
+ }
+ if ((x$7 = new $Uint64(currentDiff.$high + ulpDecimal.$high, currentDiff.$low + ulpDecimal.$low), x$8 = (x$9 = (x$10 = $div64(ulpDecimal, new $Uint64(0, 2), false), new $Uint64(targetDiff.$high + x$10.$high, targetDiff.$low + x$10.$low)), new $Uint64(x$9.$high + ulpBinary.$high, x$9.$low + ulpBinary.$low)), (x$7.$high < x$8.$high || (x$7.$high === x$8.$high && x$7.$low <= x$8.$low)))) {
+ return false;
+ }
+ if ((currentDiff.$high < ulpBinary.$high || (currentDiff.$high === ulpBinary.$high && currentDiff.$low < ulpBinary.$low)) || (x$11 = new $Uint64(maxDiff.$high - ulpBinary.$high, maxDiff.$low - ulpBinary.$low), (currentDiff.$high > x$11.$high || (currentDiff.$high === x$11.$high && currentDiff.$low > x$11.$low)))) {
+ return false;
+ }
+ if ((d.nd === 1) && ((x$12 = d.d, (0 >= x$12.$length ? ($throwRuntimeError("index out of range"), undefined) : x$12.$array[x$12.$offset + 0])) === 48)) {
+ d.nd = 0;
+ d.dp = 0;
+ }
+ return true;
+ };
+ FormatFloat = function(f, fmt, prec, bitSize) {
+ var $ptr, bitSize, f, fmt, prec;
+ return ($bytesToString(genericFtoa($makeSlice(sliceType$6, 0, max(prec + 4 >> 0, 24)), f, fmt, prec, bitSize)));
+ };
+ $pkg.FormatFloat = FormatFloat;
+ AppendFloat = function(dst, f, fmt, prec, bitSize) {
+ var $ptr, bitSize, dst, f, fmt, prec;
+ return genericFtoa(dst, f, fmt, prec, bitSize);
+ };
+ $pkg.AppendFloat = AppendFloat;
+ genericFtoa = function(dst, val, fmt, prec, bitSize) {
+ var $ptr, _1, _2, _3, _4, _tuple, bitSize, bits, buf, buf$1, digits, digs, dst, exp, f, f$1, flt, fmt, lower, mant, neg, ok, prec, s, shortest, upper, val, x, x$1, x$2, x$3, y, y$1;
+ bits = new $Uint64(0, 0);
+ flt = ptrType$1.nil;
+ _1 = bitSize;
+ if (_1 === (32)) {
+ bits = (new $Uint64(0, math.Float32bits(($fround(val)))));
+ flt = float32info;
+ } else if (_1 === (64)) {
+ bits = math.Float64bits(val);
+ flt = float64info;
+ } else {
+ $panic(new $String("strconv: illegal AppendFloat/FormatFloat bitSize"));
+ }
+ neg = !((x = $shiftRightUint64(bits, ((flt.expbits + flt.mantbits >>> 0))), (x.$high === 0 && x.$low === 0)));
+ exp = (($shiftRightUint64(bits, flt.mantbits).$low >> 0)) & ((((y = flt.expbits, y < 32 ? (1 << y) : 0) >> 0) - 1 >> 0));
+ mant = (x$1 = (x$2 = $shiftLeft64(new $Uint64(0, 1), flt.mantbits), new $Uint64(x$2.$high - 0, x$2.$low - 1)), new $Uint64(bits.$high & x$1.$high, (bits.$low & x$1.$low) >>> 0));
+ _2 = exp;
+ if (_2 === ((((y$1 = flt.expbits, y$1 < 32 ? (1 << y$1) : 0) >> 0) - 1 >> 0))) {
+ s = "";
+ if (!((mant.$high === 0 && mant.$low === 0))) {
+ s = "NaN";
+ } else if (neg) {
+ s = "-Inf";
+ } else {
+ s = "+Inf";
+ }
+ return $appendSlice(dst, s);
+ } else if (_2 === (0)) {
+ exp = exp + (1) >> 0;
+ } else {
+ mant = (x$3 = $shiftLeft64(new $Uint64(0, 1), flt.mantbits), new $Uint64(mant.$high | x$3.$high, (mant.$low | x$3.$low) >>> 0));
+ }
+ exp = exp + (flt.bias) >> 0;
+ if (fmt === 98) {
+ return fmtB(dst, neg, mant, exp, flt);
+ }
+ if (!optimize) {
+ return bigFtoa(dst, prec, fmt, neg, mant, exp, flt);
+ }
+ digs = new decimalSlice.ptr(sliceType$6.nil, 0, 0, false);
+ ok = false;
+ shortest = prec < 0;
+ if (shortest) {
+ f = new extFloat.ptr(new $Uint64(0, 0), 0, false);
+ _tuple = f.AssignComputeBounds(mant, exp, neg, flt);
+ lower = $clone(_tuple[0], extFloat);
+ upper = $clone(_tuple[1], extFloat);
+ buf = arrayType$2.zero();
+ digs.d = new sliceType$6(buf);
+ ok = f.ShortestDecimal(digs, lower, upper);
+ if (!ok) {
+ return bigFtoa(dst, prec, fmt, neg, mant, exp, flt);
+ }
+ _3 = fmt;
+ if ((_3 === (101)) || (_3 === (69))) {
+ prec = max(digs.nd - 1 >> 0, 0);
+ } else if (_3 === (102)) {
+ prec = max(digs.nd - digs.dp >> 0, 0);
+ } else if ((_3 === (103)) || (_3 === (71))) {
+ prec = digs.nd;
+ }
+ } else if (!((fmt === 102))) {
+ digits = prec;
+ _4 = fmt;
+ if ((_4 === (101)) || (_4 === (69))) {
+ digits = digits + (1) >> 0;
+ } else if ((_4 === (103)) || (_4 === (71))) {
+ if (prec === 0) {
+ prec = 1;
+ }
+ digits = prec;
+ }
+ if (digits <= 15) {
+ buf$1 = arrayType$1.zero();
+ digs.d = new sliceType$6(buf$1);
+ f$1 = new extFloat.ptr(mant, exp - ((flt.mantbits >> 0)) >> 0, neg);
+ ok = f$1.FixedDecimal(digs, digits);
+ }
+ }
+ if (!ok) {
+ return bigFtoa(dst, prec, fmt, neg, mant, exp, flt);
+ }
+ return formatDigits(dst, shortest, neg, $clone(digs, decimalSlice), prec, fmt);
+ };
+ bigFtoa = function(dst, prec, fmt, neg, mant, exp, flt) {
+ var $ptr, _1, _2, d, digs, dst, exp, flt, fmt, mant, neg, prec, shortest;
+ d = new decimal.ptr(arrayType.zero(), 0, 0, false, false);
+ d.Assign(mant);
+ d.Shift(exp - ((flt.mantbits >> 0)) >> 0);
+ digs = new decimalSlice.ptr(sliceType$6.nil, 0, 0, false);
+ shortest = prec < 0;
+ if (shortest) {
+ roundShortest(d, mant, exp, flt);
+ decimalSlice.copy(digs, new decimalSlice.ptr(new sliceType$6(d.d), d.nd, d.dp, false));
+ _1 = fmt;
+ if ((_1 === (101)) || (_1 === (69))) {
+ prec = digs.nd - 1 >> 0;
+ } else if (_1 === (102)) {
+ prec = max(digs.nd - digs.dp >> 0, 0);
+ } else if ((_1 === (103)) || (_1 === (71))) {
+ prec = digs.nd;
+ }
+ } else {
+ _2 = fmt;
+ if ((_2 === (101)) || (_2 === (69))) {
+ d.Round(prec + 1 >> 0);
+ } else if (_2 === (102)) {
+ d.Round(d.dp + prec >> 0);
+ } else if ((_2 === (103)) || (_2 === (71))) {
+ if (prec === 0) {
+ prec = 1;
+ }
+ d.Round(prec);
+ }
+ decimalSlice.copy(digs, new decimalSlice.ptr(new sliceType$6(d.d), d.nd, d.dp, false));
+ }
+ return formatDigits(dst, shortest, neg, $clone(digs, decimalSlice), prec, fmt);
+ };
+ formatDigits = function(dst, shortest, neg, digs, prec, fmt) {
+ var $ptr, _1, digs, dst, eprec, exp, fmt, neg, prec, shortest;
+ _1 = fmt;
+ if ((_1 === (101)) || (_1 === (69))) {
+ return fmtE(dst, neg, $clone(digs, decimalSlice), prec, fmt);
+ } else if (_1 === (102)) {
+ return fmtF(dst, neg, $clone(digs, decimalSlice), prec);
+ } else if ((_1 === (103)) || (_1 === (71))) {
+ eprec = prec;
+ if (eprec > digs.nd && digs.nd >= digs.dp) {
+ eprec = digs.nd;
+ }
+ if (shortest) {
+ eprec = 6;
+ }
+ exp = digs.dp - 1 >> 0;
+ if (exp < -4 || exp >= eprec) {
+ if (prec > digs.nd) {
+ prec = digs.nd;
+ }
+ return fmtE(dst, neg, $clone(digs, decimalSlice), prec - 1 >> 0, (fmt + 101 << 24 >>> 24) - 103 << 24 >>> 24);
+ }
+ if (prec > digs.dp) {
+ prec = digs.nd;
+ }
+ return fmtF(dst, neg, $clone(digs, decimalSlice), max(prec - digs.dp >> 0, 0));
+ }
+ return $append(dst, 37, fmt);
+ };
+ roundShortest = function(d, mant, exp, flt) {
+ var $ptr, d, exp, explo, flt, i, inclusive, l, lower, m, mant, mantlo, minexp, okdown, okup, u, upper, x, x$1, x$2, x$3, x$4, x$5, x$6, x$7;
+ if ((mant.$high === 0 && mant.$low === 0)) {
+ d.nd = 0;
+ return;
+ }
+ minexp = flt.bias + 1 >> 0;
+ if (exp > minexp && ($imul(332, ((d.dp - d.nd >> 0)))) >= ($imul(100, ((exp - ((flt.mantbits >> 0)) >> 0))))) {
+ return;
+ }
+ upper = new decimal.ptr(arrayType.zero(), 0, 0, false, false);
+ upper.Assign((x = $mul64(mant, new $Uint64(0, 2)), new $Uint64(x.$high + 0, x.$low + 1)));
+ upper.Shift((exp - ((flt.mantbits >> 0)) >> 0) - 1 >> 0);
+ mantlo = new $Uint64(0, 0);
+ explo = 0;
+ if ((x$1 = $shiftLeft64(new $Uint64(0, 1), flt.mantbits), (mant.$high > x$1.$high || (mant.$high === x$1.$high && mant.$low > x$1.$low))) || (exp === minexp)) {
+ mantlo = new $Uint64(mant.$high - 0, mant.$low - 1);
+ explo = exp;
+ } else {
+ mantlo = (x$2 = $mul64(mant, new $Uint64(0, 2)), new $Uint64(x$2.$high - 0, x$2.$low - 1));
+ explo = exp - 1 >> 0;
+ }
+ lower = new decimal.ptr(arrayType.zero(), 0, 0, false, false);
+ lower.Assign((x$3 = $mul64(mantlo, new $Uint64(0, 2)), new $Uint64(x$3.$high + 0, x$3.$low + 1)));
+ lower.Shift((explo - ((flt.mantbits >> 0)) >> 0) - 1 >> 0);
+ inclusive = (x$4 = $div64(mant, new $Uint64(0, 2), true), (x$4.$high === 0 && x$4.$low === 0));
+ i = 0;
+ while (true) {
+ if (!(i < d.nd)) { break; }
+ l = 48;
+ if (i < lower.nd) {
+ l = (x$5 = lower.d, ((i < 0 || i >= x$5.length) ? ($throwRuntimeError("index out of range"), undefined) : x$5[i]));
+ }
+ m = (x$6 = d.d, ((i < 0 || i >= x$6.length) ? ($throwRuntimeError("index out of range"), undefined) : x$6[i]));
+ u = 48;
+ if (i < upper.nd) {
+ u = (x$7 = upper.d, ((i < 0 || i >= x$7.length) ? ($throwRuntimeError("index out of range"), undefined) : x$7[i]));
+ }
+ okdown = !((l === m)) || inclusive && ((i + 1 >> 0) === lower.nd);
+ okup = !((m === u)) && (inclusive || (m + 1 << 24 >>> 24) < u || (i + 1 >> 0) < upper.nd);
+ if (okdown && okup) {
+ d.Round(i + 1 >> 0);
+ return;
+ } else if (okdown) {
+ d.RoundDown(i + 1 >> 0);
+ return;
+ } else if (okup) {
+ d.RoundUp(i + 1 >> 0);
+ return;
+ }
+ i = i + (1) >> 0;
+ }
+ };
+ fmtE = function(dst, neg, d, prec, fmt) {
+ var $ptr, _q, _q$1, _q$2, _r, _r$1, _r$2, ch, d, dst, exp, fmt, i, m, neg, prec, x;
+ if (neg) {
+ dst = $append(dst, 45);
+ }
+ ch = 48;
+ if (!((d.nd === 0))) {
+ ch = (x = d.d, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0]));
+ }
+ dst = $append(dst, ch);
+ if (prec > 0) {
+ dst = $append(dst, 46);
+ i = 1;
+ m = min(d.nd, prec + 1 >> 0);
+ if (i < m) {
+ dst = $appendSlice(dst, $subslice(d.d, i, m));
+ i = m;
+ }
+ while (true) {
+ if (!(i <= prec)) { break; }
+ dst = $append(dst, 48);
+ i = i + (1) >> 0;
+ }
+ }
+ dst = $append(dst, fmt);
+ exp = d.dp - 1 >> 0;
+ if (d.nd === 0) {
+ exp = 0;
+ }
+ if (exp < 0) {
+ ch = 45;
+ exp = -exp;
+ } else {
+ ch = 43;
+ }
+ dst = $append(dst, ch);
+ if (exp < 10) {
+ dst = $append(dst, 48, ((exp << 24 >>> 24)) + 48 << 24 >>> 24);
+ } else if (exp < 100) {
+ dst = $append(dst, (((_q = exp / 10, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")) << 24 >>> 24)) + 48 << 24 >>> 24, (((_r = exp % 10, _r === _r ? _r : $throwRuntimeError("integer divide by zero")) << 24 >>> 24)) + 48 << 24 >>> 24);
+ } else {
+ dst = $append(dst, (((_q$1 = exp / 100, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero")) << 24 >>> 24)) + 48 << 24 >>> 24, (_r$1 = (((_q$2 = exp / 10, (_q$2 === _q$2 && _q$2 !== 1/0 && _q$2 !== -1/0) ? _q$2 >> 0 : $throwRuntimeError("integer divide by zero")) << 24 >>> 24)) % 10, _r$1 === _r$1 ? _r$1 : $throwRuntimeError("integer divide by zero")) + 48 << 24 >>> 24, (((_r$2 = exp % 10, _r$2 === _r$2 ? _r$2 : $throwRuntimeError("integer divide by zero")) << 24 >>> 24)) + 48 << 24 >>> 24);
+ }
+ return dst;
+ };
+ fmtF = function(dst, neg, d, prec) {
+ var $ptr, ch, d, dst, i, j, m, neg, prec, x;
+ if (neg) {
+ dst = $append(dst, 45);
+ }
+ if (d.dp > 0) {
+ m = min(d.nd, d.dp);
+ dst = $appendSlice(dst, $subslice(d.d, 0, m));
+ while (true) {
+ if (!(m < d.dp)) { break; }
+ dst = $append(dst, 48);
+ m = m + (1) >> 0;
+ }
+ } else {
+ dst = $append(dst, 48);
+ }
+ if (prec > 0) {
+ dst = $append(dst, 46);
+ i = 0;
+ while (true) {
+ if (!(i < prec)) { break; }
+ ch = 48;
+ j = d.dp + i >> 0;
+ if (0 <= j && j < d.nd) {
+ ch = (x = d.d, ((j < 0 || j >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + j]));
+ }
+ dst = $append(dst, ch);
+ i = i + (1) >> 0;
+ }
+ }
+ return dst;
+ };
+ fmtB = function(dst, neg, mant, exp, flt) {
+ var $ptr, _tuple, _tuple$1, dst, exp, flt, mant, neg;
+ if (neg) {
+ dst = $append(dst, 45);
+ }
+ _tuple = formatBits(dst, mant, 10, false, true);
+ dst = _tuple[0];
+ dst = $append(dst, 112);
+ exp = exp - (((flt.mantbits >> 0))) >> 0;
+ if (exp >= 0) {
+ dst = $append(dst, 43);
+ }
+ _tuple$1 = formatBits(dst, (new $Uint64(0, exp)), 10, exp < 0, true);
+ dst = _tuple$1[0];
+ return dst;
+ };
+ min = function(a, b) {
+ var $ptr, a, b;
+ if (a < b) {
+ return a;
+ }
+ return b;
+ };
+ max = function(a, b) {
+ var $ptr, a, b;
+ if (a > b) {
+ return a;
+ }
+ return b;
+ };
+ FormatUint = function(i, base) {
+ var $ptr, _tuple, base, i, s;
+ _tuple = formatBits(sliceType$6.nil, i, base, false, false);
+ s = _tuple[1];
+ return s;
+ };
+ $pkg.FormatUint = FormatUint;
+ FormatInt = function(i, base) {
+ var $ptr, _tuple, base, i, s;
+ _tuple = formatBits(sliceType$6.nil, (new $Uint64(i.$high, i.$low)), base, (i.$high < 0 || (i.$high === 0 && i.$low < 0)), false);
+ s = _tuple[1];
+ return s;
+ };
+ $pkg.FormatInt = FormatInt;
+ Itoa = function(i) {
+ var $ptr, i;
+ return FormatInt((new $Int64(0, i)), 10);
+ };
+ $pkg.Itoa = Itoa;
+ AppendInt = function(dst, i, base) {
+ var $ptr, _tuple, base, dst, i;
+ _tuple = formatBits(dst, (new $Uint64(i.$high, i.$low)), base, (i.$high < 0 || (i.$high === 0 && i.$low < 0)), true);
+ dst = _tuple[0];
+ return dst;
+ };
+ $pkg.AppendInt = AppendInt;
+ AppendUint = function(dst, i, base) {
+ var $ptr, _tuple, base, dst, i;
+ _tuple = formatBits(dst, i, base, false, true);
+ dst = _tuple[0];
+ return dst;
+ };
+ $pkg.AppendUint = AppendUint;
+ formatBits = function(dst, u, base, neg, append_) {
+ var $ptr, _q, _q$1, a, append_, b, b$1, base, d, dst, i, j, m, neg, q, q$1, q$2, qs, s, s$1, u, us, us$1, x, x$1;
+ d = sliceType$6.nil;
+ s = "";
+ if (base < 2 || base > 36) {
+ $panic(new $String("strconv: illegal AppendInt/FormatInt base"));
+ }
+ a = arrayType$3.zero();
+ i = 65;
+ if (neg) {
+ u = new $Uint64(-u.$high, -u.$low);
+ }
+ if (base === 10) {
+ if (true) {
+ while (true) {
+ if (!((u.$high > 0 || (u.$high === 0 && u.$low > 4294967295)))) { break; }
+ q = $div64(u, new $Uint64(0, 1000000000), false);
+ us = (((x = $mul64(q, new $Uint64(0, 1000000000)), new $Uint64(u.$high - x.$high, u.$low - x.$low)).$low >>> 0));
+ j = 9;
+ while (true) {
+ if (!(j > 0)) { break; }
+ i = i - (1) >> 0;
+ qs = (_q = us / 10, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero"));
+ ((i < 0 || i >= a.length) ? ($throwRuntimeError("index out of range"), undefined) : a[i] = ((((us - ($imul(qs, 10) >>> 0) >>> 0) + 48 >>> 0) << 24 >>> 24)));
+ us = qs;
+ j = j - (1) >> 0;
+ }
+ u = q;
+ }
+ }
+ us$1 = ((u.$low >>> 0));
+ while (true) {
+ if (!(us$1 >= 10)) { break; }
+ i = i - (1) >> 0;
+ q$1 = (_q$1 = us$1 / 10, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >>> 0 : $throwRuntimeError("integer divide by zero"));
+ ((i < 0 || i >= a.length) ? ($throwRuntimeError("index out of range"), undefined) : a[i] = ((((us$1 - ($imul(q$1, 10) >>> 0) >>> 0) + 48 >>> 0) << 24 >>> 24)));
+ us$1 = q$1;
+ }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= a.length) ? ($throwRuntimeError("index out of range"), undefined) : a[i] = (((us$1 + 48 >>> 0) << 24 >>> 24)));
+ } else {
+ s$1 = ((base < 0 || base >= shifts.length) ? ($throwRuntimeError("index out of range"), undefined) : shifts[base]);
+ if (s$1 > 0) {
+ b = (new $Uint64(0, base));
+ m = ((b.$low >>> 0)) - 1 >>> 0;
+ while (true) {
+ if (!((u.$high > b.$high || (u.$high === b.$high && u.$low >= b.$low)))) { break; }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= a.length) ? ($throwRuntimeError("index out of range"), undefined) : a[i] = "0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((((u.$low >>> 0)) & m) >>> 0)));
+ u = $shiftRightUint64(u, (s$1));
+ }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= a.length) ? ($throwRuntimeError("index out of range"), undefined) : a[i] = "0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((u.$low >>> 0))));
+ } else {
+ b$1 = (new $Uint64(0, base));
+ while (true) {
+ if (!((u.$high > b$1.$high || (u.$high === b$1.$high && u.$low >= b$1.$low)))) { break; }
+ i = i - (1) >> 0;
+ q$2 = $div64(u, b$1, false);
+ ((i < 0 || i >= a.length) ? ($throwRuntimeError("index out of range"), undefined) : a[i] = "0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((((x$1 = $mul64(q$2, b$1), new $Uint64(u.$high - x$1.$high, u.$low - x$1.$low)).$low >>> 0))));
+ u = q$2;
+ }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= a.length) ? ($throwRuntimeError("index out of range"), undefined) : a[i] = "0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((u.$low >>> 0))));
+ }
+ }
+ if (neg) {
+ i = i - (1) >> 0;
+ ((i < 0 || i >= a.length) ? ($throwRuntimeError("index out of range"), undefined) : a[i] = 45);
+ }
+ if (append_) {
+ d = $appendSlice(dst, $subslice(new sliceType$6(a), i));
+ return [d, s];
+ }
+ s = ($bytesToString($subslice(new sliceType$6(a), i)));
+ return [d, s];
+ };
+ quoteWith = function(s, quote, ASCIIonly, graphicOnly) {
+ var $ptr, ASCIIonly, _q, graphicOnly, quote, s;
+ return ($bytesToString(appendQuotedWith($makeSlice(sliceType$6, 0, (_q = ($imul(3, s.length)) / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"))), s, quote, ASCIIonly, graphicOnly)));
+ };
+ appendQuotedWith = function(buf, s, quote, ASCIIonly, graphicOnly) {
+ var $ptr, ASCIIonly, _tuple, buf, graphicOnly, quote, r, s, width;
+ buf = $append(buf, quote);
+ width = 0;
+ while (true) {
+ if (!(s.length > 0)) { break; }
+ r = ((s.charCodeAt(0) >> 0));
+ width = 1;
+ if (r >= 128) {
+ _tuple = utf8.DecodeRuneInString(s);
+ r = _tuple[0];
+ width = _tuple[1];
+ }
+ if ((width === 1) && (r === 65533)) {
+ buf = $appendSlice(buf, "\\x");
+ buf = $append(buf, "0123456789abcdef".charCodeAt((s.charCodeAt(0) >>> 4 << 24 >>> 24)));
+ buf = $append(buf, "0123456789abcdef".charCodeAt(((s.charCodeAt(0) & 15) >>> 0)));
+ s = $substring(s, width);
+ continue;
+ }
+ buf = appendEscapedRune(buf, r, width, quote, ASCIIonly, graphicOnly);
+ s = $substring(s, width);
+ }
+ buf = $append(buf, quote);
+ return buf;
+ };
+ appendQuotedRuneWith = function(buf, r, quote, ASCIIonly, graphicOnly) {
+ var $ptr, ASCIIonly, buf, graphicOnly, quote, r;
+ buf = $append(buf, quote);
+ if (!utf8.ValidRune(r)) {
+ r = 65533;
+ }
+ buf = appendEscapedRune(buf, r, utf8.RuneLen(r), quote, ASCIIonly, graphicOnly);
+ buf = $append(buf, quote);
+ return buf;
+ };
+ appendEscapedRune = function(buf, r, width, quote, ASCIIonly, graphicOnly) {
+ var $ptr, ASCIIonly, _1, buf, graphicOnly, n, quote, r, runeTmp, s, s$1, width;
+ runeTmp = arrayType$4.zero();
+ if ((r === ((quote >> 0))) || (r === 92)) {
+ buf = $append(buf, 92);
+ buf = $append(buf, ((r << 24 >>> 24)));
+ return buf;
+ }
+ if (ASCIIonly) {
+ if (r < 128 && IsPrint(r)) {
+ buf = $append(buf, ((r << 24 >>> 24)));
+ return buf;
+ }
+ } else if (IsPrint(r) || graphicOnly && isInGraphicList(r)) {
+ n = utf8.EncodeRune(new sliceType$6(runeTmp), r);
+ buf = $appendSlice(buf, $subslice(new sliceType$6(runeTmp), 0, n));
+ return buf;
+ }
+ _1 = r;
+ if (_1 === (7)) {
+ buf = $appendSlice(buf, "\\a");
+ } else if (_1 === (8)) {
+ buf = $appendSlice(buf, "\\b");
+ } else if (_1 === (12)) {
+ buf = $appendSlice(buf, "\\f");
+ } else if (_1 === (10)) {
+ buf = $appendSlice(buf, "\\n");
+ } else if (_1 === (13)) {
+ buf = $appendSlice(buf, "\\r");
+ } else if (_1 === (9)) {
+ buf = $appendSlice(buf, "\\t");
+ } else if (_1 === (11)) {
+ buf = $appendSlice(buf, "\\v");
+ } else {
+ if (r < 32) {
+ buf = $appendSlice(buf, "\\x");
+ buf = $append(buf, "0123456789abcdef".charCodeAt((((r << 24 >>> 24)) >>> 4 << 24 >>> 24)));
+ buf = $append(buf, "0123456789abcdef".charCodeAt(((((r << 24 >>> 24)) & 15) >>> 0)));
+ } else if (r > 1114111) {
+ r = 65533;
+ buf = $appendSlice(buf, "\\u");
+ s = 12;
+ while (true) {
+ if (!(s >= 0)) { break; }
+ buf = $append(buf, "0123456789abcdef".charCodeAt((((r >> $min(((s >>> 0)), 31)) >> 0) & 15)));
+ s = s - (4) >> 0;
+ }
+ } else if (r < 65536) {
+ buf = $appendSlice(buf, "\\u");
+ s = 12;
+ while (true) {
+ if (!(s >= 0)) { break; }
+ buf = $append(buf, "0123456789abcdef".charCodeAt((((r >> $min(((s >>> 0)), 31)) >> 0) & 15)));
+ s = s - (4) >> 0;
+ }
+ } else {
+ buf = $appendSlice(buf, "\\U");
+ s$1 = 28;
+ while (true) {
+ if (!(s$1 >= 0)) { break; }
+ buf = $append(buf, "0123456789abcdef".charCodeAt((((r >> $min(((s$1 >>> 0)), 31)) >> 0) & 15)));
+ s$1 = s$1 - (4) >> 0;
+ }
+ }
+ }
+ return buf;
+ };
+ Quote = function(s) {
+ var $ptr, s;
+ return quoteWith(s, 34, false, false);
+ };
+ $pkg.Quote = Quote;
+ AppendQuote = function(dst, s) {
+ var $ptr, dst, s;
+ return appendQuotedWith(dst, s, 34, false, false);
+ };
+ $pkg.AppendQuote = AppendQuote;
+ QuoteToASCII = function(s) {
+ var $ptr, s;
+ return quoteWith(s, 34, true, false);
+ };
+ $pkg.QuoteToASCII = QuoteToASCII;
+ AppendQuoteToASCII = function(dst, s) {
+ var $ptr, dst, s;
+ return appendQuotedWith(dst, s, 34, true, false);
+ };
+ $pkg.AppendQuoteToASCII = AppendQuoteToASCII;
+ AppendQuoteRune = function(dst, r) {
+ var $ptr, dst, r;
+ return appendQuotedRuneWith(dst, r, 39, false, false);
+ };
+ $pkg.AppendQuoteRune = AppendQuoteRune;
+ AppendQuoteRuneToASCII = function(dst, r) {
+ var $ptr, dst, r;
+ return appendQuotedRuneWith(dst, r, 39, true, false);
+ };
+ $pkg.AppendQuoteRuneToASCII = AppendQuoteRuneToASCII;
+ CanBackquote = function(s) {
+ var $ptr, _tuple, r, s, wid;
+ while (true) {
+ if (!(s.length > 0)) { break; }
+ _tuple = utf8.DecodeRuneInString(s);
+ r = _tuple[0];
+ wid = _tuple[1];
+ s = $substring(s, wid);
+ if (wid > 1) {
+ if (r === 65279) {
+ return false;
+ }
+ continue;
+ }
+ if (r === 65533) {
+ return false;
+ }
+ if ((r < 32 && !((r === 9))) || (r === 96) || (r === 127)) {
+ return false;
+ }
+ }
+ return true;
+ };
+ $pkg.CanBackquote = CanBackquote;
+ unhex = function(b) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, b, c, ok, v;
+ v = 0;
+ ok = false;
+ c = ((b >> 0));
+ if (48 <= c && c <= 57) {
+ _tmp = c - 48 >> 0;
+ _tmp$1 = true;
+ v = _tmp;
+ ok = _tmp$1;
+ return [v, ok];
+ } else if (97 <= c && c <= 102) {
+ _tmp$2 = (c - 97 >> 0) + 10 >> 0;
+ _tmp$3 = true;
+ v = _tmp$2;
+ ok = _tmp$3;
+ return [v, ok];
+ } else if (65 <= c && c <= 70) {
+ _tmp$4 = (c - 65 >> 0) + 10 >> 0;
+ _tmp$5 = true;
+ v = _tmp$4;
+ ok = _tmp$5;
+ return [v, ok];
+ }
+ return [v, ok];
+ };
+ UnquoteChar = function(s, quote) {
+ var $ptr, _1, _2, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tuple, _tuple$1, c, c$1, err, j, j$1, multibyte, n, ok, quote, r, s, size, tail, v, v$1, value, x, x$1;
+ value = 0;
+ multibyte = false;
+ tail = "";
+ err = $ifaceNil;
+ c = s.charCodeAt(0);
+ if ((c === quote) && ((quote === 39) || (quote === 34))) {
+ err = $pkg.ErrSyntax;
+ return [value, multibyte, tail, err];
+ } else if (c >= 128) {
+ _tuple = utf8.DecodeRuneInString(s);
+ r = _tuple[0];
+ size = _tuple[1];
+ _tmp = r;
+ _tmp$1 = true;
+ _tmp$2 = $substring(s, size);
+ _tmp$3 = $ifaceNil;
+ value = _tmp;
+ multibyte = _tmp$1;
+ tail = _tmp$2;
+ err = _tmp$3;
+ return [value, multibyte, tail, err];
+ } else if (!((c === 92))) {
+ _tmp$4 = ((s.charCodeAt(0) >> 0));
+ _tmp$5 = false;
+ _tmp$6 = $substring(s, 1);
+ _tmp$7 = $ifaceNil;
+ value = _tmp$4;
+ multibyte = _tmp$5;
+ tail = _tmp$6;
+ err = _tmp$7;
+ return [value, multibyte, tail, err];
+ }
+ if (s.length <= 1) {
+ err = $pkg.ErrSyntax;
+ return [value, multibyte, tail, err];
+ }
+ c$1 = s.charCodeAt(1);
+ s = $substring(s, 2);
+ switch (0) { default:
+ _1 = c$1;
+ if (_1 === (97)) {
+ value = 7;
+ } else if (_1 === (98)) {
+ value = 8;
+ } else if (_1 === (102)) {
+ value = 12;
+ } else if (_1 === (110)) {
+ value = 10;
+ } else if (_1 === (114)) {
+ value = 13;
+ } else if (_1 === (116)) {
+ value = 9;
+ } else if (_1 === (118)) {
+ value = 11;
+ } else if ((_1 === (120)) || (_1 === (117)) || (_1 === (85))) {
+ n = 0;
+ _2 = c$1;
+ if (_2 === (120)) {
+ n = 2;
+ } else if (_2 === (117)) {
+ n = 4;
+ } else if (_2 === (85)) {
+ n = 8;
+ }
+ v = 0;
+ if (s.length < n) {
+ err = $pkg.ErrSyntax;
+ return [value, multibyte, tail, err];
+ }
+ j = 0;
+ while (true) {
+ if (!(j < n)) { break; }
+ _tuple$1 = unhex(s.charCodeAt(j));
+ x = _tuple$1[0];
+ ok = _tuple$1[1];
+ if (!ok) {
+ err = $pkg.ErrSyntax;
+ return [value, multibyte, tail, err];
+ }
+ v = (v << 4 >> 0) | x;
+ j = j + (1) >> 0;
+ }
+ s = $substring(s, n);
+ if (c$1 === 120) {
+ value = v;
+ break;
+ }
+ if (v > 1114111) {
+ err = $pkg.ErrSyntax;
+ return [value, multibyte, tail, err];
+ }
+ value = v;
+ multibyte = true;
+ } else if ((_1 === (48)) || (_1 === (49)) || (_1 === (50)) || (_1 === (51)) || (_1 === (52)) || (_1 === (53)) || (_1 === (54)) || (_1 === (55))) {
+ v$1 = ((c$1 >> 0)) - 48 >> 0;
+ if (s.length < 2) {
+ err = $pkg.ErrSyntax;
+ return [value, multibyte, tail, err];
+ }
+ j$1 = 0;
+ while (true) {
+ if (!(j$1 < 2)) { break; }
+ x$1 = ((s.charCodeAt(j$1) >> 0)) - 48 >> 0;
+ if (x$1 < 0 || x$1 > 7) {
+ err = $pkg.ErrSyntax;
+ return [value, multibyte, tail, err];
+ }
+ v$1 = ((v$1 << 3 >> 0)) | x$1;
+ j$1 = j$1 + (1) >> 0;
+ }
+ s = $substring(s, 2);
+ if (v$1 > 255) {
+ err = $pkg.ErrSyntax;
+ return [value, multibyte, tail, err];
+ }
+ value = v$1;
+ } else if (_1 === (92)) {
+ value = 92;
+ } else if ((_1 === (39)) || (_1 === (34))) {
+ if (!((c$1 === quote))) {
+ err = $pkg.ErrSyntax;
+ return [value, multibyte, tail, err];
+ }
+ value = ((c$1 >> 0));
+ } else {
+ err = $pkg.ErrSyntax;
+ return [value, multibyte, tail, err];
+ }
+ }
+ tail = s;
+ return [value, multibyte, tail, err];
+ };
+ $pkg.UnquoteChar = UnquoteChar;
+ Unquote = function(s) {
+ var $ptr, _1, _q, _tuple, _tuple$1, buf, buf$1, c, err, i, multibyte, n, n$1, quote, r, runeTmp, s, size, ss;
+ n = s.length;
+ if (n < 2) {
+ return ["", $pkg.ErrSyntax];
+ }
+ quote = s.charCodeAt(0);
+ if (!((quote === s.charCodeAt((n - 1 >> 0))))) {
+ return ["", $pkg.ErrSyntax];
+ }
+ s = $substring(s, 1, (n - 1 >> 0));
+ if (quote === 96) {
+ if (contains(s, 96)) {
+ return ["", $pkg.ErrSyntax];
+ }
+ if (contains(s, 13)) {
+ buf = $makeSlice(sliceType$6, 0, (s.length - 1 >> 0));
+ i = 0;
+ while (true) {
+ if (!(i < s.length)) { break; }
+ if (!((s.charCodeAt(i) === 13))) {
+ buf = $append(buf, s.charCodeAt(i));
+ }
+ i = i + (1) >> 0;
+ }
+ return [($bytesToString(buf)), $ifaceNil];
+ }
+ return [s, $ifaceNil];
+ }
+ if (!((quote === 34)) && !((quote === 39))) {
+ return ["", $pkg.ErrSyntax];
+ }
+ if (contains(s, 10)) {
+ return ["", $pkg.ErrSyntax];
+ }
+ if (!contains(s, 92) && !contains(s, quote)) {
+ _1 = quote;
+ if (_1 === (34)) {
+ return [s, $ifaceNil];
+ } else if (_1 === (39)) {
+ _tuple = utf8.DecodeRuneInString(s);
+ r = _tuple[0];
+ size = _tuple[1];
+ if ((size === s.length) && (!((r === 65533)) || !((size === 1)))) {
+ return [s, $ifaceNil];
+ }
+ }
+ }
+ runeTmp = arrayType$4.zero();
+ buf$1 = $makeSlice(sliceType$6, 0, (_q = ($imul(3, s.length)) / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")));
+ while (true) {
+ if (!(s.length > 0)) { break; }
+ _tuple$1 = UnquoteChar(s, quote);
+ c = _tuple$1[0];
+ multibyte = _tuple$1[1];
+ ss = _tuple$1[2];
+ err = _tuple$1[3];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return ["", err];
+ }
+ s = ss;
+ if (c < 128 || !multibyte) {
+ buf$1 = $append(buf$1, ((c << 24 >>> 24)));
+ } else {
+ n$1 = utf8.EncodeRune(new sliceType$6(runeTmp), c);
+ buf$1 = $appendSlice(buf$1, $subslice(new sliceType$6(runeTmp), 0, n$1));
+ }
+ if ((quote === 39) && !((s.length === 0))) {
+ return ["", $pkg.ErrSyntax];
+ }
+ }
+ return [($bytesToString(buf$1)), $ifaceNil];
+ };
+ $pkg.Unquote = Unquote;
+ contains = function(s, c) {
+ var $ptr, c, i, s;
+ i = 0;
+ while (true) {
+ if (!(i < s.length)) { break; }
+ if (s.charCodeAt(i) === c) {
+ return true;
+ }
+ i = i + (1) >> 0;
+ }
+ return false;
+ };
+ bsearch16 = function(a, x) {
+ var $ptr, _q, _tmp, _tmp$1, a, h, i, j, x;
+ _tmp = 0;
+ _tmp$1 = a.$length;
+ i = _tmp;
+ j = _tmp$1;
+ while (true) {
+ if (!(i < j)) { break; }
+ h = i + (_q = ((j - i >> 0)) / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")) >> 0;
+ if (((h < 0 || h >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + h]) < x) {
+ i = h + 1 >> 0;
+ } else {
+ j = h;
+ }
+ }
+ return i;
+ };
+ bsearch32 = function(a, x) {
+ var $ptr, _q, _tmp, _tmp$1, a, h, i, j, x;
+ _tmp = 0;
+ _tmp$1 = a.$length;
+ i = _tmp;
+ j = _tmp$1;
+ while (true) {
+ if (!(i < j)) { break; }
+ h = i + (_q = ((j - i >> 0)) / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")) >> 0;
+ if (((h < 0 || h >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + h]) < x) {
+ i = h + 1 >> 0;
+ } else {
+ j = h;
+ }
+ }
+ return i;
+ };
+ IsPrint = function(r) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, i, i$1, isNotPrint, isNotPrint$1, isPrint, isPrint$1, j, j$1, r, rr, rr$1, x, x$1, x$2, x$3;
+ if (r <= 255) {
+ if (32 <= r && r <= 126) {
+ return true;
+ }
+ if (161 <= r && r <= 255) {
+ return !((r === 173));
+ }
+ return false;
+ }
+ if (0 <= r && r < 65536) {
+ _tmp = ((r << 16 >>> 16));
+ _tmp$1 = isPrint16;
+ _tmp$2 = isNotPrint16;
+ rr = _tmp;
+ isPrint = _tmp$1;
+ isNotPrint = _tmp$2;
+ i = bsearch16(isPrint, rr);
+ if (i >= isPrint.$length || rr < (x = (i & ~1) >> 0, ((x < 0 || x >= isPrint.$length) ? ($throwRuntimeError("index out of range"), undefined) : isPrint.$array[isPrint.$offset + x])) || (x$1 = i | 1, ((x$1 < 0 || x$1 >= isPrint.$length) ? ($throwRuntimeError("index out of range"), undefined) : isPrint.$array[isPrint.$offset + x$1])) < rr) {
+ return false;
+ }
+ j = bsearch16(isNotPrint, rr);
+ return j >= isNotPrint.$length || !((((j < 0 || j >= isNotPrint.$length) ? ($throwRuntimeError("index out of range"), undefined) : isNotPrint.$array[isNotPrint.$offset + j]) === rr));
+ }
+ _tmp$3 = ((r >>> 0));
+ _tmp$4 = isPrint32;
+ _tmp$5 = isNotPrint32;
+ rr$1 = _tmp$3;
+ isPrint$1 = _tmp$4;
+ isNotPrint$1 = _tmp$5;
+ i$1 = bsearch32(isPrint$1, rr$1);
+ if (i$1 >= isPrint$1.$length || rr$1 < (x$2 = (i$1 & ~1) >> 0, ((x$2 < 0 || x$2 >= isPrint$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : isPrint$1.$array[isPrint$1.$offset + x$2])) || (x$3 = i$1 | 1, ((x$3 < 0 || x$3 >= isPrint$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : isPrint$1.$array[isPrint$1.$offset + x$3])) < rr$1) {
+ return false;
+ }
+ if (r >= 131072) {
+ return true;
+ }
+ r = r - (65536) >> 0;
+ j$1 = bsearch16(isNotPrint$1, ((r << 16 >>> 16)));
+ return j$1 >= isNotPrint$1.$length || !((((j$1 < 0 || j$1 >= isNotPrint$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : isNotPrint$1.$array[isNotPrint$1.$offset + j$1]) === ((r << 16 >>> 16))));
+ };
+ $pkg.IsPrint = IsPrint;
+ isInGraphicList = function(r) {
+ var $ptr, i, r, rr;
+ if (r > 65535) {
+ return false;
+ }
+ rr = ((r << 16 >>> 16));
+ i = bsearch16(isGraphic, rr);
+ return i < isGraphic.$length && (rr === ((i < 0 || i >= isGraphic.$length) ? ($throwRuntimeError("index out of range"), undefined) : isGraphic.$array[isGraphic.$offset + i]));
+ };
+ ptrType.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$2.methods = [{prop: "set", name: "set", pkg: "strconv", typ: $funcType([$String], [$Bool], false)}, {prop: "floatBits", name: "floatBits", pkg: "strconv", typ: $funcType([ptrType$1], [$Uint64, $Bool], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Assign", name: "Assign", pkg: "", typ: $funcType([$Uint64], [], false)}, {prop: "Shift", name: "Shift", pkg: "", typ: $funcType([$Int], [], false)}, {prop: "Round", name: "Round", pkg: "", typ: $funcType([$Int], [], false)}, {prop: "RoundDown", name: "RoundDown", pkg: "", typ: $funcType([$Int], [], false)}, {prop: "RoundUp", name: "RoundUp", pkg: "", typ: $funcType([$Int], [], false)}, {prop: "RoundedInteger", name: "RoundedInteger", pkg: "", typ: $funcType([], [$Uint64], false)}];
+ ptrType$4.methods = [{prop: "floatBits", name: "floatBits", pkg: "strconv", typ: $funcType([ptrType$1], [$Uint64, $Bool], false)}, {prop: "AssignComputeBounds", name: "AssignComputeBounds", pkg: "", typ: $funcType([$Uint64, $Int, $Bool, ptrType$1], [extFloat, extFloat], false)}, {prop: "Normalize", name: "Normalize", pkg: "", typ: $funcType([], [$Uint], false)}, {prop: "Multiply", name: "Multiply", pkg: "", typ: $funcType([extFloat], [], false)}, {prop: "AssignDecimal", name: "AssignDecimal", pkg: "", typ: $funcType([$Uint64, $Int, $Bool, $Bool, ptrType$1], [$Bool], false)}, {prop: "frexp10", name: "frexp10", pkg: "strconv", typ: $funcType([], [$Int, $Int], false)}, {prop: "FixedDecimal", name: "FixedDecimal", pkg: "", typ: $funcType([ptrType$3, $Int], [$Bool], false)}, {prop: "ShortestDecimal", name: "ShortestDecimal", pkg: "", typ: $funcType([ptrType$3, ptrType$4, ptrType$4], [$Bool], false)}];
+ NumError.init("", [{prop: "Func", name: "Func", exported: true, typ: $String, tag: ""}, {prop: "Num", name: "Num", exported: true, typ: $String, tag: ""}, {prop: "Err", name: "Err", exported: true, typ: $error, tag: ""}]);
+ decimal.init("strconv", [{prop: "d", name: "d", exported: false, typ: arrayType, tag: ""}, {prop: "nd", name: "nd", exported: false, typ: $Int, tag: ""}, {prop: "dp", name: "dp", exported: false, typ: $Int, tag: ""}, {prop: "neg", name: "neg", exported: false, typ: $Bool, tag: ""}, {prop: "trunc", name: "trunc", exported: false, typ: $Bool, tag: ""}]);
+ leftCheat.init("strconv", [{prop: "delta", name: "delta", exported: false, typ: $Int, tag: ""}, {prop: "cutoff", name: "cutoff", exported: false, typ: $String, tag: ""}]);
+ extFloat.init("strconv", [{prop: "mant", name: "mant", exported: false, typ: $Uint64, tag: ""}, {prop: "exp", name: "exp", exported: false, typ: $Int, tag: ""}, {prop: "neg", name: "neg", exported: false, typ: $Bool, tag: ""}]);
+ floatInfo.init("strconv", [{prop: "mantbits", name: "mantbits", exported: false, typ: $Uint, tag: ""}, {prop: "expbits", name: "expbits", exported: false, typ: $Uint, tag: ""}, {prop: "bias", name: "bias", exported: false, typ: $Int, tag: ""}]);
+ decimalSlice.init("strconv", [{prop: "d", name: "d", exported: false, typ: sliceType$6, tag: ""}, {prop: "nd", name: "nd", exported: false, typ: $Int, tag: ""}, {prop: "dp", name: "dp", exported: false, typ: $Int, tag: ""}, {prop: "neg", name: "neg", exported: false, typ: $Bool, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = errors.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = math.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = utf8.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ optimize = true;
+ powtab = new sliceType([1, 3, 6, 9, 13, 16, 19, 23, 26]);
+ float64pow10 = new sliceType$1([1, 10, 100, 1000, 10000, 100000, 1e+06, 1e+07, 1e+08, 1e+09, 1e+10, 1e+11, 1e+12, 1e+13, 1e+14, 1e+15, 1e+16, 1e+17, 1e+18, 1e+19, 1e+20, 1e+21, 1e+22]);
+ float32pow10 = new sliceType$2([1, 10, 100, 1000, 10000, 100000, 1e+06, 1e+07, 1e+08, 1e+09, 1e+10]);
+ $pkg.ErrRange = errors.New("value out of range");
+ $pkg.ErrSyntax = errors.New("invalid syntax");
+ leftcheats = new sliceType$3([new leftCheat.ptr(0, ""), new leftCheat.ptr(1, "5"), new leftCheat.ptr(1, "25"), new leftCheat.ptr(1, "125"), new leftCheat.ptr(2, "625"), new leftCheat.ptr(2, "3125"), new leftCheat.ptr(2, "15625"), new leftCheat.ptr(3, "78125"), new leftCheat.ptr(3, "390625"), new leftCheat.ptr(3, "1953125"), new leftCheat.ptr(4, "9765625"), new leftCheat.ptr(4, "48828125"), new leftCheat.ptr(4, "244140625"), new leftCheat.ptr(4, "1220703125"), new leftCheat.ptr(5, "6103515625"), new leftCheat.ptr(5, "30517578125"), new leftCheat.ptr(5, "152587890625"), new leftCheat.ptr(6, "762939453125"), new leftCheat.ptr(6, "3814697265625"), new leftCheat.ptr(6, "19073486328125"), new leftCheat.ptr(7, "95367431640625"), new leftCheat.ptr(7, "476837158203125"), new leftCheat.ptr(7, "2384185791015625"), new leftCheat.ptr(7, "11920928955078125"), new leftCheat.ptr(8, "59604644775390625"), new leftCheat.ptr(8, "298023223876953125"), new leftCheat.ptr(8, "1490116119384765625"), new leftCheat.ptr(9, "7450580596923828125"), new leftCheat.ptr(9, "37252902984619140625"), new leftCheat.ptr(9, "186264514923095703125"), new leftCheat.ptr(10, "931322574615478515625"), new leftCheat.ptr(10, "4656612873077392578125"), new leftCheat.ptr(10, "23283064365386962890625"), new leftCheat.ptr(10, "116415321826934814453125"), new leftCheat.ptr(11, "582076609134674072265625"), new leftCheat.ptr(11, "2910383045673370361328125"), new leftCheat.ptr(11, "14551915228366851806640625"), new leftCheat.ptr(12, "72759576141834259033203125"), new leftCheat.ptr(12, "363797880709171295166015625"), new leftCheat.ptr(12, "1818989403545856475830078125"), new leftCheat.ptr(13, "9094947017729282379150390625"), new leftCheat.ptr(13, "45474735088646411895751953125"), new leftCheat.ptr(13, "227373675443232059478759765625"), new leftCheat.ptr(13, "1136868377216160297393798828125"), new leftCheat.ptr(14, "5684341886080801486968994140625"), new leftCheat.ptr(14, "28421709430404007434844970703125"), new leftCheat.ptr(14, "142108547152020037174224853515625"), new leftCheat.ptr(15, "710542735760100185871124267578125"), new leftCheat.ptr(15, "3552713678800500929355621337890625"), new leftCheat.ptr(15, "17763568394002504646778106689453125"), new leftCheat.ptr(16, "88817841970012523233890533447265625"), new leftCheat.ptr(16, "444089209850062616169452667236328125"), new leftCheat.ptr(16, "2220446049250313080847263336181640625"), new leftCheat.ptr(16, "11102230246251565404236316680908203125"), new leftCheat.ptr(17, "55511151231257827021181583404541015625"), new leftCheat.ptr(17, "277555756156289135105907917022705078125"), new leftCheat.ptr(17, "1387778780781445675529539585113525390625"), new leftCheat.ptr(18, "6938893903907228377647697925567626953125"), new leftCheat.ptr(18, "34694469519536141888238489627838134765625"), new leftCheat.ptr(18, "173472347597680709441192448139190673828125"), new leftCheat.ptr(19, "867361737988403547205962240695953369140625")]);
+ smallPowersOfTen = $toNativeArray($kindStruct, [new extFloat.ptr(new $Uint64(2147483648, 0), -63, false), new extFloat.ptr(new $Uint64(2684354560, 0), -60, false), new extFloat.ptr(new $Uint64(3355443200, 0), -57, false), new extFloat.ptr(new $Uint64(4194304000, 0), -54, false), new extFloat.ptr(new $Uint64(2621440000, 0), -50, false), new extFloat.ptr(new $Uint64(3276800000, 0), -47, false), new extFloat.ptr(new $Uint64(4096000000, 0), -44, false), new extFloat.ptr(new $Uint64(2560000000, 0), -40, false)]);
+ powersOfTen = $toNativeArray($kindStruct, [new extFloat.ptr(new $Uint64(4203730336, 136053384), -1220, false), new extFloat.ptr(new $Uint64(3132023167, 2722021238), -1193, false), new extFloat.ptr(new $Uint64(2333539104, 810921078), -1166, false), new extFloat.ptr(new $Uint64(3477244234, 1573795306), -1140, false), new extFloat.ptr(new $Uint64(2590748842, 1432697645), -1113, false), new extFloat.ptr(new $Uint64(3860516611, 1025131999), -1087, false), new extFloat.ptr(new $Uint64(2876309015, 3348809418), -1060, false), new extFloat.ptr(new $Uint64(4286034428, 3200048207), -1034, false), new extFloat.ptr(new $Uint64(3193344495, 1097586188), -1007, false), new extFloat.ptr(new $Uint64(2379227053, 2424306748), -980, false), new extFloat.ptr(new $Uint64(3545324584, 827693699), -954, false), new extFloat.ptr(new $Uint64(2641472655, 2913388981), -927, false), new extFloat.ptr(new $Uint64(3936100983, 602835915), -901, false), new extFloat.ptr(new $Uint64(2932623761, 1081627501), -874, false), new extFloat.ptr(new $Uint64(2184974969, 1572261463), -847, false), new extFloat.ptr(new $Uint64(3255866422, 1308317239), -821, false), new extFloat.ptr(new $Uint64(2425809519, 944281679), -794, false), new extFloat.ptr(new $Uint64(3614737867, 629291719), -768, false), new extFloat.ptr(new $Uint64(2693189581, 2545915892), -741, false), new extFloat.ptr(new $Uint64(4013165208, 388672741), -715, false), new extFloat.ptr(new $Uint64(2990041083, 708162190), -688, false), new extFloat.ptr(new $Uint64(2227754207, 3536207675), -661, false), new extFloat.ptr(new $Uint64(3319612455, 450088378), -635, false), new extFloat.ptr(new $Uint64(2473304014, 3139815830), -608, false), new extFloat.ptr(new $Uint64(3685510180, 2103616900), -582, false), new extFloat.ptr(new $Uint64(2745919064, 224385782), -555, false), new extFloat.ptr(new $Uint64(4091738259, 3737383206), -529, false), new extFloat.ptr(new $Uint64(3048582568, 2868871352), -502, false), new extFloat.ptr(new $Uint64(2271371013, 1820084875), -475, false), new extFloat.ptr(new $Uint64(3384606560, 885076051), -449, false), new extFloat.ptr(new $Uint64(2521728396, 2444895829), -422, false), new extFloat.ptr(new $Uint64(3757668132, 1881767613), -396, false), new extFloat.ptr(new $Uint64(2799680927, 3102062735), -369, false), new extFloat.ptr(new $Uint64(4171849679, 2289335700), -343, false), new extFloat.ptr(new $Uint64(3108270227, 2410191823), -316, false), new extFloat.ptr(new $Uint64(2315841784, 3205436779), -289, false), new extFloat.ptr(new $Uint64(3450873173, 1697722806), -263, false), new extFloat.ptr(new $Uint64(2571100870, 3497754540), -236, false), new extFloat.ptr(new $Uint64(3831238852, 707476230), -210, false), new extFloat.ptr(new $Uint64(2854495385, 1769181907), -183, false), new extFloat.ptr(new $Uint64(4253529586, 2197867022), -157, false), new extFloat.ptr(new $Uint64(3169126500, 2450594539), -130, false), new extFloat.ptr(new $Uint64(2361183241, 1867548876), -103, false), new extFloat.ptr(new $Uint64(3518437208, 3793315116), -77, false), new extFloat.ptr(new $Uint64(2621440000, 0), -50, false), new extFloat.ptr(new $Uint64(3906250000, 0), -24, false), new extFloat.ptr(new $Uint64(2910383045, 2892103680), 3, false), new extFloat.ptr(new $Uint64(2168404344, 4170451332), 30, false), new extFloat.ptr(new $Uint64(3231174267, 3372684723), 56, false), new extFloat.ptr(new $Uint64(2407412430, 2078956656), 83, false), new extFloat.ptr(new $Uint64(3587324068, 2884206696), 109, false), new extFloat.ptr(new $Uint64(2672764710, 395977285), 136, false), new extFloat.ptr(new $Uint64(3982729777, 3569679143), 162, false), new extFloat.ptr(new $Uint64(2967364920, 2361961896), 189, false), new extFloat.ptr(new $Uint64(2210859150, 447440347), 216, false), new extFloat.ptr(new $Uint64(3294436857, 1114709402), 242, false), new extFloat.ptr(new $Uint64(2454546732, 2786846552), 269, false), new extFloat.ptr(new $Uint64(3657559652, 443583978), 295, false), new extFloat.ptr(new $Uint64(2725094297, 2599384906), 322, false), new extFloat.ptr(new $Uint64(4060706939, 3028118405), 348, false), new extFloat.ptr(new $Uint64(3025462433, 2044532855), 375, false), new extFloat.ptr(new $Uint64(2254145170, 1536935362), 402, false), new extFloat.ptr(new $Uint64(3358938053, 3365297469), 428, false), new extFloat.ptr(new $Uint64(2502603868, 4204241075), 455, false), new extFloat.ptr(new $Uint64(3729170365, 2577424355), 481, false), new extFloat.ptr(new $Uint64(2778448436, 3677981733), 508, false), new extFloat.ptr(new $Uint64(4140210802, 2744688476), 534, false), new extFloat.ptr(new $Uint64(3084697427, 1424604878), 561, false), new extFloat.ptr(new $Uint64(2298278679, 4062331362), 588, false), new extFloat.ptr(new $Uint64(3424702107, 3546052773), 614, false), new extFloat.ptr(new $Uint64(2551601907, 2065781727), 641, false), new extFloat.ptr(new $Uint64(3802183132, 2535403578), 667, false), new extFloat.ptr(new $Uint64(2832847187, 1558426518), 694, false), new extFloat.ptr(new $Uint64(4221271257, 2762425404), 720, false), new extFloat.ptr(new $Uint64(3145092172, 2812560400), 747, false), new extFloat.ptr(new $Uint64(2343276271, 3057687578), 774, false), new extFloat.ptr(new $Uint64(3491753744, 2790753324), 800, false), new extFloat.ptr(new $Uint64(2601559269, 3918606633), 827, false), new extFloat.ptr(new $Uint64(3876625403, 2711358621), 853, false), new extFloat.ptr(new $Uint64(2888311001, 1648096297), 880, false), new extFloat.ptr(new $Uint64(2151959390, 2057817989), 907, false), new extFloat.ptr(new $Uint64(3206669376, 61660461), 933, false), new extFloat.ptr(new $Uint64(2389154863, 1581580175), 960, false), new extFloat.ptr(new $Uint64(3560118173, 2626467905), 986, false), new extFloat.ptr(new $Uint64(2652494738, 3034782633), 1013, false), new extFloat.ptr(new $Uint64(3952525166, 3135207385), 1039, false), new extFloat.ptr(new $Uint64(2944860731, 2616258155), 1066, false)]);
+ uint64pow10 = $toNativeArray($kindUint64, [new $Uint64(0, 1), new $Uint64(0, 10), new $Uint64(0, 100), new $Uint64(0, 1000), new $Uint64(0, 10000), new $Uint64(0, 100000), new $Uint64(0, 1000000), new $Uint64(0, 10000000), new $Uint64(0, 100000000), new $Uint64(0, 1000000000), new $Uint64(2, 1410065408), new $Uint64(23, 1215752192), new $Uint64(232, 3567587328), new $Uint64(2328, 1316134912), new $Uint64(23283, 276447232), new $Uint64(232830, 2764472320), new $Uint64(2328306, 1874919424), new $Uint64(23283064, 1569325056), new $Uint64(232830643, 2808348672), new $Uint64(2328306436, 2313682944)]);
+ float32info = new floatInfo.ptr(23, 8, -127);
+ float64info = new floatInfo.ptr(52, 11, -1023);
+ isPrint16 = new sliceType$4([32, 126, 161, 887, 890, 895, 900, 1366, 1369, 1418, 1421, 1479, 1488, 1514, 1520, 1524, 1542, 1563, 1566, 1805, 1808, 1866, 1869, 1969, 1984, 2042, 2048, 2093, 2096, 2139, 2142, 2142, 2208, 2237, 2260, 2444, 2447, 2448, 2451, 2482, 2486, 2489, 2492, 2500, 2503, 2504, 2507, 2510, 2519, 2519, 2524, 2531, 2534, 2555, 2561, 2570, 2575, 2576, 2579, 2617, 2620, 2626, 2631, 2632, 2635, 2637, 2641, 2641, 2649, 2654, 2662, 2677, 2689, 2745, 2748, 2765, 2768, 2768, 2784, 2787, 2790, 2801, 2809, 2809, 2817, 2828, 2831, 2832, 2835, 2873, 2876, 2884, 2887, 2888, 2891, 2893, 2902, 2903, 2908, 2915, 2918, 2935, 2946, 2954, 2958, 2965, 2969, 2975, 2979, 2980, 2984, 2986, 2990, 3001, 3006, 3010, 3014, 3021, 3024, 3024, 3031, 3031, 3046, 3066, 3072, 3129, 3133, 3149, 3157, 3162, 3168, 3171, 3174, 3183, 3192, 3257, 3260, 3277, 3285, 3286, 3294, 3299, 3302, 3314, 3329, 3386, 3389, 3407, 3412, 3427, 3430, 3455, 3458, 3478, 3482, 3517, 3520, 3526, 3530, 3530, 3535, 3551, 3558, 3567, 3570, 3572, 3585, 3642, 3647, 3675, 3713, 3716, 3719, 3722, 3725, 3725, 3732, 3751, 3754, 3773, 3776, 3789, 3792, 3801, 3804, 3807, 3840, 3948, 3953, 4058, 4096, 4295, 4301, 4301, 4304, 4685, 4688, 4701, 4704, 4749, 4752, 4789, 4792, 4805, 4808, 4885, 4888, 4954, 4957, 4988, 4992, 5017, 5024, 5109, 5112, 5117, 5120, 5788, 5792, 5880, 5888, 5908, 5920, 5942, 5952, 5971, 5984, 6003, 6016, 6109, 6112, 6121, 6128, 6137, 6144, 6157, 6160, 6169, 6176, 6263, 6272, 6314, 6320, 6389, 6400, 6443, 6448, 6459, 6464, 6464, 6468, 6509, 6512, 6516, 6528, 6571, 6576, 6601, 6608, 6618, 6622, 6683, 6686, 6780, 6783, 6793, 6800, 6809, 6816, 6829, 6832, 6846, 6912, 6987, 6992, 7036, 7040, 7155, 7164, 7223, 7227, 7241, 7245, 7304, 7360, 7367, 7376, 7417, 7424, 7669, 7675, 7957, 7960, 7965, 7968, 8005, 8008, 8013, 8016, 8061, 8064, 8147, 8150, 8175, 8178, 8190, 8208, 8231, 8240, 8286, 8304, 8305, 8308, 8348, 8352, 8382, 8400, 8432, 8448, 8587, 8592, 9254, 9280, 9290, 9312, 11123, 11126, 11157, 11160, 11193, 11197, 11217, 11244, 11247, 11264, 11507, 11513, 11559, 11565, 11565, 11568, 11623, 11631, 11632, 11647, 11670, 11680, 11844, 11904, 12019, 12032, 12245, 12272, 12283, 12289, 12438, 12441, 12543, 12549, 12589, 12593, 12730, 12736, 12771, 12784, 19893, 19904, 40917, 40960, 42124, 42128, 42182, 42192, 42539, 42560, 42743, 42752, 42935, 42999, 43051, 43056, 43065, 43072, 43127, 43136, 43205, 43214, 43225, 43232, 43261, 43264, 43347, 43359, 43388, 43392, 43481, 43486, 43574, 43584, 43597, 43600, 43609, 43612, 43714, 43739, 43766, 43777, 43782, 43785, 43790, 43793, 43798, 43808, 43877, 43888, 44013, 44016, 44025, 44032, 55203, 55216, 55238, 55243, 55291, 63744, 64109, 64112, 64217, 64256, 64262, 64275, 64279, 64285, 64449, 64467, 64831, 64848, 64911, 64914, 64967, 65008, 65021, 65024, 65049, 65056, 65131, 65136, 65276, 65281, 65470, 65474, 65479, 65482, 65487, 65490, 65495, 65498, 65500, 65504, 65518, 65532, 65533]);
+ isNotPrint16 = new sliceType$4([173, 907, 909, 930, 1328, 1376, 1416, 1424, 1757, 2111, 2229, 2274, 2436, 2473, 2481, 2526, 2564, 2601, 2609, 2612, 2615, 2621, 2653, 2692, 2702, 2706, 2729, 2737, 2740, 2758, 2762, 2820, 2857, 2865, 2868, 2910, 2948, 2961, 2971, 2973, 3017, 3076, 3085, 3089, 3113, 3141, 3145, 3159, 3204, 3213, 3217, 3241, 3252, 3269, 3273, 3295, 3312, 3332, 3341, 3345, 3397, 3401, 3460, 3506, 3516, 3541, 3543, 3715, 3721, 3736, 3744, 3748, 3750, 3756, 3770, 3781, 3783, 3912, 3992, 4029, 4045, 4294, 4681, 4695, 4697, 4745, 4785, 4799, 4801, 4823, 4881, 5760, 5901, 5997, 6001, 6431, 6751, 7415, 8024, 8026, 8028, 8030, 8117, 8133, 8156, 8181, 8335, 9215, 11209, 11311, 11359, 11558, 11687, 11695, 11703, 11711, 11719, 11727, 11735, 11743, 11930, 12352, 12687, 12831, 13055, 42927, 43470, 43519, 43815, 43823, 64311, 64317, 64319, 64322, 64325, 65107, 65127, 65141, 65511]);
+ isPrint32 = new sliceType$5([65536, 65613, 65616, 65629, 65664, 65786, 65792, 65794, 65799, 65843, 65847, 65947, 65952, 65952, 66000, 66045, 66176, 66204, 66208, 66256, 66272, 66299, 66304, 66339, 66352, 66378, 66384, 66426, 66432, 66499, 66504, 66517, 66560, 66717, 66720, 66729, 66736, 66771, 66776, 66811, 66816, 66855, 66864, 66915, 66927, 66927, 67072, 67382, 67392, 67413, 67424, 67431, 67584, 67589, 67592, 67640, 67644, 67644, 67647, 67742, 67751, 67759, 67808, 67829, 67835, 67867, 67871, 67897, 67903, 67903, 67968, 68023, 68028, 68047, 68050, 68102, 68108, 68147, 68152, 68154, 68159, 68167, 68176, 68184, 68192, 68255, 68288, 68326, 68331, 68342, 68352, 68405, 68409, 68437, 68440, 68466, 68472, 68497, 68505, 68508, 68521, 68527, 68608, 68680, 68736, 68786, 68800, 68850, 68858, 68863, 69216, 69246, 69632, 69709, 69714, 69743, 69759, 69825, 69840, 69864, 69872, 69881, 69888, 69955, 69968, 70006, 70016, 70093, 70096, 70132, 70144, 70206, 70272, 70313, 70320, 70378, 70384, 70393, 70400, 70412, 70415, 70416, 70419, 70457, 70460, 70468, 70471, 70472, 70475, 70477, 70480, 70480, 70487, 70487, 70493, 70499, 70502, 70508, 70512, 70516, 70656, 70749, 70784, 70855, 70864, 70873, 71040, 71093, 71096, 71133, 71168, 71236, 71248, 71257, 71264, 71276, 71296, 71351, 71360, 71369, 71424, 71449, 71453, 71467, 71472, 71487, 71840, 71922, 71935, 71935, 72384, 72440, 72704, 72773, 72784, 72812, 72816, 72847, 72850, 72886, 73728, 74649, 74752, 74868, 74880, 75075, 77824, 78894, 82944, 83526, 92160, 92728, 92736, 92777, 92782, 92783, 92880, 92909, 92912, 92917, 92928, 92997, 93008, 93047, 93053, 93071, 93952, 94020, 94032, 94078, 94095, 94111, 94176, 94176, 94208, 100332, 100352, 101106, 110592, 110593, 113664, 113770, 113776, 113788, 113792, 113800, 113808, 113817, 113820, 113823, 118784, 119029, 119040, 119078, 119081, 119154, 119163, 119272, 119296, 119365, 119552, 119638, 119648, 119665, 119808, 119967, 119970, 119970, 119973, 119974, 119977, 120074, 120077, 120134, 120138, 120485, 120488, 120779, 120782, 121483, 121499, 121519, 122880, 122904, 122907, 122922, 124928, 125124, 125127, 125142, 125184, 125258, 125264, 125273, 125278, 125279, 126464, 126500, 126503, 126523, 126530, 126530, 126535, 126548, 126551, 126564, 126567, 126619, 126625, 126651, 126704, 126705, 126976, 127019, 127024, 127123, 127136, 127150, 127153, 127221, 127232, 127244, 127248, 127339, 127344, 127404, 127462, 127490, 127504, 127547, 127552, 127560, 127568, 127569, 127744, 128722, 128736, 128748, 128752, 128758, 128768, 128883, 128896, 128980, 129024, 129035, 129040, 129095, 129104, 129113, 129120, 129159, 129168, 129197, 129296, 129319, 129328, 129328, 129331, 129355, 129360, 129374, 129408, 129425, 129472, 129472, 131072, 173782, 173824, 177972, 177984, 178205, 178208, 183969, 194560, 195101, 917760, 917999]);
+ isNotPrint32 = new sliceType$4([12, 39, 59, 62, 399, 926, 2057, 2102, 2134, 2291, 2564, 2580, 2584, 4285, 4405, 4576, 4626, 4743, 4745, 4750, 4766, 4868, 4905, 4913, 4916, 5210, 5212, 7177, 7223, 7336, 9327, 27231, 27482, 27490, 54357, 54429, 54445, 54458, 54460, 54468, 54534, 54549, 54557, 54586, 54591, 54597, 54609, 55968, 57351, 57378, 57381, 60932, 60960, 60963, 60968, 60979, 60984, 60986, 61000, 61002, 61004, 61008, 61011, 61016, 61018, 61020, 61022, 61024, 61027, 61035, 61043, 61048, 61053, 61055, 61066, 61092, 61098, 61632, 61648, 61743, 63775, 63807]);
+ isGraphic = new sliceType$4([160, 5760, 8192, 8193, 8194, 8195, 8196, 8197, 8198, 8199, 8200, 8201, 8202, 8239, 8287, 12288]);
+ shifts = $toNativeArray($kindUint, [0, 0, 1, 0, 2, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0]);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["encoding/base64"] = (function() {
+ var $pkg = {}, $init, io, strconv, Encoding, encoder, CorruptInputError, decoder, newlineFilteringReader, arrayType, arrayType$1, sliceType, ptrType, arrayType$2, arrayType$3, arrayType$4, arrayType$5, ptrType$1, ptrType$2, ptrType$3, NewEncoding, NewEncoder, NewDecoder;
+ io = $packages["io"];
+ strconv = $packages["strconv"];
+ Encoding = $pkg.Encoding = $newType(0, $kindStruct, "base64.Encoding", true, "encoding/base64", true, function(encode_, decodeMap_, padChar_, strict_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.encode = arrayType.zero();
+ this.decodeMap = arrayType$1.zero();
+ this.padChar = 0;
+ this.strict = false;
+ return;
+ }
+ this.encode = encode_;
+ this.decodeMap = decodeMap_;
+ this.padChar = padChar_;
+ this.strict = strict_;
+ });
+ encoder = $pkg.encoder = $newType(0, $kindStruct, "base64.encoder", true, "encoding/base64", false, function(err_, enc_, w_, buf_, nbuf_, out_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.err = $ifaceNil;
+ this.enc = ptrType.nil;
+ this.w = $ifaceNil;
+ this.buf = arrayType$2.zero();
+ this.nbuf = 0;
+ this.out = arrayType$3.zero();
+ return;
+ }
+ this.err = err_;
+ this.enc = enc_;
+ this.w = w_;
+ this.buf = buf_;
+ this.nbuf = nbuf_;
+ this.out = out_;
+ });
+ CorruptInputError = $pkg.CorruptInputError = $newType(8, $kindInt64, "base64.CorruptInputError", true, "encoding/base64", true, null);
+ decoder = $pkg.decoder = $newType(0, $kindStruct, "base64.decoder", true, "encoding/base64", false, function(err_, readErr_, enc_, r_, end_, buf_, nbuf_, out_, outbuf_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.err = $ifaceNil;
+ this.readErr = $ifaceNil;
+ this.enc = ptrType.nil;
+ this.r = $ifaceNil;
+ this.end = false;
+ this.buf = arrayType$3.zero();
+ this.nbuf = 0;
+ this.out = sliceType.nil;
+ this.outbuf = arrayType$5.zero();
+ return;
+ }
+ this.err = err_;
+ this.readErr = readErr_;
+ this.enc = enc_;
+ this.r = r_;
+ this.end = end_;
+ this.buf = buf_;
+ this.nbuf = nbuf_;
+ this.out = out_;
+ this.outbuf = outbuf_;
+ });
+ newlineFilteringReader = $pkg.newlineFilteringReader = $newType(0, $kindStruct, "base64.newlineFilteringReader", true, "encoding/base64", false, function(wrapped_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.wrapped = $ifaceNil;
+ return;
+ }
+ this.wrapped = wrapped_;
+ });
+ arrayType = $arrayType($Uint8, 64);
+ arrayType$1 = $arrayType($Uint8, 256);
+ sliceType = $sliceType($Uint8);
+ ptrType = $ptrType(Encoding);
+ arrayType$2 = $arrayType($Uint8, 3);
+ arrayType$3 = $arrayType($Uint8, 1024);
+ arrayType$4 = $arrayType($Uint8, 4);
+ arrayType$5 = $arrayType($Uint8, 768);
+ ptrType$1 = $ptrType(encoder);
+ ptrType$2 = $ptrType(decoder);
+ ptrType$3 = $ptrType(newlineFilteringReader);
+ NewEncoding = function(encoder$1) {
+ var $ptr, e, encoder$1, i, i$1, x, x$1, x$2;
+ if (!((encoder$1.length === 64))) {
+ $panic(new $String("encoding alphabet is not 64-bytes long"));
+ }
+ e = new Encoding.ptr(arrayType.zero(), arrayType$1.zero(), 0, false);
+ e.padChar = 61;
+ $copyString(new sliceType(e.encode), encoder$1);
+ i = 0;
+ while (true) {
+ if (!(i < 256)) { break; }
+ (x = e.decodeMap, ((i < 0 || i >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[i] = 255));
+ i = i + (1) >> 0;
+ }
+ i$1 = 0;
+ while (true) {
+ if (!(i$1 < encoder$1.length)) { break; }
+ (x$1 = e.decodeMap, x$2 = encoder$1.charCodeAt(i$1), ((x$2 < 0 || x$2 >= x$1.length) ? ($throwRuntimeError("index out of range"), undefined) : x$1[x$2] = ((i$1 << 24 >>> 24))));
+ i$1 = i$1 + (1) >> 0;
+ }
+ return e;
+ };
+ $pkg.NewEncoding = NewEncoding;
+ Encoding.ptr.prototype.WithPadding = function(padding) {
+ var $ptr, enc, padding;
+ enc = this;
+ enc.padChar = padding;
+ return enc;
+ };
+ Encoding.prototype.WithPadding = function(padding) { return this.$val.WithPadding(padding); };
+ Encoding.ptr.prototype.Strict = function() {
+ var $ptr, enc;
+ enc = this;
+ enc.strict = true;
+ return enc;
+ };
+ Encoding.prototype.Strict = function() { return this.$val.Strict(); };
+ Encoding.ptr.prototype.Encode = function(dst, src) {
+ var $ptr, _1, _q, _tmp, _tmp$1, di, dst, enc, n, remain, si, src, val, val$1, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$19, x$2, x$20, x$21, x$22, x$23, x$24, x$25, x$26, x$27, x$28, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ enc = this;
+ if (src.$length === 0) {
+ return;
+ }
+ _tmp = 0;
+ _tmp$1 = 0;
+ di = _tmp;
+ si = _tmp$1;
+ n = $imul(((_q = src.$length / 3, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"))), 3);
+ while (true) {
+ if (!(si < n)) { break; }
+ val = (((((((x = si + 0 >> 0, ((x < 0 || x >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + x])) >>> 0)) << 16 >>> 0) | ((((x$1 = si + 1 >> 0, ((x$1 < 0 || x$1 >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + x$1])) >>> 0)) << 8 >>> 0)) >>> 0) | (((x$2 = si + 2 >> 0, ((x$2 < 0 || x$2 >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + x$2])) >>> 0))) >>> 0;
+ (x$5 = di + 0 >> 0, ((x$5 < 0 || x$5 >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + x$5] = (x$3 = enc.encode, x$4 = ((val >>> 18 >>> 0) & 63) >>> 0, ((x$4 < 0 || x$4 >= x$3.length) ? ($throwRuntimeError("index out of range"), undefined) : x$3[x$4]))));
+ (x$8 = di + 1 >> 0, ((x$8 < 0 || x$8 >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + x$8] = (x$6 = enc.encode, x$7 = ((val >>> 12 >>> 0) & 63) >>> 0, ((x$7 < 0 || x$7 >= x$6.length) ? ($throwRuntimeError("index out of range"), undefined) : x$6[x$7]))));
+ (x$11 = di + 2 >> 0, ((x$11 < 0 || x$11 >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + x$11] = (x$9 = enc.encode, x$10 = ((val >>> 6 >>> 0) & 63) >>> 0, ((x$10 < 0 || x$10 >= x$9.length) ? ($throwRuntimeError("index out of range"), undefined) : x$9[x$10]))));
+ (x$14 = di + 3 >> 0, ((x$14 < 0 || x$14 >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + x$14] = (x$12 = enc.encode, x$13 = (val & 63) >>> 0, ((x$13 < 0 || x$13 >= x$12.length) ? ($throwRuntimeError("index out of range"), undefined) : x$12[x$13]))));
+ si = si + (3) >> 0;
+ di = di + (4) >> 0;
+ }
+ remain = src.$length - si >> 0;
+ if (remain === 0) {
+ return;
+ }
+ val$1 = (((x$15 = si + 0 >> 0, ((x$15 < 0 || x$15 >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + x$15])) >>> 0)) << 16 >>> 0;
+ if (remain === 2) {
+ val$1 = (val$1 | (((((x$16 = si + 1 >> 0, ((x$16 < 0 || x$16 >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + x$16])) >>> 0)) << 8 >>> 0))) >>> 0;
+ }
+ (x$19 = di + 0 >> 0, ((x$19 < 0 || x$19 >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + x$19] = (x$17 = enc.encode, x$18 = ((val$1 >>> 18 >>> 0) & 63) >>> 0, ((x$18 < 0 || x$18 >= x$17.length) ? ($throwRuntimeError("index out of range"), undefined) : x$17[x$18]))));
+ (x$22 = di + 1 >> 0, ((x$22 < 0 || x$22 >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + x$22] = (x$20 = enc.encode, x$21 = ((val$1 >>> 12 >>> 0) & 63) >>> 0, ((x$21 < 0 || x$21 >= x$20.length) ? ($throwRuntimeError("index out of range"), undefined) : x$20[x$21]))));
+ _1 = remain;
+ if (_1 === (2)) {
+ (x$25 = di + 2 >> 0, ((x$25 < 0 || x$25 >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + x$25] = (x$23 = enc.encode, x$24 = ((val$1 >>> 6 >>> 0) & 63) >>> 0, ((x$24 < 0 || x$24 >= x$23.length) ? ($throwRuntimeError("index out of range"), undefined) : x$23[x$24]))));
+ if (!((enc.padChar === -1))) {
+ (x$26 = di + 3 >> 0, ((x$26 < 0 || x$26 >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + x$26] = ((enc.padChar << 24 >>> 24))));
+ }
+ } else if (_1 === (1)) {
+ if (!((enc.padChar === -1))) {
+ (x$27 = di + 2 >> 0, ((x$27 < 0 || x$27 >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + x$27] = ((enc.padChar << 24 >>> 24))));
+ (x$28 = di + 3 >> 0, ((x$28 < 0 || x$28 >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + x$28] = ((enc.padChar << 24 >>> 24))));
+ }
+ }
+ };
+ Encoding.prototype.Encode = function(dst, src) { return this.$val.Encode(dst, src); };
+ Encoding.ptr.prototype.EncodeToString = function(src) {
+ var $ptr, buf, enc, src;
+ enc = this;
+ buf = $makeSlice(sliceType, enc.EncodedLen(src.$length));
+ enc.Encode(buf, src);
+ return ($bytesToString(buf));
+ };
+ Encoding.prototype.EncodeToString = function(src) { return this.$val.EncodeToString(src); };
+ encoder.ptr.prototype.Write = function(p) {
+ var $ptr, _q, _r, _r$1, _r$2, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tuple, _tuple$1, e, err, i, i$1, n, nn, p, x, x$1, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; e = $f.e; err = $f.err; i = $f.i; i$1 = $f.i$1; n = $f.n; nn = $f.nn; p = $f.p; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ e = this;
+ if (!($interfaceIsEqual(e.err, $ifaceNil))) {
+ _tmp = 0;
+ _tmp$1 = e.err;
+ n = _tmp;
+ err = _tmp$1;
+ $s = -1; return [n, err];
+ }
+ /* */ if (e.nbuf > 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (e.nbuf > 0) { */ case 1:
+ i = 0;
+ i = 0;
+ while (true) {
+ if (!(i < p.$length && e.nbuf < 3)) { break; }
+ (x = e.buf, x$1 = e.nbuf, ((x$1 < 0 || x$1 >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[x$1] = ((i < 0 || i >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + i])));
+ e.nbuf = e.nbuf + (1) >> 0;
+ i = i + (1) >> 0;
+ }
+ n = n + (i) >> 0;
+ p = $subslice(p, i);
+ if (e.nbuf < 3) {
+ $s = -1; return [n, err];
+ }
+ e.enc.Encode(new sliceType(e.out), new sliceType(e.buf));
+ _r = e.w.Write($subslice(new sliceType(e.out), 0, 4)); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ e.err = _tuple[1];
+ if (!($interfaceIsEqual(e.err, $ifaceNil))) {
+ _tmp$2 = n;
+ _tmp$3 = e.err;
+ n = _tmp$2;
+ err = _tmp$3;
+ $s = -1; return [n, err];
+ }
+ e.nbuf = 0;
+ /* } */ case 2:
+ /* while (true) { */ case 4:
+ /* if (!(p.$length >= 3)) { break; } */ if(!(p.$length >= 3)) { $s = 5; continue; }
+ nn = 768;
+ if (nn > p.$length) {
+ nn = p.$length;
+ nn = nn - ((_r$1 = nn % 3, _r$1 === _r$1 ? _r$1 : $throwRuntimeError("integer divide by zero"))) >> 0;
+ }
+ e.enc.Encode(new sliceType(e.out), $subslice(p, 0, nn));
+ _r$2 = e.w.Write($subslice(new sliceType(e.out), 0, ($imul((_q = nn / 3, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")), 4)))); /* */ $s = 6; case 6: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$1 = _r$2;
+ e.err = _tuple$1[1];
+ if (!($interfaceIsEqual(e.err, $ifaceNil))) {
+ _tmp$4 = n;
+ _tmp$5 = e.err;
+ n = _tmp$4;
+ err = _tmp$5;
+ $s = -1; return [n, err];
+ }
+ n = n + (nn) >> 0;
+ p = $subslice(p, nn);
+ /* } */ $s = 4; continue; case 5:
+ i$1 = 0;
+ while (true) {
+ if (!(i$1 < p.$length)) { break; }
+ (x$2 = e.buf, ((i$1 < 0 || i$1 >= x$2.length) ? ($throwRuntimeError("index out of range"), undefined) : x$2[i$1] = ((i$1 < 0 || i$1 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + i$1])));
+ i$1 = i$1 + (1) >> 0;
+ }
+ e.nbuf = p.$length;
+ n = n + (p.$length) >> 0;
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: encoder.ptr.prototype.Write }; } $f.$ptr = $ptr; $f._q = _q; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.e = e; $f.err = err; $f.i = i; $f.i$1 = i$1; $f.n = n; $f.nn = nn; $f.p = p; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ encoder.prototype.Write = function(p) { return this.$val.Write(p); };
+ encoder.ptr.prototype.Close = function() {
+ var $ptr, _r, _tuple, e, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; e = $f.e; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ /* */ if ($interfaceIsEqual(e.err, $ifaceNil) && e.nbuf > 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ($interfaceIsEqual(e.err, $ifaceNil) && e.nbuf > 0) { */ case 1:
+ e.enc.Encode(new sliceType(e.out), $subslice(new sliceType(e.buf), 0, e.nbuf));
+ _r = e.w.Write($subslice(new sliceType(e.out), 0, e.enc.EncodedLen(e.nbuf))); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ e.err = _tuple[1];
+ e.nbuf = 0;
+ /* } */ case 2:
+ $s = -1; return e.err;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: encoder.ptr.prototype.Close }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.e = e; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ encoder.prototype.Close = function() { return this.$val.Close(); };
+ NewEncoder = function(enc, w) {
+ var $ptr, enc, w;
+ return new encoder.ptr($ifaceNil, enc, w, arrayType$2.zero(), 0, arrayType$3.zero());
+ };
+ $pkg.NewEncoder = NewEncoder;
+ Encoding.ptr.prototype.EncodedLen = function(n) {
+ var $ptr, _q, _q$1, enc, n;
+ enc = this;
+ if (enc.padChar === -1) {
+ return (_q = ((($imul(n, 8)) + 5 >> 0)) / 6, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ }
+ return $imul((_q$1 = ((n + 2 >> 0)) / 3, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero")), 4);
+ };
+ Encoding.prototype.EncodedLen = function(n) { return this.$val.EncodedLen(n); };
+ CorruptInputError.prototype.Error = function() {
+ var $ptr, e;
+ e = this;
+ return "illegal base64 data at input byte " + strconv.FormatInt((new $Int64(e.$high, e.$low)), 10);
+ };
+ $ptrType(CorruptInputError).prototype.Error = function() { return this.$get().Error(); };
+ Encoding.ptr.prototype.decode = function(dst, src) {
+ var $ptr, _1, _2, _i, _ref, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$18, _tmp$19, _tmp$2, _tmp$20, _tmp$21, _tmp$22, _tmp$23, _tmp$24, _tmp$25, _tmp$26, _tmp$27, _tmp$28, _tmp$29, _tmp$3, _tmp$30, _tmp$31, _tmp$32, _tmp$33, _tmp$34, _tmp$35, _tmp$36, _tmp$37, _tmp$38, _tmp$39, _tmp$4, _tmp$40, _tmp$41, _tmp$42, _tmp$43, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, dbuf, dinc, dlen, dst, enc, end, err, in$1, j, n, si, src, val, x;
+ n = 0;
+ end = false;
+ err = $ifaceNil;
+ enc = this;
+ si = 0;
+ while (true) {
+ if (!(si < src.$length && ((((si < 0 || si >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + si]) === 10) || (((si < 0 || si >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + si]) === 13)))) { break; }
+ si = si + (1) >> 0;
+ }
+ while (true) {
+ if (!(si < src.$length && !end)) { break; }
+ dbuf = arrayType$4.zero();
+ _tmp = 3;
+ _tmp$1 = 4;
+ dinc = _tmp;
+ dlen = _tmp$1;
+ _ref = dbuf;
+ _i = 0;
+ while (true) {
+ if (!(_i < 4)) { break; }
+ j = _i;
+ if (src.$length === si) {
+ if (!((enc.padChar === -1)) || j < 2) {
+ _tmp$2 = n;
+ _tmp$3 = false;
+ _tmp$4 = (new CorruptInputError(0, (si - j >> 0)));
+ n = _tmp$2;
+ end = _tmp$3;
+ err = _tmp$4;
+ return [n, end, err];
+ }
+ _tmp$5 = j - 1 >> 0;
+ _tmp$6 = j;
+ _tmp$7 = true;
+ dinc = _tmp$5;
+ dlen = _tmp$6;
+ end = _tmp$7;
+ break;
+ }
+ in$1 = ((si < 0 || si >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + si]);
+ si = si + (1) >> 0;
+ while (true) {
+ if (!(si < src.$length && ((((si < 0 || si >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + si]) === 10) || (((si < 0 || si >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + si]) === 13)))) { break; }
+ si = si + (1) >> 0;
+ }
+ if (((in$1 >> 0)) === enc.padChar) {
+ _1 = j;
+ if ((_1 === (0)) || (_1 === (1))) {
+ _tmp$8 = n;
+ _tmp$9 = false;
+ _tmp$10 = (new CorruptInputError(0, (si - 1 >> 0)));
+ n = _tmp$8;
+ end = _tmp$9;
+ err = _tmp$10;
+ return [n, end, err];
+ } else if (_1 === (2)) {
+ if (si === src.$length) {
+ _tmp$11 = n;
+ _tmp$12 = false;
+ _tmp$13 = (new CorruptInputError(0, src.$length));
+ n = _tmp$11;
+ end = _tmp$12;
+ err = _tmp$13;
+ return [n, end, err];
+ }
+ if (!((((((si < 0 || si >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + si]) >> 0)) === enc.padChar))) {
+ _tmp$14 = n;
+ _tmp$15 = false;
+ _tmp$16 = (new CorruptInputError(0, (si - 1 >> 0)));
+ n = _tmp$14;
+ end = _tmp$15;
+ err = _tmp$16;
+ return [n, end, err];
+ }
+ si = si + (1) >> 0;
+ while (true) {
+ if (!(si < src.$length && ((((si < 0 || si >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + si]) === 10) || (((si < 0 || si >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + si]) === 13)))) { break; }
+ si = si + (1) >> 0;
+ }
+ }
+ if (si < src.$length) {
+ err = (new CorruptInputError(0, si));
+ }
+ _tmp$17 = 3;
+ _tmp$18 = j;
+ _tmp$19 = true;
+ dinc = _tmp$17;
+ dlen = _tmp$18;
+ end = _tmp$19;
+ break;
+ }
+ ((j < 0 || j >= dbuf.length) ? ($throwRuntimeError("index out of range"), undefined) : dbuf[j] = (x = enc.decodeMap, ((in$1 < 0 || in$1 >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[in$1])));
+ if (((j < 0 || j >= dbuf.length) ? ($throwRuntimeError("index out of range"), undefined) : dbuf[j]) === 255) {
+ _tmp$20 = n;
+ _tmp$21 = false;
+ _tmp$22 = (new CorruptInputError(0, (si - 1 >> 0)));
+ n = _tmp$20;
+ end = _tmp$21;
+ err = _tmp$22;
+ return [n, end, err];
+ }
+ _i++;
+ }
+ val = ((((((((dbuf[0] >>> 0)) << 18 >>> 0) | (((dbuf[1] >>> 0)) << 12 >>> 0)) >>> 0) | (((dbuf[2] >>> 0)) << 6 >>> 0)) >>> 0) | ((dbuf[3] >>> 0))) >>> 0;
+ _tmp$23 = (((val >>> 0 >>> 0) << 24 >>> 24));
+ _tmp$24 = (((val >>> 8 >>> 0) << 24 >>> 24));
+ _tmp$25 = (((val >>> 16 >>> 0) << 24 >>> 24));
+ dbuf[2] = _tmp$23;
+ dbuf[1] = _tmp$24;
+ dbuf[0] = _tmp$25;
+ _2 = dlen;
+ if (_2 === (4)) {
+ (2 >= dst.$length ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + 2] = dbuf[2]);
+ dbuf[2] = 0;
+ (1 >= dst.$length ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + 1] = dbuf[1]);
+ if (enc.strict && !((dbuf[2] === 0))) {
+ _tmp$26 = n;
+ _tmp$27 = end;
+ _tmp$28 = (new CorruptInputError(0, (si - 1 >> 0)));
+ n = _tmp$26;
+ end = _tmp$27;
+ err = _tmp$28;
+ return [n, end, err];
+ }
+ dbuf[1] = 0;
+ (0 >= dst.$length ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + 0] = dbuf[0]);
+ if (enc.strict && (!((dbuf[1] === 0)) || !((dbuf[2] === 0)))) {
+ _tmp$29 = n;
+ _tmp$30 = end;
+ _tmp$31 = (new CorruptInputError(0, (si - 2 >> 0)));
+ n = _tmp$29;
+ end = _tmp$30;
+ err = _tmp$31;
+ return [n, end, err];
+ }
+ } else if (_2 === (3)) {
+ (1 >= dst.$length ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + 1] = dbuf[1]);
+ if (enc.strict && !((dbuf[2] === 0))) {
+ _tmp$32 = n;
+ _tmp$33 = end;
+ _tmp$34 = (new CorruptInputError(0, (si - 1 >> 0)));
+ n = _tmp$32;
+ end = _tmp$33;
+ err = _tmp$34;
+ return [n, end, err];
+ }
+ dbuf[1] = 0;
+ (0 >= dst.$length ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + 0] = dbuf[0]);
+ if (enc.strict && (!((dbuf[1] === 0)) || !((dbuf[2] === 0)))) {
+ _tmp$35 = n;
+ _tmp$36 = end;
+ _tmp$37 = (new CorruptInputError(0, (si - 2 >> 0)));
+ n = _tmp$35;
+ end = _tmp$36;
+ err = _tmp$37;
+ return [n, end, err];
+ }
+ } else if (_2 === (2)) {
+ (0 >= dst.$length ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + 0] = dbuf[0]);
+ if (enc.strict && (!((dbuf[1] === 0)) || !((dbuf[2] === 0)))) {
+ _tmp$38 = n;
+ _tmp$39 = end;
+ _tmp$40 = (new CorruptInputError(0, (si - 2 >> 0)));
+ n = _tmp$38;
+ end = _tmp$39;
+ err = _tmp$40;
+ return [n, end, err];
+ }
+ }
+ dst = $subslice(dst, dinc);
+ n = n + ((dlen - 1 >> 0)) >> 0;
+ }
+ _tmp$41 = n;
+ _tmp$42 = end;
+ _tmp$43 = err;
+ n = _tmp$41;
+ end = _tmp$42;
+ err = _tmp$43;
+ return [n, end, err];
+ };
+ Encoding.prototype.decode = function(dst, src) { return this.$val.decode(dst, src); };
+ Encoding.ptr.prototype.Decode = function(dst, src) {
+ var $ptr, _tuple, dst, enc, err, n, src;
+ n = 0;
+ err = $ifaceNil;
+ enc = this;
+ _tuple = enc.decode(dst, src);
+ n = _tuple[0];
+ err = _tuple[2];
+ return [n, err];
+ };
+ Encoding.prototype.Decode = function(dst, src) { return this.$val.Decode(dst, src); };
+ Encoding.ptr.prototype.DecodeString = function(s) {
+ var $ptr, _tuple, dbuf, enc, err, n, s;
+ enc = this;
+ dbuf = $makeSlice(sliceType, enc.DecodedLen(s.length));
+ _tuple = enc.decode(dbuf, (new sliceType($stringToBytes(s))));
+ n = _tuple[0];
+ err = _tuple[2];
+ return [$subslice(dbuf, 0, n), err];
+ };
+ Encoding.prototype.DecodeString = function(s) { return this.$val.DecodeString(s); };
+ decoder.ptr.prototype.Read = function(p) {
+ var $ptr, _q, _q$1, _q$2, _r, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, _tuple$2, _tuple$3, d, err, n, nn, nr, nw, nw$1, p, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; _q$1 = $f._q$1; _q$2 = $f._q$2; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$10 = $f._tmp$10; _tmp$11 = $f._tmp$11; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tmp$7 = $f._tmp$7; _tmp$8 = $f._tmp$8; _tmp$9 = $f._tmp$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; d = $f.d; err = $f.err; n = $f.n; nn = $f.nn; nr = $f.nr; nw = $f.nw; nw$1 = $f.nw$1; p = $f.p; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ d = this;
+ if (d.out.$length > 0) {
+ n = $copySlice(p, d.out);
+ d.out = $subslice(d.out, n);
+ _tmp = n;
+ _tmp$1 = $ifaceNil;
+ n = _tmp;
+ err = _tmp$1;
+ $s = -1; return [n, err];
+ }
+ if (!($interfaceIsEqual(d.err, $ifaceNil))) {
+ _tmp$2 = 0;
+ _tmp$3 = d.err;
+ n = _tmp$2;
+ err = _tmp$3;
+ $s = -1; return [n, err];
+ }
+ /* while (true) { */ case 1:
+ /* if (!(d.nbuf < 4 && $interfaceIsEqual(d.readErr, $ifaceNil))) { break; } */ if(!(d.nbuf < 4 && $interfaceIsEqual(d.readErr, $ifaceNil))) { $s = 2; continue; }
+ nn = $imul((_q = p.$length / 3, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")), 4);
+ if (nn < 4) {
+ nn = 4;
+ }
+ if (nn > 1024) {
+ nn = 1024;
+ }
+ _r = d.r.Read($subslice(new sliceType(d.buf), d.nbuf, nn)); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ nn = _tuple[0];
+ d.readErr = _tuple[1];
+ d.nbuf = d.nbuf + (nn) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ if (d.nbuf < 4) {
+ if ((d.enc.padChar === -1) && d.nbuf > 0) {
+ nw = 0;
+ _tuple$1 = d.enc.decode(new sliceType(d.outbuf), $subslice(new sliceType(d.buf), 0, d.nbuf));
+ nw = _tuple$1[0];
+ d.err = _tuple$1[2];
+ d.nbuf = 0;
+ d.end = true;
+ d.out = $subslice(new sliceType(d.outbuf), 0, nw);
+ n = $copySlice(p, d.out);
+ d.out = $subslice(d.out, n);
+ if (n > 0 || (p.$length === 0) && d.out.$length > 0) {
+ _tmp$4 = n;
+ _tmp$5 = $ifaceNil;
+ n = _tmp$4;
+ err = _tmp$5;
+ $s = -1; return [n, err];
+ }
+ if (!($interfaceIsEqual(d.err, $ifaceNil))) {
+ _tmp$6 = 0;
+ _tmp$7 = d.err;
+ n = _tmp$6;
+ err = _tmp$7;
+ $s = -1; return [n, err];
+ }
+ }
+ d.err = d.readErr;
+ if ($interfaceIsEqual(d.err, io.EOF) && d.nbuf > 0) {
+ d.err = io.ErrUnexpectedEOF;
+ }
+ _tmp$8 = 0;
+ _tmp$9 = d.err;
+ n = _tmp$8;
+ err = _tmp$9;
+ $s = -1; return [n, err];
+ }
+ nr = $imul((_q$1 = d.nbuf / 4, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero")), 4);
+ nw$1 = $imul((_q$2 = d.nbuf / 4, (_q$2 === _q$2 && _q$2 !== 1/0 && _q$2 !== -1/0) ? _q$2 >> 0 : $throwRuntimeError("integer divide by zero")), 3);
+ if (nw$1 > p.$length) {
+ _tuple$2 = d.enc.decode(new sliceType(d.outbuf), $subslice(new sliceType(d.buf), 0, nr));
+ nw$1 = _tuple$2[0];
+ d.end = _tuple$2[1];
+ d.err = _tuple$2[2];
+ d.out = $subslice(new sliceType(d.outbuf), 0, nw$1);
+ n = $copySlice(p, d.out);
+ d.out = $subslice(d.out, n);
+ } else {
+ _tuple$3 = d.enc.decode(p, $subslice(new sliceType(d.buf), 0, nr));
+ n = _tuple$3[0];
+ d.end = _tuple$3[1];
+ d.err = _tuple$3[2];
+ }
+ d.nbuf = d.nbuf - (nr) >> 0;
+ $copySlice($subslice(new sliceType(d.buf), 0, d.nbuf), $subslice(new sliceType(d.buf), nr));
+ _tmp$10 = n;
+ _tmp$11 = d.err;
+ n = _tmp$10;
+ err = _tmp$11;
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decoder.ptr.prototype.Read }; } $f.$ptr = $ptr; $f._q = _q; $f._q$1 = _q$1; $f._q$2 = _q$2; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$10 = _tmp$10; $f._tmp$11 = _tmp$11; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tmp$7 = _tmp$7; $f._tmp$8 = _tmp$8; $f._tmp$9 = _tmp$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f.d = d; $f.err = err; $f.n = n; $f.nn = nn; $f.nr = nr; $f.nw = nw; $f.nw$1 = nw$1; $f.p = p; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.prototype.Read = function(p) { return this.$val.Read(p); };
+ newlineFilteringReader.ptr.prototype.Read = function(p) {
+ var $ptr, _i, _r, _r$1, _ref, _tuple, _tuple$1, b, err, i, n, offset, p, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _ref = $f._ref; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; b = $f.b; err = $f.err; i = $f.i; n = $f.n; offset = $f.offset; p = $f.p; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ _r = r.wrapped.Read(p); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ n = _tuple[0];
+ err = _tuple[1];
+ /* while (true) { */ case 2:
+ /* if (!(n > 0)) { break; } */ if(!(n > 0)) { $s = 3; continue; }
+ offset = 0;
+ _ref = $subslice(p, 0, n);
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ b = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (!((b === 13)) && !((b === 10))) {
+ if (!((i === offset))) {
+ ((offset < 0 || offset >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + offset] = b);
+ }
+ offset = offset + (1) >> 0;
+ }
+ _i++;
+ }
+ if (offset > 0) {
+ $s = -1; return [offset, err];
+ }
+ _r$1 = r.wrapped.Read(p); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ n = _tuple$1[0];
+ err = _tuple$1[1];
+ /* } */ $s = 2; continue; case 3:
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: newlineFilteringReader.ptr.prototype.Read }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._ref = _ref; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.b = b; $f.err = err; $f.i = i; $f.n = n; $f.offset = offset; $f.p = p; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ newlineFilteringReader.prototype.Read = function(p) { return this.$val.Read(p); };
+ NewDecoder = function(enc, r) {
+ var $ptr, enc, r;
+ return new decoder.ptr($ifaceNil, $ifaceNil, enc, new newlineFilteringReader.ptr(r), false, arrayType$3.zero(), 0, sliceType.nil, arrayType$5.zero());
+ };
+ $pkg.NewDecoder = NewDecoder;
+ Encoding.ptr.prototype.DecodedLen = function(n) {
+ var $ptr, _q, _q$1, enc, n;
+ enc = this;
+ if (enc.padChar === -1) {
+ return (_q = ($imul(n, 6)) / 8, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ }
+ return $imul((_q$1 = n / 4, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero")), 3);
+ };
+ Encoding.prototype.DecodedLen = function(n) { return this.$val.DecodedLen(n); };
+ Encoding.methods = [{prop: "WithPadding", name: "WithPadding", pkg: "", typ: $funcType([$Int32], [ptrType], false)}, {prop: "Strict", name: "Strict", pkg: "", typ: $funcType([], [ptrType], false)}];
+ ptrType.methods = [{prop: "Encode", name: "Encode", pkg: "", typ: $funcType([sliceType, sliceType], [], false)}, {prop: "EncodeToString", name: "EncodeToString", pkg: "", typ: $funcType([sliceType], [$String], false)}, {prop: "EncodedLen", name: "EncodedLen", pkg: "", typ: $funcType([$Int], [$Int], false)}, {prop: "decode", name: "decode", pkg: "encoding/base64", typ: $funcType([sliceType, sliceType], [$Int, $Bool, $error], false)}, {prop: "Decode", name: "Decode", pkg: "", typ: $funcType([sliceType, sliceType], [$Int, $error], false)}, {prop: "DecodeString", name: "DecodeString", pkg: "", typ: $funcType([$String], [sliceType, $error], false)}, {prop: "DecodedLen", name: "DecodedLen", pkg: "", typ: $funcType([$Int], [$Int], false)}];
+ ptrType$1.methods = [{prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}, {prop: "Close", name: "Close", pkg: "", typ: $funcType([], [$error], false)}];
+ CorruptInputError.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$2.methods = [{prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}];
+ ptrType$3.methods = [{prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}];
+ Encoding.init("encoding/base64", [{prop: "encode", name: "encode", exported: false, typ: arrayType, tag: ""}, {prop: "decodeMap", name: "decodeMap", exported: false, typ: arrayType$1, tag: ""}, {prop: "padChar", name: "padChar", exported: false, typ: $Int32, tag: ""}, {prop: "strict", name: "strict", exported: false, typ: $Bool, tag: ""}]);
+ encoder.init("encoding/base64", [{prop: "err", name: "err", exported: false, typ: $error, tag: ""}, {prop: "enc", name: "enc", exported: false, typ: ptrType, tag: ""}, {prop: "w", name: "w", exported: false, typ: io.Writer, tag: ""}, {prop: "buf", name: "buf", exported: false, typ: arrayType$2, tag: ""}, {prop: "nbuf", name: "nbuf", exported: false, typ: $Int, tag: ""}, {prop: "out", name: "out", exported: false, typ: arrayType$3, tag: ""}]);
+ decoder.init("encoding/base64", [{prop: "err", name: "err", exported: false, typ: $error, tag: ""}, {prop: "readErr", name: "readErr", exported: false, typ: $error, tag: ""}, {prop: "enc", name: "enc", exported: false, typ: ptrType, tag: ""}, {prop: "r", name: "r", exported: false, typ: io.Reader, tag: ""}, {prop: "end", name: "end", exported: false, typ: $Bool, tag: ""}, {prop: "buf", name: "buf", exported: false, typ: arrayType$3, tag: ""}, {prop: "nbuf", name: "nbuf", exported: false, typ: $Int, tag: ""}, {prop: "out", name: "out", exported: false, typ: sliceType, tag: ""}, {prop: "outbuf", name: "outbuf", exported: false, typ: arrayType$5, tag: ""}]);
+ newlineFilteringReader.init("encoding/base64", [{prop: "wrapped", name: "wrapped", exported: false, typ: io.Reader, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = io.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $pkg.StdEncoding = NewEncoding("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/");
+ $pkg.URLEncoding = NewEncoding("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_");
+ $pkg.RawStdEncoding = $clone($pkg.StdEncoding, Encoding).WithPadding(-1);
+ $pkg.RawURLEncoding = $clone($pkg.URLEncoding, Encoding).WithPadding(-1);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["unicode"] = (function() {
+ var $pkg = {}, $init, RangeTable, Range16, Range32, CaseRange, d, foldPair, arrayType, sliceType, sliceType$1, ptrType, sliceType$2, sliceType$3, sliceType$4, _C, _Cc, _Cf, _Co, _Cs, _L, _Ll, _Lm, _Lo, _Lt, _Lu, _M, _Mc, _Me, _Mn, _N, _Nd, _Nl, _No, _P, _Pc, _Pd, _Pe, _Pf, _Pi, _Po, _Ps, _S, _Sc, _Sk, _Sm, _So, _Z, _Zl, _Zp, _Zs, _Adlam, _Ahom, _Anatolian_Hieroglyphs, _Arabic, _Armenian, _Avestan, _Balinese, _Bamum, _Bassa_Vah, _Batak, _Bengali, _Bhaiksuki, _Bopomofo, _Brahmi, _Braille, _Buginese, _Buhid, _Canadian_Aboriginal, _Carian, _Caucasian_Albanian, _Chakma, _Cham, _Cherokee, _Common, _Coptic, _Cuneiform, _Cypriot, _Cyrillic, _Deseret, _Devanagari, _Duployan, _Egyptian_Hieroglyphs, _Elbasan, _Ethiopic, _Georgian, _Glagolitic, _Gothic, _Grantha, _Greek, _Gujarati, _Gurmukhi, _Han, _Hangul, _Hanunoo, _Hatran, _Hebrew, _Hiragana, _Imperial_Aramaic, _Inherited, _Inscriptional_Pahlavi, _Inscriptional_Parthian, _Javanese, _Kaithi, _Kannada, _Katakana, _Kayah_Li, _Kharoshthi, _Khmer, _Khojki, _Khudawadi, _Lao, _Latin, _Lepcha, _Limbu, _Linear_A, _Linear_B, _Lisu, _Lycian, _Lydian, _Mahajani, _Malayalam, _Mandaic, _Manichaean, _Marchen, _Meetei_Mayek, _Mende_Kikakui, _Meroitic_Cursive, _Meroitic_Hieroglyphs, _Miao, _Modi, _Mongolian, _Mro, _Multani, _Myanmar, _Nabataean, _New_Tai_Lue, _Newa, _Nko, _Ogham, _Ol_Chiki, _Old_Hungarian, _Old_Italic, _Old_North_Arabian, _Old_Permic, _Old_Persian, _Old_South_Arabian, _Old_Turkic, _Oriya, _Osage, _Osmanya, _Pahawh_Hmong, _Palmyrene, _Pau_Cin_Hau, _Phags_Pa, _Phoenician, _Psalter_Pahlavi, _Rejang, _Runic, _Samaritan, _Saurashtra, _Sharada, _Shavian, _Siddham, _SignWriting, _Sinhala, _Sora_Sompeng, _Sundanese, _Syloti_Nagri, _Syriac, _Tagalog, _Tagbanwa, _Tai_Le, _Tai_Tham, _Tai_Viet, _Takri, _Tamil, _Tangut, _Telugu, _Thaana, _Thai, _Tibetan, _Tifinagh, _Tirhuta, _Ugaritic, _Vai, _Warang_Citi, _Yi, _White_Space, _CaseRanges, properties, asciiFold, caseOrbit, foldCommon, foldGreek, foldInherited, foldL, foldLl, foldLt, foldLu, foldM, foldMn, to, IsDigit, IsPrint, In, IsLetter, IsSpace, is16, is32, Is, isExcludingLatin, To, ToUpper, ToLower, SimpleFold;
+ RangeTable = $pkg.RangeTable = $newType(0, $kindStruct, "unicode.RangeTable", true, "unicode", true, function(R16_, R32_, LatinOffset_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.R16 = sliceType.nil;
+ this.R32 = sliceType$1.nil;
+ this.LatinOffset = 0;
+ return;
+ }
+ this.R16 = R16_;
+ this.R32 = R32_;
+ this.LatinOffset = LatinOffset_;
+ });
+ Range16 = $pkg.Range16 = $newType(0, $kindStruct, "unicode.Range16", true, "unicode", true, function(Lo_, Hi_, Stride_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Lo = 0;
+ this.Hi = 0;
+ this.Stride = 0;
+ return;
+ }
+ this.Lo = Lo_;
+ this.Hi = Hi_;
+ this.Stride = Stride_;
+ });
+ Range32 = $pkg.Range32 = $newType(0, $kindStruct, "unicode.Range32", true, "unicode", true, function(Lo_, Hi_, Stride_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Lo = 0;
+ this.Hi = 0;
+ this.Stride = 0;
+ return;
+ }
+ this.Lo = Lo_;
+ this.Hi = Hi_;
+ this.Stride = Stride_;
+ });
+ CaseRange = $pkg.CaseRange = $newType(0, $kindStruct, "unicode.CaseRange", true, "unicode", true, function(Lo_, Hi_, Delta_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Lo = 0;
+ this.Hi = 0;
+ this.Delta = arrayType.zero();
+ return;
+ }
+ this.Lo = Lo_;
+ this.Hi = Hi_;
+ this.Delta = Delta_;
+ });
+ d = $pkg.d = $newType(12, $kindArray, "unicode.d", true, "unicode", false, null);
+ foldPair = $pkg.foldPair = $newType(0, $kindStruct, "unicode.foldPair", true, "unicode", false, function(From_, To_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.From = 0;
+ this.To = 0;
+ return;
+ }
+ this.From = From_;
+ this.To = To_;
+ });
+ arrayType = $arrayType($Int32, 3);
+ sliceType = $sliceType(Range16);
+ sliceType$1 = $sliceType(Range32);
+ ptrType = $ptrType(RangeTable);
+ sliceType$2 = $sliceType(ptrType);
+ sliceType$3 = $sliceType(CaseRange);
+ sliceType$4 = $sliceType(foldPair);
+ to = function(_case, r, caseRange) {
+ var $ptr, _case, _q, caseRange, cr, delta, hi, lo, m, r, x;
+ if (_case < 0 || 3 <= _case) {
+ return 65533;
+ }
+ lo = 0;
+ hi = caseRange.$length;
+ while (true) {
+ if (!(lo < hi)) { break; }
+ m = lo + (_q = ((hi - lo >> 0)) / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")) >> 0;
+ cr = ((m < 0 || m >= caseRange.$length) ? ($throwRuntimeError("index out of range"), undefined) : caseRange.$array[caseRange.$offset + m]);
+ if (((cr.Lo >> 0)) <= r && r <= ((cr.Hi >> 0))) {
+ delta = ((x = cr.Delta, ((_case < 0 || _case >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[_case])));
+ if (delta > 1114111) {
+ return ((cr.Lo >> 0)) + ((((((r - ((cr.Lo >> 0)) >> 0)) & ~1) >> 0) | (((_case & 1) >> 0)))) >> 0;
+ }
+ return r + delta >> 0;
+ }
+ if (r < ((cr.Lo >> 0))) {
+ hi = m;
+ } else {
+ lo = m + 1 >> 0;
+ }
+ }
+ return r;
+ };
+ IsDigit = function(r) {
+ var $ptr, r;
+ if (r <= 255) {
+ return 48 <= r && r <= 57;
+ }
+ return isExcludingLatin($pkg.Digit, r);
+ };
+ $pkg.IsDigit = IsDigit;
+ IsPrint = function(r) {
+ var $ptr, r, x;
+ if (((r >>> 0)) <= 255) {
+ return !(((((x = ((r << 24 >>> 24)), ((x < 0 || x >= properties.length) ? ($throwRuntimeError("index out of range"), undefined) : properties[x])) & 128) >>> 0) === 0));
+ }
+ return In(r, $pkg.PrintRanges);
+ };
+ $pkg.IsPrint = IsPrint;
+ In = function(r, ranges) {
+ var $ptr, _i, _ref, inside, r, ranges;
+ _ref = ranges;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ inside = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (Is(inside, r)) {
+ return true;
+ }
+ _i++;
+ }
+ return false;
+ };
+ $pkg.In = In;
+ IsLetter = function(r) {
+ var $ptr, r, x;
+ if (((r >>> 0)) <= 255) {
+ return !(((((x = ((r << 24 >>> 24)), ((x < 0 || x >= properties.length) ? ($throwRuntimeError("index out of range"), undefined) : properties[x])) & 96) >>> 0) === 0));
+ }
+ return isExcludingLatin($pkg.Letter, r);
+ };
+ $pkg.IsLetter = IsLetter;
+ IsSpace = function(r) {
+ var $ptr, _1, r;
+ if (((r >>> 0)) <= 255) {
+ _1 = r;
+ if ((_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12)) || (_1 === (13)) || (_1 === (32)) || (_1 === (133)) || (_1 === (160))) {
+ return true;
+ }
+ return false;
+ }
+ return isExcludingLatin($pkg.White_Space, r);
+ };
+ $pkg.IsSpace = IsSpace;
+ is16 = function(ranges, r) {
+ var $ptr, _i, _q, _r, _r$1, _ref, hi, i, lo, m, r, range_, range_$1, ranges;
+ if (ranges.$length <= 18 || r <= 255) {
+ _ref = ranges;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ range_ = ((i < 0 || i >= ranges.$length) ? ($throwRuntimeError("index out of range"), undefined) : ranges.$array[ranges.$offset + i]);
+ if (r < range_.Lo) {
+ return false;
+ }
+ if (r <= range_.Hi) {
+ return (_r = ((r - range_.Lo << 16 >>> 16)) % range_.Stride, _r === _r ? _r : $throwRuntimeError("integer divide by zero")) === 0;
+ }
+ _i++;
+ }
+ return false;
+ }
+ lo = 0;
+ hi = ranges.$length;
+ while (true) {
+ if (!(lo < hi)) { break; }
+ m = lo + (_q = ((hi - lo >> 0)) / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")) >> 0;
+ range_$1 = ((m < 0 || m >= ranges.$length) ? ($throwRuntimeError("index out of range"), undefined) : ranges.$array[ranges.$offset + m]);
+ if (range_$1.Lo <= r && r <= range_$1.Hi) {
+ return (_r$1 = ((r - range_$1.Lo << 16 >>> 16)) % range_$1.Stride, _r$1 === _r$1 ? _r$1 : $throwRuntimeError("integer divide by zero")) === 0;
+ }
+ if (r < range_$1.Lo) {
+ hi = m;
+ } else {
+ lo = m + 1 >> 0;
+ }
+ }
+ return false;
+ };
+ is32 = function(ranges, r) {
+ var $ptr, _i, _q, _r, _r$1, _ref, hi, i, lo, m, r, range_, range_$1, ranges;
+ if (ranges.$length <= 18) {
+ _ref = ranges;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ range_ = ((i < 0 || i >= ranges.$length) ? ($throwRuntimeError("index out of range"), undefined) : ranges.$array[ranges.$offset + i]);
+ if (r < range_.Lo) {
+ return false;
+ }
+ if (r <= range_.Hi) {
+ return (_r = ((r - range_.Lo >>> 0)) % range_.Stride, _r === _r ? _r : $throwRuntimeError("integer divide by zero")) === 0;
+ }
+ _i++;
+ }
+ return false;
+ }
+ lo = 0;
+ hi = ranges.$length;
+ while (true) {
+ if (!(lo < hi)) { break; }
+ m = lo + (_q = ((hi - lo >> 0)) / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")) >> 0;
+ range_$1 = $clone(((m < 0 || m >= ranges.$length) ? ($throwRuntimeError("index out of range"), undefined) : ranges.$array[ranges.$offset + m]), Range32);
+ if (range_$1.Lo <= r && r <= range_$1.Hi) {
+ return (_r$1 = ((r - range_$1.Lo >>> 0)) % range_$1.Stride, _r$1 === _r$1 ? _r$1 : $throwRuntimeError("integer divide by zero")) === 0;
+ }
+ if (r < range_$1.Lo) {
+ hi = m;
+ } else {
+ lo = m + 1 >> 0;
+ }
+ }
+ return false;
+ };
+ Is = function(rangeTab, r) {
+ var $ptr, r, r16, r32, rangeTab, x;
+ r16 = rangeTab.R16;
+ if (r16.$length > 0 && r <= (((x = r16.$length - 1 >> 0, ((x < 0 || x >= r16.$length) ? ($throwRuntimeError("index out of range"), undefined) : r16.$array[r16.$offset + x])).Hi >> 0))) {
+ return is16(r16, ((r << 16 >>> 16)));
+ }
+ r32 = rangeTab.R32;
+ if (r32.$length > 0 && r >= (((0 >= r32.$length ? ($throwRuntimeError("index out of range"), undefined) : r32.$array[r32.$offset + 0]).Lo >> 0))) {
+ return is32(r32, ((r >>> 0)));
+ }
+ return false;
+ };
+ $pkg.Is = Is;
+ isExcludingLatin = function(rangeTab, r) {
+ var $ptr, off, r, r16, r32, rangeTab, x;
+ r16 = rangeTab.R16;
+ off = rangeTab.LatinOffset;
+ if (r16.$length > off && r <= (((x = r16.$length - 1 >> 0, ((x < 0 || x >= r16.$length) ? ($throwRuntimeError("index out of range"), undefined) : r16.$array[r16.$offset + x])).Hi >> 0))) {
+ return is16($subslice(r16, off), ((r << 16 >>> 16)));
+ }
+ r32 = rangeTab.R32;
+ if (r32.$length > 0 && r >= (((0 >= r32.$length ? ($throwRuntimeError("index out of range"), undefined) : r32.$array[r32.$offset + 0]).Lo >> 0))) {
+ return is32(r32, ((r >>> 0)));
+ }
+ return false;
+ };
+ To = function(_case, r) {
+ var $ptr, _case, r;
+ return to(_case, r, $pkg.CaseRanges);
+ };
+ $pkg.To = To;
+ ToUpper = function(r) {
+ var $ptr, r;
+ if (r <= 127) {
+ if (97 <= r && r <= 122) {
+ r = r - (32) >> 0;
+ }
+ return r;
+ }
+ return To(0, r);
+ };
+ $pkg.ToUpper = ToUpper;
+ ToLower = function(r) {
+ var $ptr, r;
+ if (r <= 127) {
+ if (65 <= r && r <= 90) {
+ r = r + (32) >> 0;
+ }
+ return r;
+ }
+ return To(1, r);
+ };
+ $pkg.ToLower = ToLower;
+ SimpleFold = function(r) {
+ var $ptr, _q, hi, l, lo, m, r;
+ if (r < 0 || r > 1114111) {
+ return r;
+ }
+ if (((r >> 0)) < 128) {
+ return ((((r < 0 || r >= asciiFold.length) ? ($throwRuntimeError("index out of range"), undefined) : asciiFold[r]) >> 0));
+ }
+ lo = 0;
+ hi = caseOrbit.$length;
+ while (true) {
+ if (!(lo < hi)) { break; }
+ m = lo + (_q = ((hi - lo >> 0)) / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")) >> 0;
+ if (((((m < 0 || m >= caseOrbit.$length) ? ($throwRuntimeError("index out of range"), undefined) : caseOrbit.$array[caseOrbit.$offset + m]).From >> 0)) < r) {
+ lo = m + 1 >> 0;
+ } else {
+ hi = m;
+ }
+ }
+ if (lo < caseOrbit.$length && (((((lo < 0 || lo >= caseOrbit.$length) ? ($throwRuntimeError("index out of range"), undefined) : caseOrbit.$array[caseOrbit.$offset + lo]).From >> 0)) === r)) {
+ return ((((lo < 0 || lo >= caseOrbit.$length) ? ($throwRuntimeError("index out of range"), undefined) : caseOrbit.$array[caseOrbit.$offset + lo]).To >> 0));
+ }
+ l = ToLower(r);
+ if (!((l === r))) {
+ return l;
+ }
+ return ToUpper(r);
+ };
+ $pkg.SimpleFold = SimpleFold;
+ RangeTable.init("", [{prop: "R16", name: "R16", exported: true, typ: sliceType, tag: ""}, {prop: "R32", name: "R32", exported: true, typ: sliceType$1, tag: ""}, {prop: "LatinOffset", name: "LatinOffset", exported: true, typ: $Int, tag: ""}]);
+ Range16.init("", [{prop: "Lo", name: "Lo", exported: true, typ: $Uint16, tag: ""}, {prop: "Hi", name: "Hi", exported: true, typ: $Uint16, tag: ""}, {prop: "Stride", name: "Stride", exported: true, typ: $Uint16, tag: ""}]);
+ Range32.init("", [{prop: "Lo", name: "Lo", exported: true, typ: $Uint32, tag: ""}, {prop: "Hi", name: "Hi", exported: true, typ: $Uint32, tag: ""}, {prop: "Stride", name: "Stride", exported: true, typ: $Uint32, tag: ""}]);
+ CaseRange.init("", [{prop: "Lo", name: "Lo", exported: true, typ: $Uint32, tag: ""}, {prop: "Hi", name: "Hi", exported: true, typ: $Uint32, tag: ""}, {prop: "Delta", name: "Delta", exported: true, typ: d, tag: ""}]);
+ d.init($Int32, 3);
+ foldPair.init("", [{prop: "From", name: "From", exported: true, typ: $Uint16, tag: ""}, {prop: "To", name: "To", exported: true, typ: $Uint16, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _C = new RangeTable.ptr(new sliceType([new Range16.ptr(0, 31, 1), new Range16.ptr(127, 159, 1), new Range16.ptr(173, 1536, 1363), new Range16.ptr(1537, 1541, 1), new Range16.ptr(1564, 1757, 193), new Range16.ptr(1807, 2274, 467), new Range16.ptr(6158, 8203, 2045), new Range16.ptr(8204, 8207, 1), new Range16.ptr(8234, 8238, 1), new Range16.ptr(8288, 8292, 1), new Range16.ptr(8294, 8303, 1), new Range16.ptr(55296, 63743, 1), new Range16.ptr(65279, 65529, 250), new Range16.ptr(65530, 65531, 1)]), new sliceType$1([new Range32.ptr(69821, 113824, 44003), new Range32.ptr(113825, 113827, 1), new Range32.ptr(119155, 119162, 1), new Range32.ptr(917505, 917536, 31), new Range32.ptr(917537, 917631, 1), new Range32.ptr(983040, 1048573, 1), new Range32.ptr(1048576, 1114109, 1)]), 2);
+ _Cc = new RangeTable.ptr(new sliceType([new Range16.ptr(0, 31, 1), new Range16.ptr(127, 159, 1)]), sliceType$1.nil, 2);
+ _Cf = new RangeTable.ptr(new sliceType([new Range16.ptr(173, 1536, 1363), new Range16.ptr(1537, 1541, 1), new Range16.ptr(1564, 1757, 193), new Range16.ptr(1807, 2274, 467), new Range16.ptr(6158, 8203, 2045), new Range16.ptr(8204, 8207, 1), new Range16.ptr(8234, 8238, 1), new Range16.ptr(8288, 8292, 1), new Range16.ptr(8294, 8303, 1), new Range16.ptr(65279, 65529, 250), new Range16.ptr(65530, 65531, 1)]), new sliceType$1([new Range32.ptr(69821, 113824, 44003), new Range32.ptr(113825, 113827, 1), new Range32.ptr(119155, 119162, 1), new Range32.ptr(917505, 917536, 31), new Range32.ptr(917537, 917631, 1)]), 0);
+ _Co = new RangeTable.ptr(new sliceType([new Range16.ptr(57344, 63743, 1)]), new sliceType$1([new Range32.ptr(983040, 1048573, 1), new Range32.ptr(1048576, 1114109, 1)]), 0);
+ _Cs = new RangeTable.ptr(new sliceType([new Range16.ptr(55296, 57343, 1)]), sliceType$1.nil, 0);
+ _L = new RangeTable.ptr(new sliceType([new Range16.ptr(65, 90, 1), new Range16.ptr(97, 122, 1), new Range16.ptr(170, 181, 11), new Range16.ptr(186, 192, 6), new Range16.ptr(193, 214, 1), new Range16.ptr(216, 246, 1), new Range16.ptr(248, 705, 1), new Range16.ptr(710, 721, 1), new Range16.ptr(736, 740, 1), new Range16.ptr(748, 750, 2), new Range16.ptr(880, 884, 1), new Range16.ptr(886, 887, 1), new Range16.ptr(890, 893, 1), new Range16.ptr(895, 902, 7), new Range16.ptr(904, 906, 1), new Range16.ptr(908, 910, 2), new Range16.ptr(911, 929, 1), new Range16.ptr(931, 1013, 1), new Range16.ptr(1015, 1153, 1), new Range16.ptr(1162, 1327, 1), new Range16.ptr(1329, 1366, 1), new Range16.ptr(1369, 1377, 8), new Range16.ptr(1378, 1415, 1), new Range16.ptr(1488, 1514, 1), new Range16.ptr(1520, 1522, 1), new Range16.ptr(1568, 1610, 1), new Range16.ptr(1646, 1647, 1), new Range16.ptr(1649, 1747, 1), new Range16.ptr(1749, 1765, 16), new Range16.ptr(1766, 1774, 8), new Range16.ptr(1775, 1786, 11), new Range16.ptr(1787, 1788, 1), new Range16.ptr(1791, 1808, 17), new Range16.ptr(1810, 1839, 1), new Range16.ptr(1869, 1957, 1), new Range16.ptr(1969, 1994, 25), new Range16.ptr(1995, 2026, 1), new Range16.ptr(2036, 2037, 1), new Range16.ptr(2042, 2048, 6), new Range16.ptr(2049, 2069, 1), new Range16.ptr(2074, 2084, 10), new Range16.ptr(2088, 2112, 24), new Range16.ptr(2113, 2136, 1), new Range16.ptr(2208, 2228, 1), new Range16.ptr(2230, 2237, 1), new Range16.ptr(2308, 2361, 1), new Range16.ptr(2365, 2384, 19), new Range16.ptr(2392, 2401, 1), new Range16.ptr(2417, 2432, 1), new Range16.ptr(2437, 2444, 1), new Range16.ptr(2447, 2448, 1), new Range16.ptr(2451, 2472, 1), new Range16.ptr(2474, 2480, 1), new Range16.ptr(2482, 2486, 4), new Range16.ptr(2487, 2489, 1), new Range16.ptr(2493, 2510, 17), new Range16.ptr(2524, 2525, 1), new Range16.ptr(2527, 2529, 1), new Range16.ptr(2544, 2545, 1), new Range16.ptr(2565, 2570, 1), new Range16.ptr(2575, 2576, 1), new Range16.ptr(2579, 2600, 1), new Range16.ptr(2602, 2608, 1), new Range16.ptr(2610, 2611, 1), new Range16.ptr(2613, 2614, 1), new Range16.ptr(2616, 2617, 1), new Range16.ptr(2649, 2652, 1), new Range16.ptr(2654, 2674, 20), new Range16.ptr(2675, 2676, 1), new Range16.ptr(2693, 2701, 1), new Range16.ptr(2703, 2705, 1), new Range16.ptr(2707, 2728, 1), new Range16.ptr(2730, 2736, 1), new Range16.ptr(2738, 2739, 1), new Range16.ptr(2741, 2745, 1), new Range16.ptr(2749, 2768, 19), new Range16.ptr(2784, 2785, 1), new Range16.ptr(2809, 2821, 12), new Range16.ptr(2822, 2828, 1), new Range16.ptr(2831, 2832, 1), new Range16.ptr(2835, 2856, 1), new Range16.ptr(2858, 2864, 1), new Range16.ptr(2866, 2867, 1), new Range16.ptr(2869, 2873, 1), new Range16.ptr(2877, 2908, 31), new Range16.ptr(2909, 2911, 2), new Range16.ptr(2912, 2913, 1), new Range16.ptr(2929, 2947, 18), new Range16.ptr(2949, 2954, 1), new Range16.ptr(2958, 2960, 1), new Range16.ptr(2962, 2965, 1), new Range16.ptr(2969, 2970, 1), new Range16.ptr(2972, 2974, 2), new Range16.ptr(2975, 2979, 4), new Range16.ptr(2980, 2984, 4), new Range16.ptr(2985, 2986, 1), new Range16.ptr(2990, 3001, 1), new Range16.ptr(3024, 3077, 53), new Range16.ptr(3078, 3084, 1), new Range16.ptr(3086, 3088, 1), new Range16.ptr(3090, 3112, 1), new Range16.ptr(3114, 3129, 1), new Range16.ptr(3133, 3160, 27), new Range16.ptr(3161, 3162, 1), new Range16.ptr(3168, 3169, 1), new Range16.ptr(3200, 3205, 5), new Range16.ptr(3206, 3212, 1), new Range16.ptr(3214, 3216, 1), new Range16.ptr(3218, 3240, 1), new Range16.ptr(3242, 3251, 1), new Range16.ptr(3253, 3257, 1), new Range16.ptr(3261, 3294, 33), new Range16.ptr(3296, 3297, 1), new Range16.ptr(3313, 3314, 1), new Range16.ptr(3333, 3340, 1), new Range16.ptr(3342, 3344, 1), new Range16.ptr(3346, 3386, 1), new Range16.ptr(3389, 3406, 17), new Range16.ptr(3412, 3414, 1), new Range16.ptr(3423, 3425, 1), new Range16.ptr(3450, 3455, 1), new Range16.ptr(3461, 3478, 1), new Range16.ptr(3482, 3505, 1), new Range16.ptr(3507, 3515, 1), new Range16.ptr(3517, 3520, 3), new Range16.ptr(3521, 3526, 1), new Range16.ptr(3585, 3632, 1), new Range16.ptr(3634, 3635, 1), new Range16.ptr(3648, 3654, 1), new Range16.ptr(3713, 3714, 1), new Range16.ptr(3716, 3719, 3), new Range16.ptr(3720, 3722, 2), new Range16.ptr(3725, 3732, 7), new Range16.ptr(3733, 3735, 1), new Range16.ptr(3737, 3743, 1), new Range16.ptr(3745, 3747, 1), new Range16.ptr(3749, 3751, 2), new Range16.ptr(3754, 3755, 1), new Range16.ptr(3757, 3760, 1), new Range16.ptr(3762, 3763, 1), new Range16.ptr(3773, 3776, 3), new Range16.ptr(3777, 3780, 1), new Range16.ptr(3782, 3804, 22), new Range16.ptr(3805, 3807, 1), new Range16.ptr(3840, 3904, 64), new Range16.ptr(3905, 3911, 1), new Range16.ptr(3913, 3948, 1), new Range16.ptr(3976, 3980, 1), new Range16.ptr(4096, 4138, 1), new Range16.ptr(4159, 4176, 17), new Range16.ptr(4177, 4181, 1), new Range16.ptr(4186, 4189, 1), new Range16.ptr(4193, 4197, 4), new Range16.ptr(4198, 4206, 8), new Range16.ptr(4207, 4208, 1), new Range16.ptr(4213, 4225, 1), new Range16.ptr(4238, 4256, 18), new Range16.ptr(4257, 4293, 1), new Range16.ptr(4295, 4301, 6), new Range16.ptr(4304, 4346, 1), new Range16.ptr(4348, 4680, 1), new Range16.ptr(4682, 4685, 1), new Range16.ptr(4688, 4694, 1), new Range16.ptr(4696, 4698, 2), new Range16.ptr(4699, 4701, 1), new Range16.ptr(4704, 4744, 1), new Range16.ptr(4746, 4749, 1), new Range16.ptr(4752, 4784, 1), new Range16.ptr(4786, 4789, 1), new Range16.ptr(4792, 4798, 1), new Range16.ptr(4800, 4802, 2), new Range16.ptr(4803, 4805, 1), new Range16.ptr(4808, 4822, 1), new Range16.ptr(4824, 4880, 1), new Range16.ptr(4882, 4885, 1), new Range16.ptr(4888, 4954, 1), new Range16.ptr(4992, 5007, 1), new Range16.ptr(5024, 5109, 1), new Range16.ptr(5112, 5117, 1), new Range16.ptr(5121, 5740, 1), new Range16.ptr(5743, 5759, 1), new Range16.ptr(5761, 5786, 1), new Range16.ptr(5792, 5866, 1), new Range16.ptr(5873, 5880, 1), new Range16.ptr(5888, 5900, 1), new Range16.ptr(5902, 5905, 1), new Range16.ptr(5920, 5937, 1), new Range16.ptr(5952, 5969, 1), new Range16.ptr(5984, 5996, 1), new Range16.ptr(5998, 6000, 1), new Range16.ptr(6016, 6067, 1), new Range16.ptr(6103, 6108, 5), new Range16.ptr(6176, 6263, 1), new Range16.ptr(6272, 6276, 1), new Range16.ptr(6279, 6312, 1), new Range16.ptr(6314, 6320, 6), new Range16.ptr(6321, 6389, 1), new Range16.ptr(6400, 6430, 1), new Range16.ptr(6480, 6509, 1), new Range16.ptr(6512, 6516, 1), new Range16.ptr(6528, 6571, 1), new Range16.ptr(6576, 6601, 1), new Range16.ptr(6656, 6678, 1), new Range16.ptr(6688, 6740, 1), new Range16.ptr(6823, 6917, 94), new Range16.ptr(6918, 6963, 1), new Range16.ptr(6981, 6987, 1), new Range16.ptr(7043, 7072, 1), new Range16.ptr(7086, 7087, 1), new Range16.ptr(7098, 7141, 1), new Range16.ptr(7168, 7203, 1), new Range16.ptr(7245, 7247, 1), new Range16.ptr(7258, 7293, 1), new Range16.ptr(7296, 7304, 1), new Range16.ptr(7401, 7404, 1), new Range16.ptr(7406, 7409, 1), new Range16.ptr(7413, 7414, 1), new Range16.ptr(7424, 7615, 1), new Range16.ptr(7680, 7957, 1), new Range16.ptr(7960, 7965, 1), new Range16.ptr(7968, 8005, 1), new Range16.ptr(8008, 8013, 1), new Range16.ptr(8016, 8023, 1), new Range16.ptr(8025, 8031, 2), new Range16.ptr(8032, 8061, 1), new Range16.ptr(8064, 8116, 1), new Range16.ptr(8118, 8124, 1), new Range16.ptr(8126, 8130, 4), new Range16.ptr(8131, 8132, 1), new Range16.ptr(8134, 8140, 1), new Range16.ptr(8144, 8147, 1), new Range16.ptr(8150, 8155, 1), new Range16.ptr(8160, 8172, 1), new Range16.ptr(8178, 8180, 1), new Range16.ptr(8182, 8188, 1), new Range16.ptr(8305, 8319, 14), new Range16.ptr(8336, 8348, 1), new Range16.ptr(8450, 8455, 5), new Range16.ptr(8458, 8467, 1), new Range16.ptr(8469, 8473, 4), new Range16.ptr(8474, 8477, 1), new Range16.ptr(8484, 8490, 2), new Range16.ptr(8491, 8493, 1), new Range16.ptr(8495, 8505, 1), new Range16.ptr(8508, 8511, 1), new Range16.ptr(8517, 8521, 1), new Range16.ptr(8526, 8579, 53), new Range16.ptr(8580, 11264, 2684), new Range16.ptr(11265, 11310, 1), new Range16.ptr(11312, 11358, 1), new Range16.ptr(11360, 11492, 1), new Range16.ptr(11499, 11502, 1), new Range16.ptr(11506, 11507, 1), new Range16.ptr(11520, 11557, 1), new Range16.ptr(11559, 11565, 6), new Range16.ptr(11568, 11623, 1), new Range16.ptr(11631, 11648, 17), new Range16.ptr(11649, 11670, 1), new Range16.ptr(11680, 11686, 1), new Range16.ptr(11688, 11694, 1), new Range16.ptr(11696, 11702, 1), new Range16.ptr(11704, 11710, 1), new Range16.ptr(11712, 11718, 1), new Range16.ptr(11720, 11726, 1), new Range16.ptr(11728, 11734, 1), new Range16.ptr(11736, 11742, 1), new Range16.ptr(11823, 12293, 470), new Range16.ptr(12294, 12337, 43), new Range16.ptr(12338, 12341, 1), new Range16.ptr(12347, 12348, 1), new Range16.ptr(12353, 12438, 1), new Range16.ptr(12445, 12447, 1), new Range16.ptr(12449, 12538, 1), new Range16.ptr(12540, 12543, 1), new Range16.ptr(12549, 12589, 1), new Range16.ptr(12593, 12686, 1), new Range16.ptr(12704, 12730, 1), new Range16.ptr(12784, 12799, 1), new Range16.ptr(13312, 19893, 1), new Range16.ptr(19968, 40917, 1), new Range16.ptr(40960, 42124, 1), new Range16.ptr(42192, 42237, 1), new Range16.ptr(42240, 42508, 1), new Range16.ptr(42512, 42527, 1), new Range16.ptr(42538, 42539, 1), new Range16.ptr(42560, 42606, 1), new Range16.ptr(42623, 42653, 1), new Range16.ptr(42656, 42725, 1), new Range16.ptr(42775, 42783, 1), new Range16.ptr(42786, 42888, 1), new Range16.ptr(42891, 42926, 1), new Range16.ptr(42928, 42935, 1), new Range16.ptr(42999, 43009, 1), new Range16.ptr(43011, 43013, 1), new Range16.ptr(43015, 43018, 1), new Range16.ptr(43020, 43042, 1), new Range16.ptr(43072, 43123, 1), new Range16.ptr(43138, 43187, 1), new Range16.ptr(43250, 43255, 1), new Range16.ptr(43259, 43261, 2), new Range16.ptr(43274, 43301, 1), new Range16.ptr(43312, 43334, 1), new Range16.ptr(43360, 43388, 1), new Range16.ptr(43396, 43442, 1), new Range16.ptr(43471, 43488, 17), new Range16.ptr(43489, 43492, 1), new Range16.ptr(43494, 43503, 1), new Range16.ptr(43514, 43518, 1), new Range16.ptr(43520, 43560, 1), new Range16.ptr(43584, 43586, 1), new Range16.ptr(43588, 43595, 1), new Range16.ptr(43616, 43638, 1), new Range16.ptr(43642, 43646, 4), new Range16.ptr(43647, 43695, 1), new Range16.ptr(43697, 43701, 4), new Range16.ptr(43702, 43705, 3), new Range16.ptr(43706, 43709, 1), new Range16.ptr(43712, 43714, 2), new Range16.ptr(43739, 43741, 1), new Range16.ptr(43744, 43754, 1), new Range16.ptr(43762, 43764, 1), new Range16.ptr(43777, 43782, 1), new Range16.ptr(43785, 43790, 1), new Range16.ptr(43793, 43798, 1), new Range16.ptr(43808, 43814, 1), new Range16.ptr(43816, 43822, 1), new Range16.ptr(43824, 43866, 1), new Range16.ptr(43868, 43877, 1), new Range16.ptr(43888, 44002, 1), new Range16.ptr(44032, 55203, 1), new Range16.ptr(55216, 55238, 1), new Range16.ptr(55243, 55291, 1), new Range16.ptr(63744, 64109, 1), new Range16.ptr(64112, 64217, 1), new Range16.ptr(64256, 64262, 1), new Range16.ptr(64275, 64279, 1), new Range16.ptr(64285, 64287, 2), new Range16.ptr(64288, 64296, 1), new Range16.ptr(64298, 64310, 1), new Range16.ptr(64312, 64316, 1), new Range16.ptr(64318, 64320, 2), new Range16.ptr(64321, 64323, 2), new Range16.ptr(64324, 64326, 2), new Range16.ptr(64327, 64433, 1), new Range16.ptr(64467, 64829, 1), new Range16.ptr(64848, 64911, 1), new Range16.ptr(64914, 64967, 1), new Range16.ptr(65008, 65019, 1), new Range16.ptr(65136, 65140, 1), new Range16.ptr(65142, 65276, 1), new Range16.ptr(65313, 65338, 1), new Range16.ptr(65345, 65370, 1), new Range16.ptr(65382, 65470, 1), new Range16.ptr(65474, 65479, 1), new Range16.ptr(65482, 65487, 1), new Range16.ptr(65490, 65495, 1), new Range16.ptr(65498, 65500, 1)]), new sliceType$1([new Range32.ptr(65536, 65547, 1), new Range32.ptr(65549, 65574, 1), new Range32.ptr(65576, 65594, 1), new Range32.ptr(65596, 65597, 1), new Range32.ptr(65599, 65613, 1), new Range32.ptr(65616, 65629, 1), new Range32.ptr(65664, 65786, 1), new Range32.ptr(66176, 66204, 1), new Range32.ptr(66208, 66256, 1), new Range32.ptr(66304, 66335, 1), new Range32.ptr(66352, 66368, 1), new Range32.ptr(66370, 66377, 1), new Range32.ptr(66384, 66421, 1), new Range32.ptr(66432, 66461, 1), new Range32.ptr(66464, 66499, 1), new Range32.ptr(66504, 66511, 1), new Range32.ptr(66560, 66717, 1), new Range32.ptr(66736, 66771, 1), new Range32.ptr(66776, 66811, 1), new Range32.ptr(66816, 66855, 1), new Range32.ptr(66864, 66915, 1), new Range32.ptr(67072, 67382, 1), new Range32.ptr(67392, 67413, 1), new Range32.ptr(67424, 67431, 1), new Range32.ptr(67584, 67589, 1), new Range32.ptr(67592, 67594, 2), new Range32.ptr(67595, 67637, 1), new Range32.ptr(67639, 67640, 1), new Range32.ptr(67644, 67647, 3), new Range32.ptr(67648, 67669, 1), new Range32.ptr(67680, 67702, 1), new Range32.ptr(67712, 67742, 1), new Range32.ptr(67808, 67826, 1), new Range32.ptr(67828, 67829, 1), new Range32.ptr(67840, 67861, 1), new Range32.ptr(67872, 67897, 1), new Range32.ptr(67968, 68023, 1), new Range32.ptr(68030, 68031, 1), new Range32.ptr(68096, 68112, 16), new Range32.ptr(68113, 68115, 1), new Range32.ptr(68117, 68119, 1), new Range32.ptr(68121, 68147, 1), new Range32.ptr(68192, 68220, 1), new Range32.ptr(68224, 68252, 1), new Range32.ptr(68288, 68295, 1), new Range32.ptr(68297, 68324, 1), new Range32.ptr(68352, 68405, 1), new Range32.ptr(68416, 68437, 1), new Range32.ptr(68448, 68466, 1), new Range32.ptr(68480, 68497, 1), new Range32.ptr(68608, 68680, 1), new Range32.ptr(68736, 68786, 1), new Range32.ptr(68800, 68850, 1), new Range32.ptr(69635, 69687, 1), new Range32.ptr(69763, 69807, 1), new Range32.ptr(69840, 69864, 1), new Range32.ptr(69891, 69926, 1), new Range32.ptr(69968, 70002, 1), new Range32.ptr(70006, 70019, 13), new Range32.ptr(70020, 70066, 1), new Range32.ptr(70081, 70084, 1), new Range32.ptr(70106, 70108, 2), new Range32.ptr(70144, 70161, 1), new Range32.ptr(70163, 70187, 1), new Range32.ptr(70272, 70278, 1), new Range32.ptr(70280, 70282, 2), new Range32.ptr(70283, 70285, 1), new Range32.ptr(70287, 70301, 1), new Range32.ptr(70303, 70312, 1), new Range32.ptr(70320, 70366, 1), new Range32.ptr(70405, 70412, 1), new Range32.ptr(70415, 70416, 1), new Range32.ptr(70419, 70440, 1), new Range32.ptr(70442, 70448, 1), new Range32.ptr(70450, 70451, 1), new Range32.ptr(70453, 70457, 1), new Range32.ptr(70461, 70480, 19), new Range32.ptr(70493, 70497, 1), new Range32.ptr(70656, 70708, 1), new Range32.ptr(70727, 70730, 1), new Range32.ptr(70784, 70831, 1), new Range32.ptr(70852, 70853, 1), new Range32.ptr(70855, 71040, 185), new Range32.ptr(71041, 71086, 1), new Range32.ptr(71128, 71131, 1), new Range32.ptr(71168, 71215, 1), new Range32.ptr(71236, 71296, 60), new Range32.ptr(71297, 71338, 1), new Range32.ptr(71424, 71449, 1), new Range32.ptr(71840, 71903, 1), new Range32.ptr(71935, 72384, 449), new Range32.ptr(72385, 72440, 1), new Range32.ptr(72704, 72712, 1), new Range32.ptr(72714, 72750, 1), new Range32.ptr(72768, 72818, 50), new Range32.ptr(72819, 72847, 1), new Range32.ptr(73728, 74649, 1), new Range32.ptr(74880, 75075, 1), new Range32.ptr(77824, 78894, 1), new Range32.ptr(82944, 83526, 1), new Range32.ptr(92160, 92728, 1), new Range32.ptr(92736, 92766, 1), new Range32.ptr(92880, 92909, 1), new Range32.ptr(92928, 92975, 1), new Range32.ptr(92992, 92995, 1), new Range32.ptr(93027, 93047, 1), new Range32.ptr(93053, 93071, 1), new Range32.ptr(93952, 94020, 1), new Range32.ptr(94032, 94099, 67), new Range32.ptr(94100, 94111, 1), new Range32.ptr(94176, 94208, 32), new Range32.ptr(94209, 100332, 1), new Range32.ptr(100352, 101106, 1), new Range32.ptr(110592, 110593, 1), new Range32.ptr(113664, 113770, 1), new Range32.ptr(113776, 113788, 1), new Range32.ptr(113792, 113800, 1), new Range32.ptr(113808, 113817, 1), new Range32.ptr(119808, 119892, 1), new Range32.ptr(119894, 119964, 1), new Range32.ptr(119966, 119967, 1), new Range32.ptr(119970, 119973, 3), new Range32.ptr(119974, 119977, 3), new Range32.ptr(119978, 119980, 1), new Range32.ptr(119982, 119993, 1), new Range32.ptr(119995, 119997, 2), new Range32.ptr(119998, 120003, 1), new Range32.ptr(120005, 120069, 1), new Range32.ptr(120071, 120074, 1), new Range32.ptr(120077, 120084, 1), new Range32.ptr(120086, 120092, 1), new Range32.ptr(120094, 120121, 1), new Range32.ptr(120123, 120126, 1), new Range32.ptr(120128, 120132, 1), new Range32.ptr(120134, 120138, 4), new Range32.ptr(120139, 120144, 1), new Range32.ptr(120146, 120485, 1), new Range32.ptr(120488, 120512, 1), new Range32.ptr(120514, 120538, 1), new Range32.ptr(120540, 120570, 1), new Range32.ptr(120572, 120596, 1), new Range32.ptr(120598, 120628, 1), new Range32.ptr(120630, 120654, 1), new Range32.ptr(120656, 120686, 1), new Range32.ptr(120688, 120712, 1), new Range32.ptr(120714, 120744, 1), new Range32.ptr(120746, 120770, 1), new Range32.ptr(120772, 120779, 1), new Range32.ptr(124928, 125124, 1), new Range32.ptr(125184, 125251, 1), new Range32.ptr(126464, 126467, 1), new Range32.ptr(126469, 126495, 1), new Range32.ptr(126497, 126498, 1), new Range32.ptr(126500, 126503, 3), new Range32.ptr(126505, 126514, 1), new Range32.ptr(126516, 126519, 1), new Range32.ptr(126521, 126523, 2), new Range32.ptr(126530, 126535, 5), new Range32.ptr(126537, 126541, 2), new Range32.ptr(126542, 126543, 1), new Range32.ptr(126545, 126546, 1), new Range32.ptr(126548, 126551, 3), new Range32.ptr(126553, 126561, 2), new Range32.ptr(126562, 126564, 2), new Range32.ptr(126567, 126570, 1), new Range32.ptr(126572, 126578, 1), new Range32.ptr(126580, 126583, 1), new Range32.ptr(126585, 126588, 1), new Range32.ptr(126590, 126592, 2), new Range32.ptr(126593, 126601, 1), new Range32.ptr(126603, 126619, 1), new Range32.ptr(126625, 126627, 1), new Range32.ptr(126629, 126633, 1), new Range32.ptr(126635, 126651, 1), new Range32.ptr(131072, 173782, 1), new Range32.ptr(173824, 177972, 1), new Range32.ptr(177984, 178205, 1), new Range32.ptr(178208, 183969, 1), new Range32.ptr(194560, 195101, 1)]), 6);
+ _Ll = new RangeTable.ptr(new sliceType([new Range16.ptr(97, 122, 1), new Range16.ptr(181, 223, 42), new Range16.ptr(224, 246, 1), new Range16.ptr(248, 255, 1), new Range16.ptr(257, 311, 2), new Range16.ptr(312, 328, 2), new Range16.ptr(329, 375, 2), new Range16.ptr(378, 382, 2), new Range16.ptr(383, 384, 1), new Range16.ptr(387, 389, 2), new Range16.ptr(392, 396, 4), new Range16.ptr(397, 402, 5), new Range16.ptr(405, 409, 4), new Range16.ptr(410, 411, 1), new Range16.ptr(414, 417, 3), new Range16.ptr(419, 421, 2), new Range16.ptr(424, 426, 2), new Range16.ptr(427, 429, 2), new Range16.ptr(432, 436, 4), new Range16.ptr(438, 441, 3), new Range16.ptr(442, 445, 3), new Range16.ptr(446, 447, 1), new Range16.ptr(454, 460, 3), new Range16.ptr(462, 476, 2), new Range16.ptr(477, 495, 2), new Range16.ptr(496, 499, 3), new Range16.ptr(501, 505, 4), new Range16.ptr(507, 563, 2), new Range16.ptr(564, 569, 1), new Range16.ptr(572, 575, 3), new Range16.ptr(576, 578, 2), new Range16.ptr(583, 591, 2), new Range16.ptr(592, 659, 1), new Range16.ptr(661, 687, 1), new Range16.ptr(881, 883, 2), new Range16.ptr(887, 891, 4), new Range16.ptr(892, 893, 1), new Range16.ptr(912, 940, 28), new Range16.ptr(941, 974, 1), new Range16.ptr(976, 977, 1), new Range16.ptr(981, 983, 1), new Range16.ptr(985, 1007, 2), new Range16.ptr(1008, 1011, 1), new Range16.ptr(1013, 1019, 3), new Range16.ptr(1020, 1072, 52), new Range16.ptr(1073, 1119, 1), new Range16.ptr(1121, 1153, 2), new Range16.ptr(1163, 1215, 2), new Range16.ptr(1218, 1230, 2), new Range16.ptr(1231, 1327, 2), new Range16.ptr(1377, 1415, 1), new Range16.ptr(5112, 5117, 1), new Range16.ptr(7296, 7304, 1), new Range16.ptr(7424, 7467, 1), new Range16.ptr(7531, 7543, 1), new Range16.ptr(7545, 7578, 1), new Range16.ptr(7681, 7829, 2), new Range16.ptr(7830, 7837, 1), new Range16.ptr(7839, 7935, 2), new Range16.ptr(7936, 7943, 1), new Range16.ptr(7952, 7957, 1), new Range16.ptr(7968, 7975, 1), new Range16.ptr(7984, 7991, 1), new Range16.ptr(8000, 8005, 1), new Range16.ptr(8016, 8023, 1), new Range16.ptr(8032, 8039, 1), new Range16.ptr(8048, 8061, 1), new Range16.ptr(8064, 8071, 1), new Range16.ptr(8080, 8087, 1), new Range16.ptr(8096, 8103, 1), new Range16.ptr(8112, 8116, 1), new Range16.ptr(8118, 8119, 1), new Range16.ptr(8126, 8130, 4), new Range16.ptr(8131, 8132, 1), new Range16.ptr(8134, 8135, 1), new Range16.ptr(8144, 8147, 1), new Range16.ptr(8150, 8151, 1), new Range16.ptr(8160, 8167, 1), new Range16.ptr(8178, 8180, 1), new Range16.ptr(8182, 8183, 1), new Range16.ptr(8458, 8462, 4), new Range16.ptr(8463, 8467, 4), new Range16.ptr(8495, 8505, 5), new Range16.ptr(8508, 8509, 1), new Range16.ptr(8518, 8521, 1), new Range16.ptr(8526, 8580, 54), new Range16.ptr(11312, 11358, 1), new Range16.ptr(11361, 11365, 4), new Range16.ptr(11366, 11372, 2), new Range16.ptr(11377, 11379, 2), new Range16.ptr(11380, 11382, 2), new Range16.ptr(11383, 11387, 1), new Range16.ptr(11393, 11491, 2), new Range16.ptr(11492, 11500, 8), new Range16.ptr(11502, 11507, 5), new Range16.ptr(11520, 11557, 1), new Range16.ptr(11559, 11565, 6), new Range16.ptr(42561, 42605, 2), new Range16.ptr(42625, 42651, 2), new Range16.ptr(42787, 42799, 2), new Range16.ptr(42800, 42801, 1), new Range16.ptr(42803, 42865, 2), new Range16.ptr(42866, 42872, 1), new Range16.ptr(42874, 42876, 2), new Range16.ptr(42879, 42887, 2), new Range16.ptr(42892, 42894, 2), new Range16.ptr(42897, 42899, 2), new Range16.ptr(42900, 42901, 1), new Range16.ptr(42903, 42921, 2), new Range16.ptr(42933, 42935, 2), new Range16.ptr(43002, 43824, 822), new Range16.ptr(43825, 43866, 1), new Range16.ptr(43872, 43877, 1), new Range16.ptr(43888, 43967, 1), new Range16.ptr(64256, 64262, 1), new Range16.ptr(64275, 64279, 1), new Range16.ptr(65345, 65370, 1)]), new sliceType$1([new Range32.ptr(66600, 66639, 1), new Range32.ptr(66776, 66811, 1), new Range32.ptr(68800, 68850, 1), new Range32.ptr(71872, 71903, 1), new Range32.ptr(119834, 119859, 1), new Range32.ptr(119886, 119892, 1), new Range32.ptr(119894, 119911, 1), new Range32.ptr(119938, 119963, 1), new Range32.ptr(119990, 119993, 1), new Range32.ptr(119995, 119997, 2), new Range32.ptr(119998, 120003, 1), new Range32.ptr(120005, 120015, 1), new Range32.ptr(120042, 120067, 1), new Range32.ptr(120094, 120119, 1), new Range32.ptr(120146, 120171, 1), new Range32.ptr(120198, 120223, 1), new Range32.ptr(120250, 120275, 1), new Range32.ptr(120302, 120327, 1), new Range32.ptr(120354, 120379, 1), new Range32.ptr(120406, 120431, 1), new Range32.ptr(120458, 120485, 1), new Range32.ptr(120514, 120538, 1), new Range32.ptr(120540, 120545, 1), new Range32.ptr(120572, 120596, 1), new Range32.ptr(120598, 120603, 1), new Range32.ptr(120630, 120654, 1), new Range32.ptr(120656, 120661, 1), new Range32.ptr(120688, 120712, 1), new Range32.ptr(120714, 120719, 1), new Range32.ptr(120746, 120770, 1), new Range32.ptr(120772, 120777, 1), new Range32.ptr(120779, 125218, 4439), new Range32.ptr(125219, 125251, 1)]), 4);
+ _Lm = new RangeTable.ptr(new sliceType([new Range16.ptr(688, 705, 1), new Range16.ptr(710, 721, 1), new Range16.ptr(736, 740, 1), new Range16.ptr(748, 750, 2), new Range16.ptr(884, 890, 6), new Range16.ptr(1369, 1600, 231), new Range16.ptr(1765, 1766, 1), new Range16.ptr(2036, 2037, 1), new Range16.ptr(2042, 2074, 32), new Range16.ptr(2084, 2088, 4), new Range16.ptr(2417, 3654, 1237), new Range16.ptr(3782, 4348, 566), new Range16.ptr(6103, 6211, 108), new Range16.ptr(6823, 7288, 465), new Range16.ptr(7289, 7293, 1), new Range16.ptr(7468, 7530, 1), new Range16.ptr(7544, 7579, 35), new Range16.ptr(7580, 7615, 1), new Range16.ptr(8305, 8319, 14), new Range16.ptr(8336, 8348, 1), new Range16.ptr(11388, 11389, 1), new Range16.ptr(11631, 11823, 192), new Range16.ptr(12293, 12337, 44), new Range16.ptr(12338, 12341, 1), new Range16.ptr(12347, 12445, 98), new Range16.ptr(12446, 12540, 94), new Range16.ptr(12541, 12542, 1), new Range16.ptr(40981, 42232, 1251), new Range16.ptr(42233, 42237, 1), new Range16.ptr(42508, 42623, 115), new Range16.ptr(42652, 42653, 1), new Range16.ptr(42775, 42783, 1), new Range16.ptr(42864, 42888, 24), new Range16.ptr(43000, 43001, 1), new Range16.ptr(43471, 43494, 23), new Range16.ptr(43632, 43741, 109), new Range16.ptr(43763, 43764, 1), new Range16.ptr(43868, 43871, 1), new Range16.ptr(65392, 65438, 46), new Range16.ptr(65439, 65439, 1)]), new sliceType$1([new Range32.ptr(92992, 92992, 1), new Range32.ptr(92993, 92995, 1), new Range32.ptr(94099, 94111, 1), new Range32.ptr(94176, 94176, 1)]), 0);
+ _Lo = new RangeTable.ptr(new sliceType([new Range16.ptr(170, 186, 16), new Range16.ptr(443, 448, 5), new Range16.ptr(449, 451, 1), new Range16.ptr(660, 1488, 828), new Range16.ptr(1489, 1514, 1), new Range16.ptr(1520, 1522, 1), new Range16.ptr(1568, 1599, 1), new Range16.ptr(1601, 1610, 1), new Range16.ptr(1646, 1647, 1), new Range16.ptr(1649, 1747, 1), new Range16.ptr(1749, 1774, 25), new Range16.ptr(1775, 1786, 11), new Range16.ptr(1787, 1788, 1), new Range16.ptr(1791, 1808, 17), new Range16.ptr(1810, 1839, 1), new Range16.ptr(1869, 1957, 1), new Range16.ptr(1969, 1994, 25), new Range16.ptr(1995, 2026, 1), new Range16.ptr(2048, 2069, 1), new Range16.ptr(2112, 2136, 1), new Range16.ptr(2208, 2228, 1), new Range16.ptr(2230, 2237, 1), new Range16.ptr(2308, 2361, 1), new Range16.ptr(2365, 2384, 19), new Range16.ptr(2392, 2401, 1), new Range16.ptr(2418, 2432, 1), new Range16.ptr(2437, 2444, 1), new Range16.ptr(2447, 2448, 1), new Range16.ptr(2451, 2472, 1), new Range16.ptr(2474, 2480, 1), new Range16.ptr(2482, 2486, 4), new Range16.ptr(2487, 2489, 1), new Range16.ptr(2493, 2510, 17), new Range16.ptr(2524, 2525, 1), new Range16.ptr(2527, 2529, 1), new Range16.ptr(2544, 2545, 1), new Range16.ptr(2565, 2570, 1), new Range16.ptr(2575, 2576, 1), new Range16.ptr(2579, 2600, 1), new Range16.ptr(2602, 2608, 1), new Range16.ptr(2610, 2611, 1), new Range16.ptr(2613, 2614, 1), new Range16.ptr(2616, 2617, 1), new Range16.ptr(2649, 2652, 1), new Range16.ptr(2654, 2674, 20), new Range16.ptr(2675, 2676, 1), new Range16.ptr(2693, 2701, 1), new Range16.ptr(2703, 2705, 1), new Range16.ptr(2707, 2728, 1), new Range16.ptr(2730, 2736, 1), new Range16.ptr(2738, 2739, 1), new Range16.ptr(2741, 2745, 1), new Range16.ptr(2749, 2768, 19), new Range16.ptr(2784, 2785, 1), new Range16.ptr(2809, 2821, 12), new Range16.ptr(2822, 2828, 1), new Range16.ptr(2831, 2832, 1), new Range16.ptr(2835, 2856, 1), new Range16.ptr(2858, 2864, 1), new Range16.ptr(2866, 2867, 1), new Range16.ptr(2869, 2873, 1), new Range16.ptr(2877, 2908, 31), new Range16.ptr(2909, 2911, 2), new Range16.ptr(2912, 2913, 1), new Range16.ptr(2929, 2947, 18), new Range16.ptr(2949, 2954, 1), new Range16.ptr(2958, 2960, 1), new Range16.ptr(2962, 2965, 1), new Range16.ptr(2969, 2970, 1), new Range16.ptr(2972, 2974, 2), new Range16.ptr(2975, 2979, 4), new Range16.ptr(2980, 2984, 4), new Range16.ptr(2985, 2986, 1), new Range16.ptr(2990, 3001, 1), new Range16.ptr(3024, 3077, 53), new Range16.ptr(3078, 3084, 1), new Range16.ptr(3086, 3088, 1), new Range16.ptr(3090, 3112, 1), new Range16.ptr(3114, 3129, 1), new Range16.ptr(3133, 3160, 27), new Range16.ptr(3161, 3162, 1), new Range16.ptr(3168, 3169, 1), new Range16.ptr(3200, 3205, 5), new Range16.ptr(3206, 3212, 1), new Range16.ptr(3214, 3216, 1), new Range16.ptr(3218, 3240, 1), new Range16.ptr(3242, 3251, 1), new Range16.ptr(3253, 3257, 1), new Range16.ptr(3261, 3294, 33), new Range16.ptr(3296, 3297, 1), new Range16.ptr(3313, 3314, 1), new Range16.ptr(3333, 3340, 1), new Range16.ptr(3342, 3344, 1), new Range16.ptr(3346, 3386, 1), new Range16.ptr(3389, 3406, 17), new Range16.ptr(3412, 3414, 1), new Range16.ptr(3423, 3425, 1), new Range16.ptr(3450, 3455, 1), new Range16.ptr(3461, 3478, 1), new Range16.ptr(3482, 3505, 1), new Range16.ptr(3507, 3515, 1), new Range16.ptr(3517, 3520, 3), new Range16.ptr(3521, 3526, 1), new Range16.ptr(3585, 3632, 1), new Range16.ptr(3634, 3635, 1), new Range16.ptr(3648, 3653, 1), new Range16.ptr(3713, 3714, 1), new Range16.ptr(3716, 3719, 3), new Range16.ptr(3720, 3722, 2), new Range16.ptr(3725, 3732, 7), new Range16.ptr(3733, 3735, 1), new Range16.ptr(3737, 3743, 1), new Range16.ptr(3745, 3747, 1), new Range16.ptr(3749, 3751, 2), new Range16.ptr(3754, 3755, 1), new Range16.ptr(3757, 3760, 1), new Range16.ptr(3762, 3763, 1), new Range16.ptr(3773, 3776, 3), new Range16.ptr(3777, 3780, 1), new Range16.ptr(3804, 3807, 1), new Range16.ptr(3840, 3904, 64), new Range16.ptr(3905, 3911, 1), new Range16.ptr(3913, 3948, 1), new Range16.ptr(3976, 3980, 1), new Range16.ptr(4096, 4138, 1), new Range16.ptr(4159, 4176, 17), new Range16.ptr(4177, 4181, 1), new Range16.ptr(4186, 4189, 1), new Range16.ptr(4193, 4197, 4), new Range16.ptr(4198, 4206, 8), new Range16.ptr(4207, 4208, 1), new Range16.ptr(4213, 4225, 1), new Range16.ptr(4238, 4304, 66), new Range16.ptr(4305, 4346, 1), new Range16.ptr(4349, 4680, 1), new Range16.ptr(4682, 4685, 1), new Range16.ptr(4688, 4694, 1), new Range16.ptr(4696, 4698, 2), new Range16.ptr(4699, 4701, 1), new Range16.ptr(4704, 4744, 1), new Range16.ptr(4746, 4749, 1), new Range16.ptr(4752, 4784, 1), new Range16.ptr(4786, 4789, 1), new Range16.ptr(4792, 4798, 1), new Range16.ptr(4800, 4802, 2), new Range16.ptr(4803, 4805, 1), new Range16.ptr(4808, 4822, 1), new Range16.ptr(4824, 4880, 1), new Range16.ptr(4882, 4885, 1), new Range16.ptr(4888, 4954, 1), new Range16.ptr(4992, 5007, 1), new Range16.ptr(5121, 5740, 1), new Range16.ptr(5743, 5759, 1), new Range16.ptr(5761, 5786, 1), new Range16.ptr(5792, 5866, 1), new Range16.ptr(5873, 5880, 1), new Range16.ptr(5888, 5900, 1), new Range16.ptr(5902, 5905, 1), new Range16.ptr(5920, 5937, 1), new Range16.ptr(5952, 5969, 1), new Range16.ptr(5984, 5996, 1), new Range16.ptr(5998, 6000, 1), new Range16.ptr(6016, 6067, 1), new Range16.ptr(6108, 6176, 68), new Range16.ptr(6177, 6210, 1), new Range16.ptr(6212, 6263, 1), new Range16.ptr(6272, 6276, 1), new Range16.ptr(6279, 6312, 1), new Range16.ptr(6314, 6320, 6), new Range16.ptr(6321, 6389, 1), new Range16.ptr(6400, 6430, 1), new Range16.ptr(6480, 6509, 1), new Range16.ptr(6512, 6516, 1), new Range16.ptr(6528, 6571, 1), new Range16.ptr(6576, 6601, 1), new Range16.ptr(6656, 6678, 1), new Range16.ptr(6688, 6740, 1), new Range16.ptr(6917, 6963, 1), new Range16.ptr(6981, 6987, 1), new Range16.ptr(7043, 7072, 1), new Range16.ptr(7086, 7087, 1), new Range16.ptr(7098, 7141, 1), new Range16.ptr(7168, 7203, 1), new Range16.ptr(7245, 7247, 1), new Range16.ptr(7258, 7287, 1), new Range16.ptr(7401, 7404, 1), new Range16.ptr(7406, 7409, 1), new Range16.ptr(7413, 7414, 1), new Range16.ptr(8501, 8504, 1), new Range16.ptr(11568, 11623, 1), new Range16.ptr(11648, 11670, 1), new Range16.ptr(11680, 11686, 1), new Range16.ptr(11688, 11694, 1), new Range16.ptr(11696, 11702, 1), new Range16.ptr(11704, 11710, 1), new Range16.ptr(11712, 11718, 1), new Range16.ptr(11720, 11726, 1), new Range16.ptr(11728, 11734, 1), new Range16.ptr(11736, 11742, 1), new Range16.ptr(12294, 12348, 54), new Range16.ptr(12353, 12438, 1), new Range16.ptr(12447, 12449, 2), new Range16.ptr(12450, 12538, 1), new Range16.ptr(12543, 12549, 6), new Range16.ptr(12550, 12589, 1), new Range16.ptr(12593, 12686, 1), new Range16.ptr(12704, 12730, 1), new Range16.ptr(12784, 12799, 1), new Range16.ptr(13312, 19893, 1), new Range16.ptr(19968, 40917, 1), new Range16.ptr(40960, 40980, 1), new Range16.ptr(40982, 42124, 1), new Range16.ptr(42192, 42231, 1), new Range16.ptr(42240, 42507, 1), new Range16.ptr(42512, 42527, 1), new Range16.ptr(42538, 42539, 1), new Range16.ptr(42606, 42656, 50), new Range16.ptr(42657, 42725, 1), new Range16.ptr(42895, 42999, 104), new Range16.ptr(43003, 43009, 1), new Range16.ptr(43011, 43013, 1), new Range16.ptr(43015, 43018, 1), new Range16.ptr(43020, 43042, 1), new Range16.ptr(43072, 43123, 1), new Range16.ptr(43138, 43187, 1), new Range16.ptr(43250, 43255, 1), new Range16.ptr(43259, 43261, 2), new Range16.ptr(43274, 43301, 1), new Range16.ptr(43312, 43334, 1), new Range16.ptr(43360, 43388, 1), new Range16.ptr(43396, 43442, 1), new Range16.ptr(43488, 43492, 1), new Range16.ptr(43495, 43503, 1), new Range16.ptr(43514, 43518, 1), new Range16.ptr(43520, 43560, 1), new Range16.ptr(43584, 43586, 1), new Range16.ptr(43588, 43595, 1), new Range16.ptr(43616, 43631, 1), new Range16.ptr(43633, 43638, 1), new Range16.ptr(43642, 43646, 4), new Range16.ptr(43647, 43695, 1), new Range16.ptr(43697, 43701, 4), new Range16.ptr(43702, 43705, 3), new Range16.ptr(43706, 43709, 1), new Range16.ptr(43712, 43714, 2), new Range16.ptr(43739, 43740, 1), new Range16.ptr(43744, 43754, 1), new Range16.ptr(43762, 43777, 15), new Range16.ptr(43778, 43782, 1), new Range16.ptr(43785, 43790, 1), new Range16.ptr(43793, 43798, 1), new Range16.ptr(43808, 43814, 1), new Range16.ptr(43816, 43822, 1), new Range16.ptr(43968, 44002, 1), new Range16.ptr(44032, 55203, 1), new Range16.ptr(55216, 55238, 1), new Range16.ptr(55243, 55291, 1), new Range16.ptr(63744, 64109, 1), new Range16.ptr(64112, 64217, 1), new Range16.ptr(64285, 64287, 2), new Range16.ptr(64288, 64296, 1), new Range16.ptr(64298, 64310, 1), new Range16.ptr(64312, 64316, 1), new Range16.ptr(64318, 64320, 2), new Range16.ptr(64321, 64323, 2), new Range16.ptr(64324, 64326, 2), new Range16.ptr(64327, 64433, 1), new Range16.ptr(64467, 64829, 1), new Range16.ptr(64848, 64911, 1), new Range16.ptr(64914, 64967, 1), new Range16.ptr(65008, 65019, 1), new Range16.ptr(65136, 65140, 1), new Range16.ptr(65142, 65276, 1), new Range16.ptr(65382, 65391, 1), new Range16.ptr(65393, 65437, 1), new Range16.ptr(65440, 65470, 1), new Range16.ptr(65474, 65479, 1), new Range16.ptr(65482, 65487, 1), new Range16.ptr(65490, 65495, 1), new Range16.ptr(65498, 65500, 1)]), new sliceType$1([new Range32.ptr(65536, 65547, 1), new Range32.ptr(65549, 65574, 1), new Range32.ptr(65576, 65594, 1), new Range32.ptr(65596, 65597, 1), new Range32.ptr(65599, 65613, 1), new Range32.ptr(65616, 65629, 1), new Range32.ptr(65664, 65786, 1), new Range32.ptr(66176, 66204, 1), new Range32.ptr(66208, 66256, 1), new Range32.ptr(66304, 66335, 1), new Range32.ptr(66352, 66368, 1), new Range32.ptr(66370, 66377, 1), new Range32.ptr(66384, 66421, 1), new Range32.ptr(66432, 66461, 1), new Range32.ptr(66464, 66499, 1), new Range32.ptr(66504, 66511, 1), new Range32.ptr(66640, 66717, 1), new Range32.ptr(66816, 66855, 1), new Range32.ptr(66864, 66915, 1), new Range32.ptr(67072, 67382, 1), new Range32.ptr(67392, 67413, 1), new Range32.ptr(67424, 67431, 1), new Range32.ptr(67584, 67589, 1), new Range32.ptr(67592, 67594, 2), new Range32.ptr(67595, 67637, 1), new Range32.ptr(67639, 67640, 1), new Range32.ptr(67644, 67647, 3), new Range32.ptr(67648, 67669, 1), new Range32.ptr(67680, 67702, 1), new Range32.ptr(67712, 67742, 1), new Range32.ptr(67808, 67826, 1), new Range32.ptr(67828, 67829, 1), new Range32.ptr(67840, 67861, 1), new Range32.ptr(67872, 67897, 1), new Range32.ptr(67968, 68023, 1), new Range32.ptr(68030, 68031, 1), new Range32.ptr(68096, 68112, 16), new Range32.ptr(68113, 68115, 1), new Range32.ptr(68117, 68119, 1), new Range32.ptr(68121, 68147, 1), new Range32.ptr(68192, 68220, 1), new Range32.ptr(68224, 68252, 1), new Range32.ptr(68288, 68295, 1), new Range32.ptr(68297, 68324, 1), new Range32.ptr(68352, 68405, 1), new Range32.ptr(68416, 68437, 1), new Range32.ptr(68448, 68466, 1), new Range32.ptr(68480, 68497, 1), new Range32.ptr(68608, 68680, 1), new Range32.ptr(69635, 69687, 1), new Range32.ptr(69763, 69807, 1), new Range32.ptr(69840, 69864, 1), new Range32.ptr(69891, 69926, 1), new Range32.ptr(69968, 70002, 1), new Range32.ptr(70006, 70019, 13), new Range32.ptr(70020, 70066, 1), new Range32.ptr(70081, 70084, 1), new Range32.ptr(70106, 70108, 2), new Range32.ptr(70144, 70161, 1), new Range32.ptr(70163, 70187, 1), new Range32.ptr(70272, 70278, 1), new Range32.ptr(70280, 70282, 2), new Range32.ptr(70283, 70285, 1), new Range32.ptr(70287, 70301, 1), new Range32.ptr(70303, 70312, 1), new Range32.ptr(70320, 70366, 1), new Range32.ptr(70405, 70412, 1), new Range32.ptr(70415, 70416, 1), new Range32.ptr(70419, 70440, 1), new Range32.ptr(70442, 70448, 1), new Range32.ptr(70450, 70451, 1), new Range32.ptr(70453, 70457, 1), new Range32.ptr(70461, 70480, 19), new Range32.ptr(70493, 70497, 1), new Range32.ptr(70656, 70708, 1), new Range32.ptr(70727, 70730, 1), new Range32.ptr(70784, 70831, 1), new Range32.ptr(70852, 70853, 1), new Range32.ptr(70855, 71040, 185), new Range32.ptr(71041, 71086, 1), new Range32.ptr(71128, 71131, 1), new Range32.ptr(71168, 71215, 1), new Range32.ptr(71236, 71296, 60), new Range32.ptr(71297, 71338, 1), new Range32.ptr(71424, 71449, 1), new Range32.ptr(71935, 72384, 449), new Range32.ptr(72385, 72440, 1), new Range32.ptr(72704, 72712, 1), new Range32.ptr(72714, 72750, 1), new Range32.ptr(72768, 72818, 50), new Range32.ptr(72819, 72847, 1), new Range32.ptr(73728, 74649, 1), new Range32.ptr(74880, 75075, 1), new Range32.ptr(77824, 78894, 1), new Range32.ptr(82944, 83526, 1), new Range32.ptr(92160, 92728, 1), new Range32.ptr(92736, 92766, 1), new Range32.ptr(92880, 92909, 1), new Range32.ptr(92928, 92975, 1), new Range32.ptr(93027, 93047, 1), new Range32.ptr(93053, 93071, 1), new Range32.ptr(93952, 94020, 1), new Range32.ptr(94032, 94208, 176), new Range32.ptr(94209, 100332, 1), new Range32.ptr(100352, 101106, 1), new Range32.ptr(110592, 110593, 1), new Range32.ptr(113664, 113770, 1), new Range32.ptr(113776, 113788, 1), new Range32.ptr(113792, 113800, 1), new Range32.ptr(113808, 113817, 1), new Range32.ptr(124928, 125124, 1), new Range32.ptr(126464, 126467, 1), new Range32.ptr(126469, 126495, 1), new Range32.ptr(126497, 126498, 1), new Range32.ptr(126500, 126503, 3), new Range32.ptr(126505, 126514, 1), new Range32.ptr(126516, 126519, 1), new Range32.ptr(126521, 126523, 2), new Range32.ptr(126530, 126535, 5), new Range32.ptr(126537, 126541, 2), new Range32.ptr(126542, 126543, 1), new Range32.ptr(126545, 126546, 1), new Range32.ptr(126548, 126551, 3), new Range32.ptr(126553, 126561, 2), new Range32.ptr(126562, 126564, 2), new Range32.ptr(126567, 126570, 1), new Range32.ptr(126572, 126578, 1), new Range32.ptr(126580, 126583, 1), new Range32.ptr(126585, 126588, 1), new Range32.ptr(126590, 126592, 2), new Range32.ptr(126593, 126601, 1), new Range32.ptr(126603, 126619, 1), new Range32.ptr(126625, 126627, 1), new Range32.ptr(126629, 126633, 1), new Range32.ptr(126635, 126651, 1), new Range32.ptr(131072, 173782, 1), new Range32.ptr(173824, 177972, 1), new Range32.ptr(177984, 178205, 1), new Range32.ptr(178208, 183969, 1), new Range32.ptr(194560, 195101, 1)]), 1);
+ _Lt = new RangeTable.ptr(new sliceType([new Range16.ptr(453, 459, 3), new Range16.ptr(498, 8072, 7574), new Range16.ptr(8073, 8079, 1), new Range16.ptr(8088, 8095, 1), new Range16.ptr(8104, 8111, 1), new Range16.ptr(8124, 8140, 16), new Range16.ptr(8188, 8188, 1)]), sliceType$1.nil, 0);
+ _Lu = new RangeTable.ptr(new sliceType([new Range16.ptr(65, 90, 1), new Range16.ptr(192, 214, 1), new Range16.ptr(216, 222, 1), new Range16.ptr(256, 310, 2), new Range16.ptr(313, 327, 2), new Range16.ptr(330, 376, 2), new Range16.ptr(377, 381, 2), new Range16.ptr(385, 386, 1), new Range16.ptr(388, 390, 2), new Range16.ptr(391, 393, 2), new Range16.ptr(394, 395, 1), new Range16.ptr(398, 401, 1), new Range16.ptr(403, 404, 1), new Range16.ptr(406, 408, 1), new Range16.ptr(412, 413, 1), new Range16.ptr(415, 416, 1), new Range16.ptr(418, 422, 2), new Range16.ptr(423, 425, 2), new Range16.ptr(428, 430, 2), new Range16.ptr(431, 433, 2), new Range16.ptr(434, 435, 1), new Range16.ptr(437, 439, 2), new Range16.ptr(440, 444, 4), new Range16.ptr(452, 461, 3), new Range16.ptr(463, 475, 2), new Range16.ptr(478, 494, 2), new Range16.ptr(497, 500, 3), new Range16.ptr(502, 504, 1), new Range16.ptr(506, 562, 2), new Range16.ptr(570, 571, 1), new Range16.ptr(573, 574, 1), new Range16.ptr(577, 579, 2), new Range16.ptr(580, 582, 1), new Range16.ptr(584, 590, 2), new Range16.ptr(880, 882, 2), new Range16.ptr(886, 895, 9), new Range16.ptr(902, 904, 2), new Range16.ptr(905, 906, 1), new Range16.ptr(908, 910, 2), new Range16.ptr(911, 913, 2), new Range16.ptr(914, 929, 1), new Range16.ptr(931, 939, 1), new Range16.ptr(975, 978, 3), new Range16.ptr(979, 980, 1), new Range16.ptr(984, 1006, 2), new Range16.ptr(1012, 1015, 3), new Range16.ptr(1017, 1018, 1), new Range16.ptr(1021, 1071, 1), new Range16.ptr(1120, 1152, 2), new Range16.ptr(1162, 1216, 2), new Range16.ptr(1217, 1229, 2), new Range16.ptr(1232, 1326, 2), new Range16.ptr(1329, 1366, 1), new Range16.ptr(4256, 4293, 1), new Range16.ptr(4295, 4301, 6), new Range16.ptr(5024, 5109, 1), new Range16.ptr(7680, 7828, 2), new Range16.ptr(7838, 7934, 2), new Range16.ptr(7944, 7951, 1), new Range16.ptr(7960, 7965, 1), new Range16.ptr(7976, 7983, 1), new Range16.ptr(7992, 7999, 1), new Range16.ptr(8008, 8013, 1), new Range16.ptr(8025, 8031, 2), new Range16.ptr(8040, 8047, 1), new Range16.ptr(8120, 8123, 1), new Range16.ptr(8136, 8139, 1), new Range16.ptr(8152, 8155, 1), new Range16.ptr(8168, 8172, 1), new Range16.ptr(8184, 8187, 1), new Range16.ptr(8450, 8455, 5), new Range16.ptr(8459, 8461, 1), new Range16.ptr(8464, 8466, 1), new Range16.ptr(8469, 8473, 4), new Range16.ptr(8474, 8477, 1), new Range16.ptr(8484, 8490, 2), new Range16.ptr(8491, 8493, 1), new Range16.ptr(8496, 8499, 1), new Range16.ptr(8510, 8511, 1), new Range16.ptr(8517, 8579, 62), new Range16.ptr(11264, 11310, 1), new Range16.ptr(11360, 11362, 2), new Range16.ptr(11363, 11364, 1), new Range16.ptr(11367, 11373, 2), new Range16.ptr(11374, 11376, 1), new Range16.ptr(11378, 11381, 3), new Range16.ptr(11390, 11392, 1), new Range16.ptr(11394, 11490, 2), new Range16.ptr(11499, 11501, 2), new Range16.ptr(11506, 42560, 31054), new Range16.ptr(42562, 42604, 2), new Range16.ptr(42624, 42650, 2), new Range16.ptr(42786, 42798, 2), new Range16.ptr(42802, 42862, 2), new Range16.ptr(42873, 42877, 2), new Range16.ptr(42878, 42886, 2), new Range16.ptr(42891, 42893, 2), new Range16.ptr(42896, 42898, 2), new Range16.ptr(42902, 42922, 2), new Range16.ptr(42923, 42926, 1), new Range16.ptr(42928, 42932, 1), new Range16.ptr(42934, 65313, 22379), new Range16.ptr(65314, 65338, 1)]), new sliceType$1([new Range32.ptr(66560, 66599, 1), new Range32.ptr(66736, 66771, 1), new Range32.ptr(68736, 68786, 1), new Range32.ptr(71840, 71871, 1), new Range32.ptr(119808, 119833, 1), new Range32.ptr(119860, 119885, 1), new Range32.ptr(119912, 119937, 1), new Range32.ptr(119964, 119966, 2), new Range32.ptr(119967, 119973, 3), new Range32.ptr(119974, 119977, 3), new Range32.ptr(119978, 119980, 1), new Range32.ptr(119982, 119989, 1), new Range32.ptr(120016, 120041, 1), new Range32.ptr(120068, 120069, 1), new Range32.ptr(120071, 120074, 1), new Range32.ptr(120077, 120084, 1), new Range32.ptr(120086, 120092, 1), new Range32.ptr(120120, 120121, 1), new Range32.ptr(120123, 120126, 1), new Range32.ptr(120128, 120132, 1), new Range32.ptr(120134, 120138, 4), new Range32.ptr(120139, 120144, 1), new Range32.ptr(120172, 120197, 1), new Range32.ptr(120224, 120249, 1), new Range32.ptr(120276, 120301, 1), new Range32.ptr(120328, 120353, 1), new Range32.ptr(120380, 120405, 1), new Range32.ptr(120432, 120457, 1), new Range32.ptr(120488, 120512, 1), new Range32.ptr(120546, 120570, 1), new Range32.ptr(120604, 120628, 1), new Range32.ptr(120662, 120686, 1), new Range32.ptr(120720, 120744, 1), new Range32.ptr(120778, 125184, 4406), new Range32.ptr(125185, 125217, 1)]), 3);
+ _M = new RangeTable.ptr(new sliceType([new Range16.ptr(768, 879, 1), new Range16.ptr(1155, 1161, 1), new Range16.ptr(1425, 1469, 1), new Range16.ptr(1471, 1473, 2), new Range16.ptr(1474, 1476, 2), new Range16.ptr(1477, 1479, 2), new Range16.ptr(1552, 1562, 1), new Range16.ptr(1611, 1631, 1), new Range16.ptr(1648, 1750, 102), new Range16.ptr(1751, 1756, 1), new Range16.ptr(1759, 1764, 1), new Range16.ptr(1767, 1768, 1), new Range16.ptr(1770, 1773, 1), new Range16.ptr(1809, 1840, 31), new Range16.ptr(1841, 1866, 1), new Range16.ptr(1958, 1968, 1), new Range16.ptr(2027, 2035, 1), new Range16.ptr(2070, 2073, 1), new Range16.ptr(2075, 2083, 1), new Range16.ptr(2085, 2087, 1), new Range16.ptr(2089, 2093, 1), new Range16.ptr(2137, 2139, 1), new Range16.ptr(2260, 2273, 1), new Range16.ptr(2275, 2307, 1), new Range16.ptr(2362, 2364, 1), new Range16.ptr(2366, 2383, 1), new Range16.ptr(2385, 2391, 1), new Range16.ptr(2402, 2403, 1), new Range16.ptr(2433, 2435, 1), new Range16.ptr(2492, 2494, 2), new Range16.ptr(2495, 2500, 1), new Range16.ptr(2503, 2504, 1), new Range16.ptr(2507, 2509, 1), new Range16.ptr(2519, 2530, 11), new Range16.ptr(2531, 2561, 30), new Range16.ptr(2562, 2563, 1), new Range16.ptr(2620, 2622, 2), new Range16.ptr(2623, 2626, 1), new Range16.ptr(2631, 2632, 1), new Range16.ptr(2635, 2637, 1), new Range16.ptr(2641, 2672, 31), new Range16.ptr(2673, 2677, 4), new Range16.ptr(2689, 2691, 1), new Range16.ptr(2748, 2750, 2), new Range16.ptr(2751, 2757, 1), new Range16.ptr(2759, 2761, 1), new Range16.ptr(2763, 2765, 1), new Range16.ptr(2786, 2787, 1), new Range16.ptr(2817, 2819, 1), new Range16.ptr(2876, 2878, 2), new Range16.ptr(2879, 2884, 1), new Range16.ptr(2887, 2888, 1), new Range16.ptr(2891, 2893, 1), new Range16.ptr(2902, 2903, 1), new Range16.ptr(2914, 2915, 1), new Range16.ptr(2946, 3006, 60), new Range16.ptr(3007, 3010, 1), new Range16.ptr(3014, 3016, 1), new Range16.ptr(3018, 3021, 1), new Range16.ptr(3031, 3072, 41), new Range16.ptr(3073, 3075, 1), new Range16.ptr(3134, 3140, 1), new Range16.ptr(3142, 3144, 1), new Range16.ptr(3146, 3149, 1), new Range16.ptr(3157, 3158, 1), new Range16.ptr(3170, 3171, 1), new Range16.ptr(3201, 3203, 1), new Range16.ptr(3260, 3262, 2), new Range16.ptr(3263, 3268, 1), new Range16.ptr(3270, 3272, 1), new Range16.ptr(3274, 3277, 1), new Range16.ptr(3285, 3286, 1), new Range16.ptr(3298, 3299, 1), new Range16.ptr(3329, 3331, 1), new Range16.ptr(3390, 3396, 1), new Range16.ptr(3398, 3400, 1), new Range16.ptr(3402, 3405, 1), new Range16.ptr(3415, 3426, 11), new Range16.ptr(3427, 3458, 31), new Range16.ptr(3459, 3530, 71), new Range16.ptr(3535, 3540, 1), new Range16.ptr(3542, 3544, 2), new Range16.ptr(3545, 3551, 1), new Range16.ptr(3570, 3571, 1), new Range16.ptr(3633, 3636, 3), new Range16.ptr(3637, 3642, 1), new Range16.ptr(3655, 3662, 1), new Range16.ptr(3761, 3764, 3), new Range16.ptr(3765, 3769, 1), new Range16.ptr(3771, 3772, 1), new Range16.ptr(3784, 3789, 1), new Range16.ptr(3864, 3865, 1), new Range16.ptr(3893, 3897, 2), new Range16.ptr(3902, 3903, 1), new Range16.ptr(3953, 3972, 1), new Range16.ptr(3974, 3975, 1), new Range16.ptr(3981, 3991, 1), new Range16.ptr(3993, 4028, 1), new Range16.ptr(4038, 4139, 101), new Range16.ptr(4140, 4158, 1), new Range16.ptr(4182, 4185, 1), new Range16.ptr(4190, 4192, 1), new Range16.ptr(4194, 4196, 1), new Range16.ptr(4199, 4205, 1), new Range16.ptr(4209, 4212, 1), new Range16.ptr(4226, 4237, 1), new Range16.ptr(4239, 4250, 11), new Range16.ptr(4251, 4253, 1), new Range16.ptr(4957, 4959, 1), new Range16.ptr(5906, 5908, 1), new Range16.ptr(5938, 5940, 1), new Range16.ptr(5970, 5971, 1), new Range16.ptr(6002, 6003, 1), new Range16.ptr(6068, 6099, 1), new Range16.ptr(6109, 6155, 46), new Range16.ptr(6156, 6157, 1), new Range16.ptr(6277, 6278, 1), new Range16.ptr(6313, 6432, 119), new Range16.ptr(6433, 6443, 1), new Range16.ptr(6448, 6459, 1), new Range16.ptr(6679, 6683, 1), new Range16.ptr(6741, 6750, 1), new Range16.ptr(6752, 6780, 1), new Range16.ptr(6783, 6832, 49), new Range16.ptr(6833, 6846, 1), new Range16.ptr(6912, 6916, 1), new Range16.ptr(6964, 6980, 1), new Range16.ptr(7019, 7027, 1), new Range16.ptr(7040, 7042, 1), new Range16.ptr(7073, 7085, 1), new Range16.ptr(7142, 7155, 1), new Range16.ptr(7204, 7223, 1), new Range16.ptr(7376, 7378, 1), new Range16.ptr(7380, 7400, 1), new Range16.ptr(7405, 7410, 5), new Range16.ptr(7411, 7412, 1), new Range16.ptr(7416, 7417, 1), new Range16.ptr(7616, 7669, 1), new Range16.ptr(7675, 7679, 1), new Range16.ptr(8400, 8432, 1), new Range16.ptr(11503, 11505, 1), new Range16.ptr(11647, 11744, 97), new Range16.ptr(11745, 11775, 1), new Range16.ptr(12330, 12335, 1), new Range16.ptr(12441, 12442, 1), new Range16.ptr(42607, 42610, 1), new Range16.ptr(42612, 42621, 1), new Range16.ptr(42654, 42655, 1), new Range16.ptr(42736, 42737, 1), new Range16.ptr(43010, 43014, 4), new Range16.ptr(43019, 43043, 24), new Range16.ptr(43044, 43047, 1), new Range16.ptr(43136, 43137, 1), new Range16.ptr(43188, 43205, 1), new Range16.ptr(43232, 43249, 1), new Range16.ptr(43302, 43309, 1), new Range16.ptr(43335, 43347, 1), new Range16.ptr(43392, 43395, 1), new Range16.ptr(43443, 43456, 1), new Range16.ptr(43493, 43561, 68), new Range16.ptr(43562, 43574, 1), new Range16.ptr(43587, 43596, 9), new Range16.ptr(43597, 43643, 46), new Range16.ptr(43644, 43645, 1), new Range16.ptr(43696, 43698, 2), new Range16.ptr(43699, 43700, 1), new Range16.ptr(43703, 43704, 1), new Range16.ptr(43710, 43711, 1), new Range16.ptr(43713, 43755, 42), new Range16.ptr(43756, 43759, 1), new Range16.ptr(43765, 43766, 1), new Range16.ptr(44003, 44010, 1), new Range16.ptr(44012, 44013, 1), new Range16.ptr(64286, 65024, 738), new Range16.ptr(65025, 65039, 1), new Range16.ptr(65056, 65071, 1)]), new sliceType$1([new Range32.ptr(66045, 66272, 227), new Range32.ptr(66422, 66426, 1), new Range32.ptr(68097, 68099, 1), new Range32.ptr(68101, 68102, 1), new Range32.ptr(68108, 68111, 1), new Range32.ptr(68152, 68154, 1), new Range32.ptr(68159, 68325, 166), new Range32.ptr(68326, 69632, 1306), new Range32.ptr(69633, 69634, 1), new Range32.ptr(69688, 69702, 1), new Range32.ptr(69759, 69762, 1), new Range32.ptr(69808, 69818, 1), new Range32.ptr(69888, 69890, 1), new Range32.ptr(69927, 69940, 1), new Range32.ptr(70003, 70016, 13), new Range32.ptr(70017, 70018, 1), new Range32.ptr(70067, 70080, 1), new Range32.ptr(70090, 70092, 1), new Range32.ptr(70188, 70199, 1), new Range32.ptr(70206, 70367, 161), new Range32.ptr(70368, 70378, 1), new Range32.ptr(70400, 70403, 1), new Range32.ptr(70460, 70462, 2), new Range32.ptr(70463, 70468, 1), new Range32.ptr(70471, 70472, 1), new Range32.ptr(70475, 70477, 1), new Range32.ptr(70487, 70498, 11), new Range32.ptr(70499, 70502, 3), new Range32.ptr(70503, 70508, 1), new Range32.ptr(70512, 70516, 1), new Range32.ptr(70709, 70726, 1), new Range32.ptr(70832, 70851, 1), new Range32.ptr(71087, 71093, 1), new Range32.ptr(71096, 71104, 1), new Range32.ptr(71132, 71133, 1), new Range32.ptr(71216, 71232, 1), new Range32.ptr(71339, 71351, 1), new Range32.ptr(71453, 71467, 1), new Range32.ptr(72751, 72758, 1), new Range32.ptr(72760, 72767, 1), new Range32.ptr(72850, 72871, 1), new Range32.ptr(72873, 72886, 1), new Range32.ptr(92912, 92916, 1), new Range32.ptr(92976, 92982, 1), new Range32.ptr(94033, 94078, 1), new Range32.ptr(94095, 94098, 1), new Range32.ptr(113821, 113822, 1), new Range32.ptr(119141, 119145, 1), new Range32.ptr(119149, 119154, 1), new Range32.ptr(119163, 119170, 1), new Range32.ptr(119173, 119179, 1), new Range32.ptr(119210, 119213, 1), new Range32.ptr(119362, 119364, 1), new Range32.ptr(121344, 121398, 1), new Range32.ptr(121403, 121452, 1), new Range32.ptr(121461, 121476, 15), new Range32.ptr(121499, 121503, 1), new Range32.ptr(121505, 121519, 1), new Range32.ptr(122880, 122886, 1), new Range32.ptr(122888, 122904, 1), new Range32.ptr(122907, 122913, 1), new Range32.ptr(122915, 122916, 1), new Range32.ptr(122918, 122922, 1), new Range32.ptr(125136, 125142, 1), new Range32.ptr(125252, 125258, 1), new Range32.ptr(917760, 917999, 1)]), 0);
+ _Mc = new RangeTable.ptr(new sliceType([new Range16.ptr(2307, 2363, 56), new Range16.ptr(2366, 2368, 1), new Range16.ptr(2377, 2380, 1), new Range16.ptr(2382, 2383, 1), new Range16.ptr(2434, 2435, 1), new Range16.ptr(2494, 2496, 1), new Range16.ptr(2503, 2504, 1), new Range16.ptr(2507, 2508, 1), new Range16.ptr(2519, 2563, 44), new Range16.ptr(2622, 2624, 1), new Range16.ptr(2691, 2750, 59), new Range16.ptr(2751, 2752, 1), new Range16.ptr(2761, 2763, 2), new Range16.ptr(2764, 2818, 54), new Range16.ptr(2819, 2878, 59), new Range16.ptr(2880, 2887, 7), new Range16.ptr(2888, 2891, 3), new Range16.ptr(2892, 2903, 11), new Range16.ptr(3006, 3007, 1), new Range16.ptr(3009, 3010, 1), new Range16.ptr(3014, 3016, 1), new Range16.ptr(3018, 3020, 1), new Range16.ptr(3031, 3073, 42), new Range16.ptr(3074, 3075, 1), new Range16.ptr(3137, 3140, 1), new Range16.ptr(3202, 3203, 1), new Range16.ptr(3262, 3264, 2), new Range16.ptr(3265, 3268, 1), new Range16.ptr(3271, 3272, 1), new Range16.ptr(3274, 3275, 1), new Range16.ptr(3285, 3286, 1), new Range16.ptr(3330, 3331, 1), new Range16.ptr(3390, 3392, 1), new Range16.ptr(3398, 3400, 1), new Range16.ptr(3402, 3404, 1), new Range16.ptr(3415, 3458, 43), new Range16.ptr(3459, 3535, 76), new Range16.ptr(3536, 3537, 1), new Range16.ptr(3544, 3551, 1), new Range16.ptr(3570, 3571, 1), new Range16.ptr(3902, 3903, 1), new Range16.ptr(3967, 4139, 172), new Range16.ptr(4140, 4145, 5), new Range16.ptr(4152, 4155, 3), new Range16.ptr(4156, 4182, 26), new Range16.ptr(4183, 4194, 11), new Range16.ptr(4195, 4196, 1), new Range16.ptr(4199, 4205, 1), new Range16.ptr(4227, 4228, 1), new Range16.ptr(4231, 4236, 1), new Range16.ptr(4239, 4250, 11), new Range16.ptr(4251, 4252, 1), new Range16.ptr(6070, 6078, 8), new Range16.ptr(6079, 6085, 1), new Range16.ptr(6087, 6088, 1), new Range16.ptr(6435, 6438, 1), new Range16.ptr(6441, 6443, 1), new Range16.ptr(6448, 6449, 1), new Range16.ptr(6451, 6456, 1), new Range16.ptr(6681, 6682, 1), new Range16.ptr(6741, 6743, 2), new Range16.ptr(6753, 6755, 2), new Range16.ptr(6756, 6765, 9), new Range16.ptr(6766, 6770, 1), new Range16.ptr(6916, 6965, 49), new Range16.ptr(6971, 6973, 2), new Range16.ptr(6974, 6977, 1), new Range16.ptr(6979, 6980, 1), new Range16.ptr(7042, 7073, 31), new Range16.ptr(7078, 7079, 1), new Range16.ptr(7082, 7143, 61), new Range16.ptr(7146, 7148, 1), new Range16.ptr(7150, 7154, 4), new Range16.ptr(7155, 7204, 49), new Range16.ptr(7205, 7211, 1), new Range16.ptr(7220, 7221, 1), new Range16.ptr(7393, 7410, 17), new Range16.ptr(7411, 12334, 4923), new Range16.ptr(12335, 43043, 30708), new Range16.ptr(43044, 43047, 3), new Range16.ptr(43136, 43137, 1), new Range16.ptr(43188, 43203, 1), new Range16.ptr(43346, 43347, 1), new Range16.ptr(43395, 43444, 49), new Range16.ptr(43445, 43450, 5), new Range16.ptr(43451, 43453, 2), new Range16.ptr(43454, 43456, 1), new Range16.ptr(43567, 43568, 1), new Range16.ptr(43571, 43572, 1), new Range16.ptr(43597, 43643, 46), new Range16.ptr(43645, 43755, 110), new Range16.ptr(43758, 43759, 1), new Range16.ptr(43765, 44003, 238), new Range16.ptr(44004, 44006, 2), new Range16.ptr(44007, 44009, 2), new Range16.ptr(44010, 44012, 2)]), new sliceType$1([new Range32.ptr(69632, 69634, 2), new Range32.ptr(69762, 69808, 46), new Range32.ptr(69809, 69810, 1), new Range32.ptr(69815, 69816, 1), new Range32.ptr(69932, 70018, 86), new Range32.ptr(70067, 70069, 1), new Range32.ptr(70079, 70080, 1), new Range32.ptr(70188, 70190, 1), new Range32.ptr(70194, 70195, 1), new Range32.ptr(70197, 70368, 171), new Range32.ptr(70369, 70370, 1), new Range32.ptr(70402, 70403, 1), new Range32.ptr(70462, 70463, 1), new Range32.ptr(70465, 70468, 1), new Range32.ptr(70471, 70472, 1), new Range32.ptr(70475, 70477, 1), new Range32.ptr(70487, 70498, 11), new Range32.ptr(70499, 70709, 210), new Range32.ptr(70710, 70711, 1), new Range32.ptr(70720, 70721, 1), new Range32.ptr(70725, 70832, 107), new Range32.ptr(70833, 70834, 1), new Range32.ptr(70841, 70843, 2), new Range32.ptr(70844, 70846, 1), new Range32.ptr(70849, 71087, 238), new Range32.ptr(71088, 71089, 1), new Range32.ptr(71096, 71099, 1), new Range32.ptr(71102, 71216, 114), new Range32.ptr(71217, 71218, 1), new Range32.ptr(71227, 71228, 1), new Range32.ptr(71230, 71340, 110), new Range32.ptr(71342, 71343, 1), new Range32.ptr(71350, 71456, 106), new Range32.ptr(71457, 71462, 5), new Range32.ptr(72751, 72766, 15), new Range32.ptr(72873, 72881, 8), new Range32.ptr(72884, 94033, 21149), new Range32.ptr(94034, 94078, 1), new Range32.ptr(119141, 119142, 1), new Range32.ptr(119149, 119154, 1)]), 0);
+ _Me = new RangeTable.ptr(new sliceType([new Range16.ptr(1160, 1161, 1), new Range16.ptr(6846, 8413, 1567), new Range16.ptr(8414, 8416, 1), new Range16.ptr(8418, 8420, 1), new Range16.ptr(42608, 42610, 1)]), sliceType$1.nil, 0);
+ _Mn = new RangeTable.ptr(new sliceType([new Range16.ptr(768, 879, 1), new Range16.ptr(1155, 1159, 1), new Range16.ptr(1425, 1469, 1), new Range16.ptr(1471, 1473, 2), new Range16.ptr(1474, 1476, 2), new Range16.ptr(1477, 1479, 2), new Range16.ptr(1552, 1562, 1), new Range16.ptr(1611, 1631, 1), new Range16.ptr(1648, 1750, 102), new Range16.ptr(1751, 1756, 1), new Range16.ptr(1759, 1764, 1), new Range16.ptr(1767, 1768, 1), new Range16.ptr(1770, 1773, 1), new Range16.ptr(1809, 1840, 31), new Range16.ptr(1841, 1866, 1), new Range16.ptr(1958, 1968, 1), new Range16.ptr(2027, 2035, 1), new Range16.ptr(2070, 2073, 1), new Range16.ptr(2075, 2083, 1), new Range16.ptr(2085, 2087, 1), new Range16.ptr(2089, 2093, 1), new Range16.ptr(2137, 2139, 1), new Range16.ptr(2260, 2273, 1), new Range16.ptr(2275, 2306, 1), new Range16.ptr(2362, 2364, 2), new Range16.ptr(2369, 2376, 1), new Range16.ptr(2381, 2385, 4), new Range16.ptr(2386, 2391, 1), new Range16.ptr(2402, 2403, 1), new Range16.ptr(2433, 2492, 59), new Range16.ptr(2497, 2500, 1), new Range16.ptr(2509, 2530, 21), new Range16.ptr(2531, 2561, 30), new Range16.ptr(2562, 2620, 58), new Range16.ptr(2625, 2626, 1), new Range16.ptr(2631, 2632, 1), new Range16.ptr(2635, 2637, 1), new Range16.ptr(2641, 2672, 31), new Range16.ptr(2673, 2677, 4), new Range16.ptr(2689, 2690, 1), new Range16.ptr(2748, 2753, 5), new Range16.ptr(2754, 2757, 1), new Range16.ptr(2759, 2760, 1), new Range16.ptr(2765, 2786, 21), new Range16.ptr(2787, 2817, 30), new Range16.ptr(2876, 2879, 3), new Range16.ptr(2881, 2884, 1), new Range16.ptr(2893, 2902, 9), new Range16.ptr(2914, 2915, 1), new Range16.ptr(2946, 3008, 62), new Range16.ptr(3021, 3072, 51), new Range16.ptr(3134, 3136, 1), new Range16.ptr(3142, 3144, 1), new Range16.ptr(3146, 3149, 1), new Range16.ptr(3157, 3158, 1), new Range16.ptr(3170, 3171, 1), new Range16.ptr(3201, 3260, 59), new Range16.ptr(3263, 3270, 7), new Range16.ptr(3276, 3277, 1), new Range16.ptr(3298, 3299, 1), new Range16.ptr(3329, 3393, 64), new Range16.ptr(3394, 3396, 1), new Range16.ptr(3405, 3426, 21), new Range16.ptr(3427, 3530, 103), new Range16.ptr(3538, 3540, 1), new Range16.ptr(3542, 3633, 91), new Range16.ptr(3636, 3642, 1), new Range16.ptr(3655, 3662, 1), new Range16.ptr(3761, 3764, 3), new Range16.ptr(3765, 3769, 1), new Range16.ptr(3771, 3772, 1), new Range16.ptr(3784, 3789, 1), new Range16.ptr(3864, 3865, 1), new Range16.ptr(3893, 3897, 2), new Range16.ptr(3953, 3966, 1), new Range16.ptr(3968, 3972, 1), new Range16.ptr(3974, 3975, 1), new Range16.ptr(3981, 3991, 1), new Range16.ptr(3993, 4028, 1), new Range16.ptr(4038, 4141, 103), new Range16.ptr(4142, 4144, 1), new Range16.ptr(4146, 4151, 1), new Range16.ptr(4153, 4154, 1), new Range16.ptr(4157, 4158, 1), new Range16.ptr(4184, 4185, 1), new Range16.ptr(4190, 4192, 1), new Range16.ptr(4209, 4212, 1), new Range16.ptr(4226, 4229, 3), new Range16.ptr(4230, 4237, 7), new Range16.ptr(4253, 4957, 704), new Range16.ptr(4958, 4959, 1), new Range16.ptr(5906, 5908, 1), new Range16.ptr(5938, 5940, 1), new Range16.ptr(5970, 5971, 1), new Range16.ptr(6002, 6003, 1), new Range16.ptr(6068, 6069, 1), new Range16.ptr(6071, 6077, 1), new Range16.ptr(6086, 6089, 3), new Range16.ptr(6090, 6099, 1), new Range16.ptr(6109, 6155, 46), new Range16.ptr(6156, 6157, 1), new Range16.ptr(6277, 6278, 1), new Range16.ptr(6313, 6432, 119), new Range16.ptr(6433, 6434, 1), new Range16.ptr(6439, 6440, 1), new Range16.ptr(6450, 6457, 7), new Range16.ptr(6458, 6459, 1), new Range16.ptr(6679, 6680, 1), new Range16.ptr(6683, 6742, 59), new Range16.ptr(6744, 6750, 1), new Range16.ptr(6752, 6754, 2), new Range16.ptr(6757, 6764, 1), new Range16.ptr(6771, 6780, 1), new Range16.ptr(6783, 6832, 49), new Range16.ptr(6833, 6845, 1), new Range16.ptr(6912, 6915, 1), new Range16.ptr(6964, 6966, 2), new Range16.ptr(6967, 6970, 1), new Range16.ptr(6972, 6978, 6), new Range16.ptr(7019, 7027, 1), new Range16.ptr(7040, 7041, 1), new Range16.ptr(7074, 7077, 1), new Range16.ptr(7080, 7081, 1), new Range16.ptr(7083, 7085, 1), new Range16.ptr(7142, 7144, 2), new Range16.ptr(7145, 7149, 4), new Range16.ptr(7151, 7153, 1), new Range16.ptr(7212, 7219, 1), new Range16.ptr(7222, 7223, 1), new Range16.ptr(7376, 7378, 1), new Range16.ptr(7380, 7392, 1), new Range16.ptr(7394, 7400, 1), new Range16.ptr(7405, 7412, 7), new Range16.ptr(7416, 7417, 1), new Range16.ptr(7616, 7669, 1), new Range16.ptr(7675, 7679, 1), new Range16.ptr(8400, 8412, 1), new Range16.ptr(8417, 8421, 4), new Range16.ptr(8422, 8432, 1), new Range16.ptr(11503, 11505, 1), new Range16.ptr(11647, 11744, 97), new Range16.ptr(11745, 11775, 1), new Range16.ptr(12330, 12333, 1), new Range16.ptr(12441, 12442, 1), new Range16.ptr(42607, 42612, 5), new Range16.ptr(42613, 42621, 1), new Range16.ptr(42654, 42655, 1), new Range16.ptr(42736, 42737, 1), new Range16.ptr(43010, 43014, 4), new Range16.ptr(43019, 43045, 26), new Range16.ptr(43046, 43204, 158), new Range16.ptr(43205, 43232, 27), new Range16.ptr(43233, 43249, 1), new Range16.ptr(43302, 43309, 1), new Range16.ptr(43335, 43345, 1), new Range16.ptr(43392, 43394, 1), new Range16.ptr(43443, 43446, 3), new Range16.ptr(43447, 43449, 1), new Range16.ptr(43452, 43493, 41), new Range16.ptr(43561, 43566, 1), new Range16.ptr(43569, 43570, 1), new Range16.ptr(43573, 43574, 1), new Range16.ptr(43587, 43596, 9), new Range16.ptr(43644, 43696, 52), new Range16.ptr(43698, 43700, 1), new Range16.ptr(43703, 43704, 1), new Range16.ptr(43710, 43711, 1), new Range16.ptr(43713, 43756, 43), new Range16.ptr(43757, 43766, 9), new Range16.ptr(44005, 44008, 3), new Range16.ptr(44013, 64286, 20273), new Range16.ptr(65024, 65039, 1), new Range16.ptr(65056, 65071, 1)]), new sliceType$1([new Range32.ptr(66045, 66272, 227), new Range32.ptr(66422, 66426, 1), new Range32.ptr(68097, 68099, 1), new Range32.ptr(68101, 68102, 1), new Range32.ptr(68108, 68111, 1), new Range32.ptr(68152, 68154, 1), new Range32.ptr(68159, 68325, 166), new Range32.ptr(68326, 69633, 1307), new Range32.ptr(69688, 69702, 1), new Range32.ptr(69759, 69761, 1), new Range32.ptr(69811, 69814, 1), new Range32.ptr(69817, 69818, 1), new Range32.ptr(69888, 69890, 1), new Range32.ptr(69927, 69931, 1), new Range32.ptr(69933, 69940, 1), new Range32.ptr(70003, 70016, 13), new Range32.ptr(70017, 70070, 53), new Range32.ptr(70071, 70078, 1), new Range32.ptr(70090, 70092, 1), new Range32.ptr(70191, 70193, 1), new Range32.ptr(70196, 70198, 2), new Range32.ptr(70199, 70206, 7), new Range32.ptr(70367, 70371, 4), new Range32.ptr(70372, 70378, 1), new Range32.ptr(70400, 70401, 1), new Range32.ptr(70460, 70464, 4), new Range32.ptr(70502, 70508, 1), new Range32.ptr(70512, 70516, 1), new Range32.ptr(70712, 70719, 1), new Range32.ptr(70722, 70724, 1), new Range32.ptr(70726, 70835, 109), new Range32.ptr(70836, 70840, 1), new Range32.ptr(70842, 70847, 5), new Range32.ptr(70848, 70850, 2), new Range32.ptr(70851, 71090, 239), new Range32.ptr(71091, 71093, 1), new Range32.ptr(71100, 71101, 1), new Range32.ptr(71103, 71104, 1), new Range32.ptr(71132, 71133, 1), new Range32.ptr(71219, 71226, 1), new Range32.ptr(71229, 71231, 2), new Range32.ptr(71232, 71339, 107), new Range32.ptr(71341, 71344, 3), new Range32.ptr(71345, 71349, 1), new Range32.ptr(71351, 71453, 102), new Range32.ptr(71454, 71455, 1), new Range32.ptr(71458, 71461, 1), new Range32.ptr(71463, 71467, 1), new Range32.ptr(72752, 72758, 1), new Range32.ptr(72760, 72765, 1), new Range32.ptr(72767, 72850, 83), new Range32.ptr(72851, 72871, 1), new Range32.ptr(72874, 72880, 1), new Range32.ptr(72882, 72883, 1), new Range32.ptr(72885, 72886, 1), new Range32.ptr(92912, 92916, 1), new Range32.ptr(92976, 92982, 1), new Range32.ptr(94095, 94098, 1), new Range32.ptr(113821, 113822, 1), new Range32.ptr(119143, 119145, 1), new Range32.ptr(119163, 119170, 1), new Range32.ptr(119173, 119179, 1), new Range32.ptr(119210, 119213, 1), new Range32.ptr(119362, 119364, 1), new Range32.ptr(121344, 121398, 1), new Range32.ptr(121403, 121452, 1), new Range32.ptr(121461, 121476, 15), new Range32.ptr(121499, 121503, 1), new Range32.ptr(121505, 121519, 1), new Range32.ptr(122880, 122886, 1), new Range32.ptr(122888, 122904, 1), new Range32.ptr(122907, 122913, 1), new Range32.ptr(122915, 122916, 1), new Range32.ptr(122918, 122922, 1), new Range32.ptr(125136, 125142, 1), new Range32.ptr(125252, 125258, 1), new Range32.ptr(917760, 917999, 1)]), 0);
+ _N = new RangeTable.ptr(new sliceType([new Range16.ptr(48, 57, 1), new Range16.ptr(178, 179, 1), new Range16.ptr(185, 188, 3), new Range16.ptr(189, 190, 1), new Range16.ptr(1632, 1641, 1), new Range16.ptr(1776, 1785, 1), new Range16.ptr(1984, 1993, 1), new Range16.ptr(2406, 2415, 1), new Range16.ptr(2534, 2543, 1), new Range16.ptr(2548, 2553, 1), new Range16.ptr(2662, 2671, 1), new Range16.ptr(2790, 2799, 1), new Range16.ptr(2918, 2927, 1), new Range16.ptr(2930, 2935, 1), new Range16.ptr(3046, 3058, 1), new Range16.ptr(3174, 3183, 1), new Range16.ptr(3192, 3198, 1), new Range16.ptr(3302, 3311, 1), new Range16.ptr(3416, 3422, 1), new Range16.ptr(3430, 3448, 1), new Range16.ptr(3558, 3567, 1), new Range16.ptr(3664, 3673, 1), new Range16.ptr(3792, 3801, 1), new Range16.ptr(3872, 3891, 1), new Range16.ptr(4160, 4169, 1), new Range16.ptr(4240, 4249, 1), new Range16.ptr(4969, 4988, 1), new Range16.ptr(5870, 5872, 1), new Range16.ptr(6112, 6121, 1), new Range16.ptr(6128, 6137, 1), new Range16.ptr(6160, 6169, 1), new Range16.ptr(6470, 6479, 1), new Range16.ptr(6608, 6618, 1), new Range16.ptr(6784, 6793, 1), new Range16.ptr(6800, 6809, 1), new Range16.ptr(6992, 7001, 1), new Range16.ptr(7088, 7097, 1), new Range16.ptr(7232, 7241, 1), new Range16.ptr(7248, 7257, 1), new Range16.ptr(8304, 8308, 4), new Range16.ptr(8309, 8313, 1), new Range16.ptr(8320, 8329, 1), new Range16.ptr(8528, 8578, 1), new Range16.ptr(8581, 8585, 1), new Range16.ptr(9312, 9371, 1), new Range16.ptr(9450, 9471, 1), new Range16.ptr(10102, 10131, 1), new Range16.ptr(11517, 12295, 778), new Range16.ptr(12321, 12329, 1), new Range16.ptr(12344, 12346, 1), new Range16.ptr(12690, 12693, 1), new Range16.ptr(12832, 12841, 1), new Range16.ptr(12872, 12879, 1), new Range16.ptr(12881, 12895, 1), new Range16.ptr(12928, 12937, 1), new Range16.ptr(12977, 12991, 1), new Range16.ptr(42528, 42537, 1), new Range16.ptr(42726, 42735, 1), new Range16.ptr(43056, 43061, 1), new Range16.ptr(43216, 43225, 1), new Range16.ptr(43264, 43273, 1), new Range16.ptr(43472, 43481, 1), new Range16.ptr(43504, 43513, 1), new Range16.ptr(43600, 43609, 1), new Range16.ptr(44016, 44025, 1), new Range16.ptr(65296, 65305, 1)]), new sliceType$1([new Range32.ptr(65799, 65843, 1), new Range32.ptr(65856, 65912, 1), new Range32.ptr(65930, 65931, 1), new Range32.ptr(66273, 66299, 1), new Range32.ptr(66336, 66339, 1), new Range32.ptr(66369, 66378, 9), new Range32.ptr(66513, 66517, 1), new Range32.ptr(66720, 66729, 1), new Range32.ptr(67672, 67679, 1), new Range32.ptr(67705, 67711, 1), new Range32.ptr(67751, 67759, 1), new Range32.ptr(67835, 67839, 1), new Range32.ptr(67862, 67867, 1), new Range32.ptr(68028, 68029, 1), new Range32.ptr(68032, 68047, 1), new Range32.ptr(68050, 68095, 1), new Range32.ptr(68160, 68167, 1), new Range32.ptr(68221, 68222, 1), new Range32.ptr(68253, 68255, 1), new Range32.ptr(68331, 68335, 1), new Range32.ptr(68440, 68447, 1), new Range32.ptr(68472, 68479, 1), new Range32.ptr(68521, 68527, 1), new Range32.ptr(68858, 68863, 1), new Range32.ptr(69216, 69246, 1), new Range32.ptr(69714, 69743, 1), new Range32.ptr(69872, 69881, 1), new Range32.ptr(69942, 69951, 1), new Range32.ptr(70096, 70105, 1), new Range32.ptr(70113, 70132, 1), new Range32.ptr(70384, 70393, 1), new Range32.ptr(70736, 70745, 1), new Range32.ptr(70864, 70873, 1), new Range32.ptr(71248, 71257, 1), new Range32.ptr(71360, 71369, 1), new Range32.ptr(71472, 71483, 1), new Range32.ptr(71904, 71922, 1), new Range32.ptr(72784, 72812, 1), new Range32.ptr(74752, 74862, 1), new Range32.ptr(92768, 92777, 1), new Range32.ptr(93008, 93017, 1), new Range32.ptr(93019, 93025, 1), new Range32.ptr(119648, 119665, 1), new Range32.ptr(120782, 120831, 1), new Range32.ptr(125127, 125135, 1), new Range32.ptr(125264, 125273, 1), new Range32.ptr(127232, 127244, 1)]), 4);
+ _Nd = new RangeTable.ptr(new sliceType([new Range16.ptr(48, 57, 1), new Range16.ptr(1632, 1641, 1), new Range16.ptr(1776, 1785, 1), new Range16.ptr(1984, 1993, 1), new Range16.ptr(2406, 2415, 1), new Range16.ptr(2534, 2543, 1), new Range16.ptr(2662, 2671, 1), new Range16.ptr(2790, 2799, 1), new Range16.ptr(2918, 2927, 1), new Range16.ptr(3046, 3055, 1), new Range16.ptr(3174, 3183, 1), new Range16.ptr(3302, 3311, 1), new Range16.ptr(3430, 3439, 1), new Range16.ptr(3558, 3567, 1), new Range16.ptr(3664, 3673, 1), new Range16.ptr(3792, 3801, 1), new Range16.ptr(3872, 3881, 1), new Range16.ptr(4160, 4169, 1), new Range16.ptr(4240, 4249, 1), new Range16.ptr(6112, 6121, 1), new Range16.ptr(6160, 6169, 1), new Range16.ptr(6470, 6479, 1), new Range16.ptr(6608, 6617, 1), new Range16.ptr(6784, 6793, 1), new Range16.ptr(6800, 6809, 1), new Range16.ptr(6992, 7001, 1), new Range16.ptr(7088, 7097, 1), new Range16.ptr(7232, 7241, 1), new Range16.ptr(7248, 7257, 1), new Range16.ptr(42528, 42537, 1), new Range16.ptr(43216, 43225, 1), new Range16.ptr(43264, 43273, 1), new Range16.ptr(43472, 43481, 1), new Range16.ptr(43504, 43513, 1), new Range16.ptr(43600, 43609, 1), new Range16.ptr(44016, 44025, 1), new Range16.ptr(65296, 65305, 1)]), new sliceType$1([new Range32.ptr(66720, 66729, 1), new Range32.ptr(69734, 69743, 1), new Range32.ptr(69872, 69881, 1), new Range32.ptr(69942, 69951, 1), new Range32.ptr(70096, 70105, 1), new Range32.ptr(70384, 70393, 1), new Range32.ptr(70736, 70745, 1), new Range32.ptr(70864, 70873, 1), new Range32.ptr(71248, 71257, 1), new Range32.ptr(71360, 71369, 1), new Range32.ptr(71472, 71481, 1), new Range32.ptr(71904, 71913, 1), new Range32.ptr(72784, 72793, 1), new Range32.ptr(92768, 92777, 1), new Range32.ptr(93008, 93017, 1), new Range32.ptr(120782, 120831, 1), new Range32.ptr(125264, 125273, 1)]), 1);
+ _Nl = new RangeTable.ptr(new sliceType([new Range16.ptr(5870, 5872, 1), new Range16.ptr(8544, 8578, 1), new Range16.ptr(8581, 8584, 1), new Range16.ptr(12295, 12321, 26), new Range16.ptr(12322, 12329, 1), new Range16.ptr(12344, 12346, 1), new Range16.ptr(42726, 42735, 1)]), new sliceType$1([new Range32.ptr(65856, 65908, 1), new Range32.ptr(66369, 66378, 9), new Range32.ptr(66513, 66517, 1), new Range32.ptr(74752, 74862, 1)]), 0);
+ _No = new RangeTable.ptr(new sliceType([new Range16.ptr(178, 179, 1), new Range16.ptr(185, 188, 3), new Range16.ptr(189, 190, 1), new Range16.ptr(2548, 2553, 1), new Range16.ptr(2930, 2935, 1), new Range16.ptr(3056, 3058, 1), new Range16.ptr(3192, 3198, 1), new Range16.ptr(3416, 3422, 1), new Range16.ptr(3440, 3448, 1), new Range16.ptr(3882, 3891, 1), new Range16.ptr(4969, 4988, 1), new Range16.ptr(6128, 6137, 1), new Range16.ptr(6618, 8304, 1686), new Range16.ptr(8308, 8313, 1), new Range16.ptr(8320, 8329, 1), new Range16.ptr(8528, 8543, 1), new Range16.ptr(8585, 9312, 727), new Range16.ptr(9313, 9371, 1), new Range16.ptr(9450, 9471, 1), new Range16.ptr(10102, 10131, 1), new Range16.ptr(11517, 12690, 1173), new Range16.ptr(12691, 12693, 1), new Range16.ptr(12832, 12841, 1), new Range16.ptr(12872, 12879, 1), new Range16.ptr(12881, 12895, 1), new Range16.ptr(12928, 12937, 1), new Range16.ptr(12977, 12991, 1), new Range16.ptr(43056, 43061, 1)]), new sliceType$1([new Range32.ptr(65799, 65843, 1), new Range32.ptr(65909, 65912, 1), new Range32.ptr(65930, 65931, 1), new Range32.ptr(66273, 66299, 1), new Range32.ptr(66336, 66339, 1), new Range32.ptr(67672, 67679, 1), new Range32.ptr(67705, 67711, 1), new Range32.ptr(67751, 67759, 1), new Range32.ptr(67835, 67839, 1), new Range32.ptr(67862, 67867, 1), new Range32.ptr(68028, 68029, 1), new Range32.ptr(68032, 68047, 1), new Range32.ptr(68050, 68095, 1), new Range32.ptr(68160, 68167, 1), new Range32.ptr(68221, 68222, 1), new Range32.ptr(68253, 68255, 1), new Range32.ptr(68331, 68335, 1), new Range32.ptr(68440, 68447, 1), new Range32.ptr(68472, 68479, 1), new Range32.ptr(68521, 68527, 1), new Range32.ptr(68858, 68863, 1), new Range32.ptr(69216, 69246, 1), new Range32.ptr(69714, 69733, 1), new Range32.ptr(70113, 70132, 1), new Range32.ptr(71482, 71483, 1), new Range32.ptr(71914, 71922, 1), new Range32.ptr(72794, 72812, 1), new Range32.ptr(93019, 93025, 1), new Range32.ptr(119648, 119665, 1), new Range32.ptr(125127, 125135, 1), new Range32.ptr(127232, 127244, 1)]), 3);
+ _P = new RangeTable.ptr(new sliceType([new Range16.ptr(33, 35, 1), new Range16.ptr(37, 42, 1), new Range16.ptr(44, 47, 1), new Range16.ptr(58, 59, 1), new Range16.ptr(63, 64, 1), new Range16.ptr(91, 93, 1), new Range16.ptr(95, 123, 28), new Range16.ptr(125, 161, 36), new Range16.ptr(167, 171, 4), new Range16.ptr(182, 183, 1), new Range16.ptr(187, 191, 4), new Range16.ptr(894, 903, 9), new Range16.ptr(1370, 1375, 1), new Range16.ptr(1417, 1418, 1), new Range16.ptr(1470, 1472, 2), new Range16.ptr(1475, 1478, 3), new Range16.ptr(1523, 1524, 1), new Range16.ptr(1545, 1546, 1), new Range16.ptr(1548, 1549, 1), new Range16.ptr(1563, 1566, 3), new Range16.ptr(1567, 1642, 75), new Range16.ptr(1643, 1645, 1), new Range16.ptr(1748, 1792, 44), new Range16.ptr(1793, 1805, 1), new Range16.ptr(2039, 2041, 1), new Range16.ptr(2096, 2110, 1), new Range16.ptr(2142, 2404, 262), new Range16.ptr(2405, 2416, 11), new Range16.ptr(2800, 3572, 772), new Range16.ptr(3663, 3674, 11), new Range16.ptr(3675, 3844, 169), new Range16.ptr(3845, 3858, 1), new Range16.ptr(3860, 3898, 38), new Range16.ptr(3899, 3901, 1), new Range16.ptr(3973, 4048, 75), new Range16.ptr(4049, 4052, 1), new Range16.ptr(4057, 4058, 1), new Range16.ptr(4170, 4175, 1), new Range16.ptr(4347, 4960, 613), new Range16.ptr(4961, 4968, 1), new Range16.ptr(5120, 5741, 621), new Range16.ptr(5742, 5787, 45), new Range16.ptr(5788, 5867, 79), new Range16.ptr(5868, 5869, 1), new Range16.ptr(5941, 5942, 1), new Range16.ptr(6100, 6102, 1), new Range16.ptr(6104, 6106, 1), new Range16.ptr(6144, 6154, 1), new Range16.ptr(6468, 6469, 1), new Range16.ptr(6686, 6687, 1), new Range16.ptr(6816, 6822, 1), new Range16.ptr(6824, 6829, 1), new Range16.ptr(7002, 7008, 1), new Range16.ptr(7164, 7167, 1), new Range16.ptr(7227, 7231, 1), new Range16.ptr(7294, 7295, 1), new Range16.ptr(7360, 7367, 1), new Range16.ptr(7379, 8208, 829), new Range16.ptr(8209, 8231, 1), new Range16.ptr(8240, 8259, 1), new Range16.ptr(8261, 8273, 1), new Range16.ptr(8275, 8286, 1), new Range16.ptr(8317, 8318, 1), new Range16.ptr(8333, 8334, 1), new Range16.ptr(8968, 8971, 1), new Range16.ptr(9001, 9002, 1), new Range16.ptr(10088, 10101, 1), new Range16.ptr(10181, 10182, 1), new Range16.ptr(10214, 10223, 1), new Range16.ptr(10627, 10648, 1), new Range16.ptr(10712, 10715, 1), new Range16.ptr(10748, 10749, 1), new Range16.ptr(11513, 11516, 1), new Range16.ptr(11518, 11519, 1), new Range16.ptr(11632, 11776, 144), new Range16.ptr(11777, 11822, 1), new Range16.ptr(11824, 11844, 1), new Range16.ptr(12289, 12291, 1), new Range16.ptr(12296, 12305, 1), new Range16.ptr(12308, 12319, 1), new Range16.ptr(12336, 12349, 13), new Range16.ptr(12448, 12539, 91), new Range16.ptr(42238, 42239, 1), new Range16.ptr(42509, 42511, 1), new Range16.ptr(42611, 42622, 11), new Range16.ptr(42738, 42743, 1), new Range16.ptr(43124, 43127, 1), new Range16.ptr(43214, 43215, 1), new Range16.ptr(43256, 43258, 1), new Range16.ptr(43260, 43310, 50), new Range16.ptr(43311, 43359, 48), new Range16.ptr(43457, 43469, 1), new Range16.ptr(43486, 43487, 1), new Range16.ptr(43612, 43615, 1), new Range16.ptr(43742, 43743, 1), new Range16.ptr(43760, 43761, 1), new Range16.ptr(44011, 64830, 20819), new Range16.ptr(64831, 65040, 209), new Range16.ptr(65041, 65049, 1), new Range16.ptr(65072, 65106, 1), new Range16.ptr(65108, 65121, 1), new Range16.ptr(65123, 65128, 5), new Range16.ptr(65130, 65131, 1), new Range16.ptr(65281, 65283, 1), new Range16.ptr(65285, 65290, 1), new Range16.ptr(65292, 65295, 1), new Range16.ptr(65306, 65307, 1), new Range16.ptr(65311, 65312, 1), new Range16.ptr(65339, 65341, 1), new Range16.ptr(65343, 65371, 28), new Range16.ptr(65373, 65375, 2), new Range16.ptr(65376, 65381, 1)]), new sliceType$1([new Range32.ptr(65792, 65794, 1), new Range32.ptr(66463, 66512, 49), new Range32.ptr(66927, 67671, 744), new Range32.ptr(67871, 67903, 32), new Range32.ptr(68176, 68184, 1), new Range32.ptr(68223, 68336, 113), new Range32.ptr(68337, 68342, 1), new Range32.ptr(68409, 68415, 1), new Range32.ptr(68505, 68508, 1), new Range32.ptr(69703, 69709, 1), new Range32.ptr(69819, 69820, 1), new Range32.ptr(69822, 69825, 1), new Range32.ptr(69952, 69955, 1), new Range32.ptr(70004, 70005, 1), new Range32.ptr(70085, 70089, 1), new Range32.ptr(70093, 70107, 14), new Range32.ptr(70109, 70111, 1), new Range32.ptr(70200, 70205, 1), new Range32.ptr(70313, 70731, 418), new Range32.ptr(70732, 70735, 1), new Range32.ptr(70747, 70749, 2), new Range32.ptr(70854, 71105, 251), new Range32.ptr(71106, 71127, 1), new Range32.ptr(71233, 71235, 1), new Range32.ptr(71264, 71276, 1), new Range32.ptr(71484, 71486, 1), new Range32.ptr(72769, 72773, 1), new Range32.ptr(72816, 72817, 1), new Range32.ptr(74864, 74868, 1), new Range32.ptr(92782, 92783, 1), new Range32.ptr(92917, 92983, 66), new Range32.ptr(92984, 92987, 1), new Range32.ptr(92996, 113823, 20827), new Range32.ptr(121479, 121483, 1), new Range32.ptr(125278, 125279, 1)]), 11);
+ _Pc = new RangeTable.ptr(new sliceType([new Range16.ptr(95, 8255, 8160), new Range16.ptr(8256, 8276, 20), new Range16.ptr(65075, 65076, 1), new Range16.ptr(65101, 65103, 1), new Range16.ptr(65343, 65343, 1)]), sliceType$1.nil, 0);
+ _Pd = new RangeTable.ptr(new sliceType([new Range16.ptr(45, 1418, 1373), new Range16.ptr(1470, 5120, 3650), new Range16.ptr(6150, 8208, 2058), new Range16.ptr(8209, 8213, 1), new Range16.ptr(11799, 11802, 3), new Range16.ptr(11834, 11835, 1), new Range16.ptr(11840, 12316, 476), new Range16.ptr(12336, 12448, 112), new Range16.ptr(65073, 65074, 1), new Range16.ptr(65112, 65123, 11), new Range16.ptr(65293, 65293, 1)]), sliceType$1.nil, 0);
+ _Pe = new RangeTable.ptr(new sliceType([new Range16.ptr(41, 93, 52), new Range16.ptr(125, 3899, 3774), new Range16.ptr(3901, 5788, 1887), new Range16.ptr(8262, 8318, 56), new Range16.ptr(8334, 8969, 635), new Range16.ptr(8971, 9002, 31), new Range16.ptr(10089, 10101, 2), new Range16.ptr(10182, 10215, 33), new Range16.ptr(10217, 10223, 2), new Range16.ptr(10628, 10648, 2), new Range16.ptr(10713, 10715, 2), new Range16.ptr(10749, 11811, 1062), new Range16.ptr(11813, 11817, 2), new Range16.ptr(12297, 12305, 2), new Range16.ptr(12309, 12315, 2), new Range16.ptr(12318, 12319, 1), new Range16.ptr(64830, 65048, 218), new Range16.ptr(65078, 65092, 2), new Range16.ptr(65096, 65114, 18), new Range16.ptr(65116, 65118, 2), new Range16.ptr(65289, 65341, 52), new Range16.ptr(65373, 65379, 3)]), sliceType$1.nil, 1);
+ _Pf = new RangeTable.ptr(new sliceType([new Range16.ptr(187, 8217, 8030), new Range16.ptr(8221, 8250, 29), new Range16.ptr(11779, 11781, 2), new Range16.ptr(11786, 11789, 3), new Range16.ptr(11805, 11809, 4)]), sliceType$1.nil, 0);
+ _Pi = new RangeTable.ptr(new sliceType([new Range16.ptr(171, 8216, 8045), new Range16.ptr(8219, 8220, 1), new Range16.ptr(8223, 8249, 26), new Range16.ptr(11778, 11780, 2), new Range16.ptr(11785, 11788, 3), new Range16.ptr(11804, 11808, 4)]), sliceType$1.nil, 0);
+ _Po = new RangeTable.ptr(new sliceType([new Range16.ptr(33, 35, 1), new Range16.ptr(37, 39, 1), new Range16.ptr(42, 46, 2), new Range16.ptr(47, 58, 11), new Range16.ptr(59, 63, 4), new Range16.ptr(64, 92, 28), new Range16.ptr(161, 167, 6), new Range16.ptr(182, 183, 1), new Range16.ptr(191, 894, 703), new Range16.ptr(903, 1370, 467), new Range16.ptr(1371, 1375, 1), new Range16.ptr(1417, 1472, 55), new Range16.ptr(1475, 1478, 3), new Range16.ptr(1523, 1524, 1), new Range16.ptr(1545, 1546, 1), new Range16.ptr(1548, 1549, 1), new Range16.ptr(1563, 1566, 3), new Range16.ptr(1567, 1642, 75), new Range16.ptr(1643, 1645, 1), new Range16.ptr(1748, 1792, 44), new Range16.ptr(1793, 1805, 1), new Range16.ptr(2039, 2041, 1), new Range16.ptr(2096, 2110, 1), new Range16.ptr(2142, 2404, 262), new Range16.ptr(2405, 2416, 11), new Range16.ptr(2800, 3572, 772), new Range16.ptr(3663, 3674, 11), new Range16.ptr(3675, 3844, 169), new Range16.ptr(3845, 3858, 1), new Range16.ptr(3860, 3973, 113), new Range16.ptr(4048, 4052, 1), new Range16.ptr(4057, 4058, 1), new Range16.ptr(4170, 4175, 1), new Range16.ptr(4347, 4960, 613), new Range16.ptr(4961, 4968, 1), new Range16.ptr(5741, 5742, 1), new Range16.ptr(5867, 5869, 1), new Range16.ptr(5941, 5942, 1), new Range16.ptr(6100, 6102, 1), new Range16.ptr(6104, 6106, 1), new Range16.ptr(6144, 6149, 1), new Range16.ptr(6151, 6154, 1), new Range16.ptr(6468, 6469, 1), new Range16.ptr(6686, 6687, 1), new Range16.ptr(6816, 6822, 1), new Range16.ptr(6824, 6829, 1), new Range16.ptr(7002, 7008, 1), new Range16.ptr(7164, 7167, 1), new Range16.ptr(7227, 7231, 1), new Range16.ptr(7294, 7295, 1), new Range16.ptr(7360, 7367, 1), new Range16.ptr(7379, 8214, 835), new Range16.ptr(8215, 8224, 9), new Range16.ptr(8225, 8231, 1), new Range16.ptr(8240, 8248, 1), new Range16.ptr(8251, 8254, 1), new Range16.ptr(8257, 8259, 1), new Range16.ptr(8263, 8273, 1), new Range16.ptr(8275, 8277, 2), new Range16.ptr(8278, 8286, 1), new Range16.ptr(11513, 11516, 1), new Range16.ptr(11518, 11519, 1), new Range16.ptr(11632, 11776, 144), new Range16.ptr(11777, 11782, 5), new Range16.ptr(11783, 11784, 1), new Range16.ptr(11787, 11790, 3), new Range16.ptr(11791, 11798, 1), new Range16.ptr(11800, 11801, 1), new Range16.ptr(11803, 11806, 3), new Range16.ptr(11807, 11818, 11), new Range16.ptr(11819, 11822, 1), new Range16.ptr(11824, 11833, 1), new Range16.ptr(11836, 11839, 1), new Range16.ptr(11841, 11843, 2), new Range16.ptr(11844, 12289, 445), new Range16.ptr(12290, 12291, 1), new Range16.ptr(12349, 12539, 190), new Range16.ptr(42238, 42239, 1), new Range16.ptr(42509, 42511, 1), new Range16.ptr(42611, 42622, 11), new Range16.ptr(42738, 42743, 1), new Range16.ptr(43124, 43127, 1), new Range16.ptr(43214, 43215, 1), new Range16.ptr(43256, 43258, 1), new Range16.ptr(43260, 43310, 50), new Range16.ptr(43311, 43359, 48), new Range16.ptr(43457, 43469, 1), new Range16.ptr(43486, 43487, 1), new Range16.ptr(43612, 43615, 1), new Range16.ptr(43742, 43743, 1), new Range16.ptr(43760, 43761, 1), new Range16.ptr(44011, 65040, 21029), new Range16.ptr(65041, 65046, 1), new Range16.ptr(65049, 65072, 23), new Range16.ptr(65093, 65094, 1), new Range16.ptr(65097, 65100, 1), new Range16.ptr(65104, 65106, 1), new Range16.ptr(65108, 65111, 1), new Range16.ptr(65119, 65121, 1), new Range16.ptr(65128, 65130, 2), new Range16.ptr(65131, 65281, 150), new Range16.ptr(65282, 65283, 1), new Range16.ptr(65285, 65287, 1), new Range16.ptr(65290, 65294, 2), new Range16.ptr(65295, 65306, 11), new Range16.ptr(65307, 65311, 4), new Range16.ptr(65312, 65340, 28), new Range16.ptr(65377, 65380, 3), new Range16.ptr(65381, 65381, 1)]), new sliceType$1([new Range32.ptr(65792, 65792, 1), new Range32.ptr(65793, 65794, 1), new Range32.ptr(66463, 66512, 49), new Range32.ptr(66927, 67671, 744), new Range32.ptr(67871, 67903, 32), new Range32.ptr(68176, 68184, 1), new Range32.ptr(68223, 68336, 113), new Range32.ptr(68337, 68342, 1), new Range32.ptr(68409, 68415, 1), new Range32.ptr(68505, 68508, 1), new Range32.ptr(69703, 69709, 1), new Range32.ptr(69819, 69820, 1), new Range32.ptr(69822, 69825, 1), new Range32.ptr(69952, 69955, 1), new Range32.ptr(70004, 70005, 1), new Range32.ptr(70085, 70089, 1), new Range32.ptr(70093, 70107, 14), new Range32.ptr(70109, 70111, 1), new Range32.ptr(70200, 70205, 1), new Range32.ptr(70313, 70731, 418), new Range32.ptr(70732, 70735, 1), new Range32.ptr(70747, 70749, 2), new Range32.ptr(70854, 71105, 251), new Range32.ptr(71106, 71127, 1), new Range32.ptr(71233, 71235, 1), new Range32.ptr(71264, 71276, 1), new Range32.ptr(71484, 71486, 1), new Range32.ptr(72769, 72773, 1), new Range32.ptr(72816, 72817, 1), new Range32.ptr(74864, 74868, 1), new Range32.ptr(92782, 92783, 1), new Range32.ptr(92917, 92983, 66), new Range32.ptr(92984, 92987, 1), new Range32.ptr(92996, 113823, 20827), new Range32.ptr(121479, 121483, 1), new Range32.ptr(125278, 125279, 1)]), 8);
+ _Ps = new RangeTable.ptr(new sliceType([new Range16.ptr(40, 91, 51), new Range16.ptr(123, 3898, 3775), new Range16.ptr(3900, 5787, 1887), new Range16.ptr(8218, 8222, 4), new Range16.ptr(8261, 8317, 56), new Range16.ptr(8333, 8968, 635), new Range16.ptr(8970, 9001, 31), new Range16.ptr(10088, 10100, 2), new Range16.ptr(10181, 10214, 33), new Range16.ptr(10216, 10222, 2), new Range16.ptr(10627, 10647, 2), new Range16.ptr(10712, 10714, 2), new Range16.ptr(10748, 11810, 1062), new Range16.ptr(11812, 11816, 2), new Range16.ptr(11842, 12296, 454), new Range16.ptr(12298, 12304, 2), new Range16.ptr(12308, 12314, 2), new Range16.ptr(12317, 64831, 52514), new Range16.ptr(65047, 65077, 30), new Range16.ptr(65079, 65091, 2), new Range16.ptr(65095, 65113, 18), new Range16.ptr(65115, 65117, 2), new Range16.ptr(65288, 65339, 51), new Range16.ptr(65371, 65375, 4), new Range16.ptr(65378, 65378, 1)]), sliceType$1.nil, 1);
+ _S = new RangeTable.ptr(new sliceType([new Range16.ptr(36, 43, 7), new Range16.ptr(60, 62, 1), new Range16.ptr(94, 96, 2), new Range16.ptr(124, 126, 2), new Range16.ptr(162, 166, 1), new Range16.ptr(168, 169, 1), new Range16.ptr(172, 174, 2), new Range16.ptr(175, 177, 1), new Range16.ptr(180, 184, 4), new Range16.ptr(215, 247, 32), new Range16.ptr(706, 709, 1), new Range16.ptr(722, 735, 1), new Range16.ptr(741, 747, 1), new Range16.ptr(749, 751, 2), new Range16.ptr(752, 767, 1), new Range16.ptr(885, 900, 15), new Range16.ptr(901, 1014, 113), new Range16.ptr(1154, 1421, 267), new Range16.ptr(1422, 1423, 1), new Range16.ptr(1542, 1544, 1), new Range16.ptr(1547, 1550, 3), new Range16.ptr(1551, 1758, 207), new Range16.ptr(1769, 1789, 20), new Range16.ptr(1790, 2038, 248), new Range16.ptr(2546, 2547, 1), new Range16.ptr(2554, 2555, 1), new Range16.ptr(2801, 2928, 127), new Range16.ptr(3059, 3066, 1), new Range16.ptr(3199, 3407, 208), new Range16.ptr(3449, 3647, 198), new Range16.ptr(3841, 3843, 1), new Range16.ptr(3859, 3861, 2), new Range16.ptr(3862, 3863, 1), new Range16.ptr(3866, 3871, 1), new Range16.ptr(3892, 3896, 2), new Range16.ptr(4030, 4037, 1), new Range16.ptr(4039, 4044, 1), new Range16.ptr(4046, 4047, 1), new Range16.ptr(4053, 4056, 1), new Range16.ptr(4254, 4255, 1), new Range16.ptr(5008, 5017, 1), new Range16.ptr(6107, 6464, 357), new Range16.ptr(6622, 6655, 1), new Range16.ptr(7009, 7018, 1), new Range16.ptr(7028, 7036, 1), new Range16.ptr(8125, 8127, 2), new Range16.ptr(8128, 8129, 1), new Range16.ptr(8141, 8143, 1), new Range16.ptr(8157, 8159, 1), new Range16.ptr(8173, 8175, 1), new Range16.ptr(8189, 8190, 1), new Range16.ptr(8260, 8274, 14), new Range16.ptr(8314, 8316, 1), new Range16.ptr(8330, 8332, 1), new Range16.ptr(8352, 8382, 1), new Range16.ptr(8448, 8449, 1), new Range16.ptr(8451, 8454, 1), new Range16.ptr(8456, 8457, 1), new Range16.ptr(8468, 8470, 2), new Range16.ptr(8471, 8472, 1), new Range16.ptr(8478, 8483, 1), new Range16.ptr(8485, 8489, 2), new Range16.ptr(8494, 8506, 12), new Range16.ptr(8507, 8512, 5), new Range16.ptr(8513, 8516, 1), new Range16.ptr(8522, 8525, 1), new Range16.ptr(8527, 8586, 59), new Range16.ptr(8587, 8592, 5), new Range16.ptr(8593, 8967, 1), new Range16.ptr(8972, 9000, 1), new Range16.ptr(9003, 9214, 1), new Range16.ptr(9216, 9254, 1), new Range16.ptr(9280, 9290, 1), new Range16.ptr(9372, 9449, 1), new Range16.ptr(9472, 10087, 1), new Range16.ptr(10132, 10180, 1), new Range16.ptr(10183, 10213, 1), new Range16.ptr(10224, 10626, 1), new Range16.ptr(10649, 10711, 1), new Range16.ptr(10716, 10747, 1), new Range16.ptr(10750, 11123, 1), new Range16.ptr(11126, 11157, 1), new Range16.ptr(11160, 11193, 1), new Range16.ptr(11197, 11208, 1), new Range16.ptr(11210, 11217, 1), new Range16.ptr(11244, 11247, 1), new Range16.ptr(11493, 11498, 1), new Range16.ptr(11904, 11929, 1), new Range16.ptr(11931, 12019, 1), new Range16.ptr(12032, 12245, 1), new Range16.ptr(12272, 12283, 1), new Range16.ptr(12292, 12306, 14), new Range16.ptr(12307, 12320, 13), new Range16.ptr(12342, 12343, 1), new Range16.ptr(12350, 12351, 1), new Range16.ptr(12443, 12444, 1), new Range16.ptr(12688, 12689, 1), new Range16.ptr(12694, 12703, 1), new Range16.ptr(12736, 12771, 1), new Range16.ptr(12800, 12830, 1), new Range16.ptr(12842, 12871, 1), new Range16.ptr(12880, 12896, 16), new Range16.ptr(12897, 12927, 1), new Range16.ptr(12938, 12976, 1), new Range16.ptr(12992, 13054, 1), new Range16.ptr(13056, 13311, 1), new Range16.ptr(19904, 19967, 1), new Range16.ptr(42128, 42182, 1), new Range16.ptr(42752, 42774, 1), new Range16.ptr(42784, 42785, 1), new Range16.ptr(42889, 42890, 1), new Range16.ptr(43048, 43051, 1), new Range16.ptr(43062, 43065, 1), new Range16.ptr(43639, 43641, 1), new Range16.ptr(43867, 64297, 20430), new Range16.ptr(64434, 64449, 1), new Range16.ptr(65020, 65021, 1), new Range16.ptr(65122, 65124, 2), new Range16.ptr(65125, 65126, 1), new Range16.ptr(65129, 65284, 155), new Range16.ptr(65291, 65308, 17), new Range16.ptr(65309, 65310, 1), new Range16.ptr(65342, 65344, 2), new Range16.ptr(65372, 65374, 2), new Range16.ptr(65504, 65510, 1), new Range16.ptr(65512, 65518, 1), new Range16.ptr(65532, 65533, 1)]), new sliceType$1([new Range32.ptr(65847, 65855, 1), new Range32.ptr(65913, 65929, 1), new Range32.ptr(65932, 65934, 1), new Range32.ptr(65936, 65947, 1), new Range32.ptr(65952, 66000, 48), new Range32.ptr(66001, 66044, 1), new Range32.ptr(67703, 67704, 1), new Range32.ptr(68296, 71487, 3191), new Range32.ptr(92988, 92991, 1), new Range32.ptr(92997, 113820, 20823), new Range32.ptr(118784, 119029, 1), new Range32.ptr(119040, 119078, 1), new Range32.ptr(119081, 119140, 1), new Range32.ptr(119146, 119148, 1), new Range32.ptr(119171, 119172, 1), new Range32.ptr(119180, 119209, 1), new Range32.ptr(119214, 119272, 1), new Range32.ptr(119296, 119361, 1), new Range32.ptr(119365, 119552, 187), new Range32.ptr(119553, 119638, 1), new Range32.ptr(120513, 120539, 26), new Range32.ptr(120571, 120597, 26), new Range32.ptr(120629, 120655, 26), new Range32.ptr(120687, 120713, 26), new Range32.ptr(120745, 120771, 26), new Range32.ptr(120832, 121343, 1), new Range32.ptr(121399, 121402, 1), new Range32.ptr(121453, 121460, 1), new Range32.ptr(121462, 121475, 1), new Range32.ptr(121477, 121478, 1), new Range32.ptr(126704, 126705, 1), new Range32.ptr(126976, 127019, 1), new Range32.ptr(127024, 127123, 1), new Range32.ptr(127136, 127150, 1), new Range32.ptr(127153, 127167, 1), new Range32.ptr(127169, 127183, 1), new Range32.ptr(127185, 127221, 1), new Range32.ptr(127248, 127278, 1), new Range32.ptr(127280, 127339, 1), new Range32.ptr(127344, 127404, 1), new Range32.ptr(127462, 127490, 1), new Range32.ptr(127504, 127547, 1), new Range32.ptr(127552, 127560, 1), new Range32.ptr(127568, 127569, 1), new Range32.ptr(127744, 128722, 1), new Range32.ptr(128736, 128748, 1), new Range32.ptr(128752, 128758, 1), new Range32.ptr(128768, 128883, 1), new Range32.ptr(128896, 128980, 1), new Range32.ptr(129024, 129035, 1), new Range32.ptr(129040, 129095, 1), new Range32.ptr(129104, 129113, 1), new Range32.ptr(129120, 129159, 1), new Range32.ptr(129168, 129197, 1), new Range32.ptr(129296, 129310, 1), new Range32.ptr(129312, 129319, 1), new Range32.ptr(129328, 129331, 3), new Range32.ptr(129332, 129342, 1), new Range32.ptr(129344, 129355, 1), new Range32.ptr(129360, 129374, 1), new Range32.ptr(129408, 129425, 1), new Range32.ptr(129472, 129472, 1)]), 10);
+ _Sc = new RangeTable.ptr(new sliceType([new Range16.ptr(36, 162, 126), new Range16.ptr(163, 165, 1), new Range16.ptr(1423, 1547, 124), new Range16.ptr(2546, 2547, 1), new Range16.ptr(2555, 2801, 246), new Range16.ptr(3065, 3647, 582), new Range16.ptr(6107, 8352, 2245), new Range16.ptr(8353, 8382, 1), new Range16.ptr(43064, 65020, 21956), new Range16.ptr(65129, 65284, 155), new Range16.ptr(65504, 65505, 1), new Range16.ptr(65509, 65510, 1)]), sliceType$1.nil, 2);
+ _Sk = new RangeTable.ptr(new sliceType([new Range16.ptr(94, 96, 2), new Range16.ptr(168, 175, 7), new Range16.ptr(180, 184, 4), new Range16.ptr(706, 709, 1), new Range16.ptr(722, 735, 1), new Range16.ptr(741, 747, 1), new Range16.ptr(749, 751, 2), new Range16.ptr(752, 767, 1), new Range16.ptr(885, 900, 15), new Range16.ptr(901, 8125, 7224), new Range16.ptr(8127, 8129, 1), new Range16.ptr(8141, 8143, 1), new Range16.ptr(8157, 8159, 1), new Range16.ptr(8173, 8175, 1), new Range16.ptr(8189, 8190, 1), new Range16.ptr(12443, 12444, 1), new Range16.ptr(42752, 42774, 1), new Range16.ptr(42784, 42785, 1), new Range16.ptr(42889, 42890, 1), new Range16.ptr(43867, 64434, 20567), new Range16.ptr(64435, 64449, 1), new Range16.ptr(65342, 65344, 2), new Range16.ptr(65507, 65507, 1)]), new sliceType$1([new Range32.ptr(127995, 127995, 1), new Range32.ptr(127996, 127999, 1)]), 3);
+ _Sm = new RangeTable.ptr(new sliceType([new Range16.ptr(43, 60, 17), new Range16.ptr(61, 62, 1), new Range16.ptr(124, 126, 2), new Range16.ptr(172, 177, 5), new Range16.ptr(215, 247, 32), new Range16.ptr(1014, 1542, 528), new Range16.ptr(1543, 1544, 1), new Range16.ptr(8260, 8274, 14), new Range16.ptr(8314, 8316, 1), new Range16.ptr(8330, 8332, 1), new Range16.ptr(8472, 8512, 40), new Range16.ptr(8513, 8516, 1), new Range16.ptr(8523, 8592, 69), new Range16.ptr(8593, 8596, 1), new Range16.ptr(8602, 8603, 1), new Range16.ptr(8608, 8614, 3), new Range16.ptr(8622, 8654, 32), new Range16.ptr(8655, 8658, 3), new Range16.ptr(8660, 8692, 32), new Range16.ptr(8693, 8959, 1), new Range16.ptr(8992, 8993, 1), new Range16.ptr(9084, 9115, 31), new Range16.ptr(9116, 9139, 1), new Range16.ptr(9180, 9185, 1), new Range16.ptr(9655, 9665, 10), new Range16.ptr(9720, 9727, 1), new Range16.ptr(9839, 10176, 337), new Range16.ptr(10177, 10180, 1), new Range16.ptr(10183, 10213, 1), new Range16.ptr(10224, 10239, 1), new Range16.ptr(10496, 10626, 1), new Range16.ptr(10649, 10711, 1), new Range16.ptr(10716, 10747, 1), new Range16.ptr(10750, 11007, 1), new Range16.ptr(11056, 11076, 1), new Range16.ptr(11079, 11084, 1), new Range16.ptr(64297, 65122, 825), new Range16.ptr(65124, 65126, 1), new Range16.ptr(65291, 65308, 17), new Range16.ptr(65309, 65310, 1), new Range16.ptr(65372, 65374, 2), new Range16.ptr(65506, 65513, 7), new Range16.ptr(65514, 65516, 1)]), new sliceType$1([new Range32.ptr(120513, 120539, 26), new Range32.ptr(120571, 120597, 26), new Range32.ptr(120629, 120655, 26), new Range32.ptr(120687, 120713, 26), new Range32.ptr(120745, 120771, 26), new Range32.ptr(126704, 126705, 1)]), 5);
+ _So = new RangeTable.ptr(new sliceType([new Range16.ptr(166, 169, 3), new Range16.ptr(174, 176, 2), new Range16.ptr(1154, 1421, 267), new Range16.ptr(1422, 1550, 128), new Range16.ptr(1551, 1758, 207), new Range16.ptr(1769, 1789, 20), new Range16.ptr(1790, 2038, 248), new Range16.ptr(2554, 2928, 374), new Range16.ptr(3059, 3064, 1), new Range16.ptr(3066, 3199, 133), new Range16.ptr(3407, 3449, 42), new Range16.ptr(3841, 3843, 1), new Range16.ptr(3859, 3861, 2), new Range16.ptr(3862, 3863, 1), new Range16.ptr(3866, 3871, 1), new Range16.ptr(3892, 3896, 2), new Range16.ptr(4030, 4037, 1), new Range16.ptr(4039, 4044, 1), new Range16.ptr(4046, 4047, 1), new Range16.ptr(4053, 4056, 1), new Range16.ptr(4254, 4255, 1), new Range16.ptr(5008, 5017, 1), new Range16.ptr(6464, 6622, 158), new Range16.ptr(6623, 6655, 1), new Range16.ptr(7009, 7018, 1), new Range16.ptr(7028, 7036, 1), new Range16.ptr(8448, 8449, 1), new Range16.ptr(8451, 8454, 1), new Range16.ptr(8456, 8457, 1), new Range16.ptr(8468, 8470, 2), new Range16.ptr(8471, 8478, 7), new Range16.ptr(8479, 8483, 1), new Range16.ptr(8485, 8489, 2), new Range16.ptr(8494, 8506, 12), new Range16.ptr(8507, 8522, 15), new Range16.ptr(8524, 8525, 1), new Range16.ptr(8527, 8586, 59), new Range16.ptr(8587, 8597, 10), new Range16.ptr(8598, 8601, 1), new Range16.ptr(8604, 8607, 1), new Range16.ptr(8609, 8610, 1), new Range16.ptr(8612, 8613, 1), new Range16.ptr(8615, 8621, 1), new Range16.ptr(8623, 8653, 1), new Range16.ptr(8656, 8657, 1), new Range16.ptr(8659, 8661, 2), new Range16.ptr(8662, 8691, 1), new Range16.ptr(8960, 8967, 1), new Range16.ptr(8972, 8991, 1), new Range16.ptr(8994, 9000, 1), new Range16.ptr(9003, 9083, 1), new Range16.ptr(9085, 9114, 1), new Range16.ptr(9140, 9179, 1), new Range16.ptr(9186, 9214, 1), new Range16.ptr(9216, 9254, 1), new Range16.ptr(9280, 9290, 1), new Range16.ptr(9372, 9449, 1), new Range16.ptr(9472, 9654, 1), new Range16.ptr(9656, 9664, 1), new Range16.ptr(9666, 9719, 1), new Range16.ptr(9728, 9838, 1), new Range16.ptr(9840, 10087, 1), new Range16.ptr(10132, 10175, 1), new Range16.ptr(10240, 10495, 1), new Range16.ptr(11008, 11055, 1), new Range16.ptr(11077, 11078, 1), new Range16.ptr(11085, 11123, 1), new Range16.ptr(11126, 11157, 1), new Range16.ptr(11160, 11193, 1), new Range16.ptr(11197, 11208, 1), new Range16.ptr(11210, 11217, 1), new Range16.ptr(11244, 11247, 1), new Range16.ptr(11493, 11498, 1), new Range16.ptr(11904, 11929, 1), new Range16.ptr(11931, 12019, 1), new Range16.ptr(12032, 12245, 1), new Range16.ptr(12272, 12283, 1), new Range16.ptr(12292, 12306, 14), new Range16.ptr(12307, 12320, 13), new Range16.ptr(12342, 12343, 1), new Range16.ptr(12350, 12351, 1), new Range16.ptr(12688, 12689, 1), new Range16.ptr(12694, 12703, 1), new Range16.ptr(12736, 12771, 1), new Range16.ptr(12800, 12830, 1), new Range16.ptr(12842, 12871, 1), new Range16.ptr(12880, 12896, 16), new Range16.ptr(12897, 12927, 1), new Range16.ptr(12938, 12976, 1), new Range16.ptr(12992, 13054, 1), new Range16.ptr(13056, 13311, 1), new Range16.ptr(19904, 19967, 1), new Range16.ptr(42128, 42182, 1), new Range16.ptr(43048, 43051, 1), new Range16.ptr(43062, 43063, 1), new Range16.ptr(43065, 43639, 574), new Range16.ptr(43640, 43641, 1), new Range16.ptr(65021, 65508, 487), new Range16.ptr(65512, 65517, 5), new Range16.ptr(65518, 65532, 14), new Range16.ptr(65533, 65533, 1)]), new sliceType$1([new Range32.ptr(65847, 65847, 1), new Range32.ptr(65848, 65855, 1), new Range32.ptr(65913, 65929, 1), new Range32.ptr(65932, 65934, 1), new Range32.ptr(65936, 65947, 1), new Range32.ptr(65952, 66000, 48), new Range32.ptr(66001, 66044, 1), new Range32.ptr(67703, 67704, 1), new Range32.ptr(68296, 71487, 3191), new Range32.ptr(92988, 92991, 1), new Range32.ptr(92997, 113820, 20823), new Range32.ptr(118784, 119029, 1), new Range32.ptr(119040, 119078, 1), new Range32.ptr(119081, 119140, 1), new Range32.ptr(119146, 119148, 1), new Range32.ptr(119171, 119172, 1), new Range32.ptr(119180, 119209, 1), new Range32.ptr(119214, 119272, 1), new Range32.ptr(119296, 119361, 1), new Range32.ptr(119365, 119552, 187), new Range32.ptr(119553, 119638, 1), new Range32.ptr(120832, 121343, 1), new Range32.ptr(121399, 121402, 1), new Range32.ptr(121453, 121460, 1), new Range32.ptr(121462, 121475, 1), new Range32.ptr(121477, 121478, 1), new Range32.ptr(126976, 127019, 1), new Range32.ptr(127024, 127123, 1), new Range32.ptr(127136, 127150, 1), new Range32.ptr(127153, 127167, 1), new Range32.ptr(127169, 127183, 1), new Range32.ptr(127185, 127221, 1), new Range32.ptr(127248, 127278, 1), new Range32.ptr(127280, 127339, 1), new Range32.ptr(127344, 127404, 1), new Range32.ptr(127462, 127490, 1), new Range32.ptr(127504, 127547, 1), new Range32.ptr(127552, 127560, 1), new Range32.ptr(127568, 127569, 1), new Range32.ptr(127744, 127994, 1), new Range32.ptr(128000, 128722, 1), new Range32.ptr(128736, 128748, 1), new Range32.ptr(128752, 128758, 1), new Range32.ptr(128768, 128883, 1), new Range32.ptr(128896, 128980, 1), new Range32.ptr(129024, 129035, 1), new Range32.ptr(129040, 129095, 1), new Range32.ptr(129104, 129113, 1), new Range32.ptr(129120, 129159, 1), new Range32.ptr(129168, 129197, 1), new Range32.ptr(129296, 129310, 1), new Range32.ptr(129312, 129319, 1), new Range32.ptr(129328, 129331, 3), new Range32.ptr(129332, 129342, 1), new Range32.ptr(129344, 129355, 1), new Range32.ptr(129360, 129374, 1), new Range32.ptr(129408, 129425, 1), new Range32.ptr(129472, 129472, 1)]), 2);
+ _Z = new RangeTable.ptr(new sliceType([new Range16.ptr(32, 160, 128), new Range16.ptr(5760, 8192, 2432), new Range16.ptr(8193, 8202, 1), new Range16.ptr(8232, 8233, 1), new Range16.ptr(8239, 8287, 48), new Range16.ptr(12288, 12288, 1)]), sliceType$1.nil, 1);
+ _Zl = new RangeTable.ptr(new sliceType([new Range16.ptr(8232, 8232, 1)]), sliceType$1.nil, 0);
+ _Zp = new RangeTable.ptr(new sliceType([new Range16.ptr(8233, 8233, 1)]), sliceType$1.nil, 0);
+ _Zs = new RangeTable.ptr(new sliceType([new Range16.ptr(32, 160, 128), new Range16.ptr(5760, 8192, 2432), new Range16.ptr(8193, 8202, 1), new Range16.ptr(8239, 8287, 48), new Range16.ptr(12288, 12288, 1)]), sliceType$1.nil, 1);
+ $pkg.Cc = _Cc;
+ $pkg.Cf = _Cf;
+ $pkg.Co = _Co;
+ $pkg.Cs = _Cs;
+ $pkg.Digit = _Nd;
+ $pkg.Nd = _Nd;
+ $pkg.Letter = _L;
+ $pkg.L = _L;
+ $pkg.Lm = _Lm;
+ $pkg.Lo = _Lo;
+ $pkg.Ll = _Ll;
+ $pkg.M = _M;
+ $pkg.Mc = _Mc;
+ $pkg.Me = _Me;
+ $pkg.Mn = _Mn;
+ $pkg.Nl = _Nl;
+ $pkg.No = _No;
+ $pkg.N = _N;
+ $pkg.C = _C;
+ $pkg.Pc = _Pc;
+ $pkg.Pd = _Pd;
+ $pkg.Pe = _Pe;
+ $pkg.Pf = _Pf;
+ $pkg.Pi = _Pi;
+ $pkg.Po = _Po;
+ $pkg.Ps = _Ps;
+ $pkg.P = _P;
+ $pkg.Sc = _Sc;
+ $pkg.Sk = _Sk;
+ $pkg.Sm = _Sm;
+ $pkg.So = _So;
+ $pkg.Z = _Z;
+ $pkg.S = _S;
+ $pkg.PrintRanges = new sliceType$2([$pkg.L, $pkg.M, $pkg.N, $pkg.P, $pkg.S]);
+ $pkg.Lt = _Lt;
+ $pkg.Lu = _Lu;
+ $pkg.Zl = _Zl;
+ $pkg.Zp = _Zp;
+ $pkg.Zs = _Zs;
+ $pkg.Categories = $makeMap($String.keyFor, [{ k: "C", v: $pkg.C }, { k: "Cc", v: $pkg.Cc }, { k: "Cf", v: $pkg.Cf }, { k: "Co", v: $pkg.Co }, { k: "Cs", v: $pkg.Cs }, { k: "L", v: $pkg.L }, { k: "Ll", v: $pkg.Ll }, { k: "Lm", v: $pkg.Lm }, { k: "Lo", v: $pkg.Lo }, { k: "Lt", v: $pkg.Lt }, { k: "Lu", v: $pkg.Lu }, { k: "M", v: $pkg.M }, { k: "Mc", v: $pkg.Mc }, { k: "Me", v: $pkg.Me }, { k: "Mn", v: $pkg.Mn }, { k: "N", v: $pkg.N }, { k: "Nd", v: $pkg.Nd }, { k: "Nl", v: $pkg.Nl }, { k: "No", v: $pkg.No }, { k: "P", v: $pkg.P }, { k: "Pc", v: $pkg.Pc }, { k: "Pd", v: $pkg.Pd }, { k: "Pe", v: $pkg.Pe }, { k: "Pf", v: $pkg.Pf }, { k: "Pi", v: $pkg.Pi }, { k: "Po", v: $pkg.Po }, { k: "Ps", v: $pkg.Ps }, { k: "S", v: $pkg.S }, { k: "Sc", v: $pkg.Sc }, { k: "Sk", v: $pkg.Sk }, { k: "Sm", v: $pkg.Sm }, { k: "So", v: $pkg.So }, { k: "Z", v: $pkg.Z }, { k: "Zl", v: $pkg.Zl }, { k: "Zp", v: $pkg.Zp }, { k: "Zs", v: $pkg.Zs }]);
+ _Adlam = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(125184, 125258, 1), new Range32.ptr(125264, 125273, 1), new Range32.ptr(125278, 125279, 1)]), 0);
+ _Ahom = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(71424, 71449, 1), new Range32.ptr(71453, 71467, 1), new Range32.ptr(71472, 71487, 1)]), 0);
+ _Anatolian_Hieroglyphs = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(82944, 83526, 1)]), 0);
+ _Arabic = new RangeTable.ptr(new sliceType([new Range16.ptr(1536, 1540, 1), new Range16.ptr(1542, 1547, 1), new Range16.ptr(1549, 1562, 1), new Range16.ptr(1566, 1566, 1), new Range16.ptr(1568, 1599, 1), new Range16.ptr(1601, 1610, 1), new Range16.ptr(1622, 1647, 1), new Range16.ptr(1649, 1756, 1), new Range16.ptr(1758, 1791, 1), new Range16.ptr(1872, 1919, 1), new Range16.ptr(2208, 2228, 1), new Range16.ptr(2230, 2237, 1), new Range16.ptr(2260, 2273, 1), new Range16.ptr(2275, 2303, 1), new Range16.ptr(64336, 64449, 1), new Range16.ptr(64467, 64829, 1), new Range16.ptr(64848, 64911, 1), new Range16.ptr(64914, 64967, 1), new Range16.ptr(65008, 65021, 1), new Range16.ptr(65136, 65140, 1), new Range16.ptr(65142, 65276, 1)]), new sliceType$1([new Range32.ptr(69216, 69246, 1), new Range32.ptr(126464, 126467, 1), new Range32.ptr(126469, 126495, 1), new Range32.ptr(126497, 126498, 1), new Range32.ptr(126500, 126500, 1), new Range32.ptr(126503, 126503, 1), new Range32.ptr(126505, 126514, 1), new Range32.ptr(126516, 126519, 1), new Range32.ptr(126521, 126521, 1), new Range32.ptr(126523, 126523, 1), new Range32.ptr(126530, 126530, 1), new Range32.ptr(126535, 126535, 1), new Range32.ptr(126537, 126537, 1), new Range32.ptr(126539, 126539, 1), new Range32.ptr(126541, 126543, 1), new Range32.ptr(126545, 126546, 1), new Range32.ptr(126548, 126548, 1), new Range32.ptr(126551, 126551, 1), new Range32.ptr(126553, 126553, 1), new Range32.ptr(126555, 126555, 1), new Range32.ptr(126557, 126557, 1), new Range32.ptr(126559, 126559, 1), new Range32.ptr(126561, 126562, 1), new Range32.ptr(126564, 126564, 1), new Range32.ptr(126567, 126570, 1), new Range32.ptr(126572, 126578, 1), new Range32.ptr(126580, 126583, 1), new Range32.ptr(126585, 126588, 1), new Range32.ptr(126590, 126590, 1), new Range32.ptr(126592, 126601, 1), new Range32.ptr(126603, 126619, 1), new Range32.ptr(126625, 126627, 1), new Range32.ptr(126629, 126633, 1), new Range32.ptr(126635, 126651, 1), new Range32.ptr(126704, 126705, 1)]), 0);
+ _Armenian = new RangeTable.ptr(new sliceType([new Range16.ptr(1329, 1366, 1), new Range16.ptr(1369, 1375, 1), new Range16.ptr(1377, 1415, 1), new Range16.ptr(1418, 1418, 1), new Range16.ptr(1421, 1423, 1), new Range16.ptr(64275, 64279, 1)]), sliceType$1.nil, 0);
+ _Avestan = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(68352, 68405, 1), new Range32.ptr(68409, 68415, 1)]), 0);
+ _Balinese = new RangeTable.ptr(new sliceType([new Range16.ptr(6912, 6987, 1), new Range16.ptr(6992, 7036, 1)]), sliceType$1.nil, 0);
+ _Bamum = new RangeTable.ptr(new sliceType([new Range16.ptr(42656, 42743, 1)]), new sliceType$1([new Range32.ptr(92160, 92728, 1)]), 0);
+ _Bassa_Vah = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(92880, 92909, 1), new Range32.ptr(92912, 92917, 1)]), 0);
+ _Batak = new RangeTable.ptr(new sliceType([new Range16.ptr(7104, 7155, 1), new Range16.ptr(7164, 7167, 1)]), sliceType$1.nil, 0);
+ _Bengali = new RangeTable.ptr(new sliceType([new Range16.ptr(2432, 2435, 1), new Range16.ptr(2437, 2444, 1), new Range16.ptr(2447, 2448, 1), new Range16.ptr(2451, 2472, 1), new Range16.ptr(2474, 2480, 1), new Range16.ptr(2482, 2482, 1), new Range16.ptr(2486, 2489, 1), new Range16.ptr(2492, 2500, 1), new Range16.ptr(2503, 2504, 1), new Range16.ptr(2507, 2510, 1), new Range16.ptr(2519, 2519, 1), new Range16.ptr(2524, 2525, 1), new Range16.ptr(2527, 2531, 1), new Range16.ptr(2534, 2555, 1)]), sliceType$1.nil, 0);
+ _Bhaiksuki = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(72704, 72712, 1), new Range32.ptr(72714, 72758, 1), new Range32.ptr(72760, 72773, 1), new Range32.ptr(72784, 72812, 1)]), 0);
+ _Bopomofo = new RangeTable.ptr(new sliceType([new Range16.ptr(746, 747, 1), new Range16.ptr(12549, 12589, 1), new Range16.ptr(12704, 12730, 1)]), sliceType$1.nil, 0);
+ _Brahmi = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(69632, 69709, 1), new Range32.ptr(69714, 69743, 1), new Range32.ptr(69759, 69759, 1)]), 0);
+ _Braille = new RangeTable.ptr(new sliceType([new Range16.ptr(10240, 10495, 1)]), sliceType$1.nil, 0);
+ _Buginese = new RangeTable.ptr(new sliceType([new Range16.ptr(6656, 6683, 1), new Range16.ptr(6686, 6687, 1)]), sliceType$1.nil, 0);
+ _Buhid = new RangeTable.ptr(new sliceType([new Range16.ptr(5952, 5971, 1)]), sliceType$1.nil, 0);
+ _Canadian_Aboriginal = new RangeTable.ptr(new sliceType([new Range16.ptr(5120, 5759, 1), new Range16.ptr(6320, 6389, 1)]), sliceType$1.nil, 0);
+ _Carian = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(66208, 66256, 1)]), 0);
+ _Caucasian_Albanian = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(66864, 66915, 1), new Range32.ptr(66927, 66927, 1)]), 0);
+ _Chakma = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(69888, 69940, 1), new Range32.ptr(69942, 69955, 1)]), 0);
+ _Cham = new RangeTable.ptr(new sliceType([new Range16.ptr(43520, 43574, 1), new Range16.ptr(43584, 43597, 1), new Range16.ptr(43600, 43609, 1), new Range16.ptr(43612, 43615, 1)]), sliceType$1.nil, 0);
+ _Cherokee = new RangeTable.ptr(new sliceType([new Range16.ptr(5024, 5109, 1), new Range16.ptr(5112, 5117, 1), new Range16.ptr(43888, 43967, 1)]), sliceType$1.nil, 0);
+ _Common = new RangeTable.ptr(new sliceType([new Range16.ptr(0, 64, 1), new Range16.ptr(91, 96, 1), new Range16.ptr(123, 169, 1), new Range16.ptr(171, 185, 1), new Range16.ptr(187, 191, 1), new Range16.ptr(215, 215, 1), new Range16.ptr(247, 247, 1), new Range16.ptr(697, 735, 1), new Range16.ptr(741, 745, 1), new Range16.ptr(748, 767, 1), new Range16.ptr(884, 884, 1), new Range16.ptr(894, 894, 1), new Range16.ptr(901, 901, 1), new Range16.ptr(903, 903, 1), new Range16.ptr(1417, 1417, 1), new Range16.ptr(1541, 1541, 1), new Range16.ptr(1548, 1548, 1), new Range16.ptr(1563, 1564, 1), new Range16.ptr(1567, 1567, 1), new Range16.ptr(1600, 1600, 1), new Range16.ptr(1757, 1757, 1), new Range16.ptr(2274, 2274, 1), new Range16.ptr(2404, 2405, 1), new Range16.ptr(3647, 3647, 1), new Range16.ptr(4053, 4056, 1), new Range16.ptr(4347, 4347, 1), new Range16.ptr(5867, 5869, 1), new Range16.ptr(5941, 5942, 1), new Range16.ptr(6146, 6147, 1), new Range16.ptr(6149, 6149, 1), new Range16.ptr(7379, 7379, 1), new Range16.ptr(7393, 7393, 1), new Range16.ptr(7401, 7404, 1), new Range16.ptr(7406, 7411, 1), new Range16.ptr(7413, 7414, 1), new Range16.ptr(8192, 8203, 1), new Range16.ptr(8206, 8292, 1), new Range16.ptr(8294, 8304, 1), new Range16.ptr(8308, 8318, 1), new Range16.ptr(8320, 8334, 1), new Range16.ptr(8352, 8382, 1), new Range16.ptr(8448, 8485, 1), new Range16.ptr(8487, 8489, 1), new Range16.ptr(8492, 8497, 1), new Range16.ptr(8499, 8525, 1), new Range16.ptr(8527, 8543, 1), new Range16.ptr(8585, 8587, 1), new Range16.ptr(8592, 9214, 1), new Range16.ptr(9216, 9254, 1), new Range16.ptr(9280, 9290, 1), new Range16.ptr(9312, 10239, 1), new Range16.ptr(10496, 11123, 1), new Range16.ptr(11126, 11157, 1), new Range16.ptr(11160, 11193, 1), new Range16.ptr(11197, 11208, 1), new Range16.ptr(11210, 11217, 1), new Range16.ptr(11244, 11247, 1), new Range16.ptr(11776, 11844, 1), new Range16.ptr(12272, 12283, 1), new Range16.ptr(12288, 12292, 1), new Range16.ptr(12294, 12294, 1), new Range16.ptr(12296, 12320, 1), new Range16.ptr(12336, 12343, 1), new Range16.ptr(12348, 12351, 1), new Range16.ptr(12443, 12444, 1), new Range16.ptr(12448, 12448, 1), new Range16.ptr(12539, 12540, 1), new Range16.ptr(12688, 12703, 1), new Range16.ptr(12736, 12771, 1), new Range16.ptr(12832, 12895, 1), new Range16.ptr(12927, 13007, 1), new Range16.ptr(13144, 13311, 1), new Range16.ptr(19904, 19967, 1), new Range16.ptr(42752, 42785, 1), new Range16.ptr(42888, 42890, 1), new Range16.ptr(43056, 43065, 1), new Range16.ptr(43310, 43310, 1), new Range16.ptr(43471, 43471, 1), new Range16.ptr(43867, 43867, 1), new Range16.ptr(64830, 64831, 1), new Range16.ptr(65040, 65049, 1), new Range16.ptr(65072, 65106, 1), new Range16.ptr(65108, 65126, 1), new Range16.ptr(65128, 65131, 1), new Range16.ptr(65279, 65279, 1), new Range16.ptr(65281, 65312, 1), new Range16.ptr(65339, 65344, 1), new Range16.ptr(65371, 65381, 1), new Range16.ptr(65392, 65392, 1), new Range16.ptr(65438, 65439, 1), new Range16.ptr(65504, 65510, 1), new Range16.ptr(65512, 65518, 1), new Range16.ptr(65529, 65533, 1)]), new sliceType$1([new Range32.ptr(65792, 65794, 1), new Range32.ptr(65799, 65843, 1), new Range32.ptr(65847, 65855, 1), new Range32.ptr(65936, 65947, 1), new Range32.ptr(66000, 66044, 1), new Range32.ptr(66273, 66299, 1), new Range32.ptr(113824, 113827, 1), new Range32.ptr(118784, 119029, 1), new Range32.ptr(119040, 119078, 1), new Range32.ptr(119081, 119142, 1), new Range32.ptr(119146, 119162, 1), new Range32.ptr(119171, 119172, 1), new Range32.ptr(119180, 119209, 1), new Range32.ptr(119214, 119272, 1), new Range32.ptr(119552, 119638, 1), new Range32.ptr(119648, 119665, 1), new Range32.ptr(119808, 119892, 1), new Range32.ptr(119894, 119964, 1), new Range32.ptr(119966, 119967, 1), new Range32.ptr(119970, 119970, 1), new Range32.ptr(119973, 119974, 1), new Range32.ptr(119977, 119980, 1), new Range32.ptr(119982, 119993, 1), new Range32.ptr(119995, 119995, 1), new Range32.ptr(119997, 120003, 1), new Range32.ptr(120005, 120069, 1), new Range32.ptr(120071, 120074, 1), new Range32.ptr(120077, 120084, 1), new Range32.ptr(120086, 120092, 1), new Range32.ptr(120094, 120121, 1), new Range32.ptr(120123, 120126, 1), new Range32.ptr(120128, 120132, 1), new Range32.ptr(120134, 120134, 1), new Range32.ptr(120138, 120144, 1), new Range32.ptr(120146, 120485, 1), new Range32.ptr(120488, 120779, 1), new Range32.ptr(120782, 120831, 1), new Range32.ptr(126976, 127019, 1), new Range32.ptr(127024, 127123, 1), new Range32.ptr(127136, 127150, 1), new Range32.ptr(127153, 127167, 1), new Range32.ptr(127169, 127183, 1), new Range32.ptr(127185, 127221, 1), new Range32.ptr(127232, 127244, 1), new Range32.ptr(127248, 127278, 1), new Range32.ptr(127280, 127339, 1), new Range32.ptr(127344, 127404, 1), new Range32.ptr(127462, 127487, 1), new Range32.ptr(127489, 127490, 1), new Range32.ptr(127504, 127547, 1), new Range32.ptr(127552, 127560, 1), new Range32.ptr(127568, 127569, 1), new Range32.ptr(127744, 128722, 1), new Range32.ptr(128736, 128748, 1), new Range32.ptr(128752, 128758, 1), new Range32.ptr(128768, 128883, 1), new Range32.ptr(128896, 128980, 1), new Range32.ptr(129024, 129035, 1), new Range32.ptr(129040, 129095, 1), new Range32.ptr(129104, 129113, 1), new Range32.ptr(129120, 129159, 1), new Range32.ptr(129168, 129197, 1), new Range32.ptr(129296, 129310, 1), new Range32.ptr(129312, 129319, 1), new Range32.ptr(129328, 129328, 1), new Range32.ptr(129331, 129342, 1), new Range32.ptr(129344, 129355, 1), new Range32.ptr(129360, 129374, 1), new Range32.ptr(129408, 129425, 1), new Range32.ptr(129472, 129472, 1), new Range32.ptr(917505, 917505, 1), new Range32.ptr(917536, 917631, 1)]), 7);
+ _Coptic = new RangeTable.ptr(new sliceType([new Range16.ptr(994, 1007, 1), new Range16.ptr(11392, 11507, 1), new Range16.ptr(11513, 11519, 1)]), sliceType$1.nil, 0);
+ _Cuneiform = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(73728, 74649, 1), new Range32.ptr(74752, 74862, 1), new Range32.ptr(74864, 74868, 1), new Range32.ptr(74880, 75075, 1)]), 0);
+ _Cypriot = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(67584, 67589, 1), new Range32.ptr(67592, 67592, 1), new Range32.ptr(67594, 67637, 1), new Range32.ptr(67639, 67640, 1), new Range32.ptr(67644, 67644, 1), new Range32.ptr(67647, 67647, 1)]), 0);
+ _Cyrillic = new RangeTable.ptr(new sliceType([new Range16.ptr(1024, 1156, 1), new Range16.ptr(1159, 1327, 1), new Range16.ptr(7296, 7304, 1), new Range16.ptr(7467, 7467, 1), new Range16.ptr(7544, 7544, 1), new Range16.ptr(11744, 11775, 1), new Range16.ptr(42560, 42655, 1), new Range16.ptr(65070, 65071, 1)]), sliceType$1.nil, 0);
+ _Deseret = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(66560, 66639, 1)]), 0);
+ _Devanagari = new RangeTable.ptr(new sliceType([new Range16.ptr(2304, 2384, 1), new Range16.ptr(2387, 2403, 1), new Range16.ptr(2406, 2431, 1), new Range16.ptr(43232, 43261, 1)]), sliceType$1.nil, 0);
+ _Duployan = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(113664, 113770, 1), new Range32.ptr(113776, 113788, 1), new Range32.ptr(113792, 113800, 1), new Range32.ptr(113808, 113817, 1), new Range32.ptr(113820, 113823, 1)]), 0);
+ _Egyptian_Hieroglyphs = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(77824, 78894, 1)]), 0);
+ _Elbasan = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(66816, 66855, 1)]), 0);
+ _Ethiopic = new RangeTable.ptr(new sliceType([new Range16.ptr(4608, 4680, 1), new Range16.ptr(4682, 4685, 1), new Range16.ptr(4688, 4694, 1), new Range16.ptr(4696, 4696, 1), new Range16.ptr(4698, 4701, 1), new Range16.ptr(4704, 4744, 1), new Range16.ptr(4746, 4749, 1), new Range16.ptr(4752, 4784, 1), new Range16.ptr(4786, 4789, 1), new Range16.ptr(4792, 4798, 1), new Range16.ptr(4800, 4800, 1), new Range16.ptr(4802, 4805, 1), new Range16.ptr(4808, 4822, 1), new Range16.ptr(4824, 4880, 1), new Range16.ptr(4882, 4885, 1), new Range16.ptr(4888, 4954, 1), new Range16.ptr(4957, 4988, 1), new Range16.ptr(4992, 5017, 1), new Range16.ptr(11648, 11670, 1), new Range16.ptr(11680, 11686, 1), new Range16.ptr(11688, 11694, 1), new Range16.ptr(11696, 11702, 1), new Range16.ptr(11704, 11710, 1), new Range16.ptr(11712, 11718, 1), new Range16.ptr(11720, 11726, 1), new Range16.ptr(11728, 11734, 1), new Range16.ptr(11736, 11742, 1), new Range16.ptr(43777, 43782, 1), new Range16.ptr(43785, 43790, 1), new Range16.ptr(43793, 43798, 1), new Range16.ptr(43808, 43814, 1), new Range16.ptr(43816, 43822, 1)]), sliceType$1.nil, 0);
+ _Georgian = new RangeTable.ptr(new sliceType([new Range16.ptr(4256, 4293, 1), new Range16.ptr(4295, 4295, 1), new Range16.ptr(4301, 4301, 1), new Range16.ptr(4304, 4346, 1), new Range16.ptr(4348, 4351, 1), new Range16.ptr(11520, 11557, 1), new Range16.ptr(11559, 11559, 1), new Range16.ptr(11565, 11565, 1)]), sliceType$1.nil, 0);
+ _Glagolitic = new RangeTable.ptr(new sliceType([new Range16.ptr(11264, 11310, 1), new Range16.ptr(11312, 11358, 1)]), new sliceType$1([new Range32.ptr(122880, 122886, 1), new Range32.ptr(122888, 122904, 1), new Range32.ptr(122907, 122913, 1), new Range32.ptr(122915, 122916, 1), new Range32.ptr(122918, 122922, 1)]), 0);
+ _Gothic = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(66352, 66378, 1)]), 0);
+ _Grantha = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(70400, 70403, 1), new Range32.ptr(70405, 70412, 1), new Range32.ptr(70415, 70416, 1), new Range32.ptr(70419, 70440, 1), new Range32.ptr(70442, 70448, 1), new Range32.ptr(70450, 70451, 1), new Range32.ptr(70453, 70457, 1), new Range32.ptr(70460, 70468, 1), new Range32.ptr(70471, 70472, 1), new Range32.ptr(70475, 70477, 1), new Range32.ptr(70480, 70480, 1), new Range32.ptr(70487, 70487, 1), new Range32.ptr(70493, 70499, 1), new Range32.ptr(70502, 70508, 1), new Range32.ptr(70512, 70516, 1)]), 0);
+ _Greek = new RangeTable.ptr(new sliceType([new Range16.ptr(880, 883, 1), new Range16.ptr(885, 887, 1), new Range16.ptr(890, 893, 1), new Range16.ptr(895, 895, 1), new Range16.ptr(900, 900, 1), new Range16.ptr(902, 902, 1), new Range16.ptr(904, 906, 1), new Range16.ptr(908, 908, 1), new Range16.ptr(910, 929, 1), new Range16.ptr(931, 993, 1), new Range16.ptr(1008, 1023, 1), new Range16.ptr(7462, 7466, 1), new Range16.ptr(7517, 7521, 1), new Range16.ptr(7526, 7530, 1), new Range16.ptr(7615, 7615, 1), new Range16.ptr(7936, 7957, 1), new Range16.ptr(7960, 7965, 1), new Range16.ptr(7968, 8005, 1), new Range16.ptr(8008, 8013, 1), new Range16.ptr(8016, 8023, 1), new Range16.ptr(8025, 8025, 1), new Range16.ptr(8027, 8027, 1), new Range16.ptr(8029, 8029, 1), new Range16.ptr(8031, 8061, 1), new Range16.ptr(8064, 8116, 1), new Range16.ptr(8118, 8132, 1), new Range16.ptr(8134, 8147, 1), new Range16.ptr(8150, 8155, 1), new Range16.ptr(8157, 8175, 1), new Range16.ptr(8178, 8180, 1), new Range16.ptr(8182, 8190, 1), new Range16.ptr(8486, 8486, 1), new Range16.ptr(43877, 43877, 1)]), new sliceType$1([new Range32.ptr(65856, 65934, 1), new Range32.ptr(65952, 65952, 1), new Range32.ptr(119296, 119365, 1)]), 0);
+ _Gujarati = new RangeTable.ptr(new sliceType([new Range16.ptr(2689, 2691, 1), new Range16.ptr(2693, 2701, 1), new Range16.ptr(2703, 2705, 1), new Range16.ptr(2707, 2728, 1), new Range16.ptr(2730, 2736, 1), new Range16.ptr(2738, 2739, 1), new Range16.ptr(2741, 2745, 1), new Range16.ptr(2748, 2757, 1), new Range16.ptr(2759, 2761, 1), new Range16.ptr(2763, 2765, 1), new Range16.ptr(2768, 2768, 1), new Range16.ptr(2784, 2787, 1), new Range16.ptr(2790, 2801, 1), new Range16.ptr(2809, 2809, 1)]), sliceType$1.nil, 0);
+ _Gurmukhi = new RangeTable.ptr(new sliceType([new Range16.ptr(2561, 2563, 1), new Range16.ptr(2565, 2570, 1), new Range16.ptr(2575, 2576, 1), new Range16.ptr(2579, 2600, 1), new Range16.ptr(2602, 2608, 1), new Range16.ptr(2610, 2611, 1), new Range16.ptr(2613, 2614, 1), new Range16.ptr(2616, 2617, 1), new Range16.ptr(2620, 2620, 1), new Range16.ptr(2622, 2626, 1), new Range16.ptr(2631, 2632, 1), new Range16.ptr(2635, 2637, 1), new Range16.ptr(2641, 2641, 1), new Range16.ptr(2649, 2652, 1), new Range16.ptr(2654, 2654, 1), new Range16.ptr(2662, 2677, 1)]), sliceType$1.nil, 0);
+ _Han = new RangeTable.ptr(new sliceType([new Range16.ptr(11904, 11929, 1), new Range16.ptr(11931, 12019, 1), new Range16.ptr(12032, 12245, 1), new Range16.ptr(12293, 12293, 1), new Range16.ptr(12295, 12295, 1), new Range16.ptr(12321, 12329, 1), new Range16.ptr(12344, 12347, 1), new Range16.ptr(13312, 19893, 1), new Range16.ptr(19968, 40917, 1), new Range16.ptr(63744, 64109, 1), new Range16.ptr(64112, 64217, 1)]), new sliceType$1([new Range32.ptr(131072, 173782, 1), new Range32.ptr(173824, 177972, 1), new Range32.ptr(177984, 178205, 1), new Range32.ptr(178208, 183969, 1), new Range32.ptr(194560, 195101, 1)]), 0);
+ _Hangul = new RangeTable.ptr(new sliceType([new Range16.ptr(4352, 4607, 1), new Range16.ptr(12334, 12335, 1), new Range16.ptr(12593, 12686, 1), new Range16.ptr(12800, 12830, 1), new Range16.ptr(12896, 12926, 1), new Range16.ptr(43360, 43388, 1), new Range16.ptr(44032, 55203, 1), new Range16.ptr(55216, 55238, 1), new Range16.ptr(55243, 55291, 1), new Range16.ptr(65440, 65470, 1), new Range16.ptr(65474, 65479, 1), new Range16.ptr(65482, 65487, 1), new Range16.ptr(65490, 65495, 1), new Range16.ptr(65498, 65500, 1)]), sliceType$1.nil, 0);
+ _Hanunoo = new RangeTable.ptr(new sliceType([new Range16.ptr(5920, 5940, 1)]), sliceType$1.nil, 0);
+ _Hatran = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(67808, 67826, 1), new Range32.ptr(67828, 67829, 1), new Range32.ptr(67835, 67839, 1)]), 0);
+ _Hebrew = new RangeTable.ptr(new sliceType([new Range16.ptr(1425, 1479, 1), new Range16.ptr(1488, 1514, 1), new Range16.ptr(1520, 1524, 1), new Range16.ptr(64285, 64310, 1), new Range16.ptr(64312, 64316, 1), new Range16.ptr(64318, 64318, 1), new Range16.ptr(64320, 64321, 1), new Range16.ptr(64323, 64324, 1), new Range16.ptr(64326, 64335, 1)]), sliceType$1.nil, 0);
+ _Hiragana = new RangeTable.ptr(new sliceType([new Range16.ptr(12353, 12438, 1), new Range16.ptr(12445, 12447, 1)]), new sliceType$1([new Range32.ptr(110593, 110593, 1), new Range32.ptr(127488, 127488, 1)]), 0);
+ _Imperial_Aramaic = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(67648, 67669, 1), new Range32.ptr(67671, 67679, 1)]), 0);
+ _Inherited = new RangeTable.ptr(new sliceType([new Range16.ptr(768, 879, 1), new Range16.ptr(1157, 1158, 1), new Range16.ptr(1611, 1621, 1), new Range16.ptr(1648, 1648, 1), new Range16.ptr(2385, 2386, 1), new Range16.ptr(6832, 6846, 1), new Range16.ptr(7376, 7378, 1), new Range16.ptr(7380, 7392, 1), new Range16.ptr(7394, 7400, 1), new Range16.ptr(7405, 7405, 1), new Range16.ptr(7412, 7412, 1), new Range16.ptr(7416, 7417, 1), new Range16.ptr(7616, 7669, 1), new Range16.ptr(7675, 7679, 1), new Range16.ptr(8204, 8205, 1), new Range16.ptr(8400, 8432, 1), new Range16.ptr(12330, 12333, 1), new Range16.ptr(12441, 12442, 1), new Range16.ptr(65024, 65039, 1), new Range16.ptr(65056, 65069, 1)]), new sliceType$1([new Range32.ptr(66045, 66045, 1), new Range32.ptr(66272, 66272, 1), new Range32.ptr(119143, 119145, 1), new Range32.ptr(119163, 119170, 1), new Range32.ptr(119173, 119179, 1), new Range32.ptr(119210, 119213, 1), new Range32.ptr(917760, 917999, 1)]), 0);
+ _Inscriptional_Pahlavi = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(68448, 68466, 1), new Range32.ptr(68472, 68479, 1)]), 0);
+ _Inscriptional_Parthian = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(68416, 68437, 1), new Range32.ptr(68440, 68447, 1)]), 0);
+ _Javanese = new RangeTable.ptr(new sliceType([new Range16.ptr(43392, 43469, 1), new Range16.ptr(43472, 43481, 1), new Range16.ptr(43486, 43487, 1)]), sliceType$1.nil, 0);
+ _Kaithi = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(69760, 69825, 1)]), 0);
+ _Kannada = new RangeTable.ptr(new sliceType([new Range16.ptr(3200, 3203, 1), new Range16.ptr(3205, 3212, 1), new Range16.ptr(3214, 3216, 1), new Range16.ptr(3218, 3240, 1), new Range16.ptr(3242, 3251, 1), new Range16.ptr(3253, 3257, 1), new Range16.ptr(3260, 3268, 1), new Range16.ptr(3270, 3272, 1), new Range16.ptr(3274, 3277, 1), new Range16.ptr(3285, 3286, 1), new Range16.ptr(3294, 3294, 1), new Range16.ptr(3296, 3299, 1), new Range16.ptr(3302, 3311, 1), new Range16.ptr(3313, 3314, 1)]), sliceType$1.nil, 0);
+ _Katakana = new RangeTable.ptr(new sliceType([new Range16.ptr(12449, 12538, 1), new Range16.ptr(12541, 12543, 1), new Range16.ptr(12784, 12799, 1), new Range16.ptr(13008, 13054, 1), new Range16.ptr(13056, 13143, 1), new Range16.ptr(65382, 65391, 1), new Range16.ptr(65393, 65437, 1)]), new sliceType$1([new Range32.ptr(110592, 110592, 1)]), 0);
+ _Kayah_Li = new RangeTable.ptr(new sliceType([new Range16.ptr(43264, 43309, 1), new Range16.ptr(43311, 43311, 1)]), sliceType$1.nil, 0);
+ _Kharoshthi = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(68096, 68099, 1), new Range32.ptr(68101, 68102, 1), new Range32.ptr(68108, 68115, 1), new Range32.ptr(68117, 68119, 1), new Range32.ptr(68121, 68147, 1), new Range32.ptr(68152, 68154, 1), new Range32.ptr(68159, 68167, 1), new Range32.ptr(68176, 68184, 1)]), 0);
+ _Khmer = new RangeTable.ptr(new sliceType([new Range16.ptr(6016, 6109, 1), new Range16.ptr(6112, 6121, 1), new Range16.ptr(6128, 6137, 1), new Range16.ptr(6624, 6655, 1)]), sliceType$1.nil, 0);
+ _Khojki = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(70144, 70161, 1), new Range32.ptr(70163, 70206, 1)]), 0);
+ _Khudawadi = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(70320, 70378, 1), new Range32.ptr(70384, 70393, 1)]), 0);
+ _Lao = new RangeTable.ptr(new sliceType([new Range16.ptr(3713, 3714, 1), new Range16.ptr(3716, 3716, 1), new Range16.ptr(3719, 3720, 1), new Range16.ptr(3722, 3722, 1), new Range16.ptr(3725, 3725, 1), new Range16.ptr(3732, 3735, 1), new Range16.ptr(3737, 3743, 1), new Range16.ptr(3745, 3747, 1), new Range16.ptr(3749, 3749, 1), new Range16.ptr(3751, 3751, 1), new Range16.ptr(3754, 3755, 1), new Range16.ptr(3757, 3769, 1), new Range16.ptr(3771, 3773, 1), new Range16.ptr(3776, 3780, 1), new Range16.ptr(3782, 3782, 1), new Range16.ptr(3784, 3789, 1), new Range16.ptr(3792, 3801, 1), new Range16.ptr(3804, 3807, 1)]), sliceType$1.nil, 0);
+ _Latin = new RangeTable.ptr(new sliceType([new Range16.ptr(65, 90, 1), new Range16.ptr(97, 122, 1), new Range16.ptr(170, 170, 1), new Range16.ptr(186, 186, 1), new Range16.ptr(192, 214, 1), new Range16.ptr(216, 246, 1), new Range16.ptr(248, 696, 1), new Range16.ptr(736, 740, 1), new Range16.ptr(7424, 7461, 1), new Range16.ptr(7468, 7516, 1), new Range16.ptr(7522, 7525, 1), new Range16.ptr(7531, 7543, 1), new Range16.ptr(7545, 7614, 1), new Range16.ptr(7680, 7935, 1), new Range16.ptr(8305, 8305, 1), new Range16.ptr(8319, 8319, 1), new Range16.ptr(8336, 8348, 1), new Range16.ptr(8490, 8491, 1), new Range16.ptr(8498, 8498, 1), new Range16.ptr(8526, 8526, 1), new Range16.ptr(8544, 8584, 1), new Range16.ptr(11360, 11391, 1), new Range16.ptr(42786, 42887, 1), new Range16.ptr(42891, 42926, 1), new Range16.ptr(42928, 42935, 1), new Range16.ptr(42999, 43007, 1), new Range16.ptr(43824, 43866, 1), new Range16.ptr(43868, 43876, 1), new Range16.ptr(64256, 64262, 1), new Range16.ptr(65313, 65338, 1), new Range16.ptr(65345, 65370, 1)]), sliceType$1.nil, 6);
+ _Lepcha = new RangeTable.ptr(new sliceType([new Range16.ptr(7168, 7223, 1), new Range16.ptr(7227, 7241, 1), new Range16.ptr(7245, 7247, 1)]), sliceType$1.nil, 0);
+ _Limbu = new RangeTable.ptr(new sliceType([new Range16.ptr(6400, 6430, 1), new Range16.ptr(6432, 6443, 1), new Range16.ptr(6448, 6459, 1), new Range16.ptr(6464, 6464, 1), new Range16.ptr(6468, 6479, 1)]), sliceType$1.nil, 0);
+ _Linear_A = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(67072, 67382, 1), new Range32.ptr(67392, 67413, 1), new Range32.ptr(67424, 67431, 1)]), 0);
+ _Linear_B = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(65536, 65547, 1), new Range32.ptr(65549, 65574, 1), new Range32.ptr(65576, 65594, 1), new Range32.ptr(65596, 65597, 1), new Range32.ptr(65599, 65613, 1), new Range32.ptr(65616, 65629, 1), new Range32.ptr(65664, 65786, 1)]), 0);
+ _Lisu = new RangeTable.ptr(new sliceType([new Range16.ptr(42192, 42239, 1)]), sliceType$1.nil, 0);
+ _Lycian = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(66176, 66204, 1)]), 0);
+ _Lydian = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(67872, 67897, 1), new Range32.ptr(67903, 67903, 1)]), 0);
+ _Mahajani = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(69968, 70006, 1)]), 0);
+ _Malayalam = new RangeTable.ptr(new sliceType([new Range16.ptr(3329, 3331, 1), new Range16.ptr(3333, 3340, 1), new Range16.ptr(3342, 3344, 1), new Range16.ptr(3346, 3386, 1), new Range16.ptr(3389, 3396, 1), new Range16.ptr(3398, 3400, 1), new Range16.ptr(3402, 3407, 1), new Range16.ptr(3412, 3427, 1), new Range16.ptr(3430, 3455, 1)]), sliceType$1.nil, 0);
+ _Mandaic = new RangeTable.ptr(new sliceType([new Range16.ptr(2112, 2139, 1), new Range16.ptr(2142, 2142, 1)]), sliceType$1.nil, 0);
+ _Manichaean = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(68288, 68326, 1), new Range32.ptr(68331, 68342, 1)]), 0);
+ _Marchen = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(72816, 72847, 1), new Range32.ptr(72850, 72871, 1), new Range32.ptr(72873, 72886, 1)]), 0);
+ _Meetei_Mayek = new RangeTable.ptr(new sliceType([new Range16.ptr(43744, 43766, 1), new Range16.ptr(43968, 44013, 1), new Range16.ptr(44016, 44025, 1)]), sliceType$1.nil, 0);
+ _Mende_Kikakui = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(124928, 125124, 1), new Range32.ptr(125127, 125142, 1)]), 0);
+ _Meroitic_Cursive = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(68000, 68023, 1), new Range32.ptr(68028, 68047, 1), new Range32.ptr(68050, 68095, 1)]), 0);
+ _Meroitic_Hieroglyphs = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(67968, 67999, 1)]), 0);
+ _Miao = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(93952, 94020, 1), new Range32.ptr(94032, 94078, 1), new Range32.ptr(94095, 94111, 1)]), 0);
+ _Modi = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(71168, 71236, 1), new Range32.ptr(71248, 71257, 1)]), 0);
+ _Mongolian = new RangeTable.ptr(new sliceType([new Range16.ptr(6144, 6145, 1), new Range16.ptr(6148, 6148, 1), new Range16.ptr(6150, 6158, 1), new Range16.ptr(6160, 6169, 1), new Range16.ptr(6176, 6263, 1), new Range16.ptr(6272, 6314, 1)]), new sliceType$1([new Range32.ptr(71264, 71276, 1)]), 0);
+ _Mro = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(92736, 92766, 1), new Range32.ptr(92768, 92777, 1), new Range32.ptr(92782, 92783, 1)]), 0);
+ _Multani = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(70272, 70278, 1), new Range32.ptr(70280, 70280, 1), new Range32.ptr(70282, 70285, 1), new Range32.ptr(70287, 70301, 1), new Range32.ptr(70303, 70313, 1)]), 0);
+ _Myanmar = new RangeTable.ptr(new sliceType([new Range16.ptr(4096, 4255, 1), new Range16.ptr(43488, 43518, 1), new Range16.ptr(43616, 43647, 1)]), sliceType$1.nil, 0);
+ _Nabataean = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(67712, 67742, 1), new Range32.ptr(67751, 67759, 1)]), 0);
+ _New_Tai_Lue = new RangeTable.ptr(new sliceType([new Range16.ptr(6528, 6571, 1), new Range16.ptr(6576, 6601, 1), new Range16.ptr(6608, 6618, 1), new Range16.ptr(6622, 6623, 1)]), sliceType$1.nil, 0);
+ _Newa = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(70656, 70745, 1), new Range32.ptr(70747, 70747, 1), new Range32.ptr(70749, 70749, 1)]), 0);
+ _Nko = new RangeTable.ptr(new sliceType([new Range16.ptr(1984, 2042, 1)]), sliceType$1.nil, 0);
+ _Ogham = new RangeTable.ptr(new sliceType([new Range16.ptr(5760, 5788, 1)]), sliceType$1.nil, 0);
+ _Ol_Chiki = new RangeTable.ptr(new sliceType([new Range16.ptr(7248, 7295, 1)]), sliceType$1.nil, 0);
+ _Old_Hungarian = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(68736, 68786, 1), new Range32.ptr(68800, 68850, 1), new Range32.ptr(68858, 68863, 1)]), 0);
+ _Old_Italic = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(66304, 66339, 1)]), 0);
+ _Old_North_Arabian = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(68224, 68255, 1)]), 0);
+ _Old_Permic = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(66384, 66426, 1)]), 0);
+ _Old_Persian = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(66464, 66499, 1), new Range32.ptr(66504, 66517, 1)]), 0);
+ _Old_South_Arabian = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(68192, 68223, 1)]), 0);
+ _Old_Turkic = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(68608, 68680, 1)]), 0);
+ _Oriya = new RangeTable.ptr(new sliceType([new Range16.ptr(2817, 2819, 1), new Range16.ptr(2821, 2828, 1), new Range16.ptr(2831, 2832, 1), new Range16.ptr(2835, 2856, 1), new Range16.ptr(2858, 2864, 1), new Range16.ptr(2866, 2867, 1), new Range16.ptr(2869, 2873, 1), new Range16.ptr(2876, 2884, 1), new Range16.ptr(2887, 2888, 1), new Range16.ptr(2891, 2893, 1), new Range16.ptr(2902, 2903, 1), new Range16.ptr(2908, 2909, 1), new Range16.ptr(2911, 2915, 1), new Range16.ptr(2918, 2935, 1)]), sliceType$1.nil, 0);
+ _Osage = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(66736, 66771, 1), new Range32.ptr(66776, 66811, 1)]), 0);
+ _Osmanya = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(66688, 66717, 1), new Range32.ptr(66720, 66729, 1)]), 0);
+ _Pahawh_Hmong = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(92928, 92997, 1), new Range32.ptr(93008, 93017, 1), new Range32.ptr(93019, 93025, 1), new Range32.ptr(93027, 93047, 1), new Range32.ptr(93053, 93071, 1)]), 0);
+ _Palmyrene = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(67680, 67711, 1)]), 0);
+ _Pau_Cin_Hau = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(72384, 72440, 1)]), 0);
+ _Phags_Pa = new RangeTable.ptr(new sliceType([new Range16.ptr(43072, 43127, 1)]), sliceType$1.nil, 0);
+ _Phoenician = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(67840, 67867, 1), new Range32.ptr(67871, 67871, 1)]), 0);
+ _Psalter_Pahlavi = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(68480, 68497, 1), new Range32.ptr(68505, 68508, 1), new Range32.ptr(68521, 68527, 1)]), 0);
+ _Rejang = new RangeTable.ptr(new sliceType([new Range16.ptr(43312, 43347, 1), new Range16.ptr(43359, 43359, 1)]), sliceType$1.nil, 0);
+ _Runic = new RangeTable.ptr(new sliceType([new Range16.ptr(5792, 5866, 1), new Range16.ptr(5870, 5880, 1)]), sliceType$1.nil, 0);
+ _Samaritan = new RangeTable.ptr(new sliceType([new Range16.ptr(2048, 2093, 1), new Range16.ptr(2096, 2110, 1)]), sliceType$1.nil, 0);
+ _Saurashtra = new RangeTable.ptr(new sliceType([new Range16.ptr(43136, 43205, 1), new Range16.ptr(43214, 43225, 1)]), sliceType$1.nil, 0);
+ _Sharada = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(70016, 70093, 1), new Range32.ptr(70096, 70111, 1)]), 0);
+ _Shavian = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(66640, 66687, 1)]), 0);
+ _Siddham = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(71040, 71093, 1), new Range32.ptr(71096, 71133, 1)]), 0);
+ _SignWriting = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(120832, 121483, 1), new Range32.ptr(121499, 121503, 1), new Range32.ptr(121505, 121519, 1)]), 0);
+ _Sinhala = new RangeTable.ptr(new sliceType([new Range16.ptr(3458, 3459, 1), new Range16.ptr(3461, 3478, 1), new Range16.ptr(3482, 3505, 1), new Range16.ptr(3507, 3515, 1), new Range16.ptr(3517, 3517, 1), new Range16.ptr(3520, 3526, 1), new Range16.ptr(3530, 3530, 1), new Range16.ptr(3535, 3540, 1), new Range16.ptr(3542, 3542, 1), new Range16.ptr(3544, 3551, 1), new Range16.ptr(3558, 3567, 1), new Range16.ptr(3570, 3572, 1)]), new sliceType$1([new Range32.ptr(70113, 70132, 1)]), 0);
+ _Sora_Sompeng = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(69840, 69864, 1), new Range32.ptr(69872, 69881, 1)]), 0);
+ _Sundanese = new RangeTable.ptr(new sliceType([new Range16.ptr(7040, 7103, 1), new Range16.ptr(7360, 7367, 1)]), sliceType$1.nil, 0);
+ _Syloti_Nagri = new RangeTable.ptr(new sliceType([new Range16.ptr(43008, 43051, 1)]), sliceType$1.nil, 0);
+ _Syriac = new RangeTable.ptr(new sliceType([new Range16.ptr(1792, 1805, 1), new Range16.ptr(1807, 1866, 1), new Range16.ptr(1869, 1871, 1)]), sliceType$1.nil, 0);
+ _Tagalog = new RangeTable.ptr(new sliceType([new Range16.ptr(5888, 5900, 1), new Range16.ptr(5902, 5908, 1)]), sliceType$1.nil, 0);
+ _Tagbanwa = new RangeTable.ptr(new sliceType([new Range16.ptr(5984, 5996, 1), new Range16.ptr(5998, 6000, 1), new Range16.ptr(6002, 6003, 1)]), sliceType$1.nil, 0);
+ _Tai_Le = new RangeTable.ptr(new sliceType([new Range16.ptr(6480, 6509, 1), new Range16.ptr(6512, 6516, 1)]), sliceType$1.nil, 0);
+ _Tai_Tham = new RangeTable.ptr(new sliceType([new Range16.ptr(6688, 6750, 1), new Range16.ptr(6752, 6780, 1), new Range16.ptr(6783, 6793, 1), new Range16.ptr(6800, 6809, 1), new Range16.ptr(6816, 6829, 1)]), sliceType$1.nil, 0);
+ _Tai_Viet = new RangeTable.ptr(new sliceType([new Range16.ptr(43648, 43714, 1), new Range16.ptr(43739, 43743, 1)]), sliceType$1.nil, 0);
+ _Takri = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(71296, 71351, 1), new Range32.ptr(71360, 71369, 1)]), 0);
+ _Tamil = new RangeTable.ptr(new sliceType([new Range16.ptr(2946, 2947, 1), new Range16.ptr(2949, 2954, 1), new Range16.ptr(2958, 2960, 1), new Range16.ptr(2962, 2965, 1), new Range16.ptr(2969, 2970, 1), new Range16.ptr(2972, 2972, 1), new Range16.ptr(2974, 2975, 1), new Range16.ptr(2979, 2980, 1), new Range16.ptr(2984, 2986, 1), new Range16.ptr(2990, 3001, 1), new Range16.ptr(3006, 3010, 1), new Range16.ptr(3014, 3016, 1), new Range16.ptr(3018, 3021, 1), new Range16.ptr(3024, 3024, 1), new Range16.ptr(3031, 3031, 1), new Range16.ptr(3046, 3066, 1)]), sliceType$1.nil, 0);
+ _Tangut = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(94176, 94176, 1), new Range32.ptr(94208, 100332, 1), new Range32.ptr(100352, 101106, 1)]), 0);
+ _Telugu = new RangeTable.ptr(new sliceType([new Range16.ptr(3072, 3075, 1), new Range16.ptr(3077, 3084, 1), new Range16.ptr(3086, 3088, 1), new Range16.ptr(3090, 3112, 1), new Range16.ptr(3114, 3129, 1), new Range16.ptr(3133, 3140, 1), new Range16.ptr(3142, 3144, 1), new Range16.ptr(3146, 3149, 1), new Range16.ptr(3157, 3158, 1), new Range16.ptr(3160, 3162, 1), new Range16.ptr(3168, 3171, 1), new Range16.ptr(3174, 3183, 1), new Range16.ptr(3192, 3199, 1)]), sliceType$1.nil, 0);
+ _Thaana = new RangeTable.ptr(new sliceType([new Range16.ptr(1920, 1969, 1)]), sliceType$1.nil, 0);
+ _Thai = new RangeTable.ptr(new sliceType([new Range16.ptr(3585, 3642, 1), new Range16.ptr(3648, 3675, 1)]), sliceType$1.nil, 0);
+ _Tibetan = new RangeTable.ptr(new sliceType([new Range16.ptr(3840, 3911, 1), new Range16.ptr(3913, 3948, 1), new Range16.ptr(3953, 3991, 1), new Range16.ptr(3993, 4028, 1), new Range16.ptr(4030, 4044, 1), new Range16.ptr(4046, 4052, 1), new Range16.ptr(4057, 4058, 1)]), sliceType$1.nil, 0);
+ _Tifinagh = new RangeTable.ptr(new sliceType([new Range16.ptr(11568, 11623, 1), new Range16.ptr(11631, 11632, 1), new Range16.ptr(11647, 11647, 1)]), sliceType$1.nil, 0);
+ _Tirhuta = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(70784, 70855, 1), new Range32.ptr(70864, 70873, 1)]), 0);
+ _Ugaritic = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(66432, 66461, 1), new Range32.ptr(66463, 66463, 1)]), 0);
+ _Vai = new RangeTable.ptr(new sliceType([new Range16.ptr(42240, 42539, 1)]), sliceType$1.nil, 0);
+ _Warang_Citi = new RangeTable.ptr(new sliceType([]), new sliceType$1([new Range32.ptr(71840, 71922, 1), new Range32.ptr(71935, 71935, 1)]), 0);
+ _Yi = new RangeTable.ptr(new sliceType([new Range16.ptr(40960, 42124, 1), new Range16.ptr(42128, 42182, 1)]), sliceType$1.nil, 0);
+ $pkg.Adlam = _Adlam;
+ $pkg.Ahom = _Ahom;
+ $pkg.Anatolian_Hieroglyphs = _Anatolian_Hieroglyphs;
+ $pkg.Arabic = _Arabic;
+ $pkg.Armenian = _Armenian;
+ $pkg.Avestan = _Avestan;
+ $pkg.Balinese = _Balinese;
+ $pkg.Bamum = _Bamum;
+ $pkg.Bassa_Vah = _Bassa_Vah;
+ $pkg.Batak = _Batak;
+ $pkg.Bengali = _Bengali;
+ $pkg.Bhaiksuki = _Bhaiksuki;
+ $pkg.Bopomofo = _Bopomofo;
+ $pkg.Brahmi = _Brahmi;
+ $pkg.Braille = _Braille;
+ $pkg.Buginese = _Buginese;
+ $pkg.Buhid = _Buhid;
+ $pkg.Canadian_Aboriginal = _Canadian_Aboriginal;
+ $pkg.Carian = _Carian;
+ $pkg.Caucasian_Albanian = _Caucasian_Albanian;
+ $pkg.Chakma = _Chakma;
+ $pkg.Cham = _Cham;
+ $pkg.Cherokee = _Cherokee;
+ $pkg.Common = _Common;
+ $pkg.Coptic = _Coptic;
+ $pkg.Cuneiform = _Cuneiform;
+ $pkg.Cypriot = _Cypriot;
+ $pkg.Cyrillic = _Cyrillic;
+ $pkg.Deseret = _Deseret;
+ $pkg.Devanagari = _Devanagari;
+ $pkg.Duployan = _Duployan;
+ $pkg.Egyptian_Hieroglyphs = _Egyptian_Hieroglyphs;
+ $pkg.Elbasan = _Elbasan;
+ $pkg.Ethiopic = _Ethiopic;
+ $pkg.Georgian = _Georgian;
+ $pkg.Glagolitic = _Glagolitic;
+ $pkg.Gothic = _Gothic;
+ $pkg.Grantha = _Grantha;
+ $pkg.Greek = _Greek;
+ $pkg.Gujarati = _Gujarati;
+ $pkg.Gurmukhi = _Gurmukhi;
+ $pkg.Han = _Han;
+ $pkg.Hangul = _Hangul;
+ $pkg.Hanunoo = _Hanunoo;
+ $pkg.Hatran = _Hatran;
+ $pkg.Hebrew = _Hebrew;
+ $pkg.Hiragana = _Hiragana;
+ $pkg.Imperial_Aramaic = _Imperial_Aramaic;
+ $pkg.Inherited = _Inherited;
+ $pkg.Inscriptional_Pahlavi = _Inscriptional_Pahlavi;
+ $pkg.Inscriptional_Parthian = _Inscriptional_Parthian;
+ $pkg.Javanese = _Javanese;
+ $pkg.Kaithi = _Kaithi;
+ $pkg.Kannada = _Kannada;
+ $pkg.Katakana = _Katakana;
+ $pkg.Kayah_Li = _Kayah_Li;
+ $pkg.Kharoshthi = _Kharoshthi;
+ $pkg.Khmer = _Khmer;
+ $pkg.Khojki = _Khojki;
+ $pkg.Khudawadi = _Khudawadi;
+ $pkg.Lao = _Lao;
+ $pkg.Latin = _Latin;
+ $pkg.Lepcha = _Lepcha;
+ $pkg.Limbu = _Limbu;
+ $pkg.Linear_A = _Linear_A;
+ $pkg.Linear_B = _Linear_B;
+ $pkg.Lisu = _Lisu;
+ $pkg.Lycian = _Lycian;
+ $pkg.Lydian = _Lydian;
+ $pkg.Mahajani = _Mahajani;
+ $pkg.Malayalam = _Malayalam;
+ $pkg.Mandaic = _Mandaic;
+ $pkg.Manichaean = _Manichaean;
+ $pkg.Marchen = _Marchen;
+ $pkg.Meetei_Mayek = _Meetei_Mayek;
+ $pkg.Mende_Kikakui = _Mende_Kikakui;
+ $pkg.Meroitic_Cursive = _Meroitic_Cursive;
+ $pkg.Meroitic_Hieroglyphs = _Meroitic_Hieroglyphs;
+ $pkg.Miao = _Miao;
+ $pkg.Modi = _Modi;
+ $pkg.Mongolian = _Mongolian;
+ $pkg.Mro = _Mro;
+ $pkg.Multani = _Multani;
+ $pkg.Myanmar = _Myanmar;
+ $pkg.Nabataean = _Nabataean;
+ $pkg.New_Tai_Lue = _New_Tai_Lue;
+ $pkg.Newa = _Newa;
+ $pkg.Nko = _Nko;
+ $pkg.Ogham = _Ogham;
+ $pkg.Ol_Chiki = _Ol_Chiki;
+ $pkg.Old_Hungarian = _Old_Hungarian;
+ $pkg.Old_Italic = _Old_Italic;
+ $pkg.Old_North_Arabian = _Old_North_Arabian;
+ $pkg.Old_Permic = _Old_Permic;
+ $pkg.Old_Persian = _Old_Persian;
+ $pkg.Old_South_Arabian = _Old_South_Arabian;
+ $pkg.Old_Turkic = _Old_Turkic;
+ $pkg.Oriya = _Oriya;
+ $pkg.Osage = _Osage;
+ $pkg.Osmanya = _Osmanya;
+ $pkg.Pahawh_Hmong = _Pahawh_Hmong;
+ $pkg.Palmyrene = _Palmyrene;
+ $pkg.Pau_Cin_Hau = _Pau_Cin_Hau;
+ $pkg.Phags_Pa = _Phags_Pa;
+ $pkg.Phoenician = _Phoenician;
+ $pkg.Psalter_Pahlavi = _Psalter_Pahlavi;
+ $pkg.Rejang = _Rejang;
+ $pkg.Runic = _Runic;
+ $pkg.Samaritan = _Samaritan;
+ $pkg.Saurashtra = _Saurashtra;
+ $pkg.Sharada = _Sharada;
+ $pkg.Shavian = _Shavian;
+ $pkg.Siddham = _Siddham;
+ $pkg.SignWriting = _SignWriting;
+ $pkg.Sinhala = _Sinhala;
+ $pkg.Sora_Sompeng = _Sora_Sompeng;
+ $pkg.Sundanese = _Sundanese;
+ $pkg.Syloti_Nagri = _Syloti_Nagri;
+ $pkg.Syriac = _Syriac;
+ $pkg.Tagalog = _Tagalog;
+ $pkg.Tagbanwa = _Tagbanwa;
+ $pkg.Tai_Le = _Tai_Le;
+ $pkg.Tai_Tham = _Tai_Tham;
+ $pkg.Tai_Viet = _Tai_Viet;
+ $pkg.Takri = _Takri;
+ $pkg.Tamil = _Tamil;
+ $pkg.Tangut = _Tangut;
+ $pkg.Telugu = _Telugu;
+ $pkg.Thaana = _Thaana;
+ $pkg.Thai = _Thai;
+ $pkg.Tibetan = _Tibetan;
+ $pkg.Tifinagh = _Tifinagh;
+ $pkg.Tirhuta = _Tirhuta;
+ $pkg.Ugaritic = _Ugaritic;
+ $pkg.Vai = _Vai;
+ $pkg.Warang_Citi = _Warang_Citi;
+ $pkg.Yi = _Yi;
+ $pkg.Scripts = $makeMap($String.keyFor, [{ k: "Adlam", v: $pkg.Adlam }, { k: "Ahom", v: $pkg.Ahom }, { k: "Anatolian_Hieroglyphs", v: $pkg.Anatolian_Hieroglyphs }, { k: "Arabic", v: $pkg.Arabic }, { k: "Armenian", v: $pkg.Armenian }, { k: "Avestan", v: $pkg.Avestan }, { k: "Balinese", v: $pkg.Balinese }, { k: "Bamum", v: $pkg.Bamum }, { k: "Bassa_Vah", v: $pkg.Bassa_Vah }, { k: "Batak", v: $pkg.Batak }, { k: "Bengali", v: $pkg.Bengali }, { k: "Bhaiksuki", v: $pkg.Bhaiksuki }, { k: "Bopomofo", v: $pkg.Bopomofo }, { k: "Brahmi", v: $pkg.Brahmi }, { k: "Braille", v: $pkg.Braille }, { k: "Buginese", v: $pkg.Buginese }, { k: "Buhid", v: $pkg.Buhid }, { k: "Canadian_Aboriginal", v: $pkg.Canadian_Aboriginal }, { k: "Carian", v: $pkg.Carian }, { k: "Caucasian_Albanian", v: $pkg.Caucasian_Albanian }, { k: "Chakma", v: $pkg.Chakma }, { k: "Cham", v: $pkg.Cham }, { k: "Cherokee", v: $pkg.Cherokee }, { k: "Common", v: $pkg.Common }, { k: "Coptic", v: $pkg.Coptic }, { k: "Cuneiform", v: $pkg.Cuneiform }, { k: "Cypriot", v: $pkg.Cypriot }, { k: "Cyrillic", v: $pkg.Cyrillic }, { k: "Deseret", v: $pkg.Deseret }, { k: "Devanagari", v: $pkg.Devanagari }, { k: "Duployan", v: $pkg.Duployan }, { k: "Egyptian_Hieroglyphs", v: $pkg.Egyptian_Hieroglyphs }, { k: "Elbasan", v: $pkg.Elbasan }, { k: "Ethiopic", v: $pkg.Ethiopic }, { k: "Georgian", v: $pkg.Georgian }, { k: "Glagolitic", v: $pkg.Glagolitic }, { k: "Gothic", v: $pkg.Gothic }, { k: "Grantha", v: $pkg.Grantha }, { k: "Greek", v: $pkg.Greek }, { k: "Gujarati", v: $pkg.Gujarati }, { k: "Gurmukhi", v: $pkg.Gurmukhi }, { k: "Han", v: $pkg.Han }, { k: "Hangul", v: $pkg.Hangul }, { k: "Hanunoo", v: $pkg.Hanunoo }, { k: "Hatran", v: $pkg.Hatran }, { k: "Hebrew", v: $pkg.Hebrew }, { k: "Hiragana", v: $pkg.Hiragana }, { k: "Imperial_Aramaic", v: $pkg.Imperial_Aramaic }, { k: "Inherited", v: $pkg.Inherited }, { k: "Inscriptional_Pahlavi", v: $pkg.Inscriptional_Pahlavi }, { k: "Inscriptional_Parthian", v: $pkg.Inscriptional_Parthian }, { k: "Javanese", v: $pkg.Javanese }, { k: "Kaithi", v: $pkg.Kaithi }, { k: "Kannada", v: $pkg.Kannada }, { k: "Katakana", v: $pkg.Katakana }, { k: "Kayah_Li", v: $pkg.Kayah_Li }, { k: "Kharoshthi", v: $pkg.Kharoshthi }, { k: "Khmer", v: $pkg.Khmer }, { k: "Khojki", v: $pkg.Khojki }, { k: "Khudawadi", v: $pkg.Khudawadi }, { k: "Lao", v: $pkg.Lao }, { k: "Latin", v: $pkg.Latin }, { k: "Lepcha", v: $pkg.Lepcha }, { k: "Limbu", v: $pkg.Limbu }, { k: "Linear_A", v: $pkg.Linear_A }, { k: "Linear_B", v: $pkg.Linear_B }, { k: "Lisu", v: $pkg.Lisu }, { k: "Lycian", v: $pkg.Lycian }, { k: "Lydian", v: $pkg.Lydian }, { k: "Mahajani", v: $pkg.Mahajani }, { k: "Malayalam", v: $pkg.Malayalam }, { k: "Mandaic", v: $pkg.Mandaic }, { k: "Manichaean", v: $pkg.Manichaean }, { k: "Marchen", v: $pkg.Marchen }, { k: "Meetei_Mayek", v: $pkg.Meetei_Mayek }, { k: "Mende_Kikakui", v: $pkg.Mende_Kikakui }, { k: "Meroitic_Cursive", v: $pkg.Meroitic_Cursive }, { k: "Meroitic_Hieroglyphs", v: $pkg.Meroitic_Hieroglyphs }, { k: "Miao", v: $pkg.Miao }, { k: "Modi", v: $pkg.Modi }, { k: "Mongolian", v: $pkg.Mongolian }, { k: "Mro", v: $pkg.Mro }, { k: "Multani", v: $pkg.Multani }, { k: "Myanmar", v: $pkg.Myanmar }, { k: "Nabataean", v: $pkg.Nabataean }, { k: "New_Tai_Lue", v: $pkg.New_Tai_Lue }, { k: "Newa", v: $pkg.Newa }, { k: "Nko", v: $pkg.Nko }, { k: "Ogham", v: $pkg.Ogham }, { k: "Ol_Chiki", v: $pkg.Ol_Chiki }, { k: "Old_Hungarian", v: $pkg.Old_Hungarian }, { k: "Old_Italic", v: $pkg.Old_Italic }, { k: "Old_North_Arabian", v: $pkg.Old_North_Arabian }, { k: "Old_Permic", v: $pkg.Old_Permic }, { k: "Old_Persian", v: $pkg.Old_Persian }, { k: "Old_South_Arabian", v: $pkg.Old_South_Arabian }, { k: "Old_Turkic", v: $pkg.Old_Turkic }, { k: "Oriya", v: $pkg.Oriya }, { k: "Osage", v: $pkg.Osage }, { k: "Osmanya", v: $pkg.Osmanya }, { k: "Pahawh_Hmong", v: $pkg.Pahawh_Hmong }, { k: "Palmyrene", v: $pkg.Palmyrene }, { k: "Pau_Cin_Hau", v: $pkg.Pau_Cin_Hau }, { k: "Phags_Pa", v: $pkg.Phags_Pa }, { k: "Phoenician", v: $pkg.Phoenician }, { k: "Psalter_Pahlavi", v: $pkg.Psalter_Pahlavi }, { k: "Rejang", v: $pkg.Rejang }, { k: "Runic", v: $pkg.Runic }, { k: "Samaritan", v: $pkg.Samaritan }, { k: "Saurashtra", v: $pkg.Saurashtra }, { k: "Sharada", v: $pkg.Sharada }, { k: "Shavian", v: $pkg.Shavian }, { k: "Siddham", v: $pkg.Siddham }, { k: "SignWriting", v: $pkg.SignWriting }, { k: "Sinhala", v: $pkg.Sinhala }, { k: "Sora_Sompeng", v: $pkg.Sora_Sompeng }, { k: "Sundanese", v: $pkg.Sundanese }, { k: "Syloti_Nagri", v: $pkg.Syloti_Nagri }, { k: "Syriac", v: $pkg.Syriac }, { k: "Tagalog", v: $pkg.Tagalog }, { k: "Tagbanwa", v: $pkg.Tagbanwa }, { k: "Tai_Le", v: $pkg.Tai_Le }, { k: "Tai_Tham", v: $pkg.Tai_Tham }, { k: "Tai_Viet", v: $pkg.Tai_Viet }, { k: "Takri", v: $pkg.Takri }, { k: "Tamil", v: $pkg.Tamil }, { k: "Tangut", v: $pkg.Tangut }, { k: "Telugu", v: $pkg.Telugu }, { k: "Thaana", v: $pkg.Thaana }, { k: "Thai", v: $pkg.Thai }, { k: "Tibetan", v: $pkg.Tibetan }, { k: "Tifinagh", v: $pkg.Tifinagh }, { k: "Tirhuta", v: $pkg.Tirhuta }, { k: "Ugaritic", v: $pkg.Ugaritic }, { k: "Vai", v: $pkg.Vai }, { k: "Warang_Citi", v: $pkg.Warang_Citi }, { k: "Yi", v: $pkg.Yi }]);
+ _White_Space = new RangeTable.ptr(new sliceType([new Range16.ptr(9, 13, 1), new Range16.ptr(32, 32, 1), new Range16.ptr(133, 133, 1), new Range16.ptr(160, 160, 1), new Range16.ptr(5760, 5760, 1), new Range16.ptr(8192, 8202, 1), new Range16.ptr(8232, 8233, 1), new Range16.ptr(8239, 8239, 1), new Range16.ptr(8287, 8287, 1), new Range16.ptr(12288, 12288, 1)]), sliceType$1.nil, 4);
+ $pkg.White_Space = _White_Space;
+ _CaseRanges = new sliceType$3([new CaseRange.ptr(65, 90, $toNativeArray($kindInt32, [0, 32, 0])), new CaseRange.ptr(97, 122, $toNativeArray($kindInt32, [-32, 0, -32])), new CaseRange.ptr(181, 181, $toNativeArray($kindInt32, [743, 0, 743])), new CaseRange.ptr(192, 214, $toNativeArray($kindInt32, [0, 32, 0])), new CaseRange.ptr(216, 222, $toNativeArray($kindInt32, [0, 32, 0])), new CaseRange.ptr(224, 246, $toNativeArray($kindInt32, [-32, 0, -32])), new CaseRange.ptr(248, 254, $toNativeArray($kindInt32, [-32, 0, -32])), new CaseRange.ptr(255, 255, $toNativeArray($kindInt32, [121, 0, 121])), new CaseRange.ptr(256, 303, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(304, 304, $toNativeArray($kindInt32, [0, -199, 0])), new CaseRange.ptr(305, 305, $toNativeArray($kindInt32, [-232, 0, -232])), new CaseRange.ptr(306, 311, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(313, 328, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(330, 375, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(376, 376, $toNativeArray($kindInt32, [0, -121, 0])), new CaseRange.ptr(377, 382, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(383, 383, $toNativeArray($kindInt32, [-300, 0, -300])), new CaseRange.ptr(384, 384, $toNativeArray($kindInt32, [195, 0, 195])), new CaseRange.ptr(385, 385, $toNativeArray($kindInt32, [0, 210, 0])), new CaseRange.ptr(386, 389, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(390, 390, $toNativeArray($kindInt32, [0, 206, 0])), new CaseRange.ptr(391, 392, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(393, 394, $toNativeArray($kindInt32, [0, 205, 0])), new CaseRange.ptr(395, 396, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(398, 398, $toNativeArray($kindInt32, [0, 79, 0])), new CaseRange.ptr(399, 399, $toNativeArray($kindInt32, [0, 202, 0])), new CaseRange.ptr(400, 400, $toNativeArray($kindInt32, [0, 203, 0])), new CaseRange.ptr(401, 402, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(403, 403, $toNativeArray($kindInt32, [0, 205, 0])), new CaseRange.ptr(404, 404, $toNativeArray($kindInt32, [0, 207, 0])), new CaseRange.ptr(405, 405, $toNativeArray($kindInt32, [97, 0, 97])), new CaseRange.ptr(406, 406, $toNativeArray($kindInt32, [0, 211, 0])), new CaseRange.ptr(407, 407, $toNativeArray($kindInt32, [0, 209, 0])), new CaseRange.ptr(408, 409, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(410, 410, $toNativeArray($kindInt32, [163, 0, 163])), new CaseRange.ptr(412, 412, $toNativeArray($kindInt32, [0, 211, 0])), new CaseRange.ptr(413, 413, $toNativeArray($kindInt32, [0, 213, 0])), new CaseRange.ptr(414, 414, $toNativeArray($kindInt32, [130, 0, 130])), new CaseRange.ptr(415, 415, $toNativeArray($kindInt32, [0, 214, 0])), new CaseRange.ptr(416, 421, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(422, 422, $toNativeArray($kindInt32, [0, 218, 0])), new CaseRange.ptr(423, 424, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(425, 425, $toNativeArray($kindInt32, [0, 218, 0])), new CaseRange.ptr(428, 429, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(430, 430, $toNativeArray($kindInt32, [0, 218, 0])), new CaseRange.ptr(431, 432, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(433, 434, $toNativeArray($kindInt32, [0, 217, 0])), new CaseRange.ptr(435, 438, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(439, 439, $toNativeArray($kindInt32, [0, 219, 0])), new CaseRange.ptr(440, 441, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(444, 445, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(447, 447, $toNativeArray($kindInt32, [56, 0, 56])), new CaseRange.ptr(452, 452, $toNativeArray($kindInt32, [0, 2, 1])), new CaseRange.ptr(453, 453, $toNativeArray($kindInt32, [-1, 1, 0])), new CaseRange.ptr(454, 454, $toNativeArray($kindInt32, [-2, 0, -1])), new CaseRange.ptr(455, 455, $toNativeArray($kindInt32, [0, 2, 1])), new CaseRange.ptr(456, 456, $toNativeArray($kindInt32, [-1, 1, 0])), new CaseRange.ptr(457, 457, $toNativeArray($kindInt32, [-2, 0, -1])), new CaseRange.ptr(458, 458, $toNativeArray($kindInt32, [0, 2, 1])), new CaseRange.ptr(459, 459, $toNativeArray($kindInt32, [-1, 1, 0])), new CaseRange.ptr(460, 460, $toNativeArray($kindInt32, [-2, 0, -1])), new CaseRange.ptr(461, 476, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(477, 477, $toNativeArray($kindInt32, [-79, 0, -79])), new CaseRange.ptr(478, 495, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(497, 497, $toNativeArray($kindInt32, [0, 2, 1])), new CaseRange.ptr(498, 498, $toNativeArray($kindInt32, [-1, 1, 0])), new CaseRange.ptr(499, 499, $toNativeArray($kindInt32, [-2, 0, -1])), new CaseRange.ptr(500, 501, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(502, 502, $toNativeArray($kindInt32, [0, -97, 0])), new CaseRange.ptr(503, 503, $toNativeArray($kindInt32, [0, -56, 0])), new CaseRange.ptr(504, 543, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(544, 544, $toNativeArray($kindInt32, [0, -130, 0])), new CaseRange.ptr(546, 563, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(570, 570, $toNativeArray($kindInt32, [0, 10795, 0])), new CaseRange.ptr(571, 572, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(573, 573, $toNativeArray($kindInt32, [0, -163, 0])), new CaseRange.ptr(574, 574, $toNativeArray($kindInt32, [0, 10792, 0])), new CaseRange.ptr(575, 576, $toNativeArray($kindInt32, [10815, 0, 10815])), new CaseRange.ptr(577, 578, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(579, 579, $toNativeArray($kindInt32, [0, -195, 0])), new CaseRange.ptr(580, 580, $toNativeArray($kindInt32, [0, 69, 0])), new CaseRange.ptr(581, 581, $toNativeArray($kindInt32, [0, 71, 0])), new CaseRange.ptr(582, 591, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(592, 592, $toNativeArray($kindInt32, [10783, 0, 10783])), new CaseRange.ptr(593, 593, $toNativeArray($kindInt32, [10780, 0, 10780])), new CaseRange.ptr(594, 594, $toNativeArray($kindInt32, [10782, 0, 10782])), new CaseRange.ptr(595, 595, $toNativeArray($kindInt32, [-210, 0, -210])), new CaseRange.ptr(596, 596, $toNativeArray($kindInt32, [-206, 0, -206])), new CaseRange.ptr(598, 599, $toNativeArray($kindInt32, [-205, 0, -205])), new CaseRange.ptr(601, 601, $toNativeArray($kindInt32, [-202, 0, -202])), new CaseRange.ptr(603, 603, $toNativeArray($kindInt32, [-203, 0, -203])), new CaseRange.ptr(604, 604, $toNativeArray($kindInt32, [42319, 0, 42319])), new CaseRange.ptr(608, 608, $toNativeArray($kindInt32, [-205, 0, -205])), new CaseRange.ptr(609, 609, $toNativeArray($kindInt32, [42315, 0, 42315])), new CaseRange.ptr(611, 611, $toNativeArray($kindInt32, [-207, 0, -207])), new CaseRange.ptr(613, 613, $toNativeArray($kindInt32, [42280, 0, 42280])), new CaseRange.ptr(614, 614, $toNativeArray($kindInt32, [42308, 0, 42308])), new CaseRange.ptr(616, 616, $toNativeArray($kindInt32, [-209, 0, -209])), new CaseRange.ptr(617, 617, $toNativeArray($kindInt32, [-211, 0, -211])), new CaseRange.ptr(618, 618, $toNativeArray($kindInt32, [42308, 0, 42308])), new CaseRange.ptr(619, 619, $toNativeArray($kindInt32, [10743, 0, 10743])), new CaseRange.ptr(620, 620, $toNativeArray($kindInt32, [42305, 0, 42305])), new CaseRange.ptr(623, 623, $toNativeArray($kindInt32, [-211, 0, -211])), new CaseRange.ptr(625, 625, $toNativeArray($kindInt32, [10749, 0, 10749])), new CaseRange.ptr(626, 626, $toNativeArray($kindInt32, [-213, 0, -213])), new CaseRange.ptr(629, 629, $toNativeArray($kindInt32, [-214, 0, -214])), new CaseRange.ptr(637, 637, $toNativeArray($kindInt32, [10727, 0, 10727])), new CaseRange.ptr(640, 640, $toNativeArray($kindInt32, [-218, 0, -218])), new CaseRange.ptr(643, 643, $toNativeArray($kindInt32, [-218, 0, -218])), new CaseRange.ptr(647, 647, $toNativeArray($kindInt32, [42282, 0, 42282])), new CaseRange.ptr(648, 648, $toNativeArray($kindInt32, [-218, 0, -218])), new CaseRange.ptr(649, 649, $toNativeArray($kindInt32, [-69, 0, -69])), new CaseRange.ptr(650, 651, $toNativeArray($kindInt32, [-217, 0, -217])), new CaseRange.ptr(652, 652, $toNativeArray($kindInt32, [-71, 0, -71])), new CaseRange.ptr(658, 658, $toNativeArray($kindInt32, [-219, 0, -219])), new CaseRange.ptr(669, 669, $toNativeArray($kindInt32, [42261, 0, 42261])), new CaseRange.ptr(670, 670, $toNativeArray($kindInt32, [42258, 0, 42258])), new CaseRange.ptr(837, 837, $toNativeArray($kindInt32, [84, 0, 84])), new CaseRange.ptr(880, 883, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(886, 887, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(891, 893, $toNativeArray($kindInt32, [130, 0, 130])), new CaseRange.ptr(895, 895, $toNativeArray($kindInt32, [0, 116, 0])), new CaseRange.ptr(902, 902, $toNativeArray($kindInt32, [0, 38, 0])), new CaseRange.ptr(904, 906, $toNativeArray($kindInt32, [0, 37, 0])), new CaseRange.ptr(908, 908, $toNativeArray($kindInt32, [0, 64, 0])), new CaseRange.ptr(910, 911, $toNativeArray($kindInt32, [0, 63, 0])), new CaseRange.ptr(913, 929, $toNativeArray($kindInt32, [0, 32, 0])), new CaseRange.ptr(931, 939, $toNativeArray($kindInt32, [0, 32, 0])), new CaseRange.ptr(940, 940, $toNativeArray($kindInt32, [-38, 0, -38])), new CaseRange.ptr(941, 943, $toNativeArray($kindInt32, [-37, 0, -37])), new CaseRange.ptr(945, 961, $toNativeArray($kindInt32, [-32, 0, -32])), new CaseRange.ptr(962, 962, $toNativeArray($kindInt32, [-31, 0, -31])), new CaseRange.ptr(963, 971, $toNativeArray($kindInt32, [-32, 0, -32])), new CaseRange.ptr(972, 972, $toNativeArray($kindInt32, [-64, 0, -64])), new CaseRange.ptr(973, 974, $toNativeArray($kindInt32, [-63, 0, -63])), new CaseRange.ptr(975, 975, $toNativeArray($kindInt32, [0, 8, 0])), new CaseRange.ptr(976, 976, $toNativeArray($kindInt32, [-62, 0, -62])), new CaseRange.ptr(977, 977, $toNativeArray($kindInt32, [-57, 0, -57])), new CaseRange.ptr(981, 981, $toNativeArray($kindInt32, [-47, 0, -47])), new CaseRange.ptr(982, 982, $toNativeArray($kindInt32, [-54, 0, -54])), new CaseRange.ptr(983, 983, $toNativeArray($kindInt32, [-8, 0, -8])), new CaseRange.ptr(984, 1007, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(1008, 1008, $toNativeArray($kindInt32, [-86, 0, -86])), new CaseRange.ptr(1009, 1009, $toNativeArray($kindInt32, [-80, 0, -80])), new CaseRange.ptr(1010, 1010, $toNativeArray($kindInt32, [7, 0, 7])), new CaseRange.ptr(1011, 1011, $toNativeArray($kindInt32, [-116, 0, -116])), new CaseRange.ptr(1012, 1012, $toNativeArray($kindInt32, [0, -60, 0])), new CaseRange.ptr(1013, 1013, $toNativeArray($kindInt32, [-96, 0, -96])), new CaseRange.ptr(1015, 1016, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(1017, 1017, $toNativeArray($kindInt32, [0, -7, 0])), new CaseRange.ptr(1018, 1019, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(1021, 1023, $toNativeArray($kindInt32, [0, -130, 0])), new CaseRange.ptr(1024, 1039, $toNativeArray($kindInt32, [0, 80, 0])), new CaseRange.ptr(1040, 1071, $toNativeArray($kindInt32, [0, 32, 0])), new CaseRange.ptr(1072, 1103, $toNativeArray($kindInt32, [-32, 0, -32])), new CaseRange.ptr(1104, 1119, $toNativeArray($kindInt32, [-80, 0, -80])), new CaseRange.ptr(1120, 1153, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(1162, 1215, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(1216, 1216, $toNativeArray($kindInt32, [0, 15, 0])), new CaseRange.ptr(1217, 1230, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(1231, 1231, $toNativeArray($kindInt32, [-15, 0, -15])), new CaseRange.ptr(1232, 1327, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(1329, 1366, $toNativeArray($kindInt32, [0, 48, 0])), new CaseRange.ptr(1377, 1414, $toNativeArray($kindInt32, [-48, 0, -48])), new CaseRange.ptr(4256, 4293, $toNativeArray($kindInt32, [0, 7264, 0])), new CaseRange.ptr(4295, 4295, $toNativeArray($kindInt32, [0, 7264, 0])), new CaseRange.ptr(4301, 4301, $toNativeArray($kindInt32, [0, 7264, 0])), new CaseRange.ptr(5024, 5103, $toNativeArray($kindInt32, [0, 38864, 0])), new CaseRange.ptr(5104, 5109, $toNativeArray($kindInt32, [0, 8, 0])), new CaseRange.ptr(5112, 5117, $toNativeArray($kindInt32, [-8, 0, -8])), new CaseRange.ptr(7296, 7296, $toNativeArray($kindInt32, [-6254, 0, -6254])), new CaseRange.ptr(7297, 7297, $toNativeArray($kindInt32, [-6253, 0, -6253])), new CaseRange.ptr(7298, 7298, $toNativeArray($kindInt32, [-6244, 0, -6244])), new CaseRange.ptr(7299, 7300, $toNativeArray($kindInt32, [-6242, 0, -6242])), new CaseRange.ptr(7301, 7301, $toNativeArray($kindInt32, [-6243, 0, -6243])), new CaseRange.ptr(7302, 7302, $toNativeArray($kindInt32, [-6236, 0, -6236])), new CaseRange.ptr(7303, 7303, $toNativeArray($kindInt32, [-6181, 0, -6181])), new CaseRange.ptr(7304, 7304, $toNativeArray($kindInt32, [35266, 0, 35266])), new CaseRange.ptr(7545, 7545, $toNativeArray($kindInt32, [35332, 0, 35332])), new CaseRange.ptr(7549, 7549, $toNativeArray($kindInt32, [3814, 0, 3814])), new CaseRange.ptr(7680, 7829, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(7835, 7835, $toNativeArray($kindInt32, [-59, 0, -59])), new CaseRange.ptr(7838, 7838, $toNativeArray($kindInt32, [0, -7615, 0])), new CaseRange.ptr(7840, 7935, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(7936, 7943, $toNativeArray($kindInt32, [8, 0, 8])), new CaseRange.ptr(7944, 7951, $toNativeArray($kindInt32, [0, -8, 0])), new CaseRange.ptr(7952, 7957, $toNativeArray($kindInt32, [8, 0, 8])), new CaseRange.ptr(7960, 7965, $toNativeArray($kindInt32, [0, -8, 0])), new CaseRange.ptr(7968, 7975, $toNativeArray($kindInt32, [8, 0, 8])), new CaseRange.ptr(7976, 7983, $toNativeArray($kindInt32, [0, -8, 0])), new CaseRange.ptr(7984, 7991, $toNativeArray($kindInt32, [8, 0, 8])), new CaseRange.ptr(7992, 7999, $toNativeArray($kindInt32, [0, -8, 0])), new CaseRange.ptr(8000, 8005, $toNativeArray($kindInt32, [8, 0, 8])), new CaseRange.ptr(8008, 8013, $toNativeArray($kindInt32, [0, -8, 0])), new CaseRange.ptr(8017, 8017, $toNativeArray($kindInt32, [8, 0, 8])), new CaseRange.ptr(8019, 8019, $toNativeArray($kindInt32, [8, 0, 8])), new CaseRange.ptr(8021, 8021, $toNativeArray($kindInt32, [8, 0, 8])), new CaseRange.ptr(8023, 8023, $toNativeArray($kindInt32, [8, 0, 8])), new CaseRange.ptr(8025, 8025, $toNativeArray($kindInt32, [0, -8, 0])), new CaseRange.ptr(8027, 8027, $toNativeArray($kindInt32, [0, -8, 0])), new CaseRange.ptr(8029, 8029, $toNativeArray($kindInt32, [0, -8, 0])), new CaseRange.ptr(8031, 8031, $toNativeArray($kindInt32, [0, -8, 0])), new CaseRange.ptr(8032, 8039, $toNativeArray($kindInt32, [8, 0, 8])), new CaseRange.ptr(8040, 8047, $toNativeArray($kindInt32, [0, -8, 0])), new CaseRange.ptr(8048, 8049, $toNativeArray($kindInt32, [74, 0, 74])), new CaseRange.ptr(8050, 8053, $toNativeArray($kindInt32, [86, 0, 86])), new CaseRange.ptr(8054, 8055, $toNativeArray($kindInt32, [100, 0, 100])), new CaseRange.ptr(8056, 8057, $toNativeArray($kindInt32, [128, 0, 128])), new CaseRange.ptr(8058, 8059, $toNativeArray($kindInt32, [112, 0, 112])), new CaseRange.ptr(8060, 8061, $toNativeArray($kindInt32, [126, 0, 126])), new CaseRange.ptr(8064, 8071, $toNativeArray($kindInt32, [8, 0, 8])), new CaseRange.ptr(8072, 8079, $toNativeArray($kindInt32, [0, -8, 0])), new CaseRange.ptr(8080, 8087, $toNativeArray($kindInt32, [8, 0, 8])), new CaseRange.ptr(8088, 8095, $toNativeArray($kindInt32, [0, -8, 0])), new CaseRange.ptr(8096, 8103, $toNativeArray($kindInt32, [8, 0, 8])), new CaseRange.ptr(8104, 8111, $toNativeArray($kindInt32, [0, -8, 0])), new CaseRange.ptr(8112, 8113, $toNativeArray($kindInt32, [8, 0, 8])), new CaseRange.ptr(8115, 8115, $toNativeArray($kindInt32, [9, 0, 9])), new CaseRange.ptr(8120, 8121, $toNativeArray($kindInt32, [0, -8, 0])), new CaseRange.ptr(8122, 8123, $toNativeArray($kindInt32, [0, -74, 0])), new CaseRange.ptr(8124, 8124, $toNativeArray($kindInt32, [0, -9, 0])), new CaseRange.ptr(8126, 8126, $toNativeArray($kindInt32, [-7205, 0, -7205])), new CaseRange.ptr(8131, 8131, $toNativeArray($kindInt32, [9, 0, 9])), new CaseRange.ptr(8136, 8139, $toNativeArray($kindInt32, [0, -86, 0])), new CaseRange.ptr(8140, 8140, $toNativeArray($kindInt32, [0, -9, 0])), new CaseRange.ptr(8144, 8145, $toNativeArray($kindInt32, [8, 0, 8])), new CaseRange.ptr(8152, 8153, $toNativeArray($kindInt32, [0, -8, 0])), new CaseRange.ptr(8154, 8155, $toNativeArray($kindInt32, [0, -100, 0])), new CaseRange.ptr(8160, 8161, $toNativeArray($kindInt32, [8, 0, 8])), new CaseRange.ptr(8165, 8165, $toNativeArray($kindInt32, [7, 0, 7])), new CaseRange.ptr(8168, 8169, $toNativeArray($kindInt32, [0, -8, 0])), new CaseRange.ptr(8170, 8171, $toNativeArray($kindInt32, [0, -112, 0])), new CaseRange.ptr(8172, 8172, $toNativeArray($kindInt32, [0, -7, 0])), new CaseRange.ptr(8179, 8179, $toNativeArray($kindInt32, [9, 0, 9])), new CaseRange.ptr(8184, 8185, $toNativeArray($kindInt32, [0, -128, 0])), new CaseRange.ptr(8186, 8187, $toNativeArray($kindInt32, [0, -126, 0])), new CaseRange.ptr(8188, 8188, $toNativeArray($kindInt32, [0, -9, 0])), new CaseRange.ptr(8486, 8486, $toNativeArray($kindInt32, [0, -7517, 0])), new CaseRange.ptr(8490, 8490, $toNativeArray($kindInt32, [0, -8383, 0])), new CaseRange.ptr(8491, 8491, $toNativeArray($kindInt32, [0, -8262, 0])), new CaseRange.ptr(8498, 8498, $toNativeArray($kindInt32, [0, 28, 0])), new CaseRange.ptr(8526, 8526, $toNativeArray($kindInt32, [-28, 0, -28])), new CaseRange.ptr(8544, 8559, $toNativeArray($kindInt32, [0, 16, 0])), new CaseRange.ptr(8560, 8575, $toNativeArray($kindInt32, [-16, 0, -16])), new CaseRange.ptr(8579, 8580, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(9398, 9423, $toNativeArray($kindInt32, [0, 26, 0])), new CaseRange.ptr(9424, 9449, $toNativeArray($kindInt32, [-26, 0, -26])), new CaseRange.ptr(11264, 11310, $toNativeArray($kindInt32, [0, 48, 0])), new CaseRange.ptr(11312, 11358, $toNativeArray($kindInt32, [-48, 0, -48])), new CaseRange.ptr(11360, 11361, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(11362, 11362, $toNativeArray($kindInt32, [0, -10743, 0])), new CaseRange.ptr(11363, 11363, $toNativeArray($kindInt32, [0, -3814, 0])), new CaseRange.ptr(11364, 11364, $toNativeArray($kindInt32, [0, -10727, 0])), new CaseRange.ptr(11365, 11365, $toNativeArray($kindInt32, [-10795, 0, -10795])), new CaseRange.ptr(11366, 11366, $toNativeArray($kindInt32, [-10792, 0, -10792])), new CaseRange.ptr(11367, 11372, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(11373, 11373, $toNativeArray($kindInt32, [0, -10780, 0])), new CaseRange.ptr(11374, 11374, $toNativeArray($kindInt32, [0, -10749, 0])), new CaseRange.ptr(11375, 11375, $toNativeArray($kindInt32, [0, -10783, 0])), new CaseRange.ptr(11376, 11376, $toNativeArray($kindInt32, [0, -10782, 0])), new CaseRange.ptr(11378, 11379, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(11381, 11382, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(11390, 11391, $toNativeArray($kindInt32, [0, -10815, 0])), new CaseRange.ptr(11392, 11491, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(11499, 11502, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(11506, 11507, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(11520, 11557, $toNativeArray($kindInt32, [-7264, 0, -7264])), new CaseRange.ptr(11559, 11559, $toNativeArray($kindInt32, [-7264, 0, -7264])), new CaseRange.ptr(11565, 11565, $toNativeArray($kindInt32, [-7264, 0, -7264])), new CaseRange.ptr(42560, 42605, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(42624, 42651, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(42786, 42799, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(42802, 42863, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(42873, 42876, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(42877, 42877, $toNativeArray($kindInt32, [0, -35332, 0])), new CaseRange.ptr(42878, 42887, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(42891, 42892, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(42893, 42893, $toNativeArray($kindInt32, [0, -42280, 0])), new CaseRange.ptr(42896, 42899, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(42902, 42921, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(42922, 42922, $toNativeArray($kindInt32, [0, -42308, 0])), new CaseRange.ptr(42923, 42923, $toNativeArray($kindInt32, [0, -42319, 0])), new CaseRange.ptr(42924, 42924, $toNativeArray($kindInt32, [0, -42315, 0])), new CaseRange.ptr(42925, 42925, $toNativeArray($kindInt32, [0, -42305, 0])), new CaseRange.ptr(42926, 42926, $toNativeArray($kindInt32, [0, -42308, 0])), new CaseRange.ptr(42928, 42928, $toNativeArray($kindInt32, [0, -42258, 0])), new CaseRange.ptr(42929, 42929, $toNativeArray($kindInt32, [0, -42282, 0])), new CaseRange.ptr(42930, 42930, $toNativeArray($kindInt32, [0, -42261, 0])), new CaseRange.ptr(42931, 42931, $toNativeArray($kindInt32, [0, 928, 0])), new CaseRange.ptr(42932, 42935, $toNativeArray($kindInt32, [1114112, 1114112, 1114112])), new CaseRange.ptr(43859, 43859, $toNativeArray($kindInt32, [-928, 0, -928])), new CaseRange.ptr(43888, 43967, $toNativeArray($kindInt32, [-38864, 0, -38864])), new CaseRange.ptr(65313, 65338, $toNativeArray($kindInt32, [0, 32, 0])), new CaseRange.ptr(65345, 65370, $toNativeArray($kindInt32, [-32, 0, -32])), new CaseRange.ptr(66560, 66599, $toNativeArray($kindInt32, [0, 40, 0])), new CaseRange.ptr(66600, 66639, $toNativeArray($kindInt32, [-40, 0, -40])), new CaseRange.ptr(66736, 66771, $toNativeArray($kindInt32, [0, 40, 0])), new CaseRange.ptr(66776, 66811, $toNativeArray($kindInt32, [-40, 0, -40])), new CaseRange.ptr(68736, 68786, $toNativeArray($kindInt32, [0, 64, 0])), new CaseRange.ptr(68800, 68850, $toNativeArray($kindInt32, [-64, 0, -64])), new CaseRange.ptr(71840, 71871, $toNativeArray($kindInt32, [0, 32, 0])), new CaseRange.ptr(71872, 71903, $toNativeArray($kindInt32, [-32, 0, -32])), new CaseRange.ptr(125184, 125217, $toNativeArray($kindInt32, [0, 34, 0])), new CaseRange.ptr(125218, 125251, $toNativeArray($kindInt32, [-34, 0, -34]))]);
+ $pkg.CaseRanges = _CaseRanges;
+ properties = $toNativeArray($kindUint8, [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 144, 130, 130, 130, 136, 130, 130, 130, 130, 130, 130, 136, 130, 130, 130, 130, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 130, 130, 136, 136, 136, 130, 130, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 130, 130, 130, 136, 130, 136, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 130, 136, 130, 136, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 16, 130, 136, 136, 136, 136, 136, 130, 136, 136, 224, 130, 136, 0, 136, 136, 136, 136, 132, 132, 136, 192, 130, 130, 136, 132, 224, 130, 132, 132, 132, 130, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 136, 160, 160, 160, 160, 160, 160, 160, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 136, 192, 192, 192, 192, 192, 192, 192, 192]);
+ asciiFold = $toNativeArray($kindUint16, [0, 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, 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, 91, 92, 93, 94, 95, 96, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 8490, 76, 77, 78, 79, 80, 81, 82, 383, 84, 85, 86, 87, 88, 89, 90, 123, 124, 125, 126, 127]);
+ caseOrbit = new sliceType$4([new foldPair.ptr(75, 107), new foldPair.ptr(83, 115), new foldPair.ptr(107, 8490), new foldPair.ptr(115, 383), new foldPair.ptr(181, 924), new foldPair.ptr(197, 229), new foldPair.ptr(223, 7838), new foldPair.ptr(229, 8491), new foldPair.ptr(304, 304), new foldPair.ptr(305, 305), new foldPair.ptr(383, 83), new foldPair.ptr(452, 453), new foldPair.ptr(453, 454), new foldPair.ptr(454, 452), new foldPair.ptr(455, 456), new foldPair.ptr(456, 457), new foldPair.ptr(457, 455), new foldPair.ptr(458, 459), new foldPair.ptr(459, 460), new foldPair.ptr(460, 458), new foldPair.ptr(497, 498), new foldPair.ptr(498, 499), new foldPair.ptr(499, 497), new foldPair.ptr(837, 921), new foldPair.ptr(914, 946), new foldPair.ptr(917, 949), new foldPair.ptr(920, 952), new foldPair.ptr(921, 953), new foldPair.ptr(922, 954), new foldPair.ptr(924, 956), new foldPair.ptr(928, 960), new foldPair.ptr(929, 961), new foldPair.ptr(931, 962), new foldPair.ptr(934, 966), new foldPair.ptr(937, 969), new foldPair.ptr(946, 976), new foldPair.ptr(949, 1013), new foldPair.ptr(952, 977), new foldPair.ptr(953, 8126), new foldPair.ptr(954, 1008), new foldPair.ptr(956, 181), new foldPair.ptr(960, 982), new foldPair.ptr(961, 1009), new foldPair.ptr(962, 963), new foldPair.ptr(963, 931), new foldPair.ptr(966, 981), new foldPair.ptr(969, 8486), new foldPair.ptr(976, 914), new foldPair.ptr(977, 1012), new foldPair.ptr(981, 934), new foldPair.ptr(982, 928), new foldPair.ptr(1008, 922), new foldPair.ptr(1009, 929), new foldPair.ptr(1012, 920), new foldPair.ptr(1013, 917), new foldPair.ptr(1042, 1074), new foldPair.ptr(1044, 1076), new foldPair.ptr(1054, 1086), new foldPair.ptr(1057, 1089), new foldPair.ptr(1058, 1090), new foldPair.ptr(1066, 1098), new foldPair.ptr(1074, 7296), new foldPair.ptr(1076, 7297), new foldPair.ptr(1086, 7298), new foldPair.ptr(1089, 7299), new foldPair.ptr(1090, 7300), new foldPair.ptr(1098, 7302), new foldPair.ptr(1122, 1123), new foldPair.ptr(1123, 7303), new foldPair.ptr(7296, 1042), new foldPair.ptr(7297, 1044), new foldPair.ptr(7298, 1054), new foldPair.ptr(7299, 1057), new foldPair.ptr(7300, 7301), new foldPair.ptr(7301, 1058), new foldPair.ptr(7302, 1066), new foldPair.ptr(7303, 1122), new foldPair.ptr(7304, 42570), new foldPair.ptr(7776, 7777), new foldPair.ptr(7777, 7835), new foldPair.ptr(7835, 7776), new foldPair.ptr(7838, 223), new foldPair.ptr(8126, 837), new foldPair.ptr(8486, 937), new foldPair.ptr(8490, 75), new foldPair.ptr(8491, 197), new foldPair.ptr(42570, 42571), new foldPair.ptr(42571, 7304)]);
+ foldCommon = new RangeTable.ptr(new sliceType([new Range16.ptr(924, 956, 32)]), sliceType$1.nil, 0);
+ foldGreek = new RangeTable.ptr(new sliceType([new Range16.ptr(181, 837, 656)]), sliceType$1.nil, 0);
+ foldInherited = new RangeTable.ptr(new sliceType([new Range16.ptr(921, 953, 32), new Range16.ptr(8126, 8126, 1)]), sliceType$1.nil, 0);
+ foldL = new RangeTable.ptr(new sliceType([new Range16.ptr(837, 837, 1)]), sliceType$1.nil, 0);
+ foldLl = new RangeTable.ptr(new sliceType([new Range16.ptr(65, 90, 1), new Range16.ptr(192, 214, 1), new Range16.ptr(216, 222, 1), new Range16.ptr(256, 302, 2), new Range16.ptr(306, 310, 2), new Range16.ptr(313, 327, 2), new Range16.ptr(330, 376, 2), new Range16.ptr(377, 381, 2), new Range16.ptr(385, 386, 1), new Range16.ptr(388, 390, 2), new Range16.ptr(391, 393, 2), new Range16.ptr(394, 395, 1), new Range16.ptr(398, 401, 1), new Range16.ptr(403, 404, 1), new Range16.ptr(406, 408, 1), new Range16.ptr(412, 413, 1), new Range16.ptr(415, 416, 1), new Range16.ptr(418, 422, 2), new Range16.ptr(423, 425, 2), new Range16.ptr(428, 430, 2), new Range16.ptr(431, 433, 2), new Range16.ptr(434, 435, 1), new Range16.ptr(437, 439, 2), new Range16.ptr(440, 444, 4), new Range16.ptr(452, 453, 1), new Range16.ptr(455, 456, 1), new Range16.ptr(458, 459, 1), new Range16.ptr(461, 475, 2), new Range16.ptr(478, 494, 2), new Range16.ptr(497, 498, 1), new Range16.ptr(500, 502, 2), new Range16.ptr(503, 504, 1), new Range16.ptr(506, 562, 2), new Range16.ptr(570, 571, 1), new Range16.ptr(573, 574, 1), new Range16.ptr(577, 579, 2), new Range16.ptr(580, 582, 1), new Range16.ptr(584, 590, 2), new Range16.ptr(837, 880, 43), new Range16.ptr(882, 886, 4), new Range16.ptr(895, 902, 7), new Range16.ptr(904, 906, 1), new Range16.ptr(908, 910, 2), new Range16.ptr(911, 913, 2), new Range16.ptr(914, 929, 1), new Range16.ptr(931, 939, 1), new Range16.ptr(975, 984, 9), new Range16.ptr(986, 1006, 2), new Range16.ptr(1012, 1015, 3), new Range16.ptr(1017, 1018, 1), new Range16.ptr(1021, 1071, 1), new Range16.ptr(1120, 1152, 2), new Range16.ptr(1162, 1216, 2), new Range16.ptr(1217, 1229, 2), new Range16.ptr(1232, 1326, 2), new Range16.ptr(1329, 1366, 1), new Range16.ptr(4256, 4293, 1), new Range16.ptr(4295, 4301, 6), new Range16.ptr(5024, 5109, 1), new Range16.ptr(7680, 7828, 2), new Range16.ptr(7838, 7934, 2), new Range16.ptr(7944, 7951, 1), new Range16.ptr(7960, 7965, 1), new Range16.ptr(7976, 7983, 1), new Range16.ptr(7992, 7999, 1), new Range16.ptr(8008, 8013, 1), new Range16.ptr(8025, 8031, 2), new Range16.ptr(8040, 8047, 1), new Range16.ptr(8072, 8079, 1), new Range16.ptr(8088, 8095, 1), new Range16.ptr(8104, 8111, 1), new Range16.ptr(8120, 8124, 1), new Range16.ptr(8136, 8140, 1), new Range16.ptr(8152, 8155, 1), new Range16.ptr(8168, 8172, 1), new Range16.ptr(8184, 8188, 1), new Range16.ptr(8486, 8490, 4), new Range16.ptr(8491, 8498, 7), new Range16.ptr(8579, 11264, 2685), new Range16.ptr(11265, 11310, 1), new Range16.ptr(11360, 11362, 2), new Range16.ptr(11363, 11364, 1), new Range16.ptr(11367, 11373, 2), new Range16.ptr(11374, 11376, 1), new Range16.ptr(11378, 11381, 3), new Range16.ptr(11390, 11392, 1), new Range16.ptr(11394, 11490, 2), new Range16.ptr(11499, 11501, 2), new Range16.ptr(11506, 42560, 31054), new Range16.ptr(42562, 42604, 2), new Range16.ptr(42624, 42650, 2), new Range16.ptr(42786, 42798, 2), new Range16.ptr(42802, 42862, 2), new Range16.ptr(42873, 42877, 2), new Range16.ptr(42878, 42886, 2), new Range16.ptr(42891, 42893, 2), new Range16.ptr(42896, 42898, 2), new Range16.ptr(42902, 42922, 2), new Range16.ptr(42923, 42926, 1), new Range16.ptr(42928, 42932, 1), new Range16.ptr(42934, 65313, 22379), new Range16.ptr(65314, 65338, 1)]), new sliceType$1([new Range32.ptr(66560, 66599, 1), new Range32.ptr(66736, 66771, 1), new Range32.ptr(68736, 68786, 1), new Range32.ptr(71840, 71871, 1), new Range32.ptr(125184, 125217, 1)]), 3);
+ foldLt = new RangeTable.ptr(new sliceType([new Range16.ptr(452, 454, 2), new Range16.ptr(455, 457, 2), new Range16.ptr(458, 460, 2), new Range16.ptr(497, 499, 2), new Range16.ptr(8064, 8071, 1), new Range16.ptr(8080, 8087, 1), new Range16.ptr(8096, 8103, 1), new Range16.ptr(8115, 8131, 16), new Range16.ptr(8179, 8179, 1)]), sliceType$1.nil, 0);
+ foldLu = new RangeTable.ptr(new sliceType([new Range16.ptr(97, 122, 1), new Range16.ptr(181, 223, 42), new Range16.ptr(224, 246, 1), new Range16.ptr(248, 255, 1), new Range16.ptr(257, 303, 2), new Range16.ptr(307, 311, 2), new Range16.ptr(314, 328, 2), new Range16.ptr(331, 375, 2), new Range16.ptr(378, 382, 2), new Range16.ptr(383, 384, 1), new Range16.ptr(387, 389, 2), new Range16.ptr(392, 396, 4), new Range16.ptr(402, 405, 3), new Range16.ptr(409, 410, 1), new Range16.ptr(414, 417, 3), new Range16.ptr(419, 421, 2), new Range16.ptr(424, 429, 5), new Range16.ptr(432, 436, 4), new Range16.ptr(438, 441, 3), new Range16.ptr(445, 447, 2), new Range16.ptr(453, 454, 1), new Range16.ptr(456, 457, 1), new Range16.ptr(459, 460, 1), new Range16.ptr(462, 476, 2), new Range16.ptr(477, 495, 2), new Range16.ptr(498, 499, 1), new Range16.ptr(501, 505, 4), new Range16.ptr(507, 543, 2), new Range16.ptr(547, 563, 2), new Range16.ptr(572, 575, 3), new Range16.ptr(576, 578, 2), new Range16.ptr(583, 591, 2), new Range16.ptr(592, 596, 1), new Range16.ptr(598, 599, 1), new Range16.ptr(601, 603, 2), new Range16.ptr(604, 608, 4), new Range16.ptr(609, 613, 2), new Range16.ptr(614, 616, 2), new Range16.ptr(617, 620, 1), new Range16.ptr(623, 625, 2), new Range16.ptr(626, 629, 3), new Range16.ptr(637, 643, 3), new Range16.ptr(647, 652, 1), new Range16.ptr(658, 669, 11), new Range16.ptr(670, 837, 167), new Range16.ptr(881, 883, 2), new Range16.ptr(887, 891, 4), new Range16.ptr(892, 893, 1), new Range16.ptr(940, 943, 1), new Range16.ptr(945, 974, 1), new Range16.ptr(976, 977, 1), new Range16.ptr(981, 983, 1), new Range16.ptr(985, 1007, 2), new Range16.ptr(1008, 1011, 1), new Range16.ptr(1013, 1019, 3), new Range16.ptr(1072, 1119, 1), new Range16.ptr(1121, 1153, 2), new Range16.ptr(1163, 1215, 2), new Range16.ptr(1218, 1230, 2), new Range16.ptr(1231, 1327, 2), new Range16.ptr(1377, 1414, 1), new Range16.ptr(5112, 5117, 1), new Range16.ptr(7296, 7304, 1), new Range16.ptr(7545, 7549, 4), new Range16.ptr(7681, 7829, 2), new Range16.ptr(7835, 7841, 6), new Range16.ptr(7843, 7935, 2), new Range16.ptr(7936, 7943, 1), new Range16.ptr(7952, 7957, 1), new Range16.ptr(7968, 7975, 1), new Range16.ptr(7984, 7991, 1), new Range16.ptr(8000, 8005, 1), new Range16.ptr(8017, 8023, 2), new Range16.ptr(8032, 8039, 1), new Range16.ptr(8048, 8061, 1), new Range16.ptr(8112, 8113, 1), new Range16.ptr(8126, 8144, 18), new Range16.ptr(8145, 8160, 15), new Range16.ptr(8161, 8165, 4), new Range16.ptr(8526, 8580, 54), new Range16.ptr(11312, 11358, 1), new Range16.ptr(11361, 11365, 4), new Range16.ptr(11366, 11372, 2), new Range16.ptr(11379, 11382, 3), new Range16.ptr(11393, 11491, 2), new Range16.ptr(11500, 11502, 2), new Range16.ptr(11507, 11520, 13), new Range16.ptr(11521, 11557, 1), new Range16.ptr(11559, 11565, 6), new Range16.ptr(42561, 42605, 2), new Range16.ptr(42625, 42651, 2), new Range16.ptr(42787, 42799, 2), new Range16.ptr(42803, 42863, 2), new Range16.ptr(42874, 42876, 2), new Range16.ptr(42879, 42887, 2), new Range16.ptr(42892, 42897, 5), new Range16.ptr(42899, 42903, 4), new Range16.ptr(42905, 42921, 2), new Range16.ptr(42933, 42935, 2), new Range16.ptr(43859, 43888, 29), new Range16.ptr(43889, 43967, 1), new Range16.ptr(65345, 65370, 1)]), new sliceType$1([new Range32.ptr(66600, 66639, 1), new Range32.ptr(66776, 66811, 1), new Range32.ptr(68800, 68850, 1), new Range32.ptr(71872, 71903, 1), new Range32.ptr(125218, 125251, 1)]), 4);
+ foldM = new RangeTable.ptr(new sliceType([new Range16.ptr(921, 953, 32), new Range16.ptr(8126, 8126, 1)]), sliceType$1.nil, 0);
+ foldMn = new RangeTable.ptr(new sliceType([new Range16.ptr(921, 953, 32), new Range16.ptr(8126, 8126, 1)]), sliceType$1.nil, 0);
+ $pkg.FoldCategory = $makeMap($String.keyFor, [{ k: "Common", v: foldCommon }, { k: "Greek", v: foldGreek }, { k: "Inherited", v: foldInherited }, { k: "L", v: foldL }, { k: "Ll", v: foldLl }, { k: "Lt", v: foldLt }, { k: "Lu", v: foldLu }, { k: "M", v: foldM }, { k: "Mn", v: foldMn }]);
+ $pkg.FoldScript = $makeMap($String.keyFor, []);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["bytes"] = (function() {
+ var $pkg = {}, $init, errors, io, unicode, utf8, Buffer, readOp, ptrType, sliceType, arrayType, IndexByte, Equal, makeSlice, NewBuffer, Contains, HasPrefix, Index;
+ errors = $packages["errors"];
+ io = $packages["io"];
+ unicode = $packages["unicode"];
+ utf8 = $packages["unicode/utf8"];
+ Buffer = $pkg.Buffer = $newType(0, $kindStruct, "bytes.Buffer", true, "bytes", true, function(buf_, off_, bootstrap_, lastRead_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.buf = sliceType.nil;
+ this.off = 0;
+ this.bootstrap = arrayType.zero();
+ this.lastRead = 0;
+ return;
+ }
+ this.buf = buf_;
+ this.off = off_;
+ this.bootstrap = bootstrap_;
+ this.lastRead = lastRead_;
+ });
+ readOp = $pkg.readOp = $newType(4, $kindInt, "bytes.readOp", true, "bytes", false, null);
+ ptrType = $ptrType(Buffer);
+ sliceType = $sliceType($Uint8);
+ arrayType = $arrayType($Uint8, 64);
+ IndexByte = function(s, c) {
+ var $ptr, _i, _ref, b, c, i, s;
+ _ref = s;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ b = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (b === c) {
+ return i;
+ }
+ _i++;
+ }
+ return -1;
+ };
+ $pkg.IndexByte = IndexByte;
+ Equal = function(a, b) {
+ var $ptr, _i, _ref, a, b, c, i;
+ if (!((a.$length === b.$length))) {
+ return false;
+ }
+ _ref = a;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ c = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (!((c === ((i < 0 || i >= b.$length) ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + i])))) {
+ return false;
+ }
+ _i++;
+ }
+ return true;
+ };
+ $pkg.Equal = Equal;
+ Buffer.ptr.prototype.Bytes = function() {
+ var $ptr, b;
+ b = this;
+ return $subslice(b.buf, b.off);
+ };
+ Buffer.prototype.Bytes = function() { return this.$val.Bytes(); };
+ Buffer.ptr.prototype.String = function() {
+ var $ptr, b;
+ b = this;
+ if (b === ptrType.nil) {
+ return "<nil>";
+ }
+ return ($bytesToString($subslice(b.buf, b.off)));
+ };
+ Buffer.prototype.String = function() { return this.$val.String(); };
+ Buffer.ptr.prototype.Len = function() {
+ var $ptr, b;
+ b = this;
+ return b.buf.$length - b.off >> 0;
+ };
+ Buffer.prototype.Len = function() { return this.$val.Len(); };
+ Buffer.ptr.prototype.Cap = function() {
+ var $ptr, b;
+ b = this;
+ return b.buf.$capacity;
+ };
+ Buffer.prototype.Cap = function() { return this.$val.Cap(); };
+ Buffer.ptr.prototype.Truncate = function(n) {
+ var $ptr, b, n;
+ b = this;
+ b.lastRead = 0;
+ if (n < 0 || n > b.Len()) {
+ $panic(new $String("bytes.Buffer: truncation out of range"));
+ } else if ((n === 0)) {
+ b.off = 0;
+ }
+ b.buf = $subslice(b.buf, 0, (b.off + n >> 0));
+ };
+ Buffer.prototype.Truncate = function(n) { return this.$val.Truncate(n); };
+ Buffer.ptr.prototype.Reset = function() {
+ var $ptr, b;
+ b = this;
+ b.Truncate(0);
+ };
+ Buffer.prototype.Reset = function() { return this.$val.Reset(); };
+ Buffer.ptr.prototype.grow = function(n) {
+ var $ptr, _q, b, buf, m, n;
+ b = this;
+ m = b.Len();
+ if ((m === 0) && !((b.off === 0))) {
+ b.Truncate(0);
+ }
+ if ((b.buf.$length + n >> 0) > b.buf.$capacity) {
+ buf = sliceType.nil;
+ if (b.buf === sliceType.nil && n <= 64) {
+ buf = $subslice(new sliceType(b.bootstrap), 0);
+ } else if ((m + n >> 0) <= (_q = b.buf.$capacity / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"))) {
+ $copySlice(b.buf, $subslice(b.buf, b.off));
+ buf = $subslice(b.buf, 0, m);
+ } else {
+ buf = makeSlice(($imul(2, b.buf.$capacity)) + n >> 0);
+ $copySlice(buf, $subslice(b.buf, b.off));
+ }
+ b.buf = buf;
+ b.off = 0;
+ }
+ b.buf = $subslice(b.buf, 0, ((b.off + m >> 0) + n >> 0));
+ return b.off + m >> 0;
+ };
+ Buffer.prototype.grow = function(n) { return this.$val.grow(n); };
+ Buffer.ptr.prototype.Grow = function(n) {
+ var $ptr, b, m, n;
+ b = this;
+ if (n < 0) {
+ $panic(new $String("bytes.Buffer.Grow: negative count"));
+ }
+ m = b.grow(n);
+ b.buf = $subslice(b.buf, 0, m);
+ };
+ Buffer.prototype.Grow = function(n) { return this.$val.Grow(n); };
+ Buffer.ptr.prototype.Write = function(p) {
+ var $ptr, _tmp, _tmp$1, b, err, m, n, p;
+ n = 0;
+ err = $ifaceNil;
+ b = this;
+ b.lastRead = 0;
+ m = b.grow(p.$length);
+ _tmp = $copySlice($subslice(b.buf, m), p);
+ _tmp$1 = $ifaceNil;
+ n = _tmp;
+ err = _tmp$1;
+ return [n, err];
+ };
+ Buffer.prototype.Write = function(p) { return this.$val.Write(p); };
+ Buffer.ptr.prototype.WriteString = function(s) {
+ var $ptr, _tmp, _tmp$1, b, err, m, n, s;
+ n = 0;
+ err = $ifaceNil;
+ b = this;
+ b.lastRead = 0;
+ m = b.grow(s.length);
+ _tmp = $copyString($subslice(b.buf, m), s);
+ _tmp$1 = $ifaceNil;
+ n = _tmp;
+ err = _tmp$1;
+ return [n, err];
+ };
+ Buffer.prototype.WriteString = function(s) { return this.$val.WriteString(s); };
+ Buffer.ptr.prototype.ReadFrom = function(r) {
+ var $ptr, _r, _tmp, _tmp$1, _tmp$2, _tmp$3, _tuple, b, e, err, free, m, n, newBuf, r, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tuple = $f._tuple; b = $f.b; e = $f.e; err = $f.err; free = $f.free; m = $f.m; n = $f.n; newBuf = $f.newBuf; r = $f.r; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = new $Int64(0, 0);
+ err = $ifaceNil;
+ b = this;
+ b.lastRead = 0;
+ if (b.off >= b.buf.$length) {
+ b.Truncate(0);
+ }
+ /* while (true) { */ case 1:
+ free = b.buf.$capacity - b.buf.$length >> 0;
+ if (free < 512) {
+ newBuf = b.buf;
+ if ((b.off + free >> 0) < 512) {
+ newBuf = makeSlice(($imul(2, b.buf.$capacity)) + 512 >> 0);
+ }
+ $copySlice(newBuf, $subslice(b.buf, b.off));
+ b.buf = $subslice(newBuf, 0, (b.buf.$length - b.off >> 0));
+ b.off = 0;
+ }
+ _r = r.Read($subslice(b.buf, b.buf.$length, b.buf.$capacity)); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ m = _tuple[0];
+ e = _tuple[1];
+ b.buf = $subslice(b.buf, 0, (b.buf.$length + m >> 0));
+ n = (x = (new $Int64(0, m)), new $Int64(n.$high + x.$high, n.$low + x.$low));
+ if ($interfaceIsEqual(e, io.EOF)) {
+ /* break; */ $s = 2; continue;
+ }
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ _tmp = n;
+ _tmp$1 = e;
+ n = _tmp;
+ err = _tmp$1;
+ $s = -1; return [n, err];
+ }
+ /* } */ $s = 1; continue; case 2:
+ _tmp$2 = n;
+ _tmp$3 = $ifaceNil;
+ n = _tmp$2;
+ err = _tmp$3;
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Buffer.ptr.prototype.ReadFrom }; } $f.$ptr = $ptr; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tuple = _tuple; $f.b = b; $f.e = e; $f.err = err; $f.free = free; $f.m = m; $f.n = n; $f.newBuf = newBuf; $f.r = r; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Buffer.prototype.ReadFrom = function(r) { return this.$val.ReadFrom(r); };
+ makeSlice = function(n) {
+ var $ptr, n, $deferred;
+ /* */ var $err = null; try { $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ $deferred.push([(function() {
+ var $ptr;
+ if (!($interfaceIsEqual($recover(), $ifaceNil))) {
+ $panic($pkg.ErrTooLarge);
+ }
+ }), []]);
+ return $makeSlice(sliceType, n);
+ /* */ } catch(err) { $err = err; return sliceType.nil; } finally { $callDeferred($deferred, $err); }
+ };
+ Buffer.ptr.prototype.WriteTo = function(w) {
+ var $ptr, _r, _tmp, _tmp$1, _tmp$2, _tmp$3, _tuple, b, e, err, m, n, nBytes, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tuple = $f._tuple; b = $f.b; e = $f.e; err = $f.err; m = $f.m; n = $f.n; nBytes = $f.nBytes; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = new $Int64(0, 0);
+ err = $ifaceNil;
+ b = this;
+ b.lastRead = 0;
+ /* */ if (b.off < b.buf.$length) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (b.off < b.buf.$length) { */ case 1:
+ nBytes = b.Len();
+ _r = w.Write($subslice(b.buf, b.off)); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ m = _tuple[0];
+ e = _tuple[1];
+ if (m > nBytes) {
+ $panic(new $String("bytes.Buffer.WriteTo: invalid Write count"));
+ }
+ b.off = b.off + (m) >> 0;
+ n = (new $Int64(0, m));
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ _tmp = n;
+ _tmp$1 = e;
+ n = _tmp;
+ err = _tmp$1;
+ $s = -1; return [n, err];
+ }
+ if (!((m === nBytes))) {
+ _tmp$2 = n;
+ _tmp$3 = io.ErrShortWrite;
+ n = _tmp$2;
+ err = _tmp$3;
+ $s = -1; return [n, err];
+ }
+ /* } */ case 2:
+ b.Truncate(0);
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Buffer.ptr.prototype.WriteTo }; } $f.$ptr = $ptr; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tuple = _tuple; $f.b = b; $f.e = e; $f.err = err; $f.m = m; $f.n = n; $f.nBytes = nBytes; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Buffer.prototype.WriteTo = function(w) { return this.$val.WriteTo(w); };
+ Buffer.ptr.prototype.WriteByte = function(c) {
+ var $ptr, b, c, m, x;
+ b = this;
+ b.lastRead = 0;
+ m = b.grow(1);
+ (x = b.buf, ((m < 0 || m >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + m] = c));
+ return $ifaceNil;
+ };
+ Buffer.prototype.WriteByte = function(c) { return this.$val.WriteByte(c); };
+ Buffer.ptr.prototype.WriteRune = function(r) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, b, err, m, n, r;
+ n = 0;
+ err = $ifaceNil;
+ b = this;
+ if (r < 128) {
+ b.WriteByte(((r << 24 >>> 24)));
+ _tmp = 1;
+ _tmp$1 = $ifaceNil;
+ n = _tmp;
+ err = _tmp$1;
+ return [n, err];
+ }
+ b.lastRead = 0;
+ m = b.grow(4);
+ n = utf8.EncodeRune($subslice(b.buf, m, (m + 4 >> 0)), r);
+ b.buf = $subslice(b.buf, 0, (m + n >> 0));
+ _tmp$2 = n;
+ _tmp$3 = $ifaceNil;
+ n = _tmp$2;
+ err = _tmp$3;
+ return [n, err];
+ };
+ Buffer.prototype.WriteRune = function(r) { return this.$val.WriteRune(r); };
+ Buffer.ptr.prototype.Read = function(p) {
+ var $ptr, _tmp, _tmp$1, b, err, n, p;
+ n = 0;
+ err = $ifaceNil;
+ b = this;
+ b.lastRead = 0;
+ if (b.off >= b.buf.$length) {
+ b.Truncate(0);
+ if (p.$length === 0) {
+ return [n, err];
+ }
+ _tmp = 0;
+ _tmp$1 = io.EOF;
+ n = _tmp;
+ err = _tmp$1;
+ return [n, err];
+ }
+ n = $copySlice(p, $subslice(b.buf, b.off));
+ b.off = b.off + (n) >> 0;
+ if (n > 0) {
+ b.lastRead = -1;
+ }
+ return [n, err];
+ };
+ Buffer.prototype.Read = function(p) { return this.$val.Read(p); };
+ Buffer.ptr.prototype.Next = function(n) {
+ var $ptr, b, data, m, n;
+ b = this;
+ b.lastRead = 0;
+ m = b.Len();
+ if (n > m) {
+ n = m;
+ }
+ data = $subslice(b.buf, b.off, (b.off + n >> 0));
+ b.off = b.off + (n) >> 0;
+ if (n > 0) {
+ b.lastRead = -1;
+ }
+ return data;
+ };
+ Buffer.prototype.Next = function(n) { return this.$val.Next(n); };
+ Buffer.ptr.prototype.ReadByte = function() {
+ var $ptr, b, c, x, x$1;
+ b = this;
+ b.lastRead = 0;
+ if (b.off >= b.buf.$length) {
+ b.Truncate(0);
+ return [0, io.EOF];
+ }
+ c = (x = b.buf, x$1 = b.off, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ b.off = b.off + (1) >> 0;
+ b.lastRead = -1;
+ return [c, $ifaceNil];
+ };
+ Buffer.prototype.ReadByte = function() { return this.$val.ReadByte(); };
+ Buffer.ptr.prototype.ReadRune = function() {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tuple, b, c, err, n, r, size, x, x$1;
+ r = 0;
+ size = 0;
+ err = $ifaceNil;
+ b = this;
+ b.lastRead = 0;
+ if (b.off >= b.buf.$length) {
+ b.Truncate(0);
+ _tmp = 0;
+ _tmp$1 = 0;
+ _tmp$2 = io.EOF;
+ r = _tmp;
+ size = _tmp$1;
+ err = _tmp$2;
+ return [r, size, err];
+ }
+ c = (x = b.buf, x$1 = b.off, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ if (c < 128) {
+ b.off = b.off + (1) >> 0;
+ b.lastRead = 1;
+ _tmp$3 = ((c >> 0));
+ _tmp$4 = 1;
+ _tmp$5 = $ifaceNil;
+ r = _tmp$3;
+ size = _tmp$4;
+ err = _tmp$5;
+ return [r, size, err];
+ }
+ _tuple = utf8.DecodeRune($subslice(b.buf, b.off));
+ r = _tuple[0];
+ n = _tuple[1];
+ b.off = b.off + (n) >> 0;
+ b.lastRead = ((n >> 0));
+ _tmp$6 = r;
+ _tmp$7 = n;
+ _tmp$8 = $ifaceNil;
+ r = _tmp$6;
+ size = _tmp$7;
+ err = _tmp$8;
+ return [r, size, err];
+ };
+ Buffer.prototype.ReadRune = function() { return this.$val.ReadRune(); };
+ Buffer.ptr.prototype.UnreadRune = function() {
+ var $ptr, b;
+ b = this;
+ if (b.lastRead <= 0) {
+ return errors.New("bytes.Buffer: UnreadRune: previous operation was not ReadRune");
+ }
+ if (b.off >= ((b.lastRead >> 0))) {
+ b.off = b.off - (((b.lastRead >> 0))) >> 0;
+ }
+ b.lastRead = 0;
+ return $ifaceNil;
+ };
+ Buffer.prototype.UnreadRune = function() { return this.$val.UnreadRune(); };
+ Buffer.ptr.prototype.UnreadByte = function() {
+ var $ptr, b;
+ b = this;
+ if (b.lastRead === 0) {
+ return errors.New("bytes.Buffer: UnreadByte: previous operation was not a read");
+ }
+ b.lastRead = 0;
+ if (b.off > 0) {
+ b.off = b.off - (1) >> 0;
+ }
+ return $ifaceNil;
+ };
+ Buffer.prototype.UnreadByte = function() { return this.$val.UnreadByte(); };
+ Buffer.ptr.prototype.ReadBytes = function(delim) {
+ var $ptr, _tuple, b, delim, err, line, slice;
+ line = sliceType.nil;
+ err = $ifaceNil;
+ b = this;
+ _tuple = b.readSlice(delim);
+ slice = _tuple[0];
+ err = _tuple[1];
+ line = $appendSlice(line, slice);
+ return [line, err];
+ };
+ Buffer.prototype.ReadBytes = function(delim) { return this.$val.ReadBytes(delim); };
+ Buffer.ptr.prototype.readSlice = function(delim) {
+ var $ptr, _tmp, _tmp$1, b, delim, end, err, i, line;
+ line = sliceType.nil;
+ err = $ifaceNil;
+ b = this;
+ i = IndexByte($subslice(b.buf, b.off), delim);
+ end = (b.off + i >> 0) + 1 >> 0;
+ if (i < 0) {
+ end = b.buf.$length;
+ err = io.EOF;
+ }
+ line = $subslice(b.buf, b.off, end);
+ b.off = end;
+ b.lastRead = -1;
+ _tmp = line;
+ _tmp$1 = err;
+ line = _tmp;
+ err = _tmp$1;
+ return [line, err];
+ };
+ Buffer.prototype.readSlice = function(delim) { return this.$val.readSlice(delim); };
+ Buffer.ptr.prototype.ReadString = function(delim) {
+ var $ptr, _tmp, _tmp$1, _tuple, b, delim, err, line, slice;
+ line = "";
+ err = $ifaceNil;
+ b = this;
+ _tuple = b.readSlice(delim);
+ slice = _tuple[0];
+ err = _tuple[1];
+ _tmp = ($bytesToString(slice));
+ _tmp$1 = err;
+ line = _tmp;
+ err = _tmp$1;
+ return [line, err];
+ };
+ Buffer.prototype.ReadString = function(delim) { return this.$val.ReadString(delim); };
+ NewBuffer = function(buf) {
+ var $ptr, buf;
+ return new Buffer.ptr(buf, 0, arrayType.zero(), 0);
+ };
+ $pkg.NewBuffer = NewBuffer;
+ Contains = function(b, subslice) {
+ var $ptr, b, subslice;
+ return !((Index(b, subslice) === -1));
+ };
+ $pkg.Contains = Contains;
+ HasPrefix = function(s, prefix) {
+ var $ptr, prefix, s;
+ return s.$length >= prefix.$length && Equal($subslice(s, 0, prefix.$length), prefix);
+ };
+ $pkg.HasPrefix = HasPrefix;
+ Index = function(s, sep) {
+ var $ptr, c, i, n, o, s, sep, t;
+ n = sep.$length;
+ if (n === 0) {
+ return 0;
+ }
+ if (n > s.$length) {
+ return -1;
+ }
+ c = (0 >= sep.$length ? ($throwRuntimeError("index out of range"), undefined) : sep.$array[sep.$offset + 0]);
+ if (n === 1) {
+ return IndexByte(s, c);
+ }
+ i = 0;
+ t = $subslice(s, 0, ((s.$length - n >> 0) + 1 >> 0));
+ while (true) {
+ if (!(i < t.$length)) { break; }
+ if (!((((i < 0 || i >= t.$length) ? ($throwRuntimeError("index out of range"), undefined) : t.$array[t.$offset + i]) === c))) {
+ o = IndexByte($subslice(t, i), c);
+ if (o < 0) {
+ break;
+ }
+ i = i + (o) >> 0;
+ }
+ if (Equal($subslice(s, i, (i + n >> 0)), sep)) {
+ return i;
+ }
+ i = i + (1) >> 0;
+ }
+ return -1;
+ };
+ $pkg.Index = Index;
+ ptrType.methods = [{prop: "Bytes", name: "Bytes", pkg: "", typ: $funcType([], [sliceType], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Len", name: "Len", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Cap", name: "Cap", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Truncate", name: "Truncate", pkg: "", typ: $funcType([$Int], [], false)}, {prop: "Reset", name: "Reset", pkg: "", typ: $funcType([], [], false)}, {prop: "grow", name: "grow", pkg: "bytes", typ: $funcType([$Int], [$Int], false)}, {prop: "Grow", name: "Grow", pkg: "", typ: $funcType([$Int], [], false)}, {prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}, {prop: "WriteString", name: "WriteString", pkg: "", typ: $funcType([$String], [$Int, $error], false)}, {prop: "ReadFrom", name: "ReadFrom", pkg: "", typ: $funcType([io.Reader], [$Int64, $error], false)}, {prop: "WriteTo", name: "WriteTo", pkg: "", typ: $funcType([io.Writer], [$Int64, $error], false)}, {prop: "WriteByte", name: "WriteByte", pkg: "", typ: $funcType([$Uint8], [$error], false)}, {prop: "WriteRune", name: "WriteRune", pkg: "", typ: $funcType([$Int32], [$Int, $error], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}, {prop: "Next", name: "Next", pkg: "", typ: $funcType([$Int], [sliceType], false)}, {prop: "ReadByte", name: "ReadByte", pkg: "", typ: $funcType([], [$Uint8, $error], false)}, {prop: "ReadRune", name: "ReadRune", pkg: "", typ: $funcType([], [$Int32, $Int, $error], false)}, {prop: "UnreadRune", name: "UnreadRune", pkg: "", typ: $funcType([], [$error], false)}, {prop: "UnreadByte", name: "UnreadByte", pkg: "", typ: $funcType([], [$error], false)}, {prop: "ReadBytes", name: "ReadBytes", pkg: "", typ: $funcType([$Uint8], [sliceType, $error], false)}, {prop: "readSlice", name: "readSlice", pkg: "bytes", typ: $funcType([$Uint8], [sliceType, $error], false)}, {prop: "ReadString", name: "ReadString", pkg: "", typ: $funcType([$Uint8], [$String, $error], false)}];
+ Buffer.init("bytes", [{prop: "buf", name: "buf", exported: false, typ: sliceType, tag: ""}, {prop: "off", name: "off", exported: false, typ: $Int, tag: ""}, {prop: "bootstrap", name: "bootstrap", exported: false, typ: arrayType, tag: ""}, {prop: "lastRead", name: "lastRead", exported: false, typ: readOp, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = errors.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = unicode.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = utf8.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $pkg.ErrTooLarge = errors.New("bytes.Buffer: too large");
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["encoding"] = (function() {
+ var $pkg = {}, $init, BinaryMarshaler, BinaryUnmarshaler, TextMarshaler, TextUnmarshaler, sliceType;
+ BinaryMarshaler = $pkg.BinaryMarshaler = $newType(8, $kindInterface, "encoding.BinaryMarshaler", true, "encoding", true, null);
+ BinaryUnmarshaler = $pkg.BinaryUnmarshaler = $newType(8, $kindInterface, "encoding.BinaryUnmarshaler", true, "encoding", true, null);
+ TextMarshaler = $pkg.TextMarshaler = $newType(8, $kindInterface, "encoding.TextMarshaler", true, "encoding", true, null);
+ TextUnmarshaler = $pkg.TextUnmarshaler = $newType(8, $kindInterface, "encoding.TextUnmarshaler", true, "encoding", true, null);
+ sliceType = $sliceType($Uint8);
+ BinaryMarshaler.init([{prop: "MarshalBinary", name: "MarshalBinary", pkg: "", typ: $funcType([], [sliceType, $error], false)}]);
+ BinaryUnmarshaler.init([{prop: "UnmarshalBinary", name: "UnmarshalBinary", pkg: "", typ: $funcType([sliceType], [$error], false)}]);
+ TextMarshaler.init([{prop: "MarshalText", name: "MarshalText", pkg: "", typ: $funcType([], [sliceType, $error], false)}]);
+ TextUnmarshaler.init([{prop: "UnmarshalText", name: "UnmarshalText", pkg: "", typ: $funcType([sliceType], [$error], false)}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["syscall"] = (function() {
+ var $pkg = {}, $init, js, race, runtime, sync, NetlinkRouteRequest, NetlinkMessage, NetlinkRouteAttr, SockaddrLinklayer, SockaddrNetlink, mmapper, Errno, Sockaddr, SockaddrInet4, SockaddrInet6, SockaddrUnix, Timespec, Stat_t, RawSockaddrInet4, RawSockaddrInet6, RawSockaddrUnix, RawSockaddrLinklayer, RawSockaddrNetlink, RawSockaddr, RawSockaddrAny, _Socklen, NlMsghdr, RtGenmsg, RtAttr, IfInfomsg, IfAddrmsg, sliceType, sliceType$1, ptrType$2, arrayType$1, ptrType$8, arrayType$2, ptrType$11, sliceType$6, ptrType$12, sliceType$7, ptrType$13, arrayType$4, arrayType$7, arrayType$8, arrayType$9, arrayType$10, ptrType$18, structType, ptrType$22, ptrType$23, ptrType$24, ptrType$25, mapType, funcType, funcType$1, ptrType$26, ptrType$27, ptrType$28, ptrType$29, arrayType$15, warningPrinted, lineBuffer, syscallModule, alreadyTriedToLoad, minusOne, envOnce, envLock, env, envs, mapper, errEAGAIN, errEINVAL, errENOENT, ioSync, ioSync$24ptr, errors, init, printWarning, printToConsole, use, indexByte, runtime_envs, syscall, Syscall, Syscall6, RawSyscall, BytePtrFromString, readInt, readIntBE, readIntLE, ParseDirent, copyenv, Getenv, CloseOnExec, msanRead, msanWrite, nlmAlignOf, rtaAlignOf, newNetlinkRouteRequest, NetlinkRIB, ParseNetlinkMessage, netlinkMessageHeaderAndData, ParseNetlinkRouteAttr, netlinkRouteAttrAndValue, itoa, uitoa, Getpagesize, Chmod, Open, anyToSockaddr, Getsockname, ReadDirent, direntIno, direntReclen, direntNamlen, errnoErr, Read, Write, Bind, Recvfrom, Sendto, Socket, openat, Close, Exit, Fchdir, Fchmod, Fchmodat, fcntl, Fsync, Getdents, read, write, munmap, Fchown, Fstat, Ftruncate, Getgid, Getuid, Lstat, Pread, Pwrite, Seek, Stat, bind, socket, getsockname, recvfrom, sendto, mmap;
+ js = $packages["github.com/gopherjs/gopherjs/js"];
+ race = $packages["internal/race"];
+ runtime = $packages["runtime"];
+ sync = $packages["sync"];
+ NetlinkRouteRequest = $pkg.NetlinkRouteRequest = $newType(0, $kindStruct, "syscall.NetlinkRouteRequest", true, "syscall", true, function(Header_, Data_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Header = new NlMsghdr.ptr(0, 0, 0, 0, 0);
+ this.Data = new RtGenmsg.ptr(0);
+ return;
+ }
+ this.Header = Header_;
+ this.Data = Data_;
+ });
+ NetlinkMessage = $pkg.NetlinkMessage = $newType(0, $kindStruct, "syscall.NetlinkMessage", true, "syscall", true, function(Header_, Data_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Header = new NlMsghdr.ptr(0, 0, 0, 0, 0);
+ this.Data = sliceType.nil;
+ return;
+ }
+ this.Header = Header_;
+ this.Data = Data_;
+ });
+ NetlinkRouteAttr = $pkg.NetlinkRouteAttr = $newType(0, $kindStruct, "syscall.NetlinkRouteAttr", true, "syscall", true, function(Attr_, Value_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Attr = new RtAttr.ptr(0, 0);
+ this.Value = sliceType.nil;
+ return;
+ }
+ this.Attr = Attr_;
+ this.Value = Value_;
+ });
+ SockaddrLinklayer = $pkg.SockaddrLinklayer = $newType(0, $kindStruct, "syscall.SockaddrLinklayer", true, "syscall", true, function(Protocol_, Ifindex_, Hatype_, Pkttype_, Halen_, Addr_, raw_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Protocol = 0;
+ this.Ifindex = 0;
+ this.Hatype = 0;
+ this.Pkttype = 0;
+ this.Halen = 0;
+ this.Addr = arrayType$1.zero();
+ this.raw = new RawSockaddrLinklayer.ptr(0, 0, 0, 0, 0, 0, arrayType$1.zero());
+ return;
+ }
+ this.Protocol = Protocol_;
+ this.Ifindex = Ifindex_;
+ this.Hatype = Hatype_;
+ this.Pkttype = Pkttype_;
+ this.Halen = Halen_;
+ this.Addr = Addr_;
+ this.raw = raw_;
+ });
+ SockaddrNetlink = $pkg.SockaddrNetlink = $newType(0, $kindStruct, "syscall.SockaddrNetlink", true, "syscall", true, function(Family_, Pad_, Pid_, Groups_, raw_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Family = 0;
+ this.Pad = 0;
+ this.Pid = 0;
+ this.Groups = 0;
+ this.raw = new RawSockaddrNetlink.ptr(0, 0, 0, 0);
+ return;
+ }
+ this.Family = Family_;
+ this.Pad = Pad_;
+ this.Pid = Pid_;
+ this.Groups = Groups_;
+ this.raw = raw_;
+ });
+ mmapper = $pkg.mmapper = $newType(0, $kindStruct, "syscall.mmapper", true, "syscall", false, function(Mutex_, active_, mmap_, munmap_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Mutex = new sync.Mutex.ptr(0, 0);
+ this.active = false;
+ this.mmap = $throwNilPointerError;
+ this.munmap = $throwNilPointerError;
+ return;
+ }
+ this.Mutex = Mutex_;
+ this.active = active_;
+ this.mmap = mmap_;
+ this.munmap = munmap_;
+ });
+ Errno = $pkg.Errno = $newType(4, $kindUintptr, "syscall.Errno", true, "syscall", true, null);
+ Sockaddr = $pkg.Sockaddr = $newType(8, $kindInterface, "syscall.Sockaddr", true, "syscall", true, null);
+ SockaddrInet4 = $pkg.SockaddrInet4 = $newType(0, $kindStruct, "syscall.SockaddrInet4", true, "syscall", true, function(Port_, Addr_, raw_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Port = 0;
+ this.Addr = arrayType$8.zero();
+ this.raw = new RawSockaddrInet4.ptr(0, 0, arrayType$8.zero(), arrayType$1.zero());
+ return;
+ }
+ this.Port = Port_;
+ this.Addr = Addr_;
+ this.raw = raw_;
+ });
+ SockaddrInet6 = $pkg.SockaddrInet6 = $newType(0, $kindStruct, "syscall.SockaddrInet6", true, "syscall", true, function(Port_, ZoneId_, Addr_, raw_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Port = 0;
+ this.ZoneId = 0;
+ this.Addr = arrayType$2.zero();
+ this.raw = new RawSockaddrInet6.ptr(0, 0, 0, arrayType$2.zero(), 0);
+ return;
+ }
+ this.Port = Port_;
+ this.ZoneId = ZoneId_;
+ this.Addr = Addr_;
+ this.raw = raw_;
+ });
+ SockaddrUnix = $pkg.SockaddrUnix = $newType(0, $kindStruct, "syscall.SockaddrUnix", true, "syscall", true, function(Name_, raw_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Name = "";
+ this.raw = new RawSockaddrUnix.ptr(0, arrayType$7.zero());
+ return;
+ }
+ this.Name = Name_;
+ this.raw = raw_;
+ });
+ Timespec = $pkg.Timespec = $newType(0, $kindStruct, "syscall.Timespec", true, "syscall", true, function(Sec_, Nsec_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Sec = new $Int64(0, 0);
+ this.Nsec = new $Int64(0, 0);
+ return;
+ }
+ this.Sec = Sec_;
+ this.Nsec = Nsec_;
+ });
+ Stat_t = $pkg.Stat_t = $newType(0, $kindStruct, "syscall.Stat_t", true, "syscall", true, function(Dev_, Ino_, Nlink_, Mode_, Uid_, Gid_, X__pad0_, Rdev_, Size_, Blksize_, Blocks_, Atim_, Mtim_, Ctim_, X__unused_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Dev = new $Uint64(0, 0);
+ this.Ino = new $Uint64(0, 0);
+ this.Nlink = new $Uint64(0, 0);
+ this.Mode = 0;
+ this.Uid = 0;
+ this.Gid = 0;
+ this.X__pad0 = 0;
+ this.Rdev = new $Uint64(0, 0);
+ this.Size = new $Int64(0, 0);
+ this.Blksize = new $Int64(0, 0);
+ this.Blocks = new $Int64(0, 0);
+ this.Atim = new Timespec.ptr(new $Int64(0, 0), new $Int64(0, 0));
+ this.Mtim = new Timespec.ptr(new $Int64(0, 0), new $Int64(0, 0));
+ this.Ctim = new Timespec.ptr(new $Int64(0, 0), new $Int64(0, 0));
+ this.X__unused = arrayType$15.zero();
+ return;
+ }
+ this.Dev = Dev_;
+ this.Ino = Ino_;
+ this.Nlink = Nlink_;
+ this.Mode = Mode_;
+ this.Uid = Uid_;
+ this.Gid = Gid_;
+ this.X__pad0 = X__pad0_;
+ this.Rdev = Rdev_;
+ this.Size = Size_;
+ this.Blksize = Blksize_;
+ this.Blocks = Blocks_;
+ this.Atim = Atim_;
+ this.Mtim = Mtim_;
+ this.Ctim = Ctim_;
+ this.X__unused = X__unused_;
+ });
+ RawSockaddrInet4 = $pkg.RawSockaddrInet4 = $newType(0, $kindStruct, "syscall.RawSockaddrInet4", true, "syscall", true, function(Family_, Port_, Addr_, Zero_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Family = 0;
+ this.Port = 0;
+ this.Addr = arrayType$8.zero();
+ this.Zero = arrayType$1.zero();
+ return;
+ }
+ this.Family = Family_;
+ this.Port = Port_;
+ this.Addr = Addr_;
+ this.Zero = Zero_;
+ });
+ RawSockaddrInet6 = $pkg.RawSockaddrInet6 = $newType(0, $kindStruct, "syscall.RawSockaddrInet6", true, "syscall", true, function(Family_, Port_, Flowinfo_, Addr_, Scope_id_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Family = 0;
+ this.Port = 0;
+ this.Flowinfo = 0;
+ this.Addr = arrayType$2.zero();
+ this.Scope_id = 0;
+ return;
+ }
+ this.Family = Family_;
+ this.Port = Port_;
+ this.Flowinfo = Flowinfo_;
+ this.Addr = Addr_;
+ this.Scope_id = Scope_id_;
+ });
+ RawSockaddrUnix = $pkg.RawSockaddrUnix = $newType(0, $kindStruct, "syscall.RawSockaddrUnix", true, "syscall", true, function(Family_, Path_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Family = 0;
+ this.Path = arrayType$7.zero();
+ return;
+ }
+ this.Family = Family_;
+ this.Path = Path_;
+ });
+ RawSockaddrLinklayer = $pkg.RawSockaddrLinklayer = $newType(0, $kindStruct, "syscall.RawSockaddrLinklayer", true, "syscall", true, function(Family_, Protocol_, Ifindex_, Hatype_, Pkttype_, Halen_, Addr_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Family = 0;
+ this.Protocol = 0;
+ this.Ifindex = 0;
+ this.Hatype = 0;
+ this.Pkttype = 0;
+ this.Halen = 0;
+ this.Addr = arrayType$1.zero();
+ return;
+ }
+ this.Family = Family_;
+ this.Protocol = Protocol_;
+ this.Ifindex = Ifindex_;
+ this.Hatype = Hatype_;
+ this.Pkttype = Pkttype_;
+ this.Halen = Halen_;
+ this.Addr = Addr_;
+ });
+ RawSockaddrNetlink = $pkg.RawSockaddrNetlink = $newType(0, $kindStruct, "syscall.RawSockaddrNetlink", true, "syscall", true, function(Family_, Pad_, Pid_, Groups_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Family = 0;
+ this.Pad = 0;
+ this.Pid = 0;
+ this.Groups = 0;
+ return;
+ }
+ this.Family = Family_;
+ this.Pad = Pad_;
+ this.Pid = Pid_;
+ this.Groups = Groups_;
+ });
+ RawSockaddr = $pkg.RawSockaddr = $newType(0, $kindStruct, "syscall.RawSockaddr", true, "syscall", true, function(Family_, Data_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Family = 0;
+ this.Data = arrayType$9.zero();
+ return;
+ }
+ this.Family = Family_;
+ this.Data = Data_;
+ });
+ RawSockaddrAny = $pkg.RawSockaddrAny = $newType(0, $kindStruct, "syscall.RawSockaddrAny", true, "syscall", true, function(Addr_, Pad_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Addr = new RawSockaddr.ptr(0, arrayType$9.zero());
+ this.Pad = arrayType$10.zero();
+ return;
+ }
+ this.Addr = Addr_;
+ this.Pad = Pad_;
+ });
+ _Socklen = $pkg._Socklen = $newType(4, $kindUint32, "syscall._Socklen", true, "syscall", false, null);
+ NlMsghdr = $pkg.NlMsghdr = $newType(0, $kindStruct, "syscall.NlMsghdr", true, "syscall", true, function(Len_, Type_, Flags_, Seq_, Pid_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Len = 0;
+ this.Type = 0;
+ this.Flags = 0;
+ this.Seq = 0;
+ this.Pid = 0;
+ return;
+ }
+ this.Len = Len_;
+ this.Type = Type_;
+ this.Flags = Flags_;
+ this.Seq = Seq_;
+ this.Pid = Pid_;
+ });
+ RtGenmsg = $pkg.RtGenmsg = $newType(0, $kindStruct, "syscall.RtGenmsg", true, "syscall", true, function(Family_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Family = 0;
+ return;
+ }
+ this.Family = Family_;
+ });
+ RtAttr = $pkg.RtAttr = $newType(0, $kindStruct, "syscall.RtAttr", true, "syscall", true, function(Len_, Type_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Len = 0;
+ this.Type = 0;
+ return;
+ }
+ this.Len = Len_;
+ this.Type = Type_;
+ });
+ IfInfomsg = $pkg.IfInfomsg = $newType(0, $kindStruct, "syscall.IfInfomsg", true, "syscall", true, function(Family_, X__ifi_pad_, Type_, Index_, Flags_, Change_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Family = 0;
+ this.X__ifi_pad = 0;
+ this.Type = 0;
+ this.Index = 0;
+ this.Flags = 0;
+ this.Change = 0;
+ return;
+ }
+ this.Family = Family_;
+ this.X__ifi_pad = X__ifi_pad_;
+ this.Type = Type_;
+ this.Index = Index_;
+ this.Flags = Flags_;
+ this.Change = Change_;
+ });
+ IfAddrmsg = $pkg.IfAddrmsg = $newType(0, $kindStruct, "syscall.IfAddrmsg", true, "syscall", true, function(Family_, Prefixlen_, Flags_, Scope_, Index_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Family = 0;
+ this.Prefixlen = 0;
+ this.Flags = 0;
+ this.Scope = 0;
+ this.Index = 0;
+ return;
+ }
+ this.Family = Family_;
+ this.Prefixlen = Prefixlen_;
+ this.Flags = Flags_;
+ this.Scope = Scope_;
+ this.Index = Index_;
+ });
+ sliceType = $sliceType($Uint8);
+ sliceType$1 = $sliceType($String);
+ ptrType$2 = $ptrType($Uint8);
+ arrayType$1 = $arrayType($Uint8, 8);
+ ptrType$8 = $ptrType($Uint16);
+ arrayType$2 = $arrayType($Uint8, 16);
+ ptrType$11 = $ptrType(SockaddrNetlink);
+ sliceType$6 = $sliceType(NetlinkMessage);
+ ptrType$12 = $ptrType(NlMsghdr);
+ sliceType$7 = $sliceType(NetlinkRouteAttr);
+ ptrType$13 = $ptrType(RtAttr);
+ arrayType$4 = $arrayType($Uint8, 32);
+ arrayType$7 = $arrayType($Int8, 108);
+ arrayType$8 = $arrayType($Uint8, 4);
+ arrayType$9 = $arrayType($Int8, 14);
+ arrayType$10 = $arrayType($Int8, 96);
+ ptrType$18 = $ptrType(_Socklen);
+ structType = $structType("syscall", [{prop: "addr", name: "addr", exported: false, typ: $Uintptr, tag: ""}, {prop: "len", name: "len", exported: false, typ: $Int, tag: ""}, {prop: "cap", name: "cap", exported: false, typ: $Int, tag: ""}]);
+ ptrType$22 = $ptrType($Int64);
+ ptrType$23 = $ptrType(NetlinkRouteRequest);
+ ptrType$24 = $ptrType(SockaddrLinklayer);
+ ptrType$25 = $ptrType(mmapper);
+ mapType = $mapType(ptrType$2, sliceType);
+ funcType = $funcType([$Uintptr, $Uintptr, $Int, $Int, $Int, $Int64], [$Uintptr, $error], false);
+ funcType$1 = $funcType([$Uintptr, $Uintptr], [$error], false);
+ ptrType$26 = $ptrType(SockaddrInet4);
+ ptrType$27 = $ptrType(SockaddrInet6);
+ ptrType$28 = $ptrType(SockaddrUnix);
+ ptrType$29 = $ptrType(Timespec);
+ arrayType$15 = $arrayType($Int64, 3);
+ init = function() {
+ var $ptr;
+ $flushConsole = (function() {
+ var $ptr;
+ if (!((lineBuffer.$length === 0))) {
+ $global.console.log($externalize(($bytesToString(lineBuffer)), $String));
+ lineBuffer = sliceType.nil;
+ }
+ });
+ };
+ printWarning = function() {
+ var $ptr;
+ if (!warningPrinted) {
+ $global.console.error($externalize("warning: system calls not available, see https://github.com/gopherjs/gopherjs/blob/master/doc/syscalls.md", $String));
+ }
+ warningPrinted = true;
+ };
+ printToConsole = function(b) {
+ var $ptr, b, goPrintToConsole, i;
+ goPrintToConsole = $global.goPrintToConsole;
+ if (!(goPrintToConsole === undefined)) {
+ goPrintToConsole(b);
+ return;
+ }
+ lineBuffer = $appendSlice(lineBuffer, b);
+ while (true) {
+ i = indexByte(lineBuffer, 10);
+ if (i === -1) {
+ break;
+ }
+ $global.console.log($externalize(($bytesToString($subslice(lineBuffer, 0, i))), $String));
+ lineBuffer = $subslice(lineBuffer, (i + 1 >> 0));
+ }
+ };
+ use = function(p) {
+ var $ptr, p;
+ };
+ indexByte = function(s, c) {
+ var $ptr, _i, _ref, b, c, i, s;
+ _ref = s;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ b = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (b === c) {
+ return i;
+ }
+ _i++;
+ }
+ return -1;
+ };
+ runtime_envs = function() {
+ var $ptr, envkeys, envs$1, i, jsEnv, key, process;
+ process = $global.process;
+ if (process === undefined) {
+ return sliceType$1.nil;
+ }
+ jsEnv = process.env;
+ envkeys = $global.Object.keys(jsEnv);
+ envs$1 = $makeSlice(sliceType$1, $parseInt(envkeys.length));
+ i = 0;
+ while (true) {
+ if (!(i < $parseInt(envkeys.length))) { break; }
+ key = $internalize(envkeys[i], $String);
+ ((i < 0 || i >= envs$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : envs$1.$array[envs$1.$offset + i] = key + "=" + $internalize(jsEnv[$externalize(key, $String)], $String));
+ i = i + (1) >> 0;
+ }
+ return envs$1;
+ };
+ syscall = function(name) {
+ var $ptr, name, require, $deferred;
+ /* */ var $err = null; try { $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ $deferred.push([(function() {
+ var $ptr;
+ $recover();
+ }), []]);
+ if (syscallModule === null) {
+ if (alreadyTriedToLoad) {
+ return null;
+ }
+ alreadyTriedToLoad = true;
+ require = $global.require;
+ if (require === undefined) {
+ $panic(new $String(""));
+ }
+ syscallModule = require($externalize("syscall", $String));
+ }
+ return syscallModule[$externalize(name, $String)];
+ /* */ } catch(err) { $err = err; return null; } finally { $callDeferred($deferred, $err); }
+ };
+ Syscall = function(trap, a1, a2, a3) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, a1, a2, a3, array, err, f, r, r1, r2, slice, trap;
+ r1 = 0;
+ r2 = 0;
+ err = 0;
+ f = syscall("Syscall");
+ if (!(f === null)) {
+ r = f(trap, a1, a2, a3);
+ _tmp = ((($parseInt(r[0]) >> 0) >>> 0));
+ _tmp$1 = ((($parseInt(r[1]) >> 0) >>> 0));
+ _tmp$2 = ((($parseInt(r[2]) >> 0) >>> 0));
+ r1 = _tmp;
+ r2 = _tmp$1;
+ err = _tmp$2;
+ return [r1, r2, err];
+ }
+ if ((trap === 1) && ((a1 === 1) || (a1 === 2))) {
+ array = a2;
+ slice = $makeSlice(sliceType, $parseInt(array.length));
+ slice.$array = array;
+ printToConsole(slice);
+ _tmp$3 = (($parseInt(array.length) >>> 0));
+ _tmp$4 = 0;
+ _tmp$5 = 0;
+ r1 = _tmp$3;
+ r2 = _tmp$4;
+ err = _tmp$5;
+ return [r1, r2, err];
+ }
+ if (trap === 60) {
+ runtime.Goexit();
+ }
+ printWarning();
+ _tmp$6 = ((minusOne >>> 0));
+ _tmp$7 = 0;
+ _tmp$8 = 13;
+ r1 = _tmp$6;
+ r2 = _tmp$7;
+ err = _tmp$8;
+ return [r1, r2, err];
+ };
+ $pkg.Syscall = Syscall;
+ Syscall6 = function(trap, a1, a2, a3, a4, a5, a6) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, a1, a2, a3, a4, a5, a6, err, f, r, r1, r2, trap;
+ r1 = 0;
+ r2 = 0;
+ err = 0;
+ f = syscall("Syscall6");
+ if (!(f === null)) {
+ r = f(trap, a1, a2, a3, a4, a5, a6);
+ _tmp = ((($parseInt(r[0]) >> 0) >>> 0));
+ _tmp$1 = ((($parseInt(r[1]) >> 0) >>> 0));
+ _tmp$2 = ((($parseInt(r[2]) >> 0) >>> 0));
+ r1 = _tmp;
+ r2 = _tmp$1;
+ err = _tmp$2;
+ return [r1, r2, err];
+ }
+ if (!((trap === 202))) {
+ printWarning();
+ }
+ _tmp$3 = ((minusOne >>> 0));
+ _tmp$4 = 0;
+ _tmp$5 = 13;
+ r1 = _tmp$3;
+ r2 = _tmp$4;
+ err = _tmp$5;
+ return [r1, r2, err];
+ };
+ $pkg.Syscall6 = Syscall6;
+ RawSyscall = function(trap, a1, a2, a3) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, a1, a2, a3, err, f, r, r1, r2, trap;
+ r1 = 0;
+ r2 = 0;
+ err = 0;
+ f = syscall("Syscall");
+ if (!(f === null)) {
+ r = f(trap, a1, a2, a3);
+ _tmp = ((($parseInt(r[0]) >> 0) >>> 0));
+ _tmp$1 = ((($parseInt(r[1]) >> 0) >>> 0));
+ _tmp$2 = ((($parseInt(r[2]) >> 0) >>> 0));
+ r1 = _tmp;
+ r2 = _tmp$1;
+ err = _tmp$2;
+ return [r1, r2, err];
+ }
+ printWarning();
+ _tmp$3 = ((minusOne >>> 0));
+ _tmp$4 = 0;
+ _tmp$5 = 13;
+ r1 = _tmp$3;
+ r2 = _tmp$4;
+ err = _tmp$5;
+ return [r1, r2, err];
+ };
+ $pkg.RawSyscall = RawSyscall;
+ BytePtrFromString = function(s) {
+ var $ptr, _i, _ref, array, b, i, s;
+ array = new ($global.Uint8Array)(s.length + 1 >> 0);
+ _ref = (new sliceType($stringToBytes(s)));
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ b = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (b === 0) {
+ return [ptrType$2.nil, new Errno(22)];
+ }
+ array[i] = b;
+ _i++;
+ }
+ array[s.length] = 0;
+ return [((array)), $ifaceNil];
+ };
+ $pkg.BytePtrFromString = BytePtrFromString;
+ readInt = function(b, off, size) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, b, off, ok, size, u;
+ u = new $Uint64(0, 0);
+ ok = false;
+ if (b.$length < (((off + size >>> 0) >> 0))) {
+ _tmp = new $Uint64(0, 0);
+ _tmp$1 = false;
+ u = _tmp;
+ ok = _tmp$1;
+ return [u, ok];
+ }
+ if (false) {
+ _tmp$2 = readIntBE($subslice(b, off), size);
+ _tmp$3 = true;
+ u = _tmp$2;
+ ok = _tmp$3;
+ return [u, ok];
+ }
+ _tmp$4 = readIntLE($subslice(b, off), size);
+ _tmp$5 = true;
+ u = _tmp$4;
+ ok = _tmp$5;
+ return [u, ok];
+ };
+ readIntBE = function(b, size) {
+ var $ptr, _1, b, size, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$19, x$2, x$20, x$21, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ _1 = size;
+ if (_1 === (1)) {
+ return (new $Uint64(0, (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0])));
+ } else if (_1 === (2)) {
+ $unused((1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]));
+ return (x = (new $Uint64(0, (1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]))), x$1 = $shiftLeft64((new $Uint64(0, (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0]))), 8), new $Uint64(x.$high | x$1.$high, (x.$low | x$1.$low) >>> 0));
+ } else if (_1 === (4)) {
+ $unused((3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3]));
+ return (x$2 = (x$3 = (x$4 = (new $Uint64(0, (3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3]))), x$5 = $shiftLeft64((new $Uint64(0, (2 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 2]))), 8), new $Uint64(x$4.$high | x$5.$high, (x$4.$low | x$5.$low) >>> 0)), x$6 = $shiftLeft64((new $Uint64(0, (1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]))), 16), new $Uint64(x$3.$high | x$6.$high, (x$3.$low | x$6.$low) >>> 0)), x$7 = $shiftLeft64((new $Uint64(0, (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0]))), 24), new $Uint64(x$2.$high | x$7.$high, (x$2.$low | x$7.$low) >>> 0));
+ } else if (_1 === (8)) {
+ $unused((7 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 7]));
+ return (x$8 = (x$9 = (x$10 = (x$11 = (x$12 = (x$13 = (x$14 = (new $Uint64(0, (7 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 7]))), x$15 = $shiftLeft64((new $Uint64(0, (6 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 6]))), 8), new $Uint64(x$14.$high | x$15.$high, (x$14.$low | x$15.$low) >>> 0)), x$16 = $shiftLeft64((new $Uint64(0, (5 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 5]))), 16), new $Uint64(x$13.$high | x$16.$high, (x$13.$low | x$16.$low) >>> 0)), x$17 = $shiftLeft64((new $Uint64(0, (4 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 4]))), 24), new $Uint64(x$12.$high | x$17.$high, (x$12.$low | x$17.$low) >>> 0)), x$18 = $shiftLeft64((new $Uint64(0, (3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3]))), 32), new $Uint64(x$11.$high | x$18.$high, (x$11.$low | x$18.$low) >>> 0)), x$19 = $shiftLeft64((new $Uint64(0, (2 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 2]))), 40), new $Uint64(x$10.$high | x$19.$high, (x$10.$low | x$19.$low) >>> 0)), x$20 = $shiftLeft64((new $Uint64(0, (1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]))), 48), new $Uint64(x$9.$high | x$20.$high, (x$9.$low | x$20.$low) >>> 0)), x$21 = $shiftLeft64((new $Uint64(0, (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0]))), 56), new $Uint64(x$8.$high | x$21.$high, (x$8.$low | x$21.$low) >>> 0));
+ } else {
+ $panic(new $String("syscall: readInt with unsupported size"));
+ }
+ };
+ readIntLE = function(b, size) {
+ var $ptr, _1, b, size, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$19, x$2, x$20, x$21, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ _1 = size;
+ if (_1 === (1)) {
+ return (new $Uint64(0, (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0])));
+ } else if (_1 === (2)) {
+ $unused((1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]));
+ return (x = (new $Uint64(0, (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0]))), x$1 = $shiftLeft64((new $Uint64(0, (1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]))), 8), new $Uint64(x.$high | x$1.$high, (x.$low | x$1.$low) >>> 0));
+ } else if (_1 === (4)) {
+ $unused((3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3]));
+ return (x$2 = (x$3 = (x$4 = (new $Uint64(0, (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0]))), x$5 = $shiftLeft64((new $Uint64(0, (1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]))), 8), new $Uint64(x$4.$high | x$5.$high, (x$4.$low | x$5.$low) >>> 0)), x$6 = $shiftLeft64((new $Uint64(0, (2 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 2]))), 16), new $Uint64(x$3.$high | x$6.$high, (x$3.$low | x$6.$low) >>> 0)), x$7 = $shiftLeft64((new $Uint64(0, (3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3]))), 24), new $Uint64(x$2.$high | x$7.$high, (x$2.$low | x$7.$low) >>> 0));
+ } else if (_1 === (8)) {
+ $unused((7 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 7]));
+ return (x$8 = (x$9 = (x$10 = (x$11 = (x$12 = (x$13 = (x$14 = (new $Uint64(0, (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0]))), x$15 = $shiftLeft64((new $Uint64(0, (1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]))), 8), new $Uint64(x$14.$high | x$15.$high, (x$14.$low | x$15.$low) >>> 0)), x$16 = $shiftLeft64((new $Uint64(0, (2 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 2]))), 16), new $Uint64(x$13.$high | x$16.$high, (x$13.$low | x$16.$low) >>> 0)), x$17 = $shiftLeft64((new $Uint64(0, (3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3]))), 24), new $Uint64(x$12.$high | x$17.$high, (x$12.$low | x$17.$low) >>> 0)), x$18 = $shiftLeft64((new $Uint64(0, (4 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 4]))), 32), new $Uint64(x$11.$high | x$18.$high, (x$11.$low | x$18.$low) >>> 0)), x$19 = $shiftLeft64((new $Uint64(0, (5 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 5]))), 40), new $Uint64(x$10.$high | x$19.$high, (x$10.$low | x$19.$low) >>> 0)), x$20 = $shiftLeft64((new $Uint64(0, (6 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 6]))), 48), new $Uint64(x$9.$high | x$20.$high, (x$9.$low | x$20.$low) >>> 0)), x$21 = $shiftLeft64((new $Uint64(0, (7 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 7]))), 56), new $Uint64(x$8.$high | x$21.$high, (x$8.$low | x$21.$low) >>> 0));
+ } else {
+ $panic(new $String("syscall: readInt with unsupported size"));
+ }
+ };
+ ParseDirent = function(buf, max, names) {
+ var $ptr, _i, _ref, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tuple, _tuple$1, _tuple$2, buf, c, consumed, count, i, ino, max, name, names, namlen, newnames, ok, origlen, rec, reclen, x, x$1, x$2;
+ consumed = 0;
+ count = 0;
+ newnames = sliceType$1.nil;
+ origlen = buf.$length;
+ count = 0;
+ while (true) {
+ if (!(!((max === 0)) && buf.$length > 0)) { break; }
+ _tuple = direntReclen(buf);
+ reclen = _tuple[0];
+ ok = _tuple[1];
+ if (!ok || (x = (new $Uint64(0, buf.$length)), (reclen.$high > x.$high || (reclen.$high === x.$high && reclen.$low > x.$low)))) {
+ _tmp = origlen;
+ _tmp$1 = count;
+ _tmp$2 = names;
+ consumed = _tmp;
+ count = _tmp$1;
+ newnames = _tmp$2;
+ return [consumed, count, newnames];
+ }
+ rec = $subslice(buf, 0, $flatten64(reclen));
+ buf = $subslice(buf, $flatten64(reclen));
+ _tuple$1 = direntIno(rec);
+ ino = _tuple$1[0];
+ ok = _tuple$1[1];
+ if (!ok) {
+ break;
+ }
+ if ((ino.$high === 0 && ino.$low === 0)) {
+ continue;
+ }
+ _tuple$2 = direntNamlen(rec);
+ namlen = _tuple$2[0];
+ ok = _tuple$2[1];
+ if (!ok || (x$1 = new $Uint64(0 + namlen.$high, 19 + namlen.$low), x$2 = (new $Uint64(0, rec.$length)), (x$1.$high > x$2.$high || (x$1.$high === x$2.$high && x$1.$low > x$2.$low)))) {
+ break;
+ }
+ name = $subslice(rec, 19, $flatten64(new $Uint64(0 + namlen.$high, 19 + namlen.$low)));
+ _ref = name;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ c = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (c === 0) {
+ name = $subslice(name, 0, i);
+ break;
+ }
+ _i++;
+ }
+ if (($bytesToString(name)) === "." || ($bytesToString(name)) === "..") {
+ continue;
+ }
+ max = max - (1) >> 0;
+ count = count + (1) >> 0;
+ names = $append(names, ($bytesToString(name)));
+ }
+ _tmp$3 = origlen - buf.$length >> 0;
+ _tmp$4 = count;
+ _tmp$5 = names;
+ consumed = _tmp$3;
+ count = _tmp$4;
+ newnames = _tmp$5;
+ return [consumed, count, newnames];
+ };
+ $pkg.ParseDirent = ParseDirent;
+ copyenv = function() {
+ var $ptr, _entry, _i, _key, _ref, _tuple, i, j, key, ok, s;
+ env = {};
+ _ref = envs;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ s = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ j = 0;
+ while (true) {
+ if (!(j < s.length)) { break; }
+ if (s.charCodeAt(j) === 61) {
+ key = $substring(s, 0, j);
+ _tuple = (_entry = env[$String.keyFor(key)], _entry !== undefined ? [_entry.v, true] : [0, false]);
+ ok = _tuple[1];
+ if (!ok) {
+ _key = key; (env || $throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(_key)] = { k: _key, v: i };
+ } else {
+ ((i < 0 || i >= envs.$length) ? ($throwRuntimeError("index out of range"), undefined) : envs.$array[envs.$offset + i] = "");
+ }
+ break;
+ }
+ j = j + (1) >> 0;
+ }
+ _i++;
+ }
+ };
+ Getenv = function(key) {
+ var $ptr, _entry, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tuple, found, i, i$1, key, ok, s, value, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tmp$7 = $f._tmp$7; _tuple = $f._tuple; found = $f.found; i = $f.i; i$1 = $f.i$1; key = $f.key; ok = $f.ok; s = $f.s; value = $f.value; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ value = "";
+ found = false;
+ $r = envOnce.Do(copyenv); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if (key.length === 0) {
+ _tmp = "";
+ _tmp$1 = false;
+ value = _tmp;
+ found = _tmp$1;
+ $s = -1; return [value, found];
+ }
+ $r = envLock.RLock(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(envLock, "RUnlock"), []]);
+ _tuple = (_entry = env[$String.keyFor(key)], _entry !== undefined ? [_entry.v, true] : [0, false]);
+ i = _tuple[0];
+ ok = _tuple[1];
+ if (!ok) {
+ _tmp$2 = "";
+ _tmp$3 = false;
+ value = _tmp$2;
+ found = _tmp$3;
+ $s = -1; return [value, found];
+ }
+ s = ((i < 0 || i >= envs.$length) ? ($throwRuntimeError("index out of range"), undefined) : envs.$array[envs.$offset + i]);
+ i$1 = 0;
+ while (true) {
+ if (!(i$1 < s.length)) { break; }
+ if (s.charCodeAt(i$1) === 61) {
+ _tmp$4 = $substring(s, (i$1 + 1 >> 0));
+ _tmp$5 = true;
+ value = _tmp$4;
+ found = _tmp$5;
+ $s = -1; return [value, found];
+ }
+ i$1 = i$1 + (1) >> 0;
+ }
+ _tmp$6 = "";
+ _tmp$7 = false;
+ value = _tmp$6;
+ found = _tmp$7;
+ $s = -1; return [value, found];
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if (!$curGoroutine.asleep) { return [value, found]; } if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: Getenv }; } $f.$ptr = $ptr; $f._entry = _entry; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tmp$7 = _tmp$7; $f._tuple = _tuple; $f.found = found; $f.i = i; $f.i$1 = i$1; $f.key = key; $f.ok = ok; $f.s = s; $f.value = value; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ $pkg.Getenv = Getenv;
+ CloseOnExec = function(fd) {
+ var $ptr, fd;
+ fcntl(fd, 2, 1);
+ };
+ $pkg.CloseOnExec = CloseOnExec;
+ msanRead = function(addr, len) {
+ var $ptr, addr, len;
+ };
+ msanWrite = function(addr, len) {
+ var $ptr, addr, len;
+ };
+ nlmAlignOf = function(msglen) {
+ var $ptr, msglen;
+ return (((msglen + 4 >> 0) - 1 >> 0)) & -4;
+ };
+ rtaAlignOf = function(attrlen) {
+ var $ptr, attrlen;
+ return (((attrlen + 4 >> 0) - 1 >> 0)) & -4;
+ };
+ NetlinkRouteRequest.ptr.prototype.toWireFormat = function() {
+ var $ptr, b, rr;
+ rr = this;
+ b = $makeSlice(sliceType, rr.Header.Len);
+ (($sliceToArray($subslice(b, 0, 4)))).$set(rr.Header.Len);
+ (($sliceToArray($subslice(b, 4, 6)))).$set(rr.Header.Type);
+ (($sliceToArray($subslice(b, 6, 8)))).$set(rr.Header.Flags);
+ (($sliceToArray($subslice(b, 8, 12)))).$set(rr.Header.Seq);
+ (($sliceToArray($subslice(b, 12, 16)))).$set(rr.Header.Pid);
+ (16 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 16] = (rr.Data.Family));
+ return b;
+ };
+ NetlinkRouteRequest.prototype.toWireFormat = function() { return this.$val.toWireFormat(); };
+ newNetlinkRouteRequest = function(proto, seq, family) {
+ var $ptr, family, proto, rr, seq;
+ rr = new NetlinkRouteRequest.ptr(new NlMsghdr.ptr(0, 0, 0, 0, 0), new RtGenmsg.ptr(0));
+ rr.Header.Len = 17;
+ rr.Header.Type = ((proto << 16 >>> 16));
+ rr.Header.Flags = 769;
+ rr.Header.Seq = ((seq >>> 0));
+ rr.Data.Family = ((family << 24 >>> 24));
+ return rr.toWireFormat();
+ };
+ NetlinkRIB = function(proto, family) {
+ var $ptr, _i, _r, _r$1, _ref, _ref$1, _tuple, _tuple$1, _tuple$2, _tuple$3, err, err$1, err$2, err$3, err$4, family, lsa, lsa$1, m, msgs, nr, proto, rb, rbNew, s, tab, v, v$1, wb, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _ref = $f._ref; _ref$1 = $f._ref$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; err = $f.err; err$1 = $f.err$1; err$2 = $f.err$2; err$3 = $f.err$3; err$4 = $f.err$4; family = $f.family; lsa = $f.lsa; lsa$1 = $f.lsa$1; m = $f.m; msgs = $f.msgs; nr = $f.nr; proto = $f.proto; rb = $f.rb; rbNew = $f.rbNew; s = $f.s; tab = $f.tab; v = $f.v; v$1 = $f.v$1; wb = $f.wb; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ _tuple = Socket(16, 3, 0);
+ s = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [sliceType.nil, err];
+ }
+ $deferred.push([Close, [s]]);
+ lsa = new SockaddrNetlink.ptr(16, 0, 0, 0, new RawSockaddrNetlink.ptr(0, 0, 0, 0));
+ _r = Bind(s, lsa); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ err$1 = _r;
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return [sliceType.nil, err$1];
+ }
+ wb = newNetlinkRouteRequest(proto, 1, family);
+ _r$1 = Sendto(s, wb, 0, lsa); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ err$2 = _r$1;
+ if (!($interfaceIsEqual(err$2, $ifaceNil))) {
+ $s = -1; return [sliceType.nil, err$2];
+ }
+ tab = sliceType.nil;
+ rbNew = $makeSlice(sliceType, Getpagesize());
+ done:
+ while (true) {
+ rb = rbNew;
+ _tuple$1 = Recvfrom(s, rb, 0);
+ nr = _tuple$1[0];
+ err$3 = _tuple$1[2];
+ if (!($interfaceIsEqual(err$3, $ifaceNil))) {
+ $s = -1; return [sliceType.nil, err$3];
+ }
+ if (nr < 16) {
+ $s = -1; return [sliceType.nil, new Errno(22)];
+ }
+ rb = $subslice(rb, 0, nr);
+ tab = $appendSlice(tab, rb);
+ _tuple$2 = ParseNetlinkMessage(rb);
+ msgs = _tuple$2[0];
+ err$3 = _tuple$2[1];
+ if (!($interfaceIsEqual(err$3, $ifaceNil))) {
+ $s = -1; return [sliceType.nil, err$3];
+ }
+ _ref = msgs;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ m = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), NetlinkMessage);
+ _tuple$3 = Getsockname(s);
+ lsa$1 = _tuple$3[0];
+ err$4 = _tuple$3[1];
+ if (!($interfaceIsEqual(err$4, $ifaceNil))) {
+ $s = -1; return [sliceType.nil, err$4];
+ }
+ _ref$1 = lsa$1;
+ if ($assertType(_ref$1, ptrType$11, true)[1]) {
+ v = _ref$1.$val;
+ if (!((m.Header.Seq === 1)) || !((m.Header.Pid === v.Pid))) {
+ $s = -1; return [sliceType.nil, new Errno(22)];
+ }
+ } else {
+ v$1 = _ref$1;
+ $s = -1; return [sliceType.nil, new Errno(22)];
+ }
+ if (m.Header.Type === 3) {
+ break done;
+ }
+ if (m.Header.Type === 2) {
+ $s = -1; return [sliceType.nil, new Errno(22)];
+ }
+ _i++;
+ }
+ }
+ $s = -1; return [tab, $ifaceNil];
+ /* */ } return; } } catch(err) { $err = err; $s = -1; return [sliceType.nil, $ifaceNil]; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: NetlinkRIB }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._ref = _ref; $f._ref$1 = _ref$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f.err = err; $f.err$1 = err$1; $f.err$2 = err$2; $f.err$3 = err$3; $f.err$4 = err$4; $f.family = family; $f.lsa = lsa; $f.lsa$1 = lsa$1; $f.m = m; $f.msgs = msgs; $f.nr = nr; $f.proto = proto; $f.rb = rb; $f.rbNew = rbNew; $f.s = s; $f.tab = tab; $f.v = v; $f.v$1 = v$1; $f.wb = wb; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ $pkg.NetlinkRIB = NetlinkRIB;
+ ParseNetlinkMessage = function(b) {
+ var $ptr, _tuple, b, dbuf, dlen, err, h, m, msgs;
+ msgs = sliceType$6.nil;
+ while (true) {
+ if (!(b.$length >= 16)) { break; }
+ _tuple = netlinkMessageHeaderAndData(b);
+ h = _tuple[0];
+ dbuf = _tuple[1];
+ dlen = _tuple[2];
+ err = _tuple[3];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return [sliceType$6.nil, err];
+ }
+ m = new NetlinkMessage.ptr($clone(h, NlMsghdr), $subslice(dbuf, 0, (((h.Len >> 0)) - 16 >> 0)));
+ msgs = $append(msgs, m);
+ b = $subslice(b, dlen);
+ }
+ return [msgs, $ifaceNil];
+ };
+ $pkg.ParseNetlinkMessage = ParseNetlinkMessage;
+ netlinkMessageHeaderAndData = function(b) {
+ var $ptr, _array, _struct, _view, b, h, l;
+ h = ((_array = ($sliceToArray(b)), _struct = new NlMsghdr.ptr(0, 0, 0, 0, 0), _view = new DataView(_array.buffer, _array.byteOffset), _struct.Len = _view.getUint32(0, true), _struct.Type = _view.getUint16(4, true), _struct.Flags = _view.getUint16(6, true), _struct.Seq = _view.getUint32(8, true), _struct.Pid = _view.getUint32(12, true), _struct));
+ l = nlmAlignOf(((h.Len >> 0)));
+ if (((h.Len >> 0)) < 16 || l > b.$length) {
+ return [ptrType$12.nil, sliceType.nil, 0, new Errno(22)];
+ }
+ return [h, $subslice(b, 16), l, $ifaceNil];
+ };
+ ParseNetlinkRouteAttr = function(m) {
+ var $ptr, _1, _tuple, a, alen, attrs, b, err, m, ra, vbuf;
+ b = sliceType.nil;
+ _1 = m.Header.Type;
+ if ((_1 === (16)) || (_1 === (17))) {
+ b = $subslice(m.Data, 16);
+ } else if ((_1 === (20)) || (_1 === (21))) {
+ b = $subslice(m.Data, 8);
+ } else if ((_1 === (24)) || (_1 === (25))) {
+ b = $subslice(m.Data, 12);
+ } else {
+ return [sliceType$7.nil, new Errno(22)];
+ }
+ attrs = sliceType$7.nil;
+ while (true) {
+ if (!(b.$length >= 4)) { break; }
+ _tuple = netlinkRouteAttrAndValue(b);
+ a = _tuple[0];
+ vbuf = _tuple[1];
+ alen = _tuple[2];
+ err = _tuple[3];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return [sliceType$7.nil, err];
+ }
+ ra = new NetlinkRouteAttr.ptr($clone(a, RtAttr), $subslice(vbuf, 0, (((a.Len >> 0)) - 4 >> 0)));
+ attrs = $append(attrs, ra);
+ b = $subslice(b, alen);
+ }
+ return [attrs, $ifaceNil];
+ };
+ $pkg.ParseNetlinkRouteAttr = ParseNetlinkRouteAttr;
+ netlinkRouteAttrAndValue = function(b) {
+ var $ptr, _array, _struct, _view, a, b;
+ a = ((_array = ($sliceToArray(b)), _struct = new RtAttr.ptr(0, 0), _view = new DataView(_array.buffer, _array.byteOffset), _struct.Len = _view.getUint16(0, true), _struct.Type = _view.getUint16(2, true), _struct));
+ if (((a.Len >> 0)) < 4 || ((a.Len >> 0)) > b.$length) {
+ return [ptrType$13.nil, sliceType.nil, 0, new Errno(22)];
+ }
+ return [a, $subslice(b, 4), rtaAlignOf(((a.Len >> 0))), $ifaceNil];
+ };
+ itoa = function(val) {
+ var $ptr, val;
+ if (val < 0) {
+ return "-" + uitoa(((-val >>> 0)));
+ }
+ return uitoa(((val >>> 0)));
+ };
+ uitoa = function(val) {
+ var $ptr, _q, _r, buf, i, val;
+ buf = arrayType$4.zero();
+ i = 31;
+ while (true) {
+ if (!(val >= 10)) { break; }
+ ((i < 0 || i >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[i] = ((((_r = val % 10, _r === _r ? _r : $throwRuntimeError("integer divide by zero")) + 48 >>> 0) << 24 >>> 24)));
+ i = i - (1) >> 0;
+ val = (_q = val / (10), (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero"));
+ }
+ ((i < 0 || i >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[i] = (((val + 48 >>> 0) << 24 >>> 24)));
+ return ($bytesToString($subslice(new sliceType(buf), i)));
+ };
+ Timespec.ptr.prototype.Unix = function() {
+ var $ptr, _tmp, _tmp$1, nsec, sec, ts;
+ sec = new $Int64(0, 0);
+ nsec = new $Int64(0, 0);
+ ts = this;
+ _tmp = (ts.Sec);
+ _tmp$1 = (ts.Nsec);
+ sec = _tmp;
+ nsec = _tmp$1;
+ return [sec, nsec];
+ };
+ Timespec.prototype.Unix = function() { return this.$val.Unix(); };
+ Timespec.ptr.prototype.Nano = function() {
+ var $ptr, ts, x, x$1;
+ ts = this;
+ return (x = $mul64((ts.Sec), new $Int64(0, 1000000000)), x$1 = (ts.Nsec), new $Int64(x.$high + x$1.$high, x.$low + x$1.$low));
+ };
+ Timespec.prototype.Nano = function() { return this.$val.Nano(); };
+ Getpagesize = function() {
+ $throwRuntimeError("native function not implemented: syscall.Getpagesize");
+ };
+ $pkg.Getpagesize = Getpagesize;
+ Chmod = function(path, mode) {
+ var $ptr, err, mode, path;
+ err = $ifaceNil;
+ err = Fchmodat(-100, path, mode, 0);
+ return err;
+ };
+ $pkg.Chmod = Chmod;
+ Open = function(path, mode, perm) {
+ var $ptr, _tuple, err, fd, mode, path, perm;
+ fd = 0;
+ err = $ifaceNil;
+ _tuple = openat(-100, path, mode | 0, perm);
+ fd = _tuple[0];
+ err = _tuple[1];
+ return [fd, err];
+ };
+ $pkg.Open = Open;
+ SockaddrInet4.ptr.prototype.sockaddr = function() {
+ var $ptr, _array, _struct, _view, i, p, sa, x, x$1, x$2;
+ sa = this;
+ if (sa.Port < 0 || sa.Port > 65535) {
+ return [0, 0, new Errno(22)];
+ }
+ sa.raw.Family = 2;
+ p = (((x = sa.raw, (x.$ptr_Port || (x.$ptr_Port = new ptrType$8(function() { return this.$target.Port; }, function($v) { this.$target.Port = $v; }, x))))));
+ p.nilCheck, p[0] = (((sa.Port >> 8 >> 0) << 24 >>> 24));
+ p.nilCheck, p[1] = ((sa.Port << 24 >>> 24));
+ i = 0;
+ while (true) {
+ if (!(i < 4)) { break; }
+ (x$2 = sa.raw.Addr, ((i < 0 || i >= x$2.length) ? ($throwRuntimeError("index out of range"), undefined) : x$2[i] = (x$1 = sa.Addr, ((i < 0 || i >= x$1.length) ? ($throwRuntimeError("index out of range"), undefined) : x$1[i]))));
+ i = i + (1) >> 0;
+ }
+ _array = new Uint8Array(16);
+ return [(_array), 16, $ifaceNil];
+ };
+ SockaddrInet4.prototype.sockaddr = function() { return this.$val.sockaddr(); };
+ SockaddrInet6.ptr.prototype.sockaddr = function() {
+ var $ptr, _array, _struct, _view, i, p, sa, x, x$1, x$2;
+ sa = this;
+ if (sa.Port < 0 || sa.Port > 65535) {
+ return [0, 0, new Errno(22)];
+ }
+ sa.raw.Family = 10;
+ p = (((x = sa.raw, (x.$ptr_Port || (x.$ptr_Port = new ptrType$8(function() { return this.$target.Port; }, function($v) { this.$target.Port = $v; }, x))))));
+ p.nilCheck, p[0] = (((sa.Port >> 8 >> 0) << 24 >>> 24));
+ p.nilCheck, p[1] = ((sa.Port << 24 >>> 24));
+ sa.raw.Scope_id = sa.ZoneId;
+ i = 0;
+ while (true) {
+ if (!(i < 16)) { break; }
+ (x$2 = sa.raw.Addr, ((i < 0 || i >= x$2.length) ? ($throwRuntimeError("index out of range"), undefined) : x$2[i] = (x$1 = sa.Addr, ((i < 0 || i >= x$1.length) ? ($throwRuntimeError("index out of range"), undefined) : x$1[i]))));
+ i = i + (1) >> 0;
+ }
+ _array = new Uint8Array(28);
+ return [(_array), 28, $ifaceNil];
+ };
+ SockaddrInet6.prototype.sockaddr = function() { return this.$val.sockaddr(); };
+ SockaddrUnix.ptr.prototype.sockaddr = function() {
+ var $ptr, _array, _struct, _view, i, n, name, sa, sl, x;
+ sa = this;
+ name = sa.Name;
+ n = name.length;
+ if (n >= 108) {
+ return [0, 0, new Errno(22)];
+ }
+ sa.raw.Family = 1;
+ i = 0;
+ while (true) {
+ if (!(i < n)) { break; }
+ (x = sa.raw.Path, ((i < 0 || i >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[i] = ((name.charCodeAt(i) << 24 >> 24))));
+ i = i + (1) >> 0;
+ }
+ sl = 2;
+ if (n > 0) {
+ sl = sl + ((((n >>> 0)) + 1 >>> 0)) >>> 0;
+ }
+ if (sa.raw.Path[0] === 64) {
+ sa.raw.Path[0] = 0;
+ sl = sl - (1) >>> 0;
+ }
+ _array = new Uint8Array(110);
+ return [(_array), sl, $ifaceNil];
+ };
+ SockaddrUnix.prototype.sockaddr = function() { return this.$val.sockaddr(); };
+ SockaddrLinklayer.ptr.prototype.sockaddr = function() {
+ var $ptr, _array, _struct, _view, i, sa, x, x$1;
+ sa = this;
+ if (sa.Ifindex < 0 || sa.Ifindex > 2147483647) {
+ return [0, 0, new Errno(22)];
+ }
+ sa.raw.Family = 17;
+ sa.raw.Protocol = sa.Protocol;
+ sa.raw.Ifindex = ((sa.Ifindex >> 0));
+ sa.raw.Hatype = sa.Hatype;
+ sa.raw.Pkttype = sa.Pkttype;
+ sa.raw.Halen = sa.Halen;
+ i = 0;
+ while (true) {
+ if (!(i < 8)) { break; }
+ (x$1 = sa.raw.Addr, ((i < 0 || i >= x$1.length) ? ($throwRuntimeError("index out of range"), undefined) : x$1[i] = (x = sa.Addr, ((i < 0 || i >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[i]))));
+ i = i + (1) >> 0;
+ }
+ _array = new Uint8Array(20);
+ return [(_array), 20, $ifaceNil];
+ };
+ SockaddrLinklayer.prototype.sockaddr = function() { return this.$val.sockaddr(); };
+ SockaddrNetlink.ptr.prototype.sockaddr = function() {
+ var $ptr, _array, _struct, _view, sa;
+ sa = this;
+ sa.raw.Family = 16;
+ sa.raw.Pad = sa.Pad;
+ sa.raw.Pid = sa.Pid;
+ sa.raw.Groups = sa.Groups;
+ _array = new Uint8Array(12);
+ return [(_array), 12, $ifaceNil];
+ };
+ SockaddrNetlink.prototype.sockaddr = function() { return this.$val.sockaddr(); };
+ anyToSockaddr = function(rsa) {
+ var $ptr, _1, _array, _array$1, _array$2, _array$3, _array$4, _array$5, _array$6, _array$7, _array$8, _array$9, _struct, _struct$1, _struct$2, _struct$3, _struct$4, _struct$5, _struct$6, _struct$7, _struct$8, _struct$9, _view, _view$1, _view$2, _view$3, _view$4, _view$5, _view$6, _view$7, _view$8, _view$9, bytes, i, i$1, i$2, n, p, p$1, pp, pp$1, pp$2, pp$3, pp$4, rsa, sa, sa$1, sa$2, sa$3, sa$4, x, x$1, x$2, x$3, x$4, x$5, x$6;
+ _1 = rsa.Addr.Family;
+ if (_1 === (16)) {
+ _array$1 = new Uint8Array(112);
+ pp = ((_array = (_array$1), _struct = new RawSockaddrNetlink.ptr(0, 0, 0, 0), _view = new DataView(_array.buffer, _array.byteOffset), _struct.Family = _view.getUint16(0, true), _struct.Pad = _view.getUint16(2, true), _struct.Pid = _view.getUint32(4, true), _struct.Groups = _view.getUint32(8, true), _struct));
+ _struct$1 = rsa, _view$1 = new DataView(_array$1.buffer, _array$1.byteOffset), _struct$1.Addr.Family = _view$1.getUint16(0, true), _struct$1.Addr.Data = new ($nativeArray($kindInt8))(_array$1.buffer, $min(_array$1.byteOffset + 2, _array$1.buffer.byteLength)), _struct$1.Pad = new ($nativeArray($kindInt8))(_array$1.buffer, $min(_array$1.byteOffset + 16, _array$1.buffer.byteLength));
+ sa = new SockaddrNetlink.ptr(0, 0, 0, 0, new RawSockaddrNetlink.ptr(0, 0, 0, 0));
+ sa.Family = pp.Family;
+ sa.Pad = pp.Pad;
+ sa.Pid = pp.Pid;
+ sa.Groups = pp.Groups;
+ return [sa, $ifaceNil];
+ } else if (_1 === (17)) {
+ _array$3 = new Uint8Array(112);
+ pp$1 = ((_array$2 = (_array$3), _struct$2 = new RawSockaddrLinklayer.ptr(0, 0, 0, 0, 0, 0, arrayType$1.zero()), _view$2 = new DataView(_array$2.buffer, _array$2.byteOffset), _struct$2.Family = _view$2.getUint16(0, true), _struct$2.Protocol = _view$2.getUint16(2, true), _struct$2.Ifindex = _view$2.getInt32(4, true), _struct$2.Hatype = _view$2.getUint16(8, true), _struct$2.Pkttype = _view$2.getUint8(10, true), _struct$2.Halen = _view$2.getUint8(11, true), _struct$2.Addr = new ($nativeArray($kindUint8))(_array$2.buffer, $min(_array$2.byteOffset + 12, _array$2.buffer.byteLength)), _struct$2));
+ _struct$3 = rsa, _view$3 = new DataView(_array$3.buffer, _array$3.byteOffset), _struct$3.Addr.Family = _view$3.getUint16(0, true), _struct$3.Addr.Data = new ($nativeArray($kindInt8))(_array$3.buffer, $min(_array$3.byteOffset + 2, _array$3.buffer.byteLength)), _struct$3.Pad = new ($nativeArray($kindInt8))(_array$3.buffer, $min(_array$3.byteOffset + 16, _array$3.buffer.byteLength));
+ sa$1 = new SockaddrLinklayer.ptr(0, 0, 0, 0, 0, arrayType$1.zero(), new RawSockaddrLinklayer.ptr(0, 0, 0, 0, 0, 0, arrayType$1.zero()));
+ sa$1.Protocol = pp$1.Protocol;
+ sa$1.Ifindex = ((pp$1.Ifindex >> 0));
+ sa$1.Hatype = pp$1.Hatype;
+ sa$1.Pkttype = pp$1.Pkttype;
+ sa$1.Halen = pp$1.Halen;
+ i = 0;
+ while (true) {
+ if (!(i < 8)) { break; }
+ (x$1 = sa$1.Addr, ((i < 0 || i >= x$1.length) ? ($throwRuntimeError("index out of range"), undefined) : x$1[i] = (x = pp$1.Addr, ((i < 0 || i >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[i]))));
+ i = i + (1) >> 0;
+ }
+ return [sa$1, $ifaceNil];
+ } else if (_1 === (1)) {
+ _array$5 = new Uint8Array(112);
+ pp$2 = ((_array$4 = (_array$5), _struct$4 = new RawSockaddrUnix.ptr(0, arrayType$7.zero()), _view$4 = new DataView(_array$4.buffer, _array$4.byteOffset), _struct$4.Family = _view$4.getUint16(0, true), _struct$4.Path = new ($nativeArray($kindInt8))(_array$4.buffer, $min(_array$4.byteOffset + 2, _array$4.buffer.byteLength)), _struct$4));
+ _struct$5 = rsa, _view$5 = new DataView(_array$5.buffer, _array$5.byteOffset), _struct$5.Addr.Family = _view$5.getUint16(0, true), _struct$5.Addr.Data = new ($nativeArray($kindInt8))(_array$5.buffer, $min(_array$5.byteOffset + 2, _array$5.buffer.byteLength)), _struct$5.Pad = new ($nativeArray($kindInt8))(_array$5.buffer, $min(_array$5.byteOffset + 16, _array$5.buffer.byteLength));
+ sa$2 = new SockaddrUnix.ptr("", new RawSockaddrUnix.ptr(0, arrayType$7.zero()));
+ if (pp$2.Path[0] === 0) {
+ pp$2.Path[0] = 64;
+ }
+ n = 0;
+ while (true) {
+ if (!(n < 108 && !(((x$2 = pp$2.Path, ((n < 0 || n >= x$2.length) ? ($throwRuntimeError("index out of range"), undefined) : x$2[n])) === 0)))) { break; }
+ n = n + (1) >> 0;
+ }
+ bytes = $subslice(new sliceType((($sliceToArray(new sliceType(pp$2.Path))))), 0, n);
+ sa$2.Name = ($bytesToString(bytes));
+ return [sa$2, $ifaceNil];
+ } else if (_1 === (2)) {
+ _array$7 = new Uint8Array(112);
+ pp$3 = ((_array$6 = (_array$7), _struct$6 = new RawSockaddrInet4.ptr(0, 0, arrayType$8.zero(), arrayType$1.zero()), _view$6 = new DataView(_array$6.buffer, _array$6.byteOffset), _struct$6.Family = _view$6.getUint16(0, true), _struct$6.Port = _view$6.getUint16(2, true), _struct$6.Addr = new ($nativeArray($kindUint8))(_array$6.buffer, $min(_array$6.byteOffset + 4, _array$6.buffer.byteLength)), _struct$6.Zero = new ($nativeArray($kindUint8))(_array$6.buffer, $min(_array$6.byteOffset + 8, _array$6.buffer.byteLength)), _struct$6));
+ _struct$7 = rsa, _view$7 = new DataView(_array$7.buffer, _array$7.byteOffset), _struct$7.Addr.Family = _view$7.getUint16(0, true), _struct$7.Addr.Data = new ($nativeArray($kindInt8))(_array$7.buffer, $min(_array$7.byteOffset + 2, _array$7.buffer.byteLength)), _struct$7.Pad = new ($nativeArray($kindInt8))(_array$7.buffer, $min(_array$7.byteOffset + 16, _array$7.buffer.byteLength));
+ sa$3 = new SockaddrInet4.ptr(0, arrayType$8.zero(), new RawSockaddrInet4.ptr(0, 0, arrayType$8.zero(), arrayType$1.zero()));
+ p = (((pp$3.$ptr_Port || (pp$3.$ptr_Port = new ptrType$8(function() { return this.$target.Port; }, function($v) { this.$target.Port = $v; }, pp$3)))));
+ sa$3.Port = ((((p.nilCheck, p[0]) >> 0)) << 8 >> 0) + (((p.nilCheck, p[1]) >> 0)) >> 0;
+ i$1 = 0;
+ while (true) {
+ if (!(i$1 < 4)) { break; }
+ (x$4 = sa$3.Addr, ((i$1 < 0 || i$1 >= x$4.length) ? ($throwRuntimeError("index out of range"), undefined) : x$4[i$1] = (x$3 = pp$3.Addr, ((i$1 < 0 || i$1 >= x$3.length) ? ($throwRuntimeError("index out of range"), undefined) : x$3[i$1]))));
+ i$1 = i$1 + (1) >> 0;
+ }
+ return [sa$3, $ifaceNil];
+ } else if (_1 === (10)) {
+ _array$9 = new Uint8Array(112);
+ pp$4 = ((_array$8 = (_array$9), _struct$8 = new RawSockaddrInet6.ptr(0, 0, 0, arrayType$2.zero(), 0), _view$8 = new DataView(_array$8.buffer, _array$8.byteOffset), _struct$8.Family = _view$8.getUint16(0, true), _struct$8.Port = _view$8.getUint16(2, true), _struct$8.Flowinfo = _view$8.getUint32(4, true), _struct$8.Addr = new ($nativeArray($kindUint8))(_array$8.buffer, $min(_array$8.byteOffset + 8, _array$8.buffer.byteLength)), _struct$8.Scope_id = _view$8.getUint32(24, true), _struct$8));
+ _struct$9 = rsa, _view$9 = new DataView(_array$9.buffer, _array$9.byteOffset), _struct$9.Addr.Family = _view$9.getUint16(0, true), _struct$9.Addr.Data = new ($nativeArray($kindInt8))(_array$9.buffer, $min(_array$9.byteOffset + 2, _array$9.buffer.byteLength)), _struct$9.Pad = new ($nativeArray($kindInt8))(_array$9.buffer, $min(_array$9.byteOffset + 16, _array$9.buffer.byteLength));
+ sa$4 = new SockaddrInet6.ptr(0, 0, arrayType$2.zero(), new RawSockaddrInet6.ptr(0, 0, 0, arrayType$2.zero(), 0));
+ p$1 = (((pp$4.$ptr_Port || (pp$4.$ptr_Port = new ptrType$8(function() { return this.$target.Port; }, function($v) { this.$target.Port = $v; }, pp$4)))));
+ sa$4.Port = ((((p$1.nilCheck, p$1[0]) >> 0)) << 8 >> 0) + (((p$1.nilCheck, p$1[1]) >> 0)) >> 0;
+ sa$4.ZoneId = pp$4.Scope_id;
+ i$2 = 0;
+ while (true) {
+ if (!(i$2 < 16)) { break; }
+ (x$6 = sa$4.Addr, ((i$2 < 0 || i$2 >= x$6.length) ? ($throwRuntimeError("index out of range"), undefined) : x$6[i$2] = (x$5 = pp$4.Addr, ((i$2 < 0 || i$2 >= x$5.length) ? ($throwRuntimeError("index out of range"), undefined) : x$5[i$2]))));
+ i$2 = i$2 + (1) >> 0;
+ }
+ return [sa$4, $ifaceNil];
+ }
+ return [$ifaceNil, new Errno(97)];
+ };
+ Getsockname = function(fd) {
+ var $ptr, _tuple, err, fd, len, len$24ptr, rsa, sa;
+ sa = $ifaceNil;
+ err = $ifaceNil;
+ rsa = new RawSockaddrAny.ptr(new RawSockaddr.ptr(0, arrayType$9.zero()), arrayType$10.zero());
+ len = 112;
+ err = getsockname(fd, rsa, (len$24ptr || (len$24ptr = new ptrType$18(function() { return len; }, function($v) { len = $v; }))));
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return [sa, err];
+ }
+ _tuple = anyToSockaddr(rsa);
+ sa = _tuple[0];
+ err = _tuple[1];
+ return [sa, err];
+ };
+ $pkg.Getsockname = Getsockname;
+ ReadDirent = function(fd, buf) {
+ var $ptr, _tuple, buf, err, fd, n;
+ n = 0;
+ err = $ifaceNil;
+ _tuple = Getdents(fd, buf);
+ n = _tuple[0];
+ err = _tuple[1];
+ return [n, err];
+ };
+ $pkg.ReadDirent = ReadDirent;
+ direntIno = function(buf) {
+ var $ptr, buf;
+ return readInt(buf, 0, 8);
+ };
+ direntReclen = function(buf) {
+ var $ptr, buf;
+ return readInt(buf, 16, 2);
+ };
+ direntNamlen = function(buf) {
+ var $ptr, _tuple, buf, ok, reclen;
+ _tuple = direntReclen(buf);
+ reclen = _tuple[0];
+ ok = _tuple[1];
+ if (!ok) {
+ return [new $Uint64(0, 0), false];
+ }
+ return [new $Uint64(reclen.$high - 0, reclen.$low - 19), true];
+ };
+ mmapper.ptr.prototype.Mmap = function(fd, offset, length, prot, flags) {
+ var $ptr, _key, _r, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tuple, addr, b, data, err, errno, fd, flags, length, m, offset, p, prot, sl, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _key = $f._key; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tuple = $f._tuple; addr = $f.addr; b = $f.b; data = $f.data; err = $f.err; errno = $f.errno; fd = $f.fd; flags = $f.flags; length = $f.length; m = $f.m; offset = $f.offset; p = $f.p; prot = $f.prot; sl = $f.sl; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ sl = [sl];
+ data = sliceType.nil;
+ err = $ifaceNil;
+ m = this;
+ if (length <= 0) {
+ _tmp = sliceType.nil;
+ _tmp$1 = new Errno(22);
+ data = _tmp;
+ err = _tmp$1;
+ $s = -1; return [data, err];
+ }
+ _r = m.mmap(0, ((length >>> 0)), prot, flags, fd, offset); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ addr = _tuple[0];
+ errno = _tuple[1];
+ if (!($interfaceIsEqual(errno, $ifaceNil))) {
+ _tmp$2 = sliceType.nil;
+ _tmp$3 = errno;
+ data = _tmp$2;
+ err = _tmp$3;
+ $s = -1; return [data, err];
+ }
+ sl[0] = new structType.ptr(addr, length, length);
+ b = sl[0];
+ p = $indexPtr(b.$array, b.$offset + (b.$capacity - 1 >> 0), ptrType$2);
+ $r = m.Mutex.Lock(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(m.Mutex, "Unlock"), []]);
+ _key = p; (m.active || $throwRuntimeError("assignment to entry in nil map"))[ptrType$2.keyFor(_key)] = { k: _key, v: b };
+ _tmp$4 = b;
+ _tmp$5 = $ifaceNil;
+ data = _tmp$4;
+ err = _tmp$5;
+ $s = -1; return [data, err];
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if (!$curGoroutine.asleep) { return [data, err]; } if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: mmapper.ptr.prototype.Mmap }; } $f.$ptr = $ptr; $f._key = _key; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tuple = _tuple; $f.addr = addr; $f.b = b; $f.data = data; $f.err = err; $f.errno = errno; $f.fd = fd; $f.flags = flags; $f.length = length; $f.m = m; $f.offset = offset; $f.p = p; $f.prot = prot; $f.sl = sl; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ mmapper.prototype.Mmap = function(fd, offset, length, prot, flags) { return this.$val.Mmap(fd, offset, length, prot, flags); };
+ mmapper.ptr.prototype.Munmap = function(data) {
+ var $ptr, _entry, _r, b, data, err, errno, m, p, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _r = $f._r; b = $f.b; data = $f.data; err = $f.err; errno = $f.errno; m = $f.m; p = $f.p; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ err = $ifaceNil;
+ m = this;
+ if ((data.$length === 0) || !((data.$length === data.$capacity))) {
+ err = new Errno(22);
+ $s = -1; return err;
+ }
+ p = $indexPtr(data.$array, data.$offset + (data.$capacity - 1 >> 0), ptrType$2);
+ $r = m.Mutex.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(m.Mutex, "Unlock"), []]);
+ b = (_entry = m.active[ptrType$2.keyFor(p)], _entry !== undefined ? _entry.v : sliceType.nil);
+ if (b === sliceType.nil || !($indexPtr(b.$array, b.$offset + 0, ptrType$2) === $indexPtr(data.$array, data.$offset + 0, ptrType$2))) {
+ err = new Errno(22);
+ $s = -1; return err;
+ }
+ _r = m.munmap((($sliceToArray(b))), ((b.$length >>> 0))); /* */ $s = 2; case 2: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ errno = _r;
+ if (!($interfaceIsEqual(errno, $ifaceNil))) {
+ err = errno;
+ $s = -1; return err;
+ }
+ delete m.active[ptrType$2.keyFor(p)];
+ err = $ifaceNil;
+ $s = -1; return err;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if (!$curGoroutine.asleep) { return err; } if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: mmapper.ptr.prototype.Munmap }; } $f.$ptr = $ptr; $f._entry = _entry; $f._r = _r; $f.b = b; $f.data = data; $f.err = err; $f.errno = errno; $f.m = m; $f.p = p; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ mmapper.prototype.Munmap = function(data) { return this.$val.Munmap(data); };
+ Errno.prototype.Error = function() {
+ var $ptr, e, s;
+ e = this.$val;
+ if (0 <= ((e >> 0)) && ((e >> 0)) < 133) {
+ s = ((e < 0 || e >= errors.length) ? ($throwRuntimeError("index out of range"), undefined) : errors[e]);
+ if (!(s === "")) {
+ return s;
+ }
+ }
+ return "errno " + itoa(((e >> 0)));
+ };
+ $ptrType(Errno).prototype.Error = function() { return new Errno(this.$get()).Error(); };
+ Errno.prototype.Temporary = function() {
+ var $ptr, e;
+ e = this.$val;
+ return (e === 4) || (e === 24) || (e === 104) || (e === 103) || new Errno(e).Timeout();
+ };
+ $ptrType(Errno).prototype.Temporary = function() { return new Errno(this.$get()).Temporary(); };
+ Errno.prototype.Timeout = function() {
+ var $ptr, e;
+ e = this.$val;
+ return (e === 11) || (e === 11) || (e === 110);
+ };
+ $ptrType(Errno).prototype.Timeout = function() { return new Errno(this.$get()).Timeout(); };
+ errnoErr = function(e) {
+ var $ptr, _1, e;
+ _1 = e;
+ if (_1 === (0)) {
+ return $ifaceNil;
+ } else if (_1 === (11)) {
+ return errEAGAIN;
+ } else if (_1 === (22)) {
+ return errEINVAL;
+ } else if (_1 === (2)) {
+ return errENOENT;
+ }
+ return new Errno(e);
+ };
+ Read = function(fd, p) {
+ var $ptr, _tuple, err, fd, n, p;
+ n = 0;
+ err = $ifaceNil;
+ _tuple = read(fd, p);
+ n = _tuple[0];
+ err = _tuple[1];
+ if (false) {
+ if (n > 0) {
+ race.WriteRange(($sliceToArray(p)), n);
+ }
+ if ($interfaceIsEqual(err, $ifaceNil)) {
+ race.Acquire(((ioSync$24ptr || (ioSync$24ptr = new ptrType$22(function() { return ioSync; }, function($v) { ioSync = $v; })))));
+ }
+ }
+ if (false && n > 0) {
+ msanWrite(($sliceToArray(p)), n);
+ }
+ return [n, err];
+ };
+ $pkg.Read = Read;
+ Write = function(fd, p) {
+ var $ptr, _tuple, err, fd, n, p;
+ n = 0;
+ err = $ifaceNil;
+ if (false) {
+ race.ReleaseMerge(((ioSync$24ptr || (ioSync$24ptr = new ptrType$22(function() { return ioSync; }, function($v) { ioSync = $v; })))));
+ }
+ _tuple = write(fd, p);
+ n = _tuple[0];
+ err = _tuple[1];
+ if (false && n > 0) {
+ race.ReadRange(($sliceToArray(p)), n);
+ }
+ if (false && n > 0) {
+ msanRead(($sliceToArray(p)), n);
+ }
+ return [n, err];
+ };
+ $pkg.Write = Write;
+ Bind = function(fd, sa) {
+ var $ptr, _r, _tuple, err, fd, n, ptr, sa, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; err = $f.err; fd = $f.fd; n = $f.n; ptr = $f.ptr; sa = $f.sa; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ err = $ifaceNil;
+ _r = sa.sockaddr(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ ptr = _tuple[0];
+ n = _tuple[1];
+ err = _tuple[2];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ err = err;
+ $s = -1; return err;
+ }
+ err = bind(fd, ptr, n);
+ $s = -1; return err;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Bind }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.err = err; $f.fd = fd; $f.n = n; $f.ptr = ptr; $f.sa = sa; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Bind = Bind;
+ Recvfrom = function(fd, p, flags) {
+ var $ptr, _tuple, _tuple$1, err, fd, flags, from, len, len$24ptr, n, p, rsa;
+ n = 0;
+ from = $ifaceNil;
+ err = $ifaceNil;
+ rsa = new RawSockaddrAny.ptr(new RawSockaddr.ptr(0, arrayType$9.zero()), arrayType$10.zero());
+ len = 112;
+ _tuple = recvfrom(fd, p, flags, rsa, (len$24ptr || (len$24ptr = new ptrType$18(function() { return len; }, function($v) { len = $v; }))));
+ n = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return [n, from, err];
+ }
+ if (!((rsa.Addr.Family === 0))) {
+ _tuple$1 = anyToSockaddr(rsa);
+ from = _tuple$1[0];
+ err = _tuple$1[1];
+ }
+ return [n, from, err];
+ };
+ $pkg.Recvfrom = Recvfrom;
+ Sendto = function(fd, p, flags, to) {
+ var $ptr, _r, _tuple, err, fd, flags, n, p, ptr, to, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; err = $f.err; fd = $f.fd; flags = $f.flags; n = $f.n; p = $f.p; ptr = $f.ptr; to = $f.to; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ err = $ifaceNil;
+ _r = to.sockaddr(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ ptr = _tuple[0];
+ n = _tuple[1];
+ err = _tuple[2];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ err = err;
+ $s = -1; return err;
+ }
+ err = sendto(fd, p, flags, ptr, n);
+ $s = -1; return err;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Sendto }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.err = err; $f.fd = fd; $f.flags = flags; $f.n = n; $f.p = p; $f.ptr = ptr; $f.to = to; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Sendto = Sendto;
+ Socket = function(domain, typ, proto) {
+ var $ptr, _tmp, _tmp$1, _tuple, domain, err, fd, proto, typ;
+ fd = 0;
+ err = $ifaceNil;
+ if ((domain === 10) && $pkg.SocketDisableIPv6) {
+ _tmp = -1;
+ _tmp$1 = new Errno(97);
+ fd = _tmp;
+ err = _tmp$1;
+ return [fd, err];
+ }
+ _tuple = socket(domain, typ, proto);
+ fd = _tuple[0];
+ err = _tuple[1];
+ return [fd, err];
+ };
+ $pkg.Socket = Socket;
+ openat = function(dirfd, path, flags, mode) {
+ var $ptr, _p0, _tuple, _tuple$1, dirfd, e1, err, fd, flags, mode, path, r0;
+ fd = 0;
+ err = $ifaceNil;
+ _p0 = ptrType$2.nil;
+ _tuple = BytePtrFromString(path);
+ _p0 = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return [fd, err];
+ }
+ _tuple$1 = Syscall6(257, ((dirfd >>> 0)), ((_p0)), ((flags >>> 0)), ((mode >>> 0)), 0, 0);
+ r0 = _tuple$1[0];
+ e1 = _tuple$1[2];
+ use((_p0));
+ fd = ((r0 >> 0));
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return [fd, err];
+ };
+ Close = function(fd) {
+ var $ptr, _tuple, e1, err, fd;
+ err = $ifaceNil;
+ _tuple = Syscall(3, ((fd >>> 0)), 0, 0);
+ e1 = _tuple[2];
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return err;
+ };
+ $pkg.Close = Close;
+ Exit = function(code) {
+ var $ptr, code;
+ Syscall(231, ((code >>> 0)), 0, 0);
+ return;
+ };
+ $pkg.Exit = Exit;
+ Fchdir = function(fd) {
+ var $ptr, _tuple, e1, err, fd;
+ err = $ifaceNil;
+ _tuple = Syscall(81, ((fd >>> 0)), 0, 0);
+ e1 = _tuple[2];
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return err;
+ };
+ $pkg.Fchdir = Fchdir;
+ Fchmod = function(fd, mode) {
+ var $ptr, _tuple, e1, err, fd, mode;
+ err = $ifaceNil;
+ _tuple = Syscall(91, ((fd >>> 0)), ((mode >>> 0)), 0);
+ e1 = _tuple[2];
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return err;
+ };
+ $pkg.Fchmod = Fchmod;
+ Fchmodat = function(dirfd, path, mode, flags) {
+ var $ptr, _p0, _tuple, _tuple$1, dirfd, e1, err, flags, mode, path;
+ err = $ifaceNil;
+ _p0 = ptrType$2.nil;
+ _tuple = BytePtrFromString(path);
+ _p0 = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return err;
+ }
+ _tuple$1 = Syscall6(268, ((dirfd >>> 0)), ((_p0)), ((mode >>> 0)), ((flags >>> 0)), 0, 0);
+ e1 = _tuple$1[2];
+ use((_p0));
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return err;
+ };
+ $pkg.Fchmodat = Fchmodat;
+ fcntl = function(fd, cmd, arg) {
+ var $ptr, _tuple, arg, cmd, e1, err, fd, r0, val;
+ val = 0;
+ err = $ifaceNil;
+ _tuple = Syscall(72, ((fd >>> 0)), ((cmd >>> 0)), ((arg >>> 0)));
+ r0 = _tuple[0];
+ e1 = _tuple[2];
+ val = ((r0 >> 0));
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return [val, err];
+ };
+ Fsync = function(fd) {
+ var $ptr, _tuple, e1, err, fd;
+ err = $ifaceNil;
+ _tuple = Syscall(74, ((fd >>> 0)), 0, 0);
+ e1 = _tuple[2];
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return err;
+ };
+ $pkg.Fsync = Fsync;
+ Getdents = function(fd, buf) {
+ var $ptr, _p0, _tuple, buf, e1, err, fd, n, r0;
+ n = 0;
+ err = $ifaceNil;
+ _p0 = 0;
+ if (buf.$length > 0) {
+ _p0 = ($sliceToArray(buf));
+ } else {
+ _p0 = (new Uint8Array(0));
+ }
+ _tuple = Syscall(217, ((fd >>> 0)), (_p0), ((buf.$length >>> 0)));
+ r0 = _tuple[0];
+ e1 = _tuple[2];
+ n = ((r0 >> 0));
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return [n, err];
+ };
+ $pkg.Getdents = Getdents;
+ read = function(fd, p) {
+ var $ptr, _p0, _tuple, e1, err, fd, n, p, r0;
+ n = 0;
+ err = $ifaceNil;
+ _p0 = 0;
+ if (p.$length > 0) {
+ _p0 = ($sliceToArray(p));
+ } else {
+ _p0 = (new Uint8Array(0));
+ }
+ _tuple = Syscall(0, ((fd >>> 0)), (_p0), ((p.$length >>> 0)));
+ r0 = _tuple[0];
+ e1 = _tuple[2];
+ n = ((r0 >> 0));
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return [n, err];
+ };
+ write = function(fd, p) {
+ var $ptr, _p0, _tuple, e1, err, fd, n, p, r0;
+ n = 0;
+ err = $ifaceNil;
+ _p0 = 0;
+ if (p.$length > 0) {
+ _p0 = ($sliceToArray(p));
+ } else {
+ _p0 = (new Uint8Array(0));
+ }
+ _tuple = Syscall(1, ((fd >>> 0)), (_p0), ((p.$length >>> 0)));
+ r0 = _tuple[0];
+ e1 = _tuple[2];
+ n = ((r0 >> 0));
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return [n, err];
+ };
+ munmap = function(addr, length) {
+ var $ptr, _tuple, addr, e1, err, length;
+ err = $ifaceNil;
+ _tuple = Syscall(11, (addr), (length), 0);
+ e1 = _tuple[2];
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return err;
+ };
+ Fchown = function(fd, uid, gid) {
+ var $ptr, _tuple, e1, err, fd, gid, uid;
+ err = $ifaceNil;
+ _tuple = Syscall(93, ((fd >>> 0)), ((uid >>> 0)), ((gid >>> 0)));
+ e1 = _tuple[2];
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return err;
+ };
+ $pkg.Fchown = Fchown;
+ Fstat = function(fd, stat) {
+ var $ptr, _array, _struct, _tuple, _view, e1, err, fd, stat;
+ err = $ifaceNil;
+ _array = new Uint8Array(144);
+ _tuple = Syscall(5, ((fd >>> 0)), ((_array)), 0);
+ _struct = stat, _view = new DataView(_array.buffer, _array.byteOffset), _struct.Dev = new $Uint64(_view.getUint32(4, true), _view.getUint32(0, true)), _struct.Ino = new $Uint64(_view.getUint32(12, true), _view.getUint32(8, true)), _struct.Nlink = new $Uint64(_view.getUint32(20, true), _view.getUint32(16, true)), _struct.Mode = _view.getUint32(24, true), _struct.Uid = _view.getUint32(28, true), _struct.Gid = _view.getUint32(32, true), _struct.X__pad0 = _view.getInt32(36, true), _struct.Rdev = new $Uint64(_view.getUint32(44, true), _view.getUint32(40, true)), _struct.Size = new $Int64(_view.getUint32(52, true), _view.getUint32(48, true)), _struct.Blksize = new $Int64(_view.getUint32(60, true), _view.getUint32(56, true)), _struct.Blocks = new $Int64(_view.getUint32(68, true), _view.getUint32(64, true)), _struct.Atim.Sec = new $Int64(_view.getUint32(76, true), _view.getUint32(72, true)), _struct.Atim.Nsec = new $Int64(_view.getUint32(84, true), _view.getUint32(80, true)), _struct.Mtim.Sec = new $Int64(_view.getUint32(92, true), _view.getUint32(88, true)), _struct.Mtim.Nsec = new $Int64(_view.getUint32(100, true), _view.getUint32(96, true)), _struct.Ctim.Sec = new $Int64(_view.getUint32(108, true), _view.getUint32(104, true)), _struct.Ctim.Nsec = new $Int64(_view.getUint32(116, true), _view.getUint32(112, true)), _struct.X__unused = new ($nativeArray($kindInt64))(_array.buffer, $min(_array.byteOffset + 120, _array.buffer.byteLength));
+ e1 = _tuple[2];
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return err;
+ };
+ $pkg.Fstat = Fstat;
+ Ftruncate = function(fd, length) {
+ var $ptr, _tuple, e1, err, fd, length;
+ err = $ifaceNil;
+ _tuple = Syscall(77, ((fd >>> 0)), ((length.$low >>> 0)), 0);
+ e1 = _tuple[2];
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return err;
+ };
+ $pkg.Ftruncate = Ftruncate;
+ Getgid = function() {
+ var $ptr, _tuple, gid, r0;
+ gid = 0;
+ _tuple = RawSyscall(104, 0, 0, 0);
+ r0 = _tuple[0];
+ gid = ((r0 >> 0));
+ return gid;
+ };
+ $pkg.Getgid = Getgid;
+ Getuid = function() {
+ var $ptr, _tuple, r0, uid;
+ uid = 0;
+ _tuple = RawSyscall(102, 0, 0, 0);
+ r0 = _tuple[0];
+ uid = ((r0 >> 0));
+ return uid;
+ };
+ $pkg.Getuid = Getuid;
+ Lstat = function(path, stat) {
+ var $ptr, _array, _p0, _struct, _tuple, _tuple$1, _view, e1, err, path, stat;
+ err = $ifaceNil;
+ _p0 = ptrType$2.nil;
+ _tuple = BytePtrFromString(path);
+ _p0 = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return err;
+ }
+ _array = new Uint8Array(144);
+ _tuple$1 = Syscall(6, ((_p0)), ((_array)), 0);
+ _struct = stat, _view = new DataView(_array.buffer, _array.byteOffset), _struct.Dev = new $Uint64(_view.getUint32(4, true), _view.getUint32(0, true)), _struct.Ino = new $Uint64(_view.getUint32(12, true), _view.getUint32(8, true)), _struct.Nlink = new $Uint64(_view.getUint32(20, true), _view.getUint32(16, true)), _struct.Mode = _view.getUint32(24, true), _struct.Uid = _view.getUint32(28, true), _struct.Gid = _view.getUint32(32, true), _struct.X__pad0 = _view.getInt32(36, true), _struct.Rdev = new $Uint64(_view.getUint32(44, true), _view.getUint32(40, true)), _struct.Size = new $Int64(_view.getUint32(52, true), _view.getUint32(48, true)), _struct.Blksize = new $Int64(_view.getUint32(60, true), _view.getUint32(56, true)), _struct.Blocks = new $Int64(_view.getUint32(68, true), _view.getUint32(64, true)), _struct.Atim.Sec = new $Int64(_view.getUint32(76, true), _view.getUint32(72, true)), _struct.Atim.Nsec = new $Int64(_view.getUint32(84, true), _view.getUint32(80, true)), _struct.Mtim.Sec = new $Int64(_view.getUint32(92, true), _view.getUint32(88, true)), _struct.Mtim.Nsec = new $Int64(_view.getUint32(100, true), _view.getUint32(96, true)), _struct.Ctim.Sec = new $Int64(_view.getUint32(108, true), _view.getUint32(104, true)), _struct.Ctim.Nsec = new $Int64(_view.getUint32(116, true), _view.getUint32(112, true)), _struct.X__unused = new ($nativeArray($kindInt64))(_array.buffer, $min(_array.byteOffset + 120, _array.buffer.byteLength));
+ e1 = _tuple$1[2];
+ use((_p0));
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return err;
+ };
+ $pkg.Lstat = Lstat;
+ Pread = function(fd, p, offset) {
+ var $ptr, _p0, _tuple, e1, err, fd, n, offset, p, r0;
+ n = 0;
+ err = $ifaceNil;
+ _p0 = 0;
+ if (p.$length > 0) {
+ _p0 = ($sliceToArray(p));
+ } else {
+ _p0 = (new Uint8Array(0));
+ }
+ _tuple = Syscall6(17, ((fd >>> 0)), (_p0), ((p.$length >>> 0)), ((offset.$low >>> 0)), 0, 0);
+ r0 = _tuple[0];
+ e1 = _tuple[2];
+ n = ((r0 >> 0));
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return [n, err];
+ };
+ $pkg.Pread = Pread;
+ Pwrite = function(fd, p, offset) {
+ var $ptr, _p0, _tuple, e1, err, fd, n, offset, p, r0;
+ n = 0;
+ err = $ifaceNil;
+ _p0 = 0;
+ if (p.$length > 0) {
+ _p0 = ($sliceToArray(p));
+ } else {
+ _p0 = (new Uint8Array(0));
+ }
+ _tuple = Syscall6(18, ((fd >>> 0)), (_p0), ((p.$length >>> 0)), ((offset.$low >>> 0)), 0, 0);
+ r0 = _tuple[0];
+ e1 = _tuple[2];
+ n = ((r0 >> 0));
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return [n, err];
+ };
+ $pkg.Pwrite = Pwrite;
+ Seek = function(fd, offset, whence) {
+ var $ptr, _tuple, e1, err, fd, off, offset, r0, whence;
+ off = new $Int64(0, 0);
+ err = $ifaceNil;
+ _tuple = Syscall(8, ((fd >>> 0)), ((offset.$low >>> 0)), ((whence >>> 0)));
+ r0 = _tuple[0];
+ e1 = _tuple[2];
+ off = (new $Int64(0, r0.constructor === Number ? r0 : 1));
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return [off, err];
+ };
+ $pkg.Seek = Seek;
+ Stat = function(path, stat) {
+ var $ptr, _array, _p0, _struct, _tuple, _tuple$1, _view, e1, err, path, stat;
+ err = $ifaceNil;
+ _p0 = ptrType$2.nil;
+ _tuple = BytePtrFromString(path);
+ _p0 = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return err;
+ }
+ _array = new Uint8Array(144);
+ _tuple$1 = Syscall(4, ((_p0)), ((_array)), 0);
+ _struct = stat, _view = new DataView(_array.buffer, _array.byteOffset), _struct.Dev = new $Uint64(_view.getUint32(4, true), _view.getUint32(0, true)), _struct.Ino = new $Uint64(_view.getUint32(12, true), _view.getUint32(8, true)), _struct.Nlink = new $Uint64(_view.getUint32(20, true), _view.getUint32(16, true)), _struct.Mode = _view.getUint32(24, true), _struct.Uid = _view.getUint32(28, true), _struct.Gid = _view.getUint32(32, true), _struct.X__pad0 = _view.getInt32(36, true), _struct.Rdev = new $Uint64(_view.getUint32(44, true), _view.getUint32(40, true)), _struct.Size = new $Int64(_view.getUint32(52, true), _view.getUint32(48, true)), _struct.Blksize = new $Int64(_view.getUint32(60, true), _view.getUint32(56, true)), _struct.Blocks = new $Int64(_view.getUint32(68, true), _view.getUint32(64, true)), _struct.Atim.Sec = new $Int64(_view.getUint32(76, true), _view.getUint32(72, true)), _struct.Atim.Nsec = new $Int64(_view.getUint32(84, true), _view.getUint32(80, true)), _struct.Mtim.Sec = new $Int64(_view.getUint32(92, true), _view.getUint32(88, true)), _struct.Mtim.Nsec = new $Int64(_view.getUint32(100, true), _view.getUint32(96, true)), _struct.Ctim.Sec = new $Int64(_view.getUint32(108, true), _view.getUint32(104, true)), _struct.Ctim.Nsec = new $Int64(_view.getUint32(116, true), _view.getUint32(112, true)), _struct.X__unused = new ($nativeArray($kindInt64))(_array.buffer, $min(_array.byteOffset + 120, _array.buffer.byteLength));
+ e1 = _tuple$1[2];
+ use((_p0));
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return err;
+ };
+ $pkg.Stat = Stat;
+ bind = function(s, addr, addrlen) {
+ var $ptr, _tuple, addr, addrlen, e1, err, s;
+ err = $ifaceNil;
+ _tuple = Syscall(49, ((s >>> 0)), (addr), ((addrlen >>> 0)));
+ e1 = _tuple[2];
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return err;
+ };
+ socket = function(domain, typ, proto) {
+ var $ptr, _tuple, domain, e1, err, fd, proto, r0, typ;
+ fd = 0;
+ err = $ifaceNil;
+ _tuple = RawSyscall(41, ((domain >>> 0)), ((typ >>> 0)), ((proto >>> 0)));
+ r0 = _tuple[0];
+ e1 = _tuple[2];
+ fd = ((r0 >> 0));
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return [fd, err];
+ };
+ getsockname = function(fd, rsa, addrlen) {
+ var $ptr, _array, _struct, _tuple, _view, addrlen, e1, err, fd, rsa;
+ err = $ifaceNil;
+ _array = new Uint8Array(112);
+ _tuple = RawSyscall(51, ((fd >>> 0)), ((_array)), ((addrlen)));
+ _struct = rsa, _view = new DataView(_array.buffer, _array.byteOffset), _struct.Addr.Family = _view.getUint16(0, true), _struct.Addr.Data = new ($nativeArray($kindInt8))(_array.buffer, $min(_array.byteOffset + 2, _array.buffer.byteLength)), _struct.Pad = new ($nativeArray($kindInt8))(_array.buffer, $min(_array.byteOffset + 16, _array.buffer.byteLength));
+ e1 = _tuple[2];
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return err;
+ };
+ recvfrom = function(fd, p, flags, from, fromlen) {
+ var $ptr, _array, _p0, _struct, _tuple, _view, e1, err, fd, flags, from, fromlen, n, p, r0;
+ n = 0;
+ err = $ifaceNil;
+ _p0 = 0;
+ if (p.$length > 0) {
+ _p0 = ($sliceToArray(p));
+ } else {
+ _p0 = (new Uint8Array(0));
+ }
+ _array = new Uint8Array(112);
+ _tuple = Syscall6(45, ((fd >>> 0)), (_p0), ((p.$length >>> 0)), ((flags >>> 0)), ((_array)), ((fromlen)));
+ _struct = from, _view = new DataView(_array.buffer, _array.byteOffset), _struct.Addr.Family = _view.getUint16(0, true), _struct.Addr.Data = new ($nativeArray($kindInt8))(_array.buffer, $min(_array.byteOffset + 2, _array.buffer.byteLength)), _struct.Pad = new ($nativeArray($kindInt8))(_array.buffer, $min(_array.byteOffset + 16, _array.buffer.byteLength));
+ r0 = _tuple[0];
+ e1 = _tuple[2];
+ n = ((r0 >> 0));
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return [n, err];
+ };
+ sendto = function(s, buf, flags, to, addrlen) {
+ var $ptr, _p0, _tuple, addrlen, buf, e1, err, flags, s, to;
+ err = $ifaceNil;
+ _p0 = 0;
+ if (buf.$length > 0) {
+ _p0 = ($sliceToArray(buf));
+ } else {
+ _p0 = (new Uint8Array(0));
+ }
+ _tuple = Syscall6(44, ((s >>> 0)), (_p0), ((buf.$length >>> 0)), ((flags >>> 0)), (to), ((addrlen >>> 0)));
+ e1 = _tuple[2];
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return err;
+ };
+ mmap = function(addr, length, prot, flags, fd, offset) {
+ var $ptr, _tuple, addr, e1, err, fd, flags, length, offset, prot, r0, xaddr;
+ xaddr = 0;
+ err = $ifaceNil;
+ _tuple = Syscall6(9, (addr), (length), ((prot >>> 0)), ((flags >>> 0)), ((fd >>> 0)), ((offset.$low >>> 0)));
+ r0 = _tuple[0];
+ e1 = _tuple[2];
+ xaddr = (r0);
+ if (!((e1 === 0))) {
+ err = errnoErr(e1);
+ }
+ return [xaddr, err];
+ };
+ ptrType$23.methods = [{prop: "toWireFormat", name: "toWireFormat", pkg: "syscall", typ: $funcType([], [sliceType], false)}];
+ ptrType$24.methods = [{prop: "sockaddr", name: "sockaddr", pkg: "syscall", typ: $funcType([], [$UnsafePointer, _Socklen, $error], false)}];
+ ptrType$11.methods = [{prop: "sockaddr", name: "sockaddr", pkg: "syscall", typ: $funcType([], [$UnsafePointer, _Socklen, $error], false)}];
+ ptrType$25.methods = [{prop: "Mmap", name: "Mmap", pkg: "", typ: $funcType([$Int, $Int64, $Int, $Int, $Int], [sliceType, $error], false)}, {prop: "Munmap", name: "Munmap", pkg: "", typ: $funcType([sliceType], [$error], false)}];
+ Errno.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Temporary", name: "Temporary", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Timeout", name: "Timeout", pkg: "", typ: $funcType([], [$Bool], false)}];
+ ptrType$26.methods = [{prop: "sockaddr", name: "sockaddr", pkg: "syscall", typ: $funcType([], [$UnsafePointer, _Socklen, $error], false)}];
+ ptrType$27.methods = [{prop: "sockaddr", name: "sockaddr", pkg: "syscall", typ: $funcType([], [$UnsafePointer, _Socklen, $error], false)}];
+ ptrType$28.methods = [{prop: "sockaddr", name: "sockaddr", pkg: "syscall", typ: $funcType([], [$UnsafePointer, _Socklen, $error], false)}];
+ ptrType$29.methods = [{prop: "Unix", name: "Unix", pkg: "", typ: $funcType([], [$Int64, $Int64], false)}, {prop: "Nano", name: "Nano", pkg: "", typ: $funcType([], [$Int64], false)}];
+ NetlinkRouteRequest.init("", [{prop: "Header", name: "Header", exported: true, typ: NlMsghdr, tag: ""}, {prop: "Data", name: "Data", exported: true, typ: RtGenmsg, tag: ""}]);
+ NetlinkMessage.init("", [{prop: "Header", name: "Header", exported: true, typ: NlMsghdr, tag: ""}, {prop: "Data", name: "Data", exported: true, typ: sliceType, tag: ""}]);
+ NetlinkRouteAttr.init("", [{prop: "Attr", name: "Attr", exported: true, typ: RtAttr, tag: ""}, {prop: "Value", name: "Value", exported: true, typ: sliceType, tag: ""}]);
+ SockaddrLinklayer.init("syscall", [{prop: "Protocol", name: "Protocol", exported: true, typ: $Uint16, tag: ""}, {prop: "Ifindex", name: "Ifindex", exported: true, typ: $Int, tag: ""}, {prop: "Hatype", name: "Hatype", exported: true, typ: $Uint16, tag: ""}, {prop: "Pkttype", name: "Pkttype", exported: true, typ: $Uint8, tag: ""}, {prop: "Halen", name: "Halen", exported: true, typ: $Uint8, tag: ""}, {prop: "Addr", name: "Addr", exported: true, typ: arrayType$1, tag: ""}, {prop: "raw", name: "raw", exported: false, typ: RawSockaddrLinklayer, tag: ""}]);
+ SockaddrNetlink.init("syscall", [{prop: "Family", name: "Family", exported: true, typ: $Uint16, tag: ""}, {prop: "Pad", name: "Pad", exported: true, typ: $Uint16, tag: ""}, {prop: "Pid", name: "Pid", exported: true, typ: $Uint32, tag: ""}, {prop: "Groups", name: "Groups", exported: true, typ: $Uint32, tag: ""}, {prop: "raw", name: "raw", exported: false, typ: RawSockaddrNetlink, tag: ""}]);
+ mmapper.init("syscall", [{prop: "Mutex", name: "", exported: true, typ: sync.Mutex, tag: ""}, {prop: "active", name: "active", exported: false, typ: mapType, tag: ""}, {prop: "mmap", name: "mmap", exported: false, typ: funcType, tag: ""}, {prop: "munmap", name: "munmap", exported: false, typ: funcType$1, tag: ""}]);
+ Sockaddr.init([{prop: "sockaddr", name: "sockaddr", pkg: "syscall", typ: $funcType([], [$UnsafePointer, _Socklen, $error], false)}]);
+ SockaddrInet4.init("syscall", [{prop: "Port", name: "Port", exported: true, typ: $Int, tag: ""}, {prop: "Addr", name: "Addr", exported: true, typ: arrayType$8, tag: ""}, {prop: "raw", name: "raw", exported: false, typ: RawSockaddrInet4, tag: ""}]);
+ SockaddrInet6.init("syscall", [{prop: "Port", name: "Port", exported: true, typ: $Int, tag: ""}, {prop: "ZoneId", name: "ZoneId", exported: true, typ: $Uint32, tag: ""}, {prop: "Addr", name: "Addr", exported: true, typ: arrayType$2, tag: ""}, {prop: "raw", name: "raw", exported: false, typ: RawSockaddrInet6, tag: ""}]);
+ SockaddrUnix.init("syscall", [{prop: "Name", name: "Name", exported: true, typ: $String, tag: ""}, {prop: "raw", name: "raw", exported: false, typ: RawSockaddrUnix, tag: ""}]);
+ Timespec.init("", [{prop: "Sec", name: "Sec", exported: true, typ: $Int64, tag: ""}, {prop: "Nsec", name: "Nsec", exported: true, typ: $Int64, tag: ""}]);
+ Stat_t.init("", [{prop: "Dev", name: "Dev", exported: true, typ: $Uint64, tag: ""}, {prop: "Ino", name: "Ino", exported: true, typ: $Uint64, tag: ""}, {prop: "Nlink", name: "Nlink", exported: true, typ: $Uint64, tag: ""}, {prop: "Mode", name: "Mode", exported: true, typ: $Uint32, tag: ""}, {prop: "Uid", name: "Uid", exported: true, typ: $Uint32, tag: ""}, {prop: "Gid", name: "Gid", exported: true, typ: $Uint32, tag: ""}, {prop: "X__pad0", name: "X__pad0", exported: true, typ: $Int32, tag: ""}, {prop: "Rdev", name: "Rdev", exported: true, typ: $Uint64, tag: ""}, {prop: "Size", name: "Size", exported: true, typ: $Int64, tag: ""}, {prop: "Blksize", name: "Blksize", exported: true, typ: $Int64, tag: ""}, {prop: "Blocks", name: "Blocks", exported: true, typ: $Int64, tag: ""}, {prop: "Atim", name: "Atim", exported: true, typ: Timespec, tag: ""}, {prop: "Mtim", name: "Mtim", exported: true, typ: Timespec, tag: ""}, {prop: "Ctim", name: "Ctim", exported: true, typ: Timespec, tag: ""}, {prop: "X__unused", name: "X__unused", exported: true, typ: arrayType$15, tag: ""}]);
+ RawSockaddrInet4.init("", [{prop: "Family", name: "Family", exported: true, typ: $Uint16, tag: ""}, {prop: "Port", name: "Port", exported: true, typ: $Uint16, tag: ""}, {prop: "Addr", name: "Addr", exported: true, typ: arrayType$8, tag: ""}, {prop: "Zero", name: "Zero", exported: true, typ: arrayType$1, tag: ""}]);
+ RawSockaddrInet6.init("", [{prop: "Family", name: "Family", exported: true, typ: $Uint16, tag: ""}, {prop: "Port", name: "Port", exported: true, typ: $Uint16, tag: ""}, {prop: "Flowinfo", name: "Flowinfo", exported: true, typ: $Uint32, tag: ""}, {prop: "Addr", name: "Addr", exported: true, typ: arrayType$2, tag: ""}, {prop: "Scope_id", name: "Scope_id", exported: true, typ: $Uint32, tag: ""}]);
+ RawSockaddrUnix.init("", [{prop: "Family", name: "Family", exported: true, typ: $Uint16, tag: ""}, {prop: "Path", name: "Path", exported: true, typ: arrayType$7, tag: ""}]);
+ RawSockaddrLinklayer.init("", [{prop: "Family", name: "Family", exported: true, typ: $Uint16, tag: ""}, {prop: "Protocol", name: "Protocol", exported: true, typ: $Uint16, tag: ""}, {prop: "Ifindex", name: "Ifindex", exported: true, typ: $Int32, tag: ""}, {prop: "Hatype", name: "Hatype", exported: true, typ: $Uint16, tag: ""}, {prop: "Pkttype", name: "Pkttype", exported: true, typ: $Uint8, tag: ""}, {prop: "Halen", name: "Halen", exported: true, typ: $Uint8, tag: ""}, {prop: "Addr", name: "Addr", exported: true, typ: arrayType$1, tag: ""}]);
+ RawSockaddrNetlink.init("", [{prop: "Family", name: "Family", exported: true, typ: $Uint16, tag: ""}, {prop: "Pad", name: "Pad", exported: true, typ: $Uint16, tag: ""}, {prop: "Pid", name: "Pid", exported: true, typ: $Uint32, tag: ""}, {prop: "Groups", name: "Groups", exported: true, typ: $Uint32, tag: ""}]);
+ RawSockaddr.init("", [{prop: "Family", name: "Family", exported: true, typ: $Uint16, tag: ""}, {prop: "Data", name: "Data", exported: true, typ: arrayType$9, tag: ""}]);
+ RawSockaddrAny.init("", [{prop: "Addr", name: "Addr", exported: true, typ: RawSockaddr, tag: ""}, {prop: "Pad", name: "Pad", exported: true, typ: arrayType$10, tag: ""}]);
+ NlMsghdr.init("", [{prop: "Len", name: "Len", exported: true, typ: $Uint32, tag: ""}, {prop: "Type", name: "Type", exported: true, typ: $Uint16, tag: ""}, {prop: "Flags", name: "Flags", exported: true, typ: $Uint16, tag: ""}, {prop: "Seq", name: "Seq", exported: true, typ: $Uint32, tag: ""}, {prop: "Pid", name: "Pid", exported: true, typ: $Uint32, tag: ""}]);
+ RtGenmsg.init("", [{prop: "Family", name: "Family", exported: true, typ: $Uint8, tag: ""}]);
+ RtAttr.init("", [{prop: "Len", name: "Len", exported: true, typ: $Uint16, tag: ""}, {prop: "Type", name: "Type", exported: true, typ: $Uint16, tag: ""}]);
+ IfInfomsg.init("", [{prop: "Family", name: "Family", exported: true, typ: $Uint8, tag: ""}, {prop: "X__ifi_pad", name: "X__ifi_pad", exported: true, typ: $Uint8, tag: ""}, {prop: "Type", name: "Type", exported: true, typ: $Uint16, tag: ""}, {prop: "Index", name: "Index", exported: true, typ: $Int32, tag: ""}, {prop: "Flags", name: "Flags", exported: true, typ: $Uint32, tag: ""}, {prop: "Change", name: "Change", exported: true, typ: $Uint32, tag: ""}]);
+ IfAddrmsg.init("", [{prop: "Family", name: "Family", exported: true, typ: $Uint8, tag: ""}, {prop: "Prefixlen", name: "Prefixlen", exported: true, typ: $Uint8, tag: ""}, {prop: "Flags", name: "Flags", exported: true, typ: $Uint8, tag: ""}, {prop: "Scope", name: "Scope", exported: true, typ: $Uint8, tag: ""}, {prop: "Index", name: "Index", exported: true, typ: $Uint32, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = js.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = race.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ lineBuffer = sliceType.nil;
+ syscallModule = null;
+ envOnce = new sync.Once.ptr(new sync.Mutex.ptr(0, 0), 0);
+ envLock = new sync.RWMutex.ptr(new sync.Mutex.ptr(0, 0), 0, 0, 0, 0);
+ env = false;
+ $pkg.SocketDisableIPv6 = false;
+ ioSync = new $Int64(0, 0);
+ warningPrinted = false;
+ alreadyTriedToLoad = false;
+ minusOne = -1;
+ envs = runtime_envs();
+ $pkg.Stdin = 0;
+ $pkg.Stdout = 1;
+ $pkg.Stderr = 2;
+ errEAGAIN = new Errno(11);
+ errEINVAL = new Errno(22);
+ errENOENT = new Errno(2);
+ errors = $toNativeArray($kindString, ["", "operation not permitted", "no such file or directory", "no such process", "interrupted system call", "input/output error", "no such device or address", "argument list too long", "exec format error", "bad file descriptor", "no child processes", "resource temporarily unavailable", "cannot allocate memory", "permission denied", "bad address", "block device required", "device or resource busy", "file exists", "invalid cross-device link", "no such device", "not a directory", "is a directory", "invalid argument", "too many open files in system", "too many open files", "inappropriate ioctl for device", "text file busy", "file too large", "no space left on device", "illegal seek", "read-only file system", "too many links", "broken pipe", "numerical argument out of domain", "numerical result out of range", "resource deadlock avoided", "file name too long", "no locks available", "function not implemented", "directory not empty", "too many levels of symbolic links", "", "no message of desired type", "identifier removed", "channel number out of range", "level 2 not synchronized", "level 3 halted", "level 3 reset", "link number out of range", "protocol driver not attached", "no CSI structure available", "level 2 halted", "invalid exchange", "invalid request descriptor", "exchange full", "no anode", "invalid request code", "invalid slot", "", "bad font file format", "device not a stream", "no data available", "timer expired", "out of streams resources", "machine is not on the network", "package not installed", "object is remote", "link has been severed", "advertise error", "srmount error", "communication error on send", "protocol error", "multihop attempted", "RFS specific error", "bad message", "value too large for defined data type", "name not unique on network", "file descriptor in bad state", "remote address changed", "can not access a needed shared library", "accessing a corrupted shared library", ".lib section in a.out corrupted", "attempting to link in too many shared libraries", "cannot exec a shared library directly", "invalid or incomplete multibyte or wide character", "interrupted system call should be restarted", "streams pipe error", "too many users", "socket operation on non-socket", "destination address required", "message too long", "protocol wrong type for socket", "protocol not available", "protocol not supported", "socket type not supported", "operation not supported", "protocol family not supported", "address family not supported by protocol", "address already in use", "cannot assign requested address", "network is down", "network is unreachable", "network dropped connection on reset", "software caused connection abort", "connection reset by peer", "no buffer space available", "transport endpoint is already connected", "transport endpoint is not connected", "cannot send after transport endpoint shutdown", "too many references: cannot splice", "connection timed out", "connection refused", "host is down", "no route to host", "operation already in progress", "operation now in progress", "stale NFS file handle", "structure needs cleaning", "not a XENIX named type file", "no XENIX semaphores available", "is a named type file", "remote I/O error", "disk quota exceeded", "no medium found", "wrong medium type", "operation canceled", "required key not available", "key has expired", "key has been revoked", "key was rejected by service", "owner died", "state not recoverable", "operation not possible due to RF-kill"]);
+ mapper = new mmapper.ptr(new sync.Mutex.ptr(0, 0), {}, mmap, munmap);
+ init();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["github.com/gopherjs/gopherjs/nosync"] = (function() {
+ var $pkg = {}, $init, Mutex, Once, Pool, ptrType, funcType, ptrType$3, sliceType, ptrType$4, funcType$1;
+ Mutex = $pkg.Mutex = $newType(0, $kindStruct, "nosync.Mutex", true, "github.com/gopherjs/gopherjs/nosync", true, function(locked_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.locked = false;
+ return;
+ }
+ this.locked = locked_;
+ });
+ Once = $pkg.Once = $newType(0, $kindStruct, "nosync.Once", true, "github.com/gopherjs/gopherjs/nosync", true, function(doing_, done_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.doing = false;
+ this.done = false;
+ return;
+ }
+ this.doing = doing_;
+ this.done = done_;
+ });
+ Pool = $pkg.Pool = $newType(0, $kindStruct, "nosync.Pool", true, "github.com/gopherjs/gopherjs/nosync", true, function(store_, New_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.store = sliceType.nil;
+ this.New = $throwNilPointerError;
+ return;
+ }
+ this.store = store_;
+ this.New = New_;
+ });
+ ptrType = $ptrType(Mutex);
+ funcType = $funcType([], [], false);
+ ptrType$3 = $ptrType(Once);
+ sliceType = $sliceType($emptyInterface);
+ ptrType$4 = $ptrType(Pool);
+ funcType$1 = $funcType([], [$emptyInterface], false);
+ Mutex.ptr.prototype.Lock = function() {
+ var $ptr, m;
+ m = this;
+ if (m.locked) {
+ $panic(new $String("nosync: mutex is already locked"));
+ }
+ m.locked = true;
+ };
+ Mutex.prototype.Lock = function() { return this.$val.Lock(); };
+ Mutex.ptr.prototype.Unlock = function() {
+ var $ptr, m;
+ m = this;
+ if (!m.locked) {
+ $panic(new $String("nosync: unlock of unlocked mutex"));
+ }
+ m.locked = false;
+ };
+ Mutex.prototype.Unlock = function() { return this.$val.Unlock(); };
+ Once.ptr.prototype.Do = function(f) {
+ var $ptr, f, o, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; o = $f.o; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ o = [o];
+ o[0] = this;
+ if (o[0].done) {
+ $s = -1; return;
+ }
+ if (o[0].doing) {
+ $panic(new $String("nosync: Do called within f"));
+ }
+ o[0].doing = true;
+ $deferred.push([(function(o) { return function() {
+ var $ptr;
+ o[0].doing = false;
+ o[0].done = true;
+ }; })(o), []]);
+ $r = f(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: Once.ptr.prototype.Do }; } $f.$ptr = $ptr; $f.f = f; $f.o = o; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ Once.prototype.Do = function(f) { return this.$val.Do(f); };
+ Pool.ptr.prototype.Get = function() {
+ var $ptr, _r, p, x, x$1, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; p = $f.p; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ /* */ if (p.store.$length === 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (p.store.$length === 0) { */ case 1:
+ /* */ if (!(p.New === $throwNilPointerError)) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!(p.New === $throwNilPointerError)) { */ case 3:
+ _r = p.New(); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* } */ case 4:
+ $s = -1; return $ifaceNil;
+ /* } */ case 2:
+ x$2 = (x = p.store, x$1 = p.store.$length - 1 >> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ p.store = $subslice(p.store, 0, (p.store.$length - 1 >> 0));
+ $s = -1; return x$2;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Pool.ptr.prototype.Get }; } $f.$ptr = $ptr; $f._r = _r; $f.p = p; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Pool.prototype.Get = function() { return this.$val.Get(); };
+ Pool.ptr.prototype.Put = function(x) {
+ var $ptr, p, x;
+ p = this;
+ if ($interfaceIsEqual(x, $ifaceNil)) {
+ return;
+ }
+ p.store = $append(p.store, x);
+ };
+ Pool.prototype.Put = function(x) { return this.$val.Put(x); };
+ ptrType.methods = [{prop: "Lock", name: "Lock", pkg: "", typ: $funcType([], [], false)}, {prop: "Unlock", name: "Unlock", pkg: "", typ: $funcType([], [], false)}];
+ ptrType$3.methods = [{prop: "Do", name: "Do", pkg: "", typ: $funcType([funcType], [], false)}];
+ ptrType$4.methods = [{prop: "Get", name: "Get", pkg: "", typ: $funcType([], [$emptyInterface], false)}, {prop: "Put", name: "Put", pkg: "", typ: $funcType([$emptyInterface], [], false)}];
+ Mutex.init("github.com/gopherjs/gopherjs/nosync", [{prop: "locked", name: "locked", exported: false, typ: $Bool, tag: ""}]);
+ Once.init("github.com/gopherjs/gopherjs/nosync", [{prop: "doing", name: "doing", exported: false, typ: $Bool, tag: ""}, {prop: "done", name: "done", exported: false, typ: $Bool, tag: ""}]);
+ Pool.init("github.com/gopherjs/gopherjs/nosync", [{prop: "store", name: "store", exported: false, typ: sliceType, tag: ""}, {prop: "New", name: "New", exported: true, typ: funcType$1, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["time"] = (function() {
+ var $pkg = {}, $init, errors, js, nosync, runtime, syscall, ParseError, Time, Month, Weekday, Duration, Location, zone, zoneTrans, sliceType, sliceType$1, ptrType, sliceType$2, arrayType, sliceType$3, arrayType$1, arrayType$2, ptrType$1, arrayType$4, ptrType$3, ptrType$6, std0x, longDayNames, shortDayNames, shortMonthNames, longMonthNames, atoiError, errBad, errLeadingInt, unitMap, months, days, daysBefore, utcLoc, utcLoc$24ptr, localLoc, localLoc$24ptr, localOnce, zoneinfo, badData, zoneDirs, _tuple, _r, init, initLocal, runtimeNano, now, indexByte, startsWithLowerCase, nextStdChunk, match, lookup, appendInt, atoi, formatNano, quote, isDigit, getnum, cutspace, skip, Parse, parse, parseTimeZone, parseGMT, parseNanoseconds, leadingInt, leadingFraction, ParseDuration, absWeekday, absClock, fmtFrac, fmtInt, absDate, daysIn, Now, Unix, isLeap, norm, Date, div, FixedZone;
+ errors = $packages["errors"];
+ js = $packages["github.com/gopherjs/gopherjs/js"];
+ nosync = $packages["github.com/gopherjs/gopherjs/nosync"];
+ runtime = $packages["runtime"];
+ syscall = $packages["syscall"];
+ ParseError = $pkg.ParseError = $newType(0, $kindStruct, "time.ParseError", true, "time", true, function(Layout_, Value_, LayoutElem_, ValueElem_, Message_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Layout = "";
+ this.Value = "";
+ this.LayoutElem = "";
+ this.ValueElem = "";
+ this.Message = "";
+ return;
+ }
+ this.Layout = Layout_;
+ this.Value = Value_;
+ this.LayoutElem = LayoutElem_;
+ this.ValueElem = ValueElem_;
+ this.Message = Message_;
+ });
+ Time = $pkg.Time = $newType(0, $kindStruct, "time.Time", true, "time", true, function(sec_, nsec_, loc_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.sec = new $Int64(0, 0);
+ this.nsec = 0;
+ this.loc = ptrType$1.nil;
+ return;
+ }
+ this.sec = sec_;
+ this.nsec = nsec_;
+ this.loc = loc_;
+ });
+ Month = $pkg.Month = $newType(4, $kindInt, "time.Month", true, "time", true, null);
+ Weekday = $pkg.Weekday = $newType(4, $kindInt, "time.Weekday", true, "time", true, null);
+ Duration = $pkg.Duration = $newType(8, $kindInt64, "time.Duration", true, "time", true, null);
+ Location = $pkg.Location = $newType(0, $kindStruct, "time.Location", true, "time", true, function(name_, zone_, tx_, cacheStart_, cacheEnd_, cacheZone_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.name = "";
+ this.zone = sliceType.nil;
+ this.tx = sliceType$1.nil;
+ this.cacheStart = new $Int64(0, 0);
+ this.cacheEnd = new $Int64(0, 0);
+ this.cacheZone = ptrType.nil;
+ return;
+ }
+ this.name = name_;
+ this.zone = zone_;
+ this.tx = tx_;
+ this.cacheStart = cacheStart_;
+ this.cacheEnd = cacheEnd_;
+ this.cacheZone = cacheZone_;
+ });
+ zone = $pkg.zone = $newType(0, $kindStruct, "time.zone", true, "time", false, function(name_, offset_, isDST_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.name = "";
+ this.offset = 0;
+ this.isDST = false;
+ return;
+ }
+ this.name = name_;
+ this.offset = offset_;
+ this.isDST = isDST_;
+ });
+ zoneTrans = $pkg.zoneTrans = $newType(0, $kindStruct, "time.zoneTrans", true, "time", false, function(when_, index_, isstd_, isutc_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.when = new $Int64(0, 0);
+ this.index = 0;
+ this.isstd = false;
+ this.isutc = false;
+ return;
+ }
+ this.when = when_;
+ this.index = index_;
+ this.isstd = isstd_;
+ this.isutc = isutc_;
+ });
+ sliceType = $sliceType(zone);
+ sliceType$1 = $sliceType(zoneTrans);
+ ptrType = $ptrType(zone);
+ sliceType$2 = $sliceType($String);
+ arrayType = $arrayType($Uint8, 20);
+ sliceType$3 = $sliceType($Uint8);
+ arrayType$1 = $arrayType($Uint8, 9);
+ arrayType$2 = $arrayType($Uint8, 64);
+ ptrType$1 = $ptrType(Location);
+ arrayType$4 = $arrayType($Uint8, 32);
+ ptrType$3 = $ptrType(ParseError);
+ ptrType$6 = $ptrType(Time);
+ init = function() {
+ var $ptr;
+ $unused(Unix(new $Int64(0, 0), new $Int64(0, 0)));
+ };
+ initLocal = function() {
+ var $ptr, d, i, j, s;
+ d = new ($global.Date)();
+ s = $internalize(d, $String);
+ i = indexByte(s, 40);
+ j = indexByte(s, 41);
+ if ((i === -1) || (j === -1)) {
+ localLoc.name = "UTC";
+ return;
+ }
+ localLoc.name = $substring(s, (i + 1 >> 0), j);
+ localLoc.zone = new sliceType([new zone.ptr(localLoc.name, $imul(($parseInt(d.getTimezoneOffset()) >> 0), -60), false)]);
+ };
+ runtimeNano = function() {
+ var $ptr;
+ return $mul64($internalize(new ($global.Date)().getTime(), $Int64), new $Int64(0, 1000000));
+ };
+ now = function() {
+ var $ptr, _tmp, _tmp$1, n, nsec, sec, x;
+ sec = new $Int64(0, 0);
+ nsec = 0;
+ n = runtimeNano();
+ _tmp = $div64(n, new $Int64(0, 1000000000), false);
+ _tmp$1 = (((x = $div64(n, new $Int64(0, 1000000000), true), x.$low + ((x.$high >> 31) * 4294967296)) >> 0));
+ sec = _tmp;
+ nsec = _tmp$1;
+ return [sec, nsec];
+ };
+ indexByte = function(s, c) {
+ var $ptr, c, s;
+ return $parseInt(s.indexOf($global.String.fromCharCode(c))) >> 0;
+ };
+ startsWithLowerCase = function(str) {
+ var $ptr, c, str;
+ if (str.length === 0) {
+ return false;
+ }
+ c = str.charCodeAt(0);
+ return 97 <= c && c <= 122;
+ };
+ nextStdChunk = function(layout) {
+ var $ptr, _1, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$18, _tmp$19, _tmp$2, _tmp$20, _tmp$21, _tmp$22, _tmp$23, _tmp$24, _tmp$25, _tmp$26, _tmp$27, _tmp$28, _tmp$29, _tmp$3, _tmp$30, _tmp$31, _tmp$32, _tmp$33, _tmp$34, _tmp$35, _tmp$36, _tmp$37, _tmp$38, _tmp$39, _tmp$4, _tmp$40, _tmp$41, _tmp$42, _tmp$43, _tmp$44, _tmp$45, _tmp$46, _tmp$47, _tmp$48, _tmp$49, _tmp$5, _tmp$50, _tmp$51, _tmp$52, _tmp$53, _tmp$54, _tmp$55, _tmp$56, _tmp$57, _tmp$58, _tmp$59, _tmp$6, _tmp$60, _tmp$61, _tmp$62, _tmp$63, _tmp$64, _tmp$65, _tmp$66, _tmp$67, _tmp$68, _tmp$69, _tmp$7, _tmp$70, _tmp$71, _tmp$72, _tmp$73, _tmp$74, _tmp$75, _tmp$76, _tmp$77, _tmp$78, _tmp$79, _tmp$8, _tmp$80, _tmp$81, _tmp$82, _tmp$83, _tmp$84, _tmp$85, _tmp$86, _tmp$9, c, ch, i, j, layout, prefix, std, std$1, suffix, x;
+ prefix = "";
+ std = 0;
+ suffix = "";
+ i = 0;
+ while (true) {
+ if (!(i < layout.length)) { break; }
+ c = ((layout.charCodeAt(i) >> 0));
+ _1 = c;
+ if (_1 === (74)) {
+ if (layout.length >= (i + 3 >> 0) && $substring(layout, i, (i + 3 >> 0)) === "Jan") {
+ if (layout.length >= (i + 7 >> 0) && $substring(layout, i, (i + 7 >> 0)) === "January") {
+ _tmp = $substring(layout, 0, i);
+ _tmp$1 = 257;
+ _tmp$2 = $substring(layout, (i + 7 >> 0));
+ prefix = _tmp;
+ std = _tmp$1;
+ suffix = _tmp$2;
+ return [prefix, std, suffix];
+ }
+ if (!startsWithLowerCase($substring(layout, (i + 3 >> 0)))) {
+ _tmp$3 = $substring(layout, 0, i);
+ _tmp$4 = 258;
+ _tmp$5 = $substring(layout, (i + 3 >> 0));
+ prefix = _tmp$3;
+ std = _tmp$4;
+ suffix = _tmp$5;
+ return [prefix, std, suffix];
+ }
+ }
+ } else if (_1 === (77)) {
+ if (layout.length >= (i + 3 >> 0)) {
+ if ($substring(layout, i, (i + 3 >> 0)) === "Mon") {
+ if (layout.length >= (i + 6 >> 0) && $substring(layout, i, (i + 6 >> 0)) === "Monday") {
+ _tmp$6 = $substring(layout, 0, i);
+ _tmp$7 = 261;
+ _tmp$8 = $substring(layout, (i + 6 >> 0));
+ prefix = _tmp$6;
+ std = _tmp$7;
+ suffix = _tmp$8;
+ return [prefix, std, suffix];
+ }
+ if (!startsWithLowerCase($substring(layout, (i + 3 >> 0)))) {
+ _tmp$9 = $substring(layout, 0, i);
+ _tmp$10 = 262;
+ _tmp$11 = $substring(layout, (i + 3 >> 0));
+ prefix = _tmp$9;
+ std = _tmp$10;
+ suffix = _tmp$11;
+ return [prefix, std, suffix];
+ }
+ }
+ if ($substring(layout, i, (i + 3 >> 0)) === "MST") {
+ _tmp$12 = $substring(layout, 0, i);
+ _tmp$13 = 21;
+ _tmp$14 = $substring(layout, (i + 3 >> 0));
+ prefix = _tmp$12;
+ std = _tmp$13;
+ suffix = _tmp$14;
+ return [prefix, std, suffix];
+ }
+ }
+ } else if (_1 === (48)) {
+ if (layout.length >= (i + 2 >> 0) && 49 <= layout.charCodeAt((i + 1 >> 0)) && layout.charCodeAt((i + 1 >> 0)) <= 54) {
+ _tmp$15 = $substring(layout, 0, i);
+ _tmp$16 = (x = layout.charCodeAt((i + 1 >> 0)) - 49 << 24 >>> 24, ((x < 0 || x >= std0x.length) ? ($throwRuntimeError("index out of range"), undefined) : std0x[x]));
+ _tmp$17 = $substring(layout, (i + 2 >> 0));
+ prefix = _tmp$15;
+ std = _tmp$16;
+ suffix = _tmp$17;
+ return [prefix, std, suffix];
+ }
+ } else if (_1 === (49)) {
+ if (layout.length >= (i + 2 >> 0) && (layout.charCodeAt((i + 1 >> 0)) === 53)) {
+ _tmp$18 = $substring(layout, 0, i);
+ _tmp$19 = 522;
+ _tmp$20 = $substring(layout, (i + 2 >> 0));
+ prefix = _tmp$18;
+ std = _tmp$19;
+ suffix = _tmp$20;
+ return [prefix, std, suffix];
+ }
+ _tmp$21 = $substring(layout, 0, i);
+ _tmp$22 = 259;
+ _tmp$23 = $substring(layout, (i + 1 >> 0));
+ prefix = _tmp$21;
+ std = _tmp$22;
+ suffix = _tmp$23;
+ return [prefix, std, suffix];
+ } else if (_1 === (50)) {
+ if (layout.length >= (i + 4 >> 0) && $substring(layout, i, (i + 4 >> 0)) === "2006") {
+ _tmp$24 = $substring(layout, 0, i);
+ _tmp$25 = 273;
+ _tmp$26 = $substring(layout, (i + 4 >> 0));
+ prefix = _tmp$24;
+ std = _tmp$25;
+ suffix = _tmp$26;
+ return [prefix, std, suffix];
+ }
+ _tmp$27 = $substring(layout, 0, i);
+ _tmp$28 = 263;
+ _tmp$29 = $substring(layout, (i + 1 >> 0));
+ prefix = _tmp$27;
+ std = _tmp$28;
+ suffix = _tmp$29;
+ return [prefix, std, suffix];
+ } else if (_1 === (95)) {
+ if (layout.length >= (i + 2 >> 0) && (layout.charCodeAt((i + 1 >> 0)) === 50)) {
+ if (layout.length >= (i + 5 >> 0) && $substring(layout, (i + 1 >> 0), (i + 5 >> 0)) === "2006") {
+ _tmp$30 = $substring(layout, 0, (i + 1 >> 0));
+ _tmp$31 = 273;
+ _tmp$32 = $substring(layout, (i + 5 >> 0));
+ prefix = _tmp$30;
+ std = _tmp$31;
+ suffix = _tmp$32;
+ return [prefix, std, suffix];
+ }
+ _tmp$33 = $substring(layout, 0, i);
+ _tmp$34 = 264;
+ _tmp$35 = $substring(layout, (i + 2 >> 0));
+ prefix = _tmp$33;
+ std = _tmp$34;
+ suffix = _tmp$35;
+ return [prefix, std, suffix];
+ }
+ } else if (_1 === (51)) {
+ _tmp$36 = $substring(layout, 0, i);
+ _tmp$37 = 523;
+ _tmp$38 = $substring(layout, (i + 1 >> 0));
+ prefix = _tmp$36;
+ std = _tmp$37;
+ suffix = _tmp$38;
+ return [prefix, std, suffix];
+ } else if (_1 === (52)) {
+ _tmp$39 = $substring(layout, 0, i);
+ _tmp$40 = 525;
+ _tmp$41 = $substring(layout, (i + 1 >> 0));
+ prefix = _tmp$39;
+ std = _tmp$40;
+ suffix = _tmp$41;
+ return [prefix, std, suffix];
+ } else if (_1 === (53)) {
+ _tmp$42 = $substring(layout, 0, i);
+ _tmp$43 = 527;
+ _tmp$44 = $substring(layout, (i + 1 >> 0));
+ prefix = _tmp$42;
+ std = _tmp$43;
+ suffix = _tmp$44;
+ return [prefix, std, suffix];
+ } else if (_1 === (80)) {
+ if (layout.length >= (i + 2 >> 0) && (layout.charCodeAt((i + 1 >> 0)) === 77)) {
+ _tmp$45 = $substring(layout, 0, i);
+ _tmp$46 = 531;
+ _tmp$47 = $substring(layout, (i + 2 >> 0));
+ prefix = _tmp$45;
+ std = _tmp$46;
+ suffix = _tmp$47;
+ return [prefix, std, suffix];
+ }
+ } else if (_1 === (112)) {
+ if (layout.length >= (i + 2 >> 0) && (layout.charCodeAt((i + 1 >> 0)) === 109)) {
+ _tmp$48 = $substring(layout, 0, i);
+ _tmp$49 = 532;
+ _tmp$50 = $substring(layout, (i + 2 >> 0));
+ prefix = _tmp$48;
+ std = _tmp$49;
+ suffix = _tmp$50;
+ return [prefix, std, suffix];
+ }
+ } else if (_1 === (45)) {
+ if (layout.length >= (i + 7 >> 0) && $substring(layout, i, (i + 7 >> 0)) === "-070000") {
+ _tmp$51 = $substring(layout, 0, i);
+ _tmp$52 = 28;
+ _tmp$53 = $substring(layout, (i + 7 >> 0));
+ prefix = _tmp$51;
+ std = _tmp$52;
+ suffix = _tmp$53;
+ return [prefix, std, suffix];
+ }
+ if (layout.length >= (i + 9 >> 0) && $substring(layout, i, (i + 9 >> 0)) === "-07:00:00") {
+ _tmp$54 = $substring(layout, 0, i);
+ _tmp$55 = 31;
+ _tmp$56 = $substring(layout, (i + 9 >> 0));
+ prefix = _tmp$54;
+ std = _tmp$55;
+ suffix = _tmp$56;
+ return [prefix, std, suffix];
+ }
+ if (layout.length >= (i + 5 >> 0) && $substring(layout, i, (i + 5 >> 0)) === "-0700") {
+ _tmp$57 = $substring(layout, 0, i);
+ _tmp$58 = 27;
+ _tmp$59 = $substring(layout, (i + 5 >> 0));
+ prefix = _tmp$57;
+ std = _tmp$58;
+ suffix = _tmp$59;
+ return [prefix, std, suffix];
+ }
+ if (layout.length >= (i + 6 >> 0) && $substring(layout, i, (i + 6 >> 0)) === "-07:00") {
+ _tmp$60 = $substring(layout, 0, i);
+ _tmp$61 = 30;
+ _tmp$62 = $substring(layout, (i + 6 >> 0));
+ prefix = _tmp$60;
+ std = _tmp$61;
+ suffix = _tmp$62;
+ return [prefix, std, suffix];
+ }
+ if (layout.length >= (i + 3 >> 0) && $substring(layout, i, (i + 3 >> 0)) === "-07") {
+ _tmp$63 = $substring(layout, 0, i);
+ _tmp$64 = 29;
+ _tmp$65 = $substring(layout, (i + 3 >> 0));
+ prefix = _tmp$63;
+ std = _tmp$64;
+ suffix = _tmp$65;
+ return [prefix, std, suffix];
+ }
+ } else if (_1 === (90)) {
+ if (layout.length >= (i + 7 >> 0) && $substring(layout, i, (i + 7 >> 0)) === "Z070000") {
+ _tmp$66 = $substring(layout, 0, i);
+ _tmp$67 = 23;
+ _tmp$68 = $substring(layout, (i + 7 >> 0));
+ prefix = _tmp$66;
+ std = _tmp$67;
+ suffix = _tmp$68;
+ return [prefix, std, suffix];
+ }
+ if (layout.length >= (i + 9 >> 0) && $substring(layout, i, (i + 9 >> 0)) === "Z07:00:00") {
+ _tmp$69 = $substring(layout, 0, i);
+ _tmp$70 = 26;
+ _tmp$71 = $substring(layout, (i + 9 >> 0));
+ prefix = _tmp$69;
+ std = _tmp$70;
+ suffix = _tmp$71;
+ return [prefix, std, suffix];
+ }
+ if (layout.length >= (i + 5 >> 0) && $substring(layout, i, (i + 5 >> 0)) === "Z0700") {
+ _tmp$72 = $substring(layout, 0, i);
+ _tmp$73 = 22;
+ _tmp$74 = $substring(layout, (i + 5 >> 0));
+ prefix = _tmp$72;
+ std = _tmp$73;
+ suffix = _tmp$74;
+ return [prefix, std, suffix];
+ }
+ if (layout.length >= (i + 6 >> 0) && $substring(layout, i, (i + 6 >> 0)) === "Z07:00") {
+ _tmp$75 = $substring(layout, 0, i);
+ _tmp$76 = 25;
+ _tmp$77 = $substring(layout, (i + 6 >> 0));
+ prefix = _tmp$75;
+ std = _tmp$76;
+ suffix = _tmp$77;
+ return [prefix, std, suffix];
+ }
+ if (layout.length >= (i + 3 >> 0) && $substring(layout, i, (i + 3 >> 0)) === "Z07") {
+ _tmp$78 = $substring(layout, 0, i);
+ _tmp$79 = 24;
+ _tmp$80 = $substring(layout, (i + 3 >> 0));
+ prefix = _tmp$78;
+ std = _tmp$79;
+ suffix = _tmp$80;
+ return [prefix, std, suffix];
+ }
+ } else if (_1 === (46)) {
+ if ((i + 1 >> 0) < layout.length && ((layout.charCodeAt((i + 1 >> 0)) === 48) || (layout.charCodeAt((i + 1 >> 0)) === 57))) {
+ ch = layout.charCodeAt((i + 1 >> 0));
+ j = i + 1 >> 0;
+ while (true) {
+ if (!(j < layout.length && (layout.charCodeAt(j) === ch))) { break; }
+ j = j + (1) >> 0;
+ }
+ if (!isDigit(layout, j)) {
+ std$1 = 32;
+ if (layout.charCodeAt((i + 1 >> 0)) === 57) {
+ std$1 = 33;
+ }
+ std$1 = std$1 | ((((j - ((i + 1 >> 0)) >> 0)) << 16 >> 0));
+ _tmp$81 = $substring(layout, 0, i);
+ _tmp$82 = std$1;
+ _tmp$83 = $substring(layout, j);
+ prefix = _tmp$81;
+ std = _tmp$82;
+ suffix = _tmp$83;
+ return [prefix, std, suffix];
+ }
+ }
+ }
+ i = i + (1) >> 0;
+ }
+ _tmp$84 = layout;
+ _tmp$85 = 0;
+ _tmp$86 = "";
+ prefix = _tmp$84;
+ std = _tmp$85;
+ suffix = _tmp$86;
+ return [prefix, std, suffix];
+ };
+ match = function(s1, s2) {
+ var $ptr, c1, c2, i, s1, s2;
+ i = 0;
+ while (true) {
+ if (!(i < s1.length)) { break; }
+ c1 = s1.charCodeAt(i);
+ c2 = s2.charCodeAt(i);
+ if (!((c1 === c2))) {
+ c1 = (c1 | (32)) >>> 0;
+ c2 = (c2 | (32)) >>> 0;
+ if (!((c1 === c2)) || c1 < 97 || c1 > 122) {
+ return false;
+ }
+ }
+ i = i + (1) >> 0;
+ }
+ return true;
+ };
+ lookup = function(tab, val) {
+ var $ptr, _i, _ref, i, tab, v, val;
+ _ref = tab;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ v = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (val.length >= v.length && match($substring(val, 0, v.length), v)) {
+ return [i, $substring(val, v.length), $ifaceNil];
+ }
+ _i++;
+ }
+ return [-1, val, errBad];
+ };
+ appendInt = function(b, x, width) {
+ var $ptr, _q, b, buf, i, q, u, w, width, x;
+ u = ((x >>> 0));
+ if (x < 0) {
+ b = $append(b, 45);
+ u = ((-x >>> 0));
+ }
+ buf = arrayType.zero();
+ i = 20;
+ while (true) {
+ if (!(u >= 10)) { break; }
+ i = i - (1) >> 0;
+ q = (_q = u / 10, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero"));
+ ((i < 0 || i >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[i] = ((((48 + u >>> 0) - (q * 10 >>> 0) >>> 0) << 24 >>> 24)));
+ u = q;
+ }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[i] = (((48 + u >>> 0) << 24 >>> 24)));
+ w = 20 - i >> 0;
+ while (true) {
+ if (!(w < width)) { break; }
+ b = $append(b, 48);
+ w = w + (1) >> 0;
+ }
+ return $appendSlice(b, $subslice(new sliceType$3(buf), i));
+ };
+ atoi = function(s) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tuple$1, err, neg, q, rem, s, x;
+ x = 0;
+ err = $ifaceNil;
+ neg = false;
+ if (!(s === "") && ((s.charCodeAt(0) === 45) || (s.charCodeAt(0) === 43))) {
+ neg = s.charCodeAt(0) === 45;
+ s = $substring(s, 1);
+ }
+ _tuple$1 = leadingInt(s);
+ q = _tuple$1[0];
+ rem = _tuple$1[1];
+ err = _tuple$1[2];
+ x = (((q.$low + ((q.$high >> 31) * 4294967296)) >> 0));
+ if (!($interfaceIsEqual(err, $ifaceNil)) || !(rem === "")) {
+ _tmp = 0;
+ _tmp$1 = atoiError;
+ x = _tmp;
+ err = _tmp$1;
+ return [x, err];
+ }
+ if (neg) {
+ x = -x;
+ }
+ _tmp$2 = x;
+ _tmp$3 = $ifaceNil;
+ x = _tmp$2;
+ err = _tmp$3;
+ return [x, err];
+ };
+ formatNano = function(b, nanosec, n, trim) {
+ var $ptr, _q, _r$1, b, buf, n, nanosec, start, trim, u, x;
+ u = nanosec;
+ buf = arrayType$1.zero();
+ start = 9;
+ while (true) {
+ if (!(start > 0)) { break; }
+ start = start - (1) >> 0;
+ ((start < 0 || start >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[start] = ((((_r$1 = u % 10, _r$1 === _r$1 ? _r$1 : $throwRuntimeError("integer divide by zero")) + 48 >>> 0) << 24 >>> 24)));
+ u = (_q = u / (10), (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero"));
+ }
+ if (n > 9) {
+ n = 9;
+ }
+ if (trim) {
+ while (true) {
+ if (!(n > 0 && ((x = n - 1 >> 0, ((x < 0 || x >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[x])) === 48))) { break; }
+ n = n - (1) >> 0;
+ }
+ if (n === 0) {
+ return b;
+ }
+ }
+ b = $append(b, 46);
+ return $appendSlice(b, $subslice(new sliceType$3(buf), 0, n));
+ };
+ Time.ptr.prototype.String = function() {
+ var $ptr, _r$1, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ _r$1 = $clone(t, Time).Format("2006-01-02 15:04:05.999999999 -0700 MST"); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.String }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.String = function() { return this.$val.String(); };
+ Time.ptr.prototype.Format = function(layout) {
+ var $ptr, _r$1, b, buf, layout, max, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; b = $f.b; buf = $f.buf; layout = $f.layout; max = $f.max; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ b = sliceType$3.nil;
+ max = layout.length + 10 >> 0;
+ if (max < 64) {
+ buf = arrayType$2.zero();
+ b = $subslice(new sliceType$3(buf), 0, 0);
+ } else {
+ b = $makeSlice(sliceType$3, 0, max);
+ }
+ _r$1 = $clone(t, Time).AppendFormat(b, layout); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ b = _r$1;
+ $s = -1; return ($bytesToString(b));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.Format }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f.b = b; $f.buf = buf; $f.layout = layout; $f.max = max; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.Format = function(layout) { return this.$val.Format(layout); };
+ Time.ptr.prototype.AppendFormat = function(b, layout) {
+ var $ptr, _1, _q, _q$1, _q$2, _q$3, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _tuple$1, _tuple$2, _tuple$3, _tuple$4, abs, absoffset, b, day, hour, hr, hr$1, layout, m, min, month, name, offset, prefix, s, sec, std, suffix, t, y, year, zone$1, zone$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _q = $f._q; _q$1 = $f._q$1; _q$2 = $f._q$2; _q$3 = $f._q$3; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; abs = $f.abs; absoffset = $f.absoffset; b = $f.b; day = $f.day; hour = $f.hour; hr = $f.hr; hr$1 = $f.hr$1; layout = $f.layout; m = $f.m; min = $f.min; month = $f.month; name = $f.name; offset = $f.offset; prefix = $f.prefix; s = $f.s; sec = $f.sec; std = $f.std; suffix = $f.suffix; t = $f.t; y = $f.y; year = $f.year; zone$1 = $f.zone$1; zone$2 = $f.zone$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ _r$1 = $clone(t, Time).locabs(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ name = _tuple$1[0];
+ offset = _tuple$1[1];
+ abs = _tuple$1[2];
+ year = -1;
+ month = 0;
+ day = 0;
+ hour = -1;
+ min = 0;
+ sec = 0;
+ while (true) {
+ if (!(!(layout === ""))) { break; }
+ _tuple$2 = nextStdChunk(layout);
+ prefix = _tuple$2[0];
+ std = _tuple$2[1];
+ suffix = _tuple$2[2];
+ if (!(prefix === "")) {
+ b = $appendSlice(b, prefix);
+ }
+ if (std === 0) {
+ break;
+ }
+ layout = suffix;
+ if (year < 0 && !(((std & 256) === 0))) {
+ _tuple$3 = absDate(abs, true);
+ year = _tuple$3[0];
+ month = _tuple$3[1];
+ day = _tuple$3[2];
+ }
+ if (hour < 0 && !(((std & 512) === 0))) {
+ _tuple$4 = absClock(abs);
+ hour = _tuple$4[0];
+ min = _tuple$4[1];
+ sec = _tuple$4[2];
+ }
+ switch (0) { default:
+ _1 = std & 65535;
+ if (_1 === (274)) {
+ y = year;
+ if (y < 0) {
+ y = -y;
+ }
+ b = appendInt(b, (_r$2 = y % 100, _r$2 === _r$2 ? _r$2 : $throwRuntimeError("integer divide by zero")), 2);
+ } else if (_1 === (273)) {
+ b = appendInt(b, year, 4);
+ } else if (_1 === (258)) {
+ b = $appendSlice(b, $substring(new Month(month).String(), 0, 3));
+ } else if (_1 === (257)) {
+ m = new Month(month).String();
+ b = $appendSlice(b, m);
+ } else if (_1 === (259)) {
+ b = appendInt(b, ((month >> 0)), 0);
+ } else if (_1 === (260)) {
+ b = appendInt(b, ((month >> 0)), 2);
+ } else if (_1 === (262)) {
+ b = $appendSlice(b, $substring(new Weekday(absWeekday(abs)).String(), 0, 3));
+ } else if (_1 === (261)) {
+ s = new Weekday(absWeekday(abs)).String();
+ b = $appendSlice(b, s);
+ } else if (_1 === (263)) {
+ b = appendInt(b, day, 0);
+ } else if (_1 === (264)) {
+ if (day < 10) {
+ b = $append(b, 32);
+ }
+ b = appendInt(b, day, 0);
+ } else if (_1 === (265)) {
+ b = appendInt(b, day, 2);
+ } else if (_1 === (522)) {
+ b = appendInt(b, hour, 2);
+ } else if (_1 === (523)) {
+ hr = (_r$3 = hour % 12, _r$3 === _r$3 ? _r$3 : $throwRuntimeError("integer divide by zero"));
+ if (hr === 0) {
+ hr = 12;
+ }
+ b = appendInt(b, hr, 0);
+ } else if (_1 === (524)) {
+ hr$1 = (_r$4 = hour % 12, _r$4 === _r$4 ? _r$4 : $throwRuntimeError("integer divide by zero"));
+ if (hr$1 === 0) {
+ hr$1 = 12;
+ }
+ b = appendInt(b, hr$1, 2);
+ } else if (_1 === (525)) {
+ b = appendInt(b, min, 0);
+ } else if (_1 === (526)) {
+ b = appendInt(b, min, 2);
+ } else if (_1 === (527)) {
+ b = appendInt(b, sec, 0);
+ } else if (_1 === (528)) {
+ b = appendInt(b, sec, 2);
+ } else if (_1 === (531)) {
+ if (hour >= 12) {
+ b = $appendSlice(b, "PM");
+ } else {
+ b = $appendSlice(b, "AM");
+ }
+ } else if (_1 === (532)) {
+ if (hour >= 12) {
+ b = $appendSlice(b, "pm");
+ } else {
+ b = $appendSlice(b, "am");
+ }
+ } else if ((_1 === (22)) || (_1 === (25)) || (_1 === (23)) || (_1 === (24)) || (_1 === (26)) || (_1 === (27)) || (_1 === (30)) || (_1 === (28)) || (_1 === (29)) || (_1 === (31))) {
+ if ((offset === 0) && ((std === 22) || (std === 25) || (std === 23) || (std === 24) || (std === 26))) {
+ b = $append(b, 90);
+ break;
+ }
+ zone$1 = (_q = offset / 60, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ absoffset = offset;
+ if (zone$1 < 0) {
+ b = $append(b, 45);
+ zone$1 = -zone$1;
+ absoffset = -absoffset;
+ } else {
+ b = $append(b, 43);
+ }
+ b = appendInt(b, (_q$1 = zone$1 / 60, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero")), 2);
+ if ((std === 25) || (std === 30) || (std === 26) || (std === 31)) {
+ b = $append(b, 58);
+ }
+ if (!((std === 29)) && !((std === 24))) {
+ b = appendInt(b, (_r$5 = zone$1 % 60, _r$5 === _r$5 ? _r$5 : $throwRuntimeError("integer divide by zero")), 2);
+ }
+ if ((std === 23) || (std === 28) || (std === 31) || (std === 26)) {
+ if ((std === 31) || (std === 26)) {
+ b = $append(b, 58);
+ }
+ b = appendInt(b, (_r$6 = absoffset % 60, _r$6 === _r$6 ? _r$6 : $throwRuntimeError("integer divide by zero")), 2);
+ }
+ } else if (_1 === (21)) {
+ if (!(name === "")) {
+ b = $appendSlice(b, name);
+ break;
+ }
+ zone$2 = (_q$2 = offset / 60, (_q$2 === _q$2 && _q$2 !== 1/0 && _q$2 !== -1/0) ? _q$2 >> 0 : $throwRuntimeError("integer divide by zero"));
+ if (zone$2 < 0) {
+ b = $append(b, 45);
+ zone$2 = -zone$2;
+ } else {
+ b = $append(b, 43);
+ }
+ b = appendInt(b, (_q$3 = zone$2 / 60, (_q$3 === _q$3 && _q$3 !== 1/0 && _q$3 !== -1/0) ? _q$3 >> 0 : $throwRuntimeError("integer divide by zero")), 2);
+ b = appendInt(b, (_r$7 = zone$2 % 60, _r$7 === _r$7 ? _r$7 : $throwRuntimeError("integer divide by zero")), 2);
+ } else if ((_1 === (32)) || (_1 === (33))) {
+ b = formatNano(b, (($clone(t, Time).Nanosecond() >>> 0)), std >> 16 >> 0, (std & 65535) === 33);
+ }
+ }
+ }
+ $s = -1; return b;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.AppendFormat }; } $f.$ptr = $ptr; $f._1 = _1; $f._q = _q; $f._q$1 = _q$1; $f._q$2 = _q$2; $f._q$3 = _q$3; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f.abs = abs; $f.absoffset = absoffset; $f.b = b; $f.day = day; $f.hour = hour; $f.hr = hr; $f.hr$1 = hr$1; $f.layout = layout; $f.m = m; $f.min = min; $f.month = month; $f.name = name; $f.offset = offset; $f.prefix = prefix; $f.s = s; $f.sec = sec; $f.std = std; $f.suffix = suffix; $f.t = t; $f.y = y; $f.year = year; $f.zone$1 = zone$1; $f.zone$2 = zone$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.AppendFormat = function(b, layout) { return this.$val.AppendFormat(b, layout); };
+ quote = function(s) {
+ var $ptr, s;
+ return "\"" + s + "\"";
+ };
+ ParseError.ptr.prototype.Error = function() {
+ var $ptr, e;
+ e = this;
+ if (e.Message === "") {
+ return "parsing time " + quote(e.Value) + " as " + quote(e.Layout) + ": cannot parse " + quote(e.ValueElem) + " as " + quote(e.LayoutElem);
+ }
+ return "parsing time " + quote(e.Value) + e.Message;
+ };
+ ParseError.prototype.Error = function() { return this.$val.Error(); };
+ isDigit = function(s, i) {
+ var $ptr, c, i, s;
+ if (s.length <= i) {
+ return false;
+ }
+ c = s.charCodeAt(i);
+ return 48 <= c && c <= 57;
+ };
+ getnum = function(s, fixed) {
+ var $ptr, fixed, s;
+ if (!isDigit(s, 0)) {
+ return [0, s, errBad];
+ }
+ if (!isDigit(s, 1)) {
+ if (fixed) {
+ return [0, s, errBad];
+ }
+ return [(((s.charCodeAt(0) - 48 << 24 >>> 24) >> 0)), $substring(s, 1), $ifaceNil];
+ }
+ return [($imul((((s.charCodeAt(0) - 48 << 24 >>> 24) >> 0)), 10)) + (((s.charCodeAt(1) - 48 << 24 >>> 24) >> 0)) >> 0, $substring(s, 2), $ifaceNil];
+ };
+ cutspace = function(s) {
+ var $ptr, s;
+ while (true) {
+ if (!(s.length > 0 && (s.charCodeAt(0) === 32))) { break; }
+ s = $substring(s, 1);
+ }
+ return s;
+ };
+ skip = function(value, prefix) {
+ var $ptr, prefix, value;
+ while (true) {
+ if (!(prefix.length > 0)) { break; }
+ if (prefix.charCodeAt(0) === 32) {
+ if (value.length > 0 && !((value.charCodeAt(0) === 32))) {
+ return [value, errBad];
+ }
+ prefix = cutspace(prefix);
+ value = cutspace(value);
+ continue;
+ }
+ if ((value.length === 0) || !((value.charCodeAt(0) === prefix.charCodeAt(0)))) {
+ return [value, errBad];
+ }
+ prefix = $substring(prefix, 1);
+ value = $substring(value, 1);
+ }
+ return [value, $ifaceNil];
+ };
+ Parse = function(layout, value) {
+ var $ptr, _r$1, layout, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; layout = $f.layout; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$1 = parse(layout, value, $pkg.UTC, $pkg.Local); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Parse }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f.layout = layout; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Parse = Parse;
+ parse = function(layout, value, defaultLocation, local) {
+ var $ptr, _1, _2, _3, _4, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$18, _tmp$19, _tmp$2, _tmp$20, _tmp$21, _tmp$22, _tmp$23, _tmp$24, _tmp$25, _tmp$26, _tmp$27, _tmp$28, _tmp$29, _tmp$3, _tmp$30, _tmp$31, _tmp$32, _tmp$33, _tmp$34, _tmp$35, _tmp$36, _tmp$37, _tmp$38, _tmp$39, _tmp$4, _tmp$40, _tmp$41, _tmp$42, _tmp$43, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple$1, _tuple$10, _tuple$11, _tuple$12, _tuple$13, _tuple$14, _tuple$15, _tuple$16, _tuple$17, _tuple$18, _tuple$19, _tuple$2, _tuple$20, _tuple$21, _tuple$22, _tuple$23, _tuple$24, _tuple$25, _tuple$3, _tuple$4, _tuple$5, _tuple$6, _tuple$7, _tuple$8, _tuple$9, alayout, amSet, avalue, day, defaultLocation, err, hour, hour$1, hr, i, layout, local, min, min$1, mm, month, n, n$1, name, ndigit, nsec, offset, offset$1, ok, ok$1, p, pmSet, prefix, rangeErrString, sec, seconds, sign, ss, std, stdstr, suffix, t, t$1, value, x, x$1, x$2, x$3, x$4, x$5, year, z, zoneName, zoneOffset, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _2 = $f._2; _3 = $f._3; _4 = $f._4; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$10 = $f._tmp$10; _tmp$11 = $f._tmp$11; _tmp$12 = $f._tmp$12; _tmp$13 = $f._tmp$13; _tmp$14 = $f._tmp$14; _tmp$15 = $f._tmp$15; _tmp$16 = $f._tmp$16; _tmp$17 = $f._tmp$17; _tmp$18 = $f._tmp$18; _tmp$19 = $f._tmp$19; _tmp$2 = $f._tmp$2; _tmp$20 = $f._tmp$20; _tmp$21 = $f._tmp$21; _tmp$22 = $f._tmp$22; _tmp$23 = $f._tmp$23; _tmp$24 = $f._tmp$24; _tmp$25 = $f._tmp$25; _tmp$26 = $f._tmp$26; _tmp$27 = $f._tmp$27; _tmp$28 = $f._tmp$28; _tmp$29 = $f._tmp$29; _tmp$3 = $f._tmp$3; _tmp$30 = $f._tmp$30; _tmp$31 = $f._tmp$31; _tmp$32 = $f._tmp$32; _tmp$33 = $f._tmp$33; _tmp$34 = $f._tmp$34; _tmp$35 = $f._tmp$35; _tmp$36 = $f._tmp$36; _tmp$37 = $f._tmp$37; _tmp$38 = $f._tmp$38; _tmp$39 = $f._tmp$39; _tmp$4 = $f._tmp$4; _tmp$40 = $f._tmp$40; _tmp$41 = $f._tmp$41; _tmp$42 = $f._tmp$42; _tmp$43 = $f._tmp$43; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tmp$7 = $f._tmp$7; _tmp$8 = $f._tmp$8; _tmp$9 = $f._tmp$9; _tuple$1 = $f._tuple$1; _tuple$10 = $f._tuple$10; _tuple$11 = $f._tuple$11; _tuple$12 = $f._tuple$12; _tuple$13 = $f._tuple$13; _tuple$14 = $f._tuple$14; _tuple$15 = $f._tuple$15; _tuple$16 = $f._tuple$16; _tuple$17 = $f._tuple$17; _tuple$18 = $f._tuple$18; _tuple$19 = $f._tuple$19; _tuple$2 = $f._tuple$2; _tuple$20 = $f._tuple$20; _tuple$21 = $f._tuple$21; _tuple$22 = $f._tuple$22; _tuple$23 = $f._tuple$23; _tuple$24 = $f._tuple$24; _tuple$25 = $f._tuple$25; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; _tuple$5 = $f._tuple$5; _tuple$6 = $f._tuple$6; _tuple$7 = $f._tuple$7; _tuple$8 = $f._tuple$8; _tuple$9 = $f._tuple$9; alayout = $f.alayout; amSet = $f.amSet; avalue = $f.avalue; day = $f.day; defaultLocation = $f.defaultLocation; err = $f.err; hour = $f.hour; hour$1 = $f.hour$1; hr = $f.hr; i = $f.i; layout = $f.layout; local = $f.local; min = $f.min; min$1 = $f.min$1; mm = $f.mm; month = $f.month; n = $f.n; n$1 = $f.n$1; name = $f.name; ndigit = $f.ndigit; nsec = $f.nsec; offset = $f.offset; offset$1 = $f.offset$1; ok = $f.ok; ok$1 = $f.ok$1; p = $f.p; pmSet = $f.pmSet; prefix = $f.prefix; rangeErrString = $f.rangeErrString; sec = $f.sec; seconds = $f.seconds; sign = $f.sign; ss = $f.ss; std = $f.std; stdstr = $f.stdstr; suffix = $f.suffix; t = $f.t; t$1 = $f.t$1; value = $f.value; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; year = $f.year; z = $f.z; zoneName = $f.zoneName; zoneOffset = $f.zoneOffset; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _tmp = layout;
+ _tmp$1 = value;
+ alayout = _tmp;
+ avalue = _tmp$1;
+ rangeErrString = "";
+ amSet = false;
+ pmSet = false;
+ year = 0;
+ month = 1;
+ day = 1;
+ hour = 0;
+ min = 0;
+ sec = 0;
+ nsec = 0;
+ z = ptrType$1.nil;
+ zoneOffset = -1;
+ zoneName = "";
+ while (true) {
+ err = $ifaceNil;
+ _tuple$1 = nextStdChunk(layout);
+ prefix = _tuple$1[0];
+ std = _tuple$1[1];
+ suffix = _tuple$1[2];
+ stdstr = $substring(layout, prefix.length, (layout.length - suffix.length >> 0));
+ _tuple$2 = skip(value, prefix);
+ value = _tuple$2[0];
+ err = _tuple$2[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [new Time.ptr(new $Int64(0, 0), 0, ptrType$1.nil), new ParseError.ptr(alayout, avalue, prefix, value, "")];
+ }
+ if (std === 0) {
+ if (!((value.length === 0))) {
+ $s = -1; return [new Time.ptr(new $Int64(0, 0), 0, ptrType$1.nil), new ParseError.ptr(alayout, avalue, "", value, ": extra text: " + value)];
+ }
+ break;
+ }
+ layout = suffix;
+ p = "";
+ switch (0) { default:
+ _1 = std & 65535;
+ if (_1 === (274)) {
+ if (value.length < 2) {
+ err = errBad;
+ break;
+ }
+ _tmp$2 = $substring(value, 0, 2);
+ _tmp$3 = $substring(value, 2);
+ p = _tmp$2;
+ value = _tmp$3;
+ _tuple$3 = atoi(p);
+ year = _tuple$3[0];
+ err = _tuple$3[1];
+ if (year >= 69) {
+ year = year + (1900) >> 0;
+ } else {
+ year = year + (2000) >> 0;
+ }
+ } else if (_1 === (273)) {
+ if (value.length < 4 || !isDigit(value, 0)) {
+ err = errBad;
+ break;
+ }
+ _tmp$4 = $substring(value, 0, 4);
+ _tmp$5 = $substring(value, 4);
+ p = _tmp$4;
+ value = _tmp$5;
+ _tuple$4 = atoi(p);
+ year = _tuple$4[0];
+ err = _tuple$4[1];
+ } else if (_1 === (258)) {
+ _tuple$5 = lookup(shortMonthNames, value);
+ month = _tuple$5[0];
+ value = _tuple$5[1];
+ err = _tuple$5[2];
+ } else if (_1 === (257)) {
+ _tuple$6 = lookup(longMonthNames, value);
+ month = _tuple$6[0];
+ value = _tuple$6[1];
+ err = _tuple$6[2];
+ } else if ((_1 === (259)) || (_1 === (260))) {
+ _tuple$7 = getnum(value, std === 260);
+ month = _tuple$7[0];
+ value = _tuple$7[1];
+ err = _tuple$7[2];
+ if (month <= 0 || 12 < month) {
+ rangeErrString = "month";
+ }
+ } else if (_1 === (262)) {
+ _tuple$8 = lookup(shortDayNames, value);
+ value = _tuple$8[1];
+ err = _tuple$8[2];
+ } else if (_1 === (261)) {
+ _tuple$9 = lookup(longDayNames, value);
+ value = _tuple$9[1];
+ err = _tuple$9[2];
+ } else if ((_1 === (263)) || (_1 === (264)) || (_1 === (265))) {
+ if ((std === 264) && value.length > 0 && (value.charCodeAt(0) === 32)) {
+ value = $substring(value, 1);
+ }
+ _tuple$10 = getnum(value, std === 265);
+ day = _tuple$10[0];
+ value = _tuple$10[1];
+ err = _tuple$10[2];
+ if (day < 0) {
+ rangeErrString = "day";
+ }
+ } else if (_1 === (522)) {
+ _tuple$11 = getnum(value, false);
+ hour = _tuple$11[0];
+ value = _tuple$11[1];
+ err = _tuple$11[2];
+ if (hour < 0 || 24 <= hour) {
+ rangeErrString = "hour";
+ }
+ } else if ((_1 === (523)) || (_1 === (524))) {
+ _tuple$12 = getnum(value, std === 524);
+ hour = _tuple$12[0];
+ value = _tuple$12[1];
+ err = _tuple$12[2];
+ if (hour < 0 || 12 < hour) {
+ rangeErrString = "hour";
+ }
+ } else if ((_1 === (525)) || (_1 === (526))) {
+ _tuple$13 = getnum(value, std === 526);
+ min = _tuple$13[0];
+ value = _tuple$13[1];
+ err = _tuple$13[2];
+ if (min < 0 || 60 <= min) {
+ rangeErrString = "minute";
+ }
+ } else if ((_1 === (527)) || (_1 === (528))) {
+ _tuple$14 = getnum(value, std === 528);
+ sec = _tuple$14[0];
+ value = _tuple$14[1];
+ err = _tuple$14[2];
+ if (sec < 0 || 60 <= sec) {
+ rangeErrString = "second";
+ break;
+ }
+ if (value.length >= 2 && (value.charCodeAt(0) === 46) && isDigit(value, 1)) {
+ _tuple$15 = nextStdChunk(layout);
+ std = _tuple$15[1];
+ std = std & (65535);
+ if ((std === 32) || (std === 33)) {
+ break;
+ }
+ n = 2;
+ while (true) {
+ if (!(n < value.length && isDigit(value, n))) { break; }
+ n = n + (1) >> 0;
+ }
+ _tuple$16 = parseNanoseconds(value, n);
+ nsec = _tuple$16[0];
+ rangeErrString = _tuple$16[1];
+ err = _tuple$16[2];
+ value = $substring(value, n);
+ }
+ } else if (_1 === (531)) {
+ if (value.length < 2) {
+ err = errBad;
+ break;
+ }
+ _tmp$6 = $substring(value, 0, 2);
+ _tmp$7 = $substring(value, 2);
+ p = _tmp$6;
+ value = _tmp$7;
+ _2 = p;
+ if (_2 === ("PM")) {
+ pmSet = true;
+ } else if (_2 === ("AM")) {
+ amSet = true;
+ } else {
+ err = errBad;
+ }
+ } else if (_1 === (532)) {
+ if (value.length < 2) {
+ err = errBad;
+ break;
+ }
+ _tmp$8 = $substring(value, 0, 2);
+ _tmp$9 = $substring(value, 2);
+ p = _tmp$8;
+ value = _tmp$9;
+ _3 = p;
+ if (_3 === ("pm")) {
+ pmSet = true;
+ } else if (_3 === ("am")) {
+ amSet = true;
+ } else {
+ err = errBad;
+ }
+ } else if ((_1 === (22)) || (_1 === (25)) || (_1 === (23)) || (_1 === (24)) || (_1 === (26)) || (_1 === (27)) || (_1 === (29)) || (_1 === (30)) || (_1 === (28)) || (_1 === (31))) {
+ if (((std === 22) || (std === 24) || (std === 25)) && value.length >= 1 && (value.charCodeAt(0) === 90)) {
+ value = $substring(value, 1);
+ z = $pkg.UTC;
+ break;
+ }
+ _tmp$10 = "";
+ _tmp$11 = "";
+ _tmp$12 = "";
+ _tmp$13 = "";
+ sign = _tmp$10;
+ hour$1 = _tmp$11;
+ min$1 = _tmp$12;
+ seconds = _tmp$13;
+ if ((std === 25) || (std === 30)) {
+ if (value.length < 6) {
+ err = errBad;
+ break;
+ }
+ if (!((value.charCodeAt(3) === 58))) {
+ err = errBad;
+ break;
+ }
+ _tmp$14 = $substring(value, 0, 1);
+ _tmp$15 = $substring(value, 1, 3);
+ _tmp$16 = $substring(value, 4, 6);
+ _tmp$17 = "00";
+ _tmp$18 = $substring(value, 6);
+ sign = _tmp$14;
+ hour$1 = _tmp$15;
+ min$1 = _tmp$16;
+ seconds = _tmp$17;
+ value = _tmp$18;
+ } else if ((std === 29) || (std === 24)) {
+ if (value.length < 3) {
+ err = errBad;
+ break;
+ }
+ _tmp$19 = $substring(value, 0, 1);
+ _tmp$20 = $substring(value, 1, 3);
+ _tmp$21 = "00";
+ _tmp$22 = "00";
+ _tmp$23 = $substring(value, 3);
+ sign = _tmp$19;
+ hour$1 = _tmp$20;
+ min$1 = _tmp$21;
+ seconds = _tmp$22;
+ value = _tmp$23;
+ } else if ((std === 26) || (std === 31)) {
+ if (value.length < 9) {
+ err = errBad;
+ break;
+ }
+ if (!((value.charCodeAt(3) === 58)) || !((value.charCodeAt(6) === 58))) {
+ err = errBad;
+ break;
+ }
+ _tmp$24 = $substring(value, 0, 1);
+ _tmp$25 = $substring(value, 1, 3);
+ _tmp$26 = $substring(value, 4, 6);
+ _tmp$27 = $substring(value, 7, 9);
+ _tmp$28 = $substring(value, 9);
+ sign = _tmp$24;
+ hour$1 = _tmp$25;
+ min$1 = _tmp$26;
+ seconds = _tmp$27;
+ value = _tmp$28;
+ } else if ((std === 23) || (std === 28)) {
+ if (value.length < 7) {
+ err = errBad;
+ break;
+ }
+ _tmp$29 = $substring(value, 0, 1);
+ _tmp$30 = $substring(value, 1, 3);
+ _tmp$31 = $substring(value, 3, 5);
+ _tmp$32 = $substring(value, 5, 7);
+ _tmp$33 = $substring(value, 7);
+ sign = _tmp$29;
+ hour$1 = _tmp$30;
+ min$1 = _tmp$31;
+ seconds = _tmp$32;
+ value = _tmp$33;
+ } else {
+ if (value.length < 5) {
+ err = errBad;
+ break;
+ }
+ _tmp$34 = $substring(value, 0, 1);
+ _tmp$35 = $substring(value, 1, 3);
+ _tmp$36 = $substring(value, 3, 5);
+ _tmp$37 = "00";
+ _tmp$38 = $substring(value, 5);
+ sign = _tmp$34;
+ hour$1 = _tmp$35;
+ min$1 = _tmp$36;
+ seconds = _tmp$37;
+ value = _tmp$38;
+ }
+ _tmp$39 = 0;
+ _tmp$40 = 0;
+ _tmp$41 = 0;
+ hr = _tmp$39;
+ mm = _tmp$40;
+ ss = _tmp$41;
+ _tuple$17 = atoi(hour$1);
+ hr = _tuple$17[0];
+ err = _tuple$17[1];
+ if ($interfaceIsEqual(err, $ifaceNil)) {
+ _tuple$18 = atoi(min$1);
+ mm = _tuple$18[0];
+ err = _tuple$18[1];
+ }
+ if ($interfaceIsEqual(err, $ifaceNil)) {
+ _tuple$19 = atoi(seconds);
+ ss = _tuple$19[0];
+ err = _tuple$19[1];
+ }
+ zoneOffset = ($imul(((($imul(hr, 60)) + mm >> 0)), 60)) + ss >> 0;
+ _4 = sign.charCodeAt(0);
+ if (_4 === (43)) {
+ } else if (_4 === (45)) {
+ zoneOffset = -zoneOffset;
+ } else {
+ err = errBad;
+ }
+ } else if (_1 === (21)) {
+ if (value.length >= 3 && $substring(value, 0, 3) === "UTC") {
+ z = $pkg.UTC;
+ value = $substring(value, 3);
+ break;
+ }
+ _tuple$20 = parseTimeZone(value);
+ n$1 = _tuple$20[0];
+ ok = _tuple$20[1];
+ if (!ok) {
+ err = errBad;
+ break;
+ }
+ _tmp$42 = $substring(value, 0, n$1);
+ _tmp$43 = $substring(value, n$1);
+ zoneName = _tmp$42;
+ value = _tmp$43;
+ } else if (_1 === (32)) {
+ ndigit = 1 + ((std >> 16 >> 0)) >> 0;
+ if (value.length < ndigit) {
+ err = errBad;
+ break;
+ }
+ _tuple$21 = parseNanoseconds(value, ndigit);
+ nsec = _tuple$21[0];
+ rangeErrString = _tuple$21[1];
+ err = _tuple$21[2];
+ value = $substring(value, ndigit);
+ } else if (_1 === (33)) {
+ if (value.length < 2 || !((value.charCodeAt(0) === 46)) || value.charCodeAt(1) < 48 || 57 < value.charCodeAt(1)) {
+ break;
+ }
+ i = 0;
+ while (true) {
+ if (!(i < 9 && (i + 1 >> 0) < value.length && 48 <= value.charCodeAt((i + 1 >> 0)) && value.charCodeAt((i + 1 >> 0)) <= 57)) { break; }
+ i = i + (1) >> 0;
+ }
+ _tuple$22 = parseNanoseconds(value, 1 + i >> 0);
+ nsec = _tuple$22[0];
+ rangeErrString = _tuple$22[1];
+ err = _tuple$22[2];
+ value = $substring(value, (1 + i >> 0));
+ }
+ }
+ if (!(rangeErrString === "")) {
+ $s = -1; return [new Time.ptr(new $Int64(0, 0), 0, ptrType$1.nil), new ParseError.ptr(alayout, avalue, stdstr, value, ": " + rangeErrString + " out of range")];
+ }
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [new Time.ptr(new $Int64(0, 0), 0, ptrType$1.nil), new ParseError.ptr(alayout, avalue, stdstr, value, "")];
+ }
+ }
+ if (pmSet && hour < 12) {
+ hour = hour + (12) >> 0;
+ } else if (amSet && (hour === 12)) {
+ hour = 0;
+ }
+ if (day < 1 || day > daysIn(((month >> 0)), year)) {
+ $s = -1; return [new Time.ptr(new $Int64(0, 0), 0, ptrType$1.nil), new ParseError.ptr(alayout, avalue, "", value, ": day out of range")];
+ }
+ /* */ if (!(z === ptrType$1.nil)) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!(z === ptrType$1.nil)) { */ case 1:
+ _r$1 = Date(year, ((month >> 0)), day, hour, min, sec, nsec, z); /* */ $s = 3; case 3: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return [_r$1, $ifaceNil];
+ /* } */ case 2:
+ /* */ if (!((zoneOffset === -1))) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (!((zoneOffset === -1))) { */ case 4:
+ _r$2 = Date(year, ((month >> 0)), day, hour, min, sec, nsec, $pkg.UTC); /* */ $s = 6; case 6: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ t = $clone(_r$2, Time);
+ t.sec = (x = t.sec, x$1 = (new $Int64(0, zoneOffset)), new $Int64(x.$high - x$1.$high, x.$low - x$1.$low));
+ _r$3 = local.lookup((x$2 = t.sec, new $Int64(x$2.$high + -15, x$2.$low + 2288912640))); /* */ $s = 7; case 7: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _tuple$23 = _r$3;
+ name = _tuple$23[0];
+ offset = _tuple$23[1];
+ if ((offset === zoneOffset) && (zoneName === "" || name === zoneName)) {
+ t.setLoc(local);
+ $s = -1; return [t, $ifaceNil];
+ }
+ t.setLoc(FixedZone(zoneName, zoneOffset));
+ $s = -1; return [t, $ifaceNil];
+ /* } */ case 5:
+ /* */ if (!(zoneName === "")) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if (!(zoneName === "")) { */ case 8:
+ _r$4 = Date(year, ((month >> 0)), day, hour, min, sec, nsec, $pkg.UTC); /* */ $s = 10; case 10: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ t$1 = $clone(_r$4, Time);
+ _r$5 = local.lookupName(zoneName, (x$3 = t$1.sec, new $Int64(x$3.$high + -15, x$3.$low + 2288912640))); /* */ $s = 11; case 11: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _tuple$24 = _r$5;
+ offset$1 = _tuple$24[0];
+ ok$1 = _tuple$24[2];
+ if (ok$1) {
+ t$1.sec = (x$4 = t$1.sec, x$5 = (new $Int64(0, offset$1)), new $Int64(x$4.$high - x$5.$high, x$4.$low - x$5.$low));
+ t$1.setLoc(local);
+ $s = -1; return [t$1, $ifaceNil];
+ }
+ if (zoneName.length > 3 && $substring(zoneName, 0, 3) === "GMT") {
+ _tuple$25 = atoi($substring(zoneName, 3));
+ offset$1 = _tuple$25[0];
+ offset$1 = $imul(offset$1, (3600));
+ }
+ t$1.setLoc(FixedZone(zoneName, offset$1));
+ $s = -1; return [t$1, $ifaceNil];
+ /* } */ case 9:
+ _r$6 = Date(year, ((month >> 0)), day, hour, min, sec, nsec, defaultLocation); /* */ $s = 12; case 12: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return [_r$6, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: parse }; } $f.$ptr = $ptr; $f._1 = _1; $f._2 = _2; $f._3 = _3; $f._4 = _4; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$10 = _tmp$10; $f._tmp$11 = _tmp$11; $f._tmp$12 = _tmp$12; $f._tmp$13 = _tmp$13; $f._tmp$14 = _tmp$14; $f._tmp$15 = _tmp$15; $f._tmp$16 = _tmp$16; $f._tmp$17 = _tmp$17; $f._tmp$18 = _tmp$18; $f._tmp$19 = _tmp$19; $f._tmp$2 = _tmp$2; $f._tmp$20 = _tmp$20; $f._tmp$21 = _tmp$21; $f._tmp$22 = _tmp$22; $f._tmp$23 = _tmp$23; $f._tmp$24 = _tmp$24; $f._tmp$25 = _tmp$25; $f._tmp$26 = _tmp$26; $f._tmp$27 = _tmp$27; $f._tmp$28 = _tmp$28; $f._tmp$29 = _tmp$29; $f._tmp$3 = _tmp$3; $f._tmp$30 = _tmp$30; $f._tmp$31 = _tmp$31; $f._tmp$32 = _tmp$32; $f._tmp$33 = _tmp$33; $f._tmp$34 = _tmp$34; $f._tmp$35 = _tmp$35; $f._tmp$36 = _tmp$36; $f._tmp$37 = _tmp$37; $f._tmp$38 = _tmp$38; $f._tmp$39 = _tmp$39; $f._tmp$4 = _tmp$4; $f._tmp$40 = _tmp$40; $f._tmp$41 = _tmp$41; $f._tmp$42 = _tmp$42; $f._tmp$43 = _tmp$43; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tmp$7 = _tmp$7; $f._tmp$8 = _tmp$8; $f._tmp$9 = _tmp$9; $f._tuple$1 = _tuple$1; $f._tuple$10 = _tuple$10; $f._tuple$11 = _tuple$11; $f._tuple$12 = _tuple$12; $f._tuple$13 = _tuple$13; $f._tuple$14 = _tuple$14; $f._tuple$15 = _tuple$15; $f._tuple$16 = _tuple$16; $f._tuple$17 = _tuple$17; $f._tuple$18 = _tuple$18; $f._tuple$19 = _tuple$19; $f._tuple$2 = _tuple$2; $f._tuple$20 = _tuple$20; $f._tuple$21 = _tuple$21; $f._tuple$22 = _tuple$22; $f._tuple$23 = _tuple$23; $f._tuple$24 = _tuple$24; $f._tuple$25 = _tuple$25; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f._tuple$5 = _tuple$5; $f._tuple$6 = _tuple$6; $f._tuple$7 = _tuple$7; $f._tuple$8 = _tuple$8; $f._tuple$9 = _tuple$9; $f.alayout = alayout; $f.amSet = amSet; $f.avalue = avalue; $f.day = day; $f.defaultLocation = defaultLocation; $f.err = err; $f.hour = hour; $f.hour$1 = hour$1; $f.hr = hr; $f.i = i; $f.layout = layout; $f.local = local; $f.min = min; $f.min$1 = min$1; $f.mm = mm; $f.month = month; $f.n = n; $f.n$1 = n$1; $f.name = name; $f.ndigit = ndigit; $f.nsec = nsec; $f.offset = offset; $f.offset$1 = offset$1; $f.ok = ok; $f.ok$1 = ok$1; $f.p = p; $f.pmSet = pmSet; $f.prefix = prefix; $f.rangeErrString = rangeErrString; $f.sec = sec; $f.seconds = seconds; $f.sign = sign; $f.ss = ss; $f.std = std; $f.stdstr = stdstr; $f.suffix = suffix; $f.t = t; $f.t$1 = t$1; $f.value = value; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.year = year; $f.z = z; $f.zoneName = zoneName; $f.zoneOffset = zoneOffset; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parseTimeZone = function(value) {
+ var $ptr, _1, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, c, length, nUpper, ok, value;
+ length = 0;
+ ok = false;
+ if (value.length < 3) {
+ _tmp = 0;
+ _tmp$1 = false;
+ length = _tmp;
+ ok = _tmp$1;
+ return [length, ok];
+ }
+ if (value.length >= 4 && ($substring(value, 0, 4) === "ChST" || $substring(value, 0, 4) === "MeST")) {
+ _tmp$2 = 4;
+ _tmp$3 = true;
+ length = _tmp$2;
+ ok = _tmp$3;
+ return [length, ok];
+ }
+ if ($substring(value, 0, 3) === "GMT") {
+ length = parseGMT(value);
+ _tmp$4 = length;
+ _tmp$5 = true;
+ length = _tmp$4;
+ ok = _tmp$5;
+ return [length, ok];
+ }
+ nUpper = 0;
+ nUpper = 0;
+ while (true) {
+ if (!(nUpper < 6)) { break; }
+ if (nUpper >= value.length) {
+ break;
+ }
+ c = value.charCodeAt(nUpper);
+ if (c < 65 || 90 < c) {
+ break;
+ }
+ nUpper = nUpper + (1) >> 0;
+ }
+ _1 = nUpper;
+ if ((_1 === (0)) || (_1 === (1)) || (_1 === (2)) || (_1 === (6))) {
+ _tmp$6 = 0;
+ _tmp$7 = false;
+ length = _tmp$6;
+ ok = _tmp$7;
+ return [length, ok];
+ } else if (_1 === (5)) {
+ if (value.charCodeAt(4) === 84) {
+ _tmp$8 = 5;
+ _tmp$9 = true;
+ length = _tmp$8;
+ ok = _tmp$9;
+ return [length, ok];
+ }
+ } else if (_1 === (4)) {
+ if ((value.charCodeAt(3) === 84) || $substring(value, 0, 4) === "WITA") {
+ _tmp$10 = 4;
+ _tmp$11 = true;
+ length = _tmp$10;
+ ok = _tmp$11;
+ return [length, ok];
+ }
+ } else if (_1 === (3)) {
+ _tmp$12 = 3;
+ _tmp$13 = true;
+ length = _tmp$12;
+ ok = _tmp$13;
+ return [length, ok];
+ }
+ _tmp$14 = 0;
+ _tmp$15 = false;
+ length = _tmp$14;
+ ok = _tmp$15;
+ return [length, ok];
+ };
+ parseGMT = function(value) {
+ var $ptr, _tuple$1, err, rem, sign, value, x;
+ value = $substring(value, 3);
+ if (value.length === 0) {
+ return 3;
+ }
+ sign = value.charCodeAt(0);
+ if (!((sign === 45)) && !((sign === 43))) {
+ return 3;
+ }
+ _tuple$1 = leadingInt($substring(value, 1));
+ x = _tuple$1[0];
+ rem = _tuple$1[1];
+ err = _tuple$1[2];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return 3;
+ }
+ if (sign === 45) {
+ x = new $Int64(-x.$high, -x.$low);
+ }
+ if ((x.$high === 0 && x.$low === 0) || (x.$high < -1 || (x.$high === -1 && x.$low < 4294967282)) || (0 < x.$high || (0 === x.$high && 12 < x.$low))) {
+ return 3;
+ }
+ return (3 + value.length >> 0) - rem.length >> 0;
+ };
+ parseNanoseconds = function(value, nbytes) {
+ var $ptr, _tuple$1, err, i, nbytes, ns, rangeErrString, scaleDigits, value;
+ ns = 0;
+ rangeErrString = "";
+ err = $ifaceNil;
+ if (!((value.charCodeAt(0) === 46))) {
+ err = errBad;
+ return [ns, rangeErrString, err];
+ }
+ _tuple$1 = atoi($substring(value, 1, nbytes));
+ ns = _tuple$1[0];
+ err = _tuple$1[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return [ns, rangeErrString, err];
+ }
+ if (ns < 0 || 1000000000 <= ns) {
+ rangeErrString = "fractional second";
+ return [ns, rangeErrString, err];
+ }
+ scaleDigits = 10 - nbytes >> 0;
+ i = 0;
+ while (true) {
+ if (!(i < scaleDigits)) { break; }
+ ns = $imul(ns, (10));
+ i = i + (1) >> 0;
+ }
+ return [ns, rangeErrString, err];
+ };
+ leadingInt = function(s) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, c, err, i, rem, s, x, x$1, x$2, x$3;
+ x = new $Int64(0, 0);
+ rem = "";
+ err = $ifaceNil;
+ i = 0;
+ while (true) {
+ if (!(i < s.length)) { break; }
+ c = s.charCodeAt(i);
+ if (c < 48 || c > 57) {
+ break;
+ }
+ if ((x.$high > 214748364 || (x.$high === 214748364 && x.$low > 3435973836))) {
+ _tmp = new $Int64(0, 0);
+ _tmp$1 = "";
+ _tmp$2 = errLeadingInt;
+ x = _tmp;
+ rem = _tmp$1;
+ err = _tmp$2;
+ return [x, rem, err];
+ }
+ x = (x$1 = (x$2 = $mul64(x, new $Int64(0, 10)), x$3 = (new $Int64(0, c)), new $Int64(x$2.$high + x$3.$high, x$2.$low + x$3.$low)), new $Int64(x$1.$high - 0, x$1.$low - 48));
+ if ((x.$high < 0 || (x.$high === 0 && x.$low < 0))) {
+ _tmp$3 = new $Int64(0, 0);
+ _tmp$4 = "";
+ _tmp$5 = errLeadingInt;
+ x = _tmp$3;
+ rem = _tmp$4;
+ err = _tmp$5;
+ return [x, rem, err];
+ }
+ i = i + (1) >> 0;
+ }
+ _tmp$6 = x;
+ _tmp$7 = $substring(s, i);
+ _tmp$8 = $ifaceNil;
+ x = _tmp$6;
+ rem = _tmp$7;
+ err = _tmp$8;
+ return [x, rem, err];
+ };
+ leadingFraction = function(s) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, c, i, overflow, rem, s, scale, x, x$1, x$2, x$3, y;
+ x = new $Int64(0, 0);
+ scale = 0;
+ rem = "";
+ i = 0;
+ scale = 1;
+ overflow = false;
+ while (true) {
+ if (!(i < s.length)) { break; }
+ c = s.charCodeAt(i);
+ if (c < 48 || c > 57) {
+ break;
+ }
+ if (overflow) {
+ i = i + (1) >> 0;
+ continue;
+ }
+ if ((x.$high > 214748364 || (x.$high === 214748364 && x.$low > 3435973836))) {
+ overflow = true;
+ i = i + (1) >> 0;
+ continue;
+ }
+ y = (x$1 = (x$2 = $mul64(x, new $Int64(0, 10)), x$3 = (new $Int64(0, c)), new $Int64(x$2.$high + x$3.$high, x$2.$low + x$3.$low)), new $Int64(x$1.$high - 0, x$1.$low - 48));
+ if ((y.$high < 0 || (y.$high === 0 && y.$low < 0))) {
+ overflow = true;
+ i = i + (1) >> 0;
+ continue;
+ }
+ x = y;
+ scale = scale * (10);
+ i = i + (1) >> 0;
+ }
+ _tmp = x;
+ _tmp$1 = scale;
+ _tmp$2 = $substring(s, i);
+ x = _tmp;
+ scale = _tmp$1;
+ rem = _tmp$2;
+ return [x, scale, rem];
+ };
+ ParseDuration = function(s) {
+ var $ptr, _entry, _tmp, _tmp$1, _tuple$1, _tuple$2, _tuple$3, c, c$1, d, err, f, i, neg, ok, orig, pl, pl$1, post, pre, s, scale, u, unit, v, x, x$1, x$2;
+ orig = s;
+ d = new $Int64(0, 0);
+ neg = false;
+ if (!(s === "")) {
+ c = s.charCodeAt(0);
+ if ((c === 45) || (c === 43)) {
+ neg = c === 45;
+ s = $substring(s, 1);
+ }
+ }
+ if (s === "0") {
+ return [new Duration(0, 0), $ifaceNil];
+ }
+ if (s === "") {
+ return [new Duration(0, 0), errors.New("time: invalid duration " + orig)];
+ }
+ while (true) {
+ if (!(!(s === ""))) { break; }
+ _tmp = new $Int64(0, 0);
+ _tmp$1 = new $Int64(0, 0);
+ v = _tmp;
+ f = _tmp$1;
+ scale = 1;
+ err = $ifaceNil;
+ if (!((s.charCodeAt(0) === 46) || 48 <= s.charCodeAt(0) && s.charCodeAt(0) <= 57)) {
+ return [new Duration(0, 0), errors.New("time: invalid duration " + orig)];
+ }
+ pl = s.length;
+ _tuple$1 = leadingInt(s);
+ v = _tuple$1[0];
+ s = _tuple$1[1];
+ err = _tuple$1[2];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return [new Duration(0, 0), errors.New("time: invalid duration " + orig)];
+ }
+ pre = !((pl === s.length));
+ post = false;
+ if (!(s === "") && (s.charCodeAt(0) === 46)) {
+ s = $substring(s, 1);
+ pl$1 = s.length;
+ _tuple$2 = leadingFraction(s);
+ f = _tuple$2[0];
+ scale = _tuple$2[1];
+ s = _tuple$2[2];
+ post = !((pl$1 === s.length));
+ }
+ if (!pre && !post) {
+ return [new Duration(0, 0), errors.New("time: invalid duration " + orig)];
+ }
+ i = 0;
+ while (true) {
+ if (!(i < s.length)) { break; }
+ c$1 = s.charCodeAt(i);
+ if ((c$1 === 46) || 48 <= c$1 && c$1 <= 57) {
+ break;
+ }
+ i = i + (1) >> 0;
+ }
+ if (i === 0) {
+ return [new Duration(0, 0), errors.New("time: missing unit in duration " + orig)];
+ }
+ u = $substring(s, 0, i);
+ s = $substring(s, i);
+ _tuple$3 = (_entry = unitMap[$String.keyFor(u)], _entry !== undefined ? [_entry.v, true] : [new $Int64(0, 0), false]);
+ unit = _tuple$3[0];
+ ok = _tuple$3[1];
+ if (!ok) {
+ return [new Duration(0, 0), errors.New("time: unknown unit " + u + " in duration " + orig)];
+ }
+ if ((x = $div64(new $Int64(2147483647, 4294967295), unit, false), (v.$high > x.$high || (v.$high === x.$high && v.$low > x.$low)))) {
+ return [new Duration(0, 0), errors.New("time: invalid duration " + orig)];
+ }
+ v = $mul64(v, (unit));
+ if ((f.$high > 0 || (f.$high === 0 && f.$low > 0))) {
+ v = (x$1 = (new $Int64(0, ($flatten64(f)) * (($flatten64(unit)) / scale))), new $Int64(v.$high + x$1.$high, v.$low + x$1.$low));
+ if ((v.$high < 0 || (v.$high === 0 && v.$low < 0))) {
+ return [new Duration(0, 0), errors.New("time: invalid duration " + orig)];
+ }
+ }
+ d = (x$2 = v, new $Int64(d.$high + x$2.$high, d.$low + x$2.$low));
+ if ((d.$high < 0 || (d.$high === 0 && d.$low < 0))) {
+ return [new Duration(0, 0), errors.New("time: invalid duration " + orig)];
+ }
+ }
+ if (neg) {
+ d = new $Int64(-d.$high, -d.$low);
+ }
+ return [(new Duration(d.$high, d.$low)), $ifaceNil];
+ };
+ $pkg.ParseDuration = ParseDuration;
+ Time.ptr.prototype.setLoc = function(loc) {
+ var $ptr, loc, t;
+ t = this;
+ if (loc === utcLoc) {
+ loc = ptrType$1.nil;
+ }
+ t.loc = loc;
+ };
+ Time.prototype.setLoc = function(loc) { return this.$val.setLoc(loc); };
+ Time.ptr.prototype.After = function(u) {
+ var $ptr, t, u, x, x$1, x$2, x$3;
+ t = this;
+ return (x = t.sec, x$1 = u.sec, (x.$high > x$1.$high || (x.$high === x$1.$high && x.$low > x$1.$low))) || (x$2 = t.sec, x$3 = u.sec, (x$2.$high === x$3.$high && x$2.$low === x$3.$low)) && t.nsec > u.nsec;
+ };
+ Time.prototype.After = function(u) { return this.$val.After(u); };
+ Time.ptr.prototype.Before = function(u) {
+ var $ptr, t, u, x, x$1, x$2, x$3;
+ t = this;
+ return (x = t.sec, x$1 = u.sec, (x.$high < x$1.$high || (x.$high === x$1.$high && x.$low < x$1.$low))) || (x$2 = t.sec, x$3 = u.sec, (x$2.$high === x$3.$high && x$2.$low === x$3.$low)) && t.nsec < u.nsec;
+ };
+ Time.prototype.Before = function(u) { return this.$val.Before(u); };
+ Time.ptr.prototype.Equal = function(u) {
+ var $ptr, t, u, x, x$1;
+ t = this;
+ return (x = t.sec, x$1 = u.sec, (x.$high === x$1.$high && x.$low === x$1.$low)) && (t.nsec === u.nsec);
+ };
+ Time.prototype.Equal = function(u) { return this.$val.Equal(u); };
+ Month.prototype.String = function() {
+ var $ptr, buf, m, n, x;
+ m = this.$val;
+ if (1 <= m && m <= 12) {
+ return (x = m - 1 >> 0, ((x < 0 || x >= months.length) ? ($throwRuntimeError("index out of range"), undefined) : months[x]));
+ }
+ buf = $makeSlice(sliceType$3, 20);
+ n = fmtInt(buf, (new $Uint64(0, m)));
+ return "%!Month(" + ($bytesToString($subslice(buf, n))) + ")";
+ };
+ $ptrType(Month).prototype.String = function() { return new Month(this.$get()).String(); };
+ Weekday.prototype.String = function() {
+ var $ptr, d;
+ d = this.$val;
+ return ((d < 0 || d >= days.length) ? ($throwRuntimeError("index out of range"), undefined) : days[d]);
+ };
+ $ptrType(Weekday).prototype.String = function() { return new Weekday(this.$get()).String(); };
+ Time.ptr.prototype.IsZero = function() {
+ var $ptr, t, x;
+ t = this;
+ return (x = t.sec, (x.$high === 0 && x.$low === 0)) && (t.nsec === 0);
+ };
+ Time.prototype.IsZero = function() { return this.$val.IsZero(); };
+ Time.ptr.prototype.abs = function() {
+ var $ptr, _r$1, _r$2, _tuple$1, l, offset, sec, t, x, x$1, x$2, x$3, x$4, x$5, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _tuple$1 = $f._tuple$1; l = $f.l; offset = $f.offset; sec = $f.sec; t = $f.t; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ l = t.loc;
+ /* */ if (l === ptrType$1.nil || l === localLoc) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (l === ptrType$1.nil || l === localLoc) { */ case 1:
+ _r$1 = l.get(); /* */ $s = 3; case 3: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ l = _r$1;
+ /* } */ case 2:
+ sec = (x = t.sec, new $Int64(x.$high + -15, x.$low + 2288912640));
+ /* */ if (!(l === utcLoc)) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (!(l === utcLoc)) { */ case 4:
+ /* */ if (!(l.cacheZone === ptrType.nil) && (x$1 = l.cacheStart, (x$1.$high < sec.$high || (x$1.$high === sec.$high && x$1.$low <= sec.$low))) && (x$2 = l.cacheEnd, (sec.$high < x$2.$high || (sec.$high === x$2.$high && sec.$low < x$2.$low)))) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (!(l.cacheZone === ptrType.nil) && (x$1 = l.cacheStart, (x$1.$high < sec.$high || (x$1.$high === sec.$high && x$1.$low <= sec.$low))) && (x$2 = l.cacheEnd, (sec.$high < x$2.$high || (sec.$high === x$2.$high && sec.$low < x$2.$low)))) { */ case 6:
+ sec = (x$3 = (new $Int64(0, l.cacheZone.offset)), new $Int64(sec.$high + x$3.$high, sec.$low + x$3.$low));
+ $s = 8; continue;
+ /* } else { */ case 7:
+ _r$2 = l.lookup(sec); /* */ $s = 9; case 9: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$1 = _r$2;
+ offset = _tuple$1[1];
+ sec = (x$4 = (new $Int64(0, offset)), new $Int64(sec.$high + x$4.$high, sec.$low + x$4.$low));
+ /* } */ case 8:
+ /* } */ case 5:
+ $s = -1; return ((x$5 = new $Int64(sec.$high + 2147483646, sec.$low + 450480384), new $Uint64(x$5.$high, x$5.$low)));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.abs }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tuple$1 = _tuple$1; $f.l = l; $f.offset = offset; $f.sec = sec; $f.t = t; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.abs = function() { return this.$val.abs(); };
+ Time.ptr.prototype.locabs = function() {
+ var $ptr, _r$1, _r$2, _tuple$1, abs, l, name, offset, sec, t, x, x$1, x$2, x$3, x$4, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _tuple$1 = $f._tuple$1; abs = $f.abs; l = $f.l; name = $f.name; offset = $f.offset; sec = $f.sec; t = $f.t; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ name = "";
+ offset = 0;
+ abs = new $Uint64(0, 0);
+ t = this;
+ l = t.loc;
+ /* */ if (l === ptrType$1.nil || l === localLoc) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (l === ptrType$1.nil || l === localLoc) { */ case 1:
+ _r$1 = l.get(); /* */ $s = 3; case 3: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ l = _r$1;
+ /* } */ case 2:
+ sec = (x = t.sec, new $Int64(x.$high + -15, x.$low + 2288912640));
+ /* */ if (!(l === utcLoc)) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (!(l === utcLoc)) { */ case 4:
+ /* */ if (!(l.cacheZone === ptrType.nil) && (x$1 = l.cacheStart, (x$1.$high < sec.$high || (x$1.$high === sec.$high && x$1.$low <= sec.$low))) && (x$2 = l.cacheEnd, (sec.$high < x$2.$high || (sec.$high === x$2.$high && sec.$low < x$2.$low)))) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (!(l.cacheZone === ptrType.nil) && (x$1 = l.cacheStart, (x$1.$high < sec.$high || (x$1.$high === sec.$high && x$1.$low <= sec.$low))) && (x$2 = l.cacheEnd, (sec.$high < x$2.$high || (sec.$high === x$2.$high && sec.$low < x$2.$low)))) { */ case 7:
+ name = l.cacheZone.name;
+ offset = l.cacheZone.offset;
+ $s = 9; continue;
+ /* } else { */ case 8:
+ _r$2 = l.lookup(sec); /* */ $s = 10; case 10: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$1 = _r$2;
+ name = _tuple$1[0];
+ offset = _tuple$1[1];
+ /* } */ case 9:
+ sec = (x$3 = (new $Int64(0, offset)), new $Int64(sec.$high + x$3.$high, sec.$low + x$3.$low));
+ $s = 6; continue;
+ /* } else { */ case 5:
+ name = "UTC";
+ /* } */ case 6:
+ abs = ((x$4 = new $Int64(sec.$high + 2147483646, sec.$low + 450480384), new $Uint64(x$4.$high, x$4.$low)));
+ $s = -1; return [name, offset, abs];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.locabs }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tuple$1 = _tuple$1; $f.abs = abs; $f.l = l; $f.name = name; $f.offset = offset; $f.sec = sec; $f.t = t; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.locabs = function() { return this.$val.locabs(); };
+ Time.ptr.prototype.Date = function() {
+ var $ptr, _r$1, _tuple$1, day, month, t, year, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _tuple$1 = $f._tuple$1; day = $f.day; month = $f.month; t = $f.t; year = $f.year; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ year = 0;
+ month = 0;
+ day = 0;
+ t = this;
+ _r$1 = $clone(t, Time).date(true); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ year = _tuple$1[0];
+ month = _tuple$1[1];
+ day = _tuple$1[2];
+ $s = -1; return [year, month, day];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.Date }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._tuple$1 = _tuple$1; $f.day = day; $f.month = month; $f.t = t; $f.year = year; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.Date = function() { return this.$val.Date(); };
+ Time.ptr.prototype.Year = function() {
+ var $ptr, _r$1, _tuple$1, t, year, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _tuple$1 = $f._tuple$1; t = $f.t; year = $f.year; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ _r$1 = $clone(t, Time).date(false); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ year = _tuple$1[0];
+ $s = -1; return year;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.Year }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._tuple$1 = _tuple$1; $f.t = t; $f.year = year; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.Year = function() { return this.$val.Year(); };
+ Time.ptr.prototype.Month = function() {
+ var $ptr, _r$1, _tuple$1, month, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _tuple$1 = $f._tuple$1; month = $f.month; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ _r$1 = $clone(t, Time).date(true); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ month = _tuple$1[1];
+ $s = -1; return month;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.Month }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._tuple$1 = _tuple$1; $f.month = month; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.Month = function() { return this.$val.Month(); };
+ Time.ptr.prototype.Day = function() {
+ var $ptr, _r$1, _tuple$1, day, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _tuple$1 = $f._tuple$1; day = $f.day; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ _r$1 = $clone(t, Time).date(true); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ day = _tuple$1[2];
+ $s = -1; return day;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.Day }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._tuple$1 = _tuple$1; $f.day = day; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.Day = function() { return this.$val.Day(); };
+ Time.ptr.prototype.Weekday = function() {
+ var $ptr, _r$1, _r$2, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ _r$1 = $clone(t, Time).abs(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = absWeekday(_r$1); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return _r$2;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.Weekday }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.Weekday = function() { return this.$val.Weekday(); };
+ absWeekday = function(abs) {
+ var $ptr, _q, abs, sec;
+ sec = $div64((new $Uint64(abs.$high + 0, abs.$low + 86400)), new $Uint64(0, 604800), true);
+ return (((_q = ((sec.$low >> 0)) / 86400, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")) >> 0));
+ };
+ Time.ptr.prototype.ISOWeek = function() {
+ var $ptr, _q, _r$1, _r$2, _r$3, _r$4, _r$5, _tuple$1, day, dec31wday, jan1wday, month, t, wday, week, yday, year, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _tuple$1 = $f._tuple$1; day = $f.day; dec31wday = $f.dec31wday; jan1wday = $f.jan1wday; month = $f.month; t = $f.t; wday = $f.wday; week = $f.week; yday = $f.yday; year = $f.year; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ year = 0;
+ week = 0;
+ t = this;
+ _r$1 = $clone(t, Time).date(true); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ year = _tuple$1[0];
+ month = _tuple$1[1];
+ day = _tuple$1[2];
+ yday = _tuple$1[3];
+ _r$3 = $clone(t, Time).Weekday(); /* */ $s = 2; case 2: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ wday = (_r$2 = (((_r$3 + 6 >> 0) >> 0)) % 7, _r$2 === _r$2 ? _r$2 : $throwRuntimeError("integer divide by zero"));
+ week = (_q = (((yday - wday >> 0) + 7 >> 0)) / 7, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ jan1wday = (_r$4 = (((wday - yday >> 0) + 371 >> 0)) % 7, _r$4 === _r$4 ? _r$4 : $throwRuntimeError("integer divide by zero"));
+ if (1 <= jan1wday && jan1wday <= 3) {
+ week = week + (1) >> 0;
+ }
+ if (week === 0) {
+ year = year - (1) >> 0;
+ week = 52;
+ if ((jan1wday === 4) || ((jan1wday === 5) && isLeap(year))) {
+ week = week + (1) >> 0;
+ }
+ }
+ if ((month === 12) && day >= 29 && wday < 3) {
+ dec31wday = (_r$5 = (((wday + 31 >> 0) - day >> 0)) % 7, _r$5 === _r$5 ? _r$5 : $throwRuntimeError("integer divide by zero"));
+ if (0 <= dec31wday && dec31wday <= 2) {
+ year = year + (1) >> 0;
+ week = 1;
+ }
+ }
+ $s = -1; return [year, week];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.ISOWeek }; } $f.$ptr = $ptr; $f._q = _q; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._tuple$1 = _tuple$1; $f.day = day; $f.dec31wday = dec31wday; $f.jan1wday = jan1wday; $f.month = month; $f.t = t; $f.wday = wday; $f.week = week; $f.yday = yday; $f.year = year; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.ISOWeek = function() { return this.$val.ISOWeek(); };
+ Time.ptr.prototype.Clock = function() {
+ var $ptr, _r$1, _r$2, _tuple$1, hour, min, sec, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _tuple$1 = $f._tuple$1; hour = $f.hour; min = $f.min; sec = $f.sec; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ hour = 0;
+ min = 0;
+ sec = 0;
+ t = this;
+ _r$1 = $clone(t, Time).abs(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = absClock(_r$1); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$1 = _r$2;
+ hour = _tuple$1[0];
+ min = _tuple$1[1];
+ sec = _tuple$1[2];
+ $s = -1; return [hour, min, sec];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.Clock }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tuple$1 = _tuple$1; $f.hour = hour; $f.min = min; $f.sec = sec; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.Clock = function() { return this.$val.Clock(); };
+ absClock = function(abs) {
+ var $ptr, _q, _q$1, abs, hour, min, sec;
+ hour = 0;
+ min = 0;
+ sec = 0;
+ sec = (($div64(abs, new $Uint64(0, 86400), true).$low >> 0));
+ hour = (_q = sec / 3600, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ sec = sec - (($imul(hour, 3600))) >> 0;
+ min = (_q$1 = sec / 60, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero"));
+ sec = sec - (($imul(min, 60))) >> 0;
+ return [hour, min, sec];
+ };
+ Time.ptr.prototype.Hour = function() {
+ var $ptr, _q, _r$1, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; _r$1 = $f._r$1; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ _r$1 = $clone(t, Time).abs(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return (_q = (($div64(_r$1, new $Uint64(0, 86400), true).$low >> 0)) / 3600, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.Hour }; } $f.$ptr = $ptr; $f._q = _q; $f._r$1 = _r$1; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.Hour = function() { return this.$val.Hour(); };
+ Time.ptr.prototype.Minute = function() {
+ var $ptr, _q, _r$1, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; _r$1 = $f._r$1; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ _r$1 = $clone(t, Time).abs(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return (_q = (($div64(_r$1, new $Uint64(0, 3600), true).$low >> 0)) / 60, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.Minute }; } $f.$ptr = $ptr; $f._q = _q; $f._r$1 = _r$1; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.Minute = function() { return this.$val.Minute(); };
+ Time.ptr.prototype.Second = function() {
+ var $ptr, _r$1, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ _r$1 = $clone(t, Time).abs(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return (($div64(_r$1, new $Uint64(0, 60), true).$low >> 0));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.Second }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.Second = function() { return this.$val.Second(); };
+ Time.ptr.prototype.Nanosecond = function() {
+ var $ptr, t;
+ t = this;
+ return ((t.nsec >> 0));
+ };
+ Time.prototype.Nanosecond = function() { return this.$val.Nanosecond(); };
+ Time.ptr.prototype.YearDay = function() {
+ var $ptr, _r$1, _tuple$1, t, yday, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _tuple$1 = $f._tuple$1; t = $f.t; yday = $f.yday; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ _r$1 = $clone(t, Time).date(false); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ yday = _tuple$1[3];
+ $s = -1; return yday + 1 >> 0;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.YearDay }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._tuple$1 = _tuple$1; $f.t = t; $f.yday = yday; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.YearDay = function() { return this.$val.YearDay(); };
+ Duration.prototype.String = function() {
+ var $ptr, _tuple$1, _tuple$2, buf, d, neg, prec, u, w;
+ d = this;
+ buf = arrayType$4.zero();
+ w = 32;
+ u = (new $Uint64(d.$high, d.$low));
+ neg = (d.$high < 0 || (d.$high === 0 && d.$low < 0));
+ if (neg) {
+ u = new $Uint64(-u.$high, -u.$low);
+ }
+ if ((u.$high < 0 || (u.$high === 0 && u.$low < 1000000000))) {
+ prec = 0;
+ w = w - (1) >> 0;
+ ((w < 0 || w >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[w] = 115);
+ w = w - (1) >> 0;
+ if ((u.$high === 0 && u.$low === 0)) {
+ return "0s";
+ } else if ((u.$high < 0 || (u.$high === 0 && u.$low < 1000))) {
+ prec = 0;
+ ((w < 0 || w >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[w] = 110);
+ } else if ((u.$high < 0 || (u.$high === 0 && u.$low < 1000000))) {
+ prec = 3;
+ w = w - (1) >> 0;
+ $copyString($subslice(new sliceType$3(buf), w), "\xC2\xB5");
+ } else {
+ prec = 6;
+ ((w < 0 || w >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[w] = 109);
+ }
+ _tuple$1 = fmtFrac($subslice(new sliceType$3(buf), 0, w), u, prec);
+ w = _tuple$1[0];
+ u = _tuple$1[1];
+ w = fmtInt($subslice(new sliceType$3(buf), 0, w), u);
+ } else {
+ w = w - (1) >> 0;
+ ((w < 0 || w >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[w] = 115);
+ _tuple$2 = fmtFrac($subslice(new sliceType$3(buf), 0, w), u, 9);
+ w = _tuple$2[0];
+ u = _tuple$2[1];
+ w = fmtInt($subslice(new sliceType$3(buf), 0, w), $div64(u, new $Uint64(0, 60), true));
+ u = $div64(u, (new $Uint64(0, 60)), false);
+ if ((u.$high > 0 || (u.$high === 0 && u.$low > 0))) {
+ w = w - (1) >> 0;
+ ((w < 0 || w >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[w] = 109);
+ w = fmtInt($subslice(new sliceType$3(buf), 0, w), $div64(u, new $Uint64(0, 60), true));
+ u = $div64(u, (new $Uint64(0, 60)), false);
+ if ((u.$high > 0 || (u.$high === 0 && u.$low > 0))) {
+ w = w - (1) >> 0;
+ ((w < 0 || w >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[w] = 104);
+ w = fmtInt($subslice(new sliceType$3(buf), 0, w), u);
+ }
+ }
+ }
+ if (neg) {
+ w = w - (1) >> 0;
+ ((w < 0 || w >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[w] = 45);
+ }
+ return ($bytesToString($subslice(new sliceType$3(buf), w)));
+ };
+ $ptrType(Duration).prototype.String = function() { return this.$get().String(); };
+ fmtFrac = function(buf, v, prec) {
+ var $ptr, _tmp, _tmp$1, buf, digit, i, nv, nw, prec, print, v, w;
+ nw = 0;
+ nv = new $Uint64(0, 0);
+ w = buf.$length;
+ print = false;
+ i = 0;
+ while (true) {
+ if (!(i < prec)) { break; }
+ digit = $div64(v, new $Uint64(0, 10), true);
+ print = print || !((digit.$high === 0 && digit.$low === 0));
+ if (print) {
+ w = w - (1) >> 0;
+ ((w < 0 || w >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + w] = (((digit.$low << 24 >>> 24)) + 48 << 24 >>> 24));
+ }
+ v = $div64(v, (new $Uint64(0, 10)), false);
+ i = i + (1) >> 0;
+ }
+ if (print) {
+ w = w - (1) >> 0;
+ ((w < 0 || w >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + w] = 46);
+ }
+ _tmp = w;
+ _tmp$1 = v;
+ nw = _tmp;
+ nv = _tmp$1;
+ return [nw, nv];
+ };
+ fmtInt = function(buf, v) {
+ var $ptr, buf, v, w;
+ w = buf.$length;
+ if ((v.$high === 0 && v.$low === 0)) {
+ w = w - (1) >> 0;
+ ((w < 0 || w >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + w] = 48);
+ } else {
+ while (true) {
+ if (!((v.$high > 0 || (v.$high === 0 && v.$low > 0)))) { break; }
+ w = w - (1) >> 0;
+ ((w < 0 || w >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + w] = ((($div64(v, new $Uint64(0, 10), true).$low << 24 >>> 24)) + 48 << 24 >>> 24));
+ v = $div64(v, (new $Uint64(0, 10)), false);
+ }
+ }
+ return w;
+ };
+ Duration.prototype.Nanoseconds = function() {
+ var $ptr, d;
+ d = this;
+ return (new $Int64(d.$high, d.$low));
+ };
+ $ptrType(Duration).prototype.Nanoseconds = function() { return this.$get().Nanoseconds(); };
+ Duration.prototype.Seconds = function() {
+ var $ptr, d, nsec, sec;
+ d = this;
+ sec = $div64(d, new Duration(0, 1000000000), false);
+ nsec = $div64(d, new Duration(0, 1000000000), true);
+ return ($flatten64(sec)) + ($flatten64(nsec)) / 1e+09;
+ };
+ $ptrType(Duration).prototype.Seconds = function() { return this.$get().Seconds(); };
+ Duration.prototype.Minutes = function() {
+ var $ptr, d, min, nsec;
+ d = this;
+ min = $div64(d, new Duration(13, 4165425152), false);
+ nsec = $div64(d, new Duration(13, 4165425152), true);
+ return ($flatten64(min)) + ($flatten64(nsec)) / 6e+10;
+ };
+ $ptrType(Duration).prototype.Minutes = function() { return this.$get().Minutes(); };
+ Duration.prototype.Hours = function() {
+ var $ptr, d, hour, nsec;
+ d = this;
+ hour = $div64(d, new Duration(838, 817405952), false);
+ nsec = $div64(d, new Duration(838, 817405952), true);
+ return ($flatten64(hour)) + ($flatten64(nsec)) / 3.6e+12;
+ };
+ $ptrType(Duration).prototype.Hours = function() { return this.$get().Hours(); };
+ Time.ptr.prototype.Add = function(d) {
+ var $ptr, d, nsec, t, x, x$1, x$2, x$3, x$4, x$5, x$6, x$7;
+ t = this;
+ t.sec = (x = t.sec, x$1 = ((x$2 = $div64(d, new Duration(0, 1000000000), false), new $Int64(x$2.$high, x$2.$low))), new $Int64(x.$high + x$1.$high, x.$low + x$1.$low));
+ nsec = t.nsec + (((x$3 = $div64(d, new Duration(0, 1000000000), true), x$3.$low + ((x$3.$high >> 31) * 4294967296)) >> 0)) >> 0;
+ if (nsec >= 1000000000) {
+ t.sec = (x$4 = t.sec, x$5 = new $Int64(0, 1), new $Int64(x$4.$high + x$5.$high, x$4.$low + x$5.$low));
+ nsec = nsec - (1000000000) >> 0;
+ } else if (nsec < 0) {
+ t.sec = (x$6 = t.sec, x$7 = new $Int64(0, 1), new $Int64(x$6.$high - x$7.$high, x$6.$low - x$7.$low));
+ nsec = nsec + (1000000000) >> 0;
+ }
+ t.nsec = nsec;
+ return t;
+ };
+ Time.prototype.Add = function(d) { return this.$val.Add(d); };
+ Time.ptr.prototype.Sub = function(u) {
+ var $ptr, d, t, u, x, x$1, x$2, x$3, x$4;
+ t = this;
+ d = (x = $mul64(((x$1 = (x$2 = t.sec, x$3 = u.sec, new $Int64(x$2.$high - x$3.$high, x$2.$low - x$3.$low)), new Duration(x$1.$high, x$1.$low))), new Duration(0, 1000000000)), x$4 = (new Duration(0, (t.nsec - u.nsec >> 0))), new Duration(x.$high + x$4.$high, x.$low + x$4.$low));
+ if ($clone($clone(u, Time).Add(d), Time).Equal($clone(t, Time))) {
+ return d;
+ } else if ($clone(t, Time).Before($clone(u, Time))) {
+ return new Duration(-2147483648, 0);
+ } else {
+ return new Duration(2147483647, 4294967295);
+ }
+ };
+ Time.prototype.Sub = function(u) { return this.$val.Sub(u); };
+ Time.ptr.prototype.AddDate = function(years, months$1, days$1) {
+ var $ptr, _r$1, _r$2, _r$3, _tuple$1, _tuple$2, day, days$1, hour, min, month, months$1, sec, t, year, years, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; day = $f.day; days$1 = $f.days$1; hour = $f.hour; min = $f.min; month = $f.month; months$1 = $f.months$1; sec = $f.sec; t = $f.t; year = $f.year; years = $f.years; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ _r$1 = $clone(t, Time).Date(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ year = _tuple$1[0];
+ month = _tuple$1[1];
+ day = _tuple$1[2];
+ _r$2 = $clone(t, Time).Clock(); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$2 = _r$2;
+ hour = _tuple$2[0];
+ min = _tuple$2[1];
+ sec = _tuple$2[2];
+ _r$3 = Date(year + years >> 0, month + ((months$1 >> 0)) >> 0, day + days$1 >> 0, hour, min, sec, ((t.nsec >> 0)), $clone(t, Time).Location()); /* */ $s = 3; case 3: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $s = -1; return _r$3;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.AddDate }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f.day = day; $f.days$1 = days$1; $f.hour = hour; $f.min = min; $f.month = month; $f.months$1 = months$1; $f.sec = sec; $f.t = t; $f.year = year; $f.years = years; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.AddDate = function(years, months$1, days$1) { return this.$val.AddDate(years, months$1, days$1); };
+ Time.ptr.prototype.date = function(full) {
+ var $ptr, _r$1, _r$2, _tuple$1, day, full, month, t, yday, year, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _tuple$1 = $f._tuple$1; day = $f.day; full = $f.full; month = $f.month; t = $f.t; yday = $f.yday; year = $f.year; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ year = 0;
+ month = 0;
+ day = 0;
+ yday = 0;
+ t = this;
+ _r$1 = $clone(t, Time).abs(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = absDate(_r$1, full); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$1 = _r$2;
+ year = _tuple$1[0];
+ month = _tuple$1[1];
+ day = _tuple$1[2];
+ yday = _tuple$1[3];
+ $s = -1; return [year, month, day, yday];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.date }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tuple$1 = _tuple$1; $f.day = day; $f.full = full; $f.month = month; $f.t = t; $f.yday = yday; $f.year = year; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.date = function(full) { return this.$val.date(full); };
+ absDate = function(abs, full) {
+ var $ptr, _q, abs, begin, d, day, end, full, month, n, x, x$1, x$10, x$11, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, y, yday, year;
+ year = 0;
+ month = 0;
+ day = 0;
+ yday = 0;
+ d = $div64(abs, new $Uint64(0, 86400), false);
+ n = $div64(d, new $Uint64(0, 146097), false);
+ y = $mul64(new $Uint64(0, 400), n);
+ d = (x = $mul64(new $Uint64(0, 146097), n), new $Uint64(d.$high - x.$high, d.$low - x.$low));
+ n = $div64(d, new $Uint64(0, 36524), false);
+ n = (x$1 = $shiftRightUint64(n, 2), new $Uint64(n.$high - x$1.$high, n.$low - x$1.$low));
+ y = (x$2 = $mul64(new $Uint64(0, 100), n), new $Uint64(y.$high + x$2.$high, y.$low + x$2.$low));
+ d = (x$3 = $mul64(new $Uint64(0, 36524), n), new $Uint64(d.$high - x$3.$high, d.$low - x$3.$low));
+ n = $div64(d, new $Uint64(0, 1461), false);
+ y = (x$4 = $mul64(new $Uint64(0, 4), n), new $Uint64(y.$high + x$4.$high, y.$low + x$4.$low));
+ d = (x$5 = $mul64(new $Uint64(0, 1461), n), new $Uint64(d.$high - x$5.$high, d.$low - x$5.$low));
+ n = $div64(d, new $Uint64(0, 365), false);
+ n = (x$6 = $shiftRightUint64(n, 2), new $Uint64(n.$high - x$6.$high, n.$low - x$6.$low));
+ y = (x$7 = n, new $Uint64(y.$high + x$7.$high, y.$low + x$7.$low));
+ d = (x$8 = $mul64(new $Uint64(0, 365), n), new $Uint64(d.$high - x$8.$high, d.$low - x$8.$low));
+ year = (((x$9 = (x$10 = (new $Int64(y.$high, y.$low)), new $Int64(x$10.$high + -69, x$10.$low + 4075721025)), x$9.$low + ((x$9.$high >> 31) * 4294967296)) >> 0));
+ yday = ((d.$low >> 0));
+ if (!full) {
+ return [year, month, day, yday];
+ }
+ day = yday;
+ if (isLeap(year)) {
+ if (day > 59) {
+ day = day - (1) >> 0;
+ } else if ((day === 59)) {
+ month = 2;
+ day = 29;
+ return [year, month, day, yday];
+ }
+ }
+ month = (((_q = day / 31, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")) >> 0));
+ end = (((x$11 = month + 1 >> 0, ((x$11 < 0 || x$11 >= daysBefore.length) ? ($throwRuntimeError("index out of range"), undefined) : daysBefore[x$11])) >> 0));
+ begin = 0;
+ if (day >= end) {
+ month = month + (1) >> 0;
+ begin = end;
+ } else {
+ begin = ((((month < 0 || month >= daysBefore.length) ? ($throwRuntimeError("index out of range"), undefined) : daysBefore[month]) >> 0));
+ }
+ month = month + (1) >> 0;
+ day = (day - begin >> 0) + 1 >> 0;
+ return [year, month, day, yday];
+ };
+ daysIn = function(m, year) {
+ var $ptr, m, x, year;
+ if ((m === 2) && isLeap(year)) {
+ return 29;
+ }
+ return (((((m < 0 || m >= daysBefore.length) ? ($throwRuntimeError("index out of range"), undefined) : daysBefore[m]) - (x = m - 1 >> 0, ((x < 0 || x >= daysBefore.length) ? ($throwRuntimeError("index out of range"), undefined) : daysBefore[x])) >> 0) >> 0));
+ };
+ Now = function() {
+ var $ptr, _tuple$1, nsec, sec;
+ _tuple$1 = now();
+ sec = _tuple$1[0];
+ nsec = _tuple$1[1];
+ return new Time.ptr(new $Int64(sec.$high + 14, sec.$low + 2006054656), nsec, $pkg.Local);
+ };
+ $pkg.Now = Now;
+ Time.ptr.prototype.UTC = function() {
+ var $ptr, t;
+ t = this;
+ t.setLoc(utcLoc);
+ return t;
+ };
+ Time.prototype.UTC = function() { return this.$val.UTC(); };
+ Time.ptr.prototype.Local = function() {
+ var $ptr, t;
+ t = this;
+ t.setLoc($pkg.Local);
+ return t;
+ };
+ Time.prototype.Local = function() { return this.$val.Local(); };
+ Time.ptr.prototype.In = function(loc) {
+ var $ptr, loc, t;
+ t = this;
+ if (loc === ptrType$1.nil) {
+ $panic(new $String("time: missing Location in call to Time.In"));
+ }
+ t.setLoc(loc);
+ return t;
+ };
+ Time.prototype.In = function(loc) { return this.$val.In(loc); };
+ Time.ptr.prototype.Location = function() {
+ var $ptr, l, t;
+ t = this;
+ l = t.loc;
+ if (l === ptrType$1.nil) {
+ l = $pkg.UTC;
+ }
+ return l;
+ };
+ Time.prototype.Location = function() { return this.$val.Location(); };
+ Time.ptr.prototype.Zone = function() {
+ var $ptr, _r$1, _tuple$1, name, offset, t, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _tuple$1 = $f._tuple$1; name = $f.name; offset = $f.offset; t = $f.t; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ name = "";
+ offset = 0;
+ t = this;
+ _r$1 = t.loc.lookup((x = t.sec, new $Int64(x.$high + -15, x.$low + 2288912640))); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ name = _tuple$1[0];
+ offset = _tuple$1[1];
+ $s = -1; return [name, offset];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.Zone }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._tuple$1 = _tuple$1; $f.name = name; $f.offset = offset; $f.t = t; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.Zone = function() { return this.$val.Zone(); };
+ Time.ptr.prototype.Unix = function() {
+ var $ptr, t, x;
+ t = this;
+ return (x = t.sec, new $Int64(x.$high + -15, x.$low + 2288912640));
+ };
+ Time.prototype.Unix = function() { return this.$val.Unix(); };
+ Time.ptr.prototype.UnixNano = function() {
+ var $ptr, t, x, x$1, x$2;
+ t = this;
+ return (x = $mul64(((x$1 = t.sec, new $Int64(x$1.$high + -15, x$1.$low + 2288912640))), new $Int64(0, 1000000000)), x$2 = (new $Int64(0, t.nsec)), new $Int64(x.$high + x$2.$high, x.$low + x$2.$low));
+ };
+ Time.prototype.UnixNano = function() { return this.$val.UnixNano(); };
+ Time.ptr.prototype.MarshalBinary = function() {
+ var $ptr, _q, _r$1, _r$2, _tuple$1, enc, offset, offsetMin, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; _r$1 = $f._r$1; _r$2 = $f._r$2; _tuple$1 = $f._tuple$1; enc = $f.enc; offset = $f.offset; offsetMin = $f.offsetMin; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ offsetMin = 0;
+ /* */ if ($clone(t, Time).Location() === $pkg.UTC) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ($clone(t, Time).Location() === $pkg.UTC) { */ case 1:
+ offsetMin = -1;
+ $s = 3; continue;
+ /* } else { */ case 2:
+ _r$1 = $clone(t, Time).Zone(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ offset = _tuple$1[1];
+ if (!(((_r$2 = offset % 60, _r$2 === _r$2 ? _r$2 : $throwRuntimeError("integer divide by zero")) === 0))) {
+ $s = -1; return [sliceType$3.nil, errors.New("Time.MarshalBinary: zone offset has fractional minute")];
+ }
+ offset = (_q = offset / (60), (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ if (offset < -32768 || (offset === -1) || offset > 32767) {
+ $s = -1; return [sliceType$3.nil, errors.New("Time.MarshalBinary: unexpected zone offset")];
+ }
+ offsetMin = ((offset << 16 >> 16));
+ /* } */ case 3:
+ enc = new sliceType$3([1, (($shiftRightInt64(t.sec, 56).$low << 24 >>> 24)), (($shiftRightInt64(t.sec, 48).$low << 24 >>> 24)), (($shiftRightInt64(t.sec, 40).$low << 24 >>> 24)), (($shiftRightInt64(t.sec, 32).$low << 24 >>> 24)), (($shiftRightInt64(t.sec, 24).$low << 24 >>> 24)), (($shiftRightInt64(t.sec, 16).$low << 24 >>> 24)), (($shiftRightInt64(t.sec, 8).$low << 24 >>> 24)), ((t.sec.$low << 24 >>> 24)), (((t.nsec >> 24 >> 0) << 24 >>> 24)), (((t.nsec >> 16 >> 0) << 24 >>> 24)), (((t.nsec >> 8 >> 0) << 24 >>> 24)), ((t.nsec << 24 >>> 24)), (((offsetMin >> 8 << 16 >> 16) << 24 >>> 24)), ((offsetMin << 24 >>> 24))]);
+ $s = -1; return [enc, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.MarshalBinary }; } $f.$ptr = $ptr; $f._q = _q; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tuple$1 = _tuple$1; $f.enc = enc; $f.offset = offset; $f.offsetMin = offsetMin; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.MarshalBinary = function() { return this.$val.MarshalBinary(); };
+ Time.ptr.prototype.UnmarshalBinary = function(data$1) {
+ var $ptr, _r$1, _tuple$1, buf, data$1, localoff, offset, t, x, x$1, x$10, x$11, x$12, x$13, x$14, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _tuple$1 = $f._tuple$1; buf = $f.buf; data$1 = $f.data$1; localoff = $f.localoff; offset = $f.offset; t = $f.t; x = $f.x; x$1 = $f.x$1; x$10 = $f.x$10; x$11 = $f.x$11; x$12 = $f.x$12; x$13 = $f.x$13; x$14 = $f.x$14; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; x$8 = $f.x$8; x$9 = $f.x$9; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ buf = data$1;
+ if (buf.$length === 0) {
+ $s = -1; return errors.New("Time.UnmarshalBinary: no data");
+ }
+ if (!(((0 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 0]) === 1))) {
+ $s = -1; return errors.New("Time.UnmarshalBinary: unsupported version");
+ }
+ if (!((buf.$length === 15))) {
+ $s = -1; return errors.New("Time.UnmarshalBinary: invalid length");
+ }
+ buf = $subslice(buf, 1);
+ t.sec = (x = (x$1 = (x$2 = (x$3 = (x$4 = (x$5 = (x$6 = (new $Int64(0, (7 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 7]))), x$7 = $shiftLeft64((new $Int64(0, (6 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 6]))), 8), new $Int64(x$6.$high | x$7.$high, (x$6.$low | x$7.$low) >>> 0)), x$8 = $shiftLeft64((new $Int64(0, (5 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 5]))), 16), new $Int64(x$5.$high | x$8.$high, (x$5.$low | x$8.$low) >>> 0)), x$9 = $shiftLeft64((new $Int64(0, (4 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 4]))), 24), new $Int64(x$4.$high | x$9.$high, (x$4.$low | x$9.$low) >>> 0)), x$10 = $shiftLeft64((new $Int64(0, (3 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 3]))), 32), new $Int64(x$3.$high | x$10.$high, (x$3.$low | x$10.$low) >>> 0)), x$11 = $shiftLeft64((new $Int64(0, (2 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 2]))), 40), new $Int64(x$2.$high | x$11.$high, (x$2.$low | x$11.$low) >>> 0)), x$12 = $shiftLeft64((new $Int64(0, (1 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 1]))), 48), new $Int64(x$1.$high | x$12.$high, (x$1.$low | x$12.$low) >>> 0)), x$13 = $shiftLeft64((new $Int64(0, (0 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 0]))), 56), new $Int64(x.$high | x$13.$high, (x.$low | x$13.$low) >>> 0));
+ buf = $subslice(buf, 8);
+ t.nsec = (((((3 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 3]) >> 0)) | ((((2 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 2]) >> 0)) << 8 >> 0)) | ((((1 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 1]) >> 0)) << 16 >> 0)) | ((((0 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 0]) >> 0)) << 24 >> 0);
+ buf = $subslice(buf, 4);
+ offset = $imul(((((((1 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 1]) << 16 >> 16)) | ((((0 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 0]) << 16 >> 16)) << 8 << 16 >> 16)) >> 0)), 60);
+ /* */ if (offset === -60) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (offset === -60) { */ case 1:
+ t.setLoc(utcLoc);
+ $s = 3; continue;
+ /* } else { */ case 2:
+ _r$1 = $pkg.Local.lookup((x$14 = t.sec, new $Int64(x$14.$high + -15, x$14.$low + 2288912640))); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ localoff = _tuple$1[1];
+ if (offset === localoff) {
+ t.setLoc($pkg.Local);
+ } else {
+ t.setLoc(FixedZone("", offset));
+ }
+ /* } */ case 3:
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.UnmarshalBinary }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._tuple$1 = _tuple$1; $f.buf = buf; $f.data$1 = data$1; $f.localoff = localoff; $f.offset = offset; $f.t = t; $f.x = x; $f.x$1 = x$1; $f.x$10 = x$10; $f.x$11 = x$11; $f.x$12 = x$12; $f.x$13 = x$13; $f.x$14 = x$14; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.x$8 = x$8; $f.x$9 = x$9; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.UnmarshalBinary = function(data$1) { return this.$val.UnmarshalBinary(data$1); };
+ Time.ptr.prototype.GobEncode = function() {
+ var $ptr, _r$1, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ _r$1 = $clone(t, Time).MarshalBinary(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.GobEncode }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.GobEncode = function() { return this.$val.GobEncode(); };
+ Time.ptr.prototype.GobDecode = function(data$1) {
+ var $ptr, _r$1, data$1, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; data$1 = $f.data$1; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ _r$1 = t.UnmarshalBinary(data$1); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.GobDecode }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f.data$1 = data$1; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.GobDecode = function(data$1) { return this.$val.GobDecode(data$1); };
+ Time.ptr.prototype.MarshalJSON = function() {
+ var $ptr, _r$1, _r$2, b, t, y, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; b = $f.b; t = $f.t; y = $f.y; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ _r$1 = $clone(t, Time).Year(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ y = _r$1;
+ if (y < 0 || y >= 10000) {
+ $s = -1; return [sliceType$3.nil, errors.New("Time.MarshalJSON: year outside of range [0,9999]")];
+ }
+ b = $makeSlice(sliceType$3, 0, 37);
+ b = $append(b, 34);
+ _r$2 = $clone(t, Time).AppendFormat(b, "2006-01-02T15:04:05.999999999Z07:00"); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ b = _r$2;
+ b = $append(b, 34);
+ $s = -1; return [b, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.MarshalJSON }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.b = b; $f.t = t; $f.y = y; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.MarshalJSON = function() { return this.$val.MarshalJSON(); };
+ Time.ptr.prototype.UnmarshalJSON = function(data$1) {
+ var $ptr, _r$1, _tuple$1, data$1, err, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _tuple$1 = $f._tuple$1; data$1 = $f.data$1; err = $f.err; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ if (($bytesToString(data$1)) === "null") {
+ $s = -1; return $ifaceNil;
+ }
+ err = $ifaceNil;
+ _r$1 = Parse("\"2006-01-02T15:04:05Z07:00\"", ($bytesToString(data$1))); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ Time.copy(t, _tuple$1[0]);
+ err = _tuple$1[1];
+ $s = -1; return err;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.UnmarshalJSON }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._tuple$1 = _tuple$1; $f.data$1 = data$1; $f.err = err; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.UnmarshalJSON = function(data$1) { return this.$val.UnmarshalJSON(data$1); };
+ Time.ptr.prototype.MarshalText = function() {
+ var $ptr, _r$1, _r$2, b, t, y, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; b = $f.b; t = $f.t; y = $f.y; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ _r$1 = $clone(t, Time).Year(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ y = _r$1;
+ if (y < 0 || y >= 10000) {
+ $s = -1; return [sliceType$3.nil, errors.New("Time.MarshalText: year outside of range [0,9999]")];
+ }
+ b = $makeSlice(sliceType$3, 0, 35);
+ _r$2 = $clone(t, Time).AppendFormat(b, "2006-01-02T15:04:05.999999999Z07:00"); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return [_r$2, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.MarshalText }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.b = b; $f.t = t; $f.y = y; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.MarshalText = function() { return this.$val.MarshalText(); };
+ Time.ptr.prototype.UnmarshalText = function(data$1) {
+ var $ptr, _r$1, _tuple$1, data$1, err, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _tuple$1 = $f._tuple$1; data$1 = $f.data$1; err = $f.err; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ err = $ifaceNil;
+ _r$1 = Parse("2006-01-02T15:04:05Z07:00", ($bytesToString(data$1))); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ Time.copy(t, _tuple$1[0]);
+ err = _tuple$1[1];
+ $s = -1; return err;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Time.ptr.prototype.UnmarshalText }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._tuple$1 = _tuple$1; $f.data$1 = data$1; $f.err = err; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Time.prototype.UnmarshalText = function(data$1) { return this.$val.UnmarshalText(data$1); };
+ Unix = function(sec, nsec) {
+ var $ptr, n, nsec, sec, x, x$1, x$2, x$3;
+ if ((nsec.$high < 0 || (nsec.$high === 0 && nsec.$low < 0)) || (nsec.$high > 0 || (nsec.$high === 0 && nsec.$low >= 1000000000))) {
+ n = $div64(nsec, new $Int64(0, 1000000000), false);
+ sec = (x = n, new $Int64(sec.$high + x.$high, sec.$low + x.$low));
+ nsec = (x$1 = $mul64(n, new $Int64(0, 1000000000)), new $Int64(nsec.$high - x$1.$high, nsec.$low - x$1.$low));
+ if ((nsec.$high < 0 || (nsec.$high === 0 && nsec.$low < 0))) {
+ nsec = (x$2 = new $Int64(0, 1000000000), new $Int64(nsec.$high + x$2.$high, nsec.$low + x$2.$low));
+ sec = (x$3 = new $Int64(0, 1), new $Int64(sec.$high - x$3.$high, sec.$low - x$3.$low));
+ }
+ }
+ return new Time.ptr(new $Int64(sec.$high + 14, sec.$low + 2006054656), (((nsec.$low + ((nsec.$high >> 31) * 4294967296)) >> 0)), $pkg.Local);
+ };
+ $pkg.Unix = Unix;
+ isLeap = function(year) {
+ var $ptr, _r$1, _r$2, _r$3, year;
+ return ((_r$1 = year % 4, _r$1 === _r$1 ? _r$1 : $throwRuntimeError("integer divide by zero")) === 0) && (!(((_r$2 = year % 100, _r$2 === _r$2 ? _r$2 : $throwRuntimeError("integer divide by zero")) === 0)) || ((_r$3 = year % 400, _r$3 === _r$3 ? _r$3 : $throwRuntimeError("integer divide by zero")) === 0));
+ };
+ norm = function(hi, lo, base) {
+ var $ptr, _q, _q$1, _tmp, _tmp$1, base, hi, lo, n, n$1, nhi, nlo;
+ nhi = 0;
+ nlo = 0;
+ if (lo < 0) {
+ n = (_q = ((-lo - 1 >> 0)) / base, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")) + 1 >> 0;
+ hi = hi - (n) >> 0;
+ lo = lo + (($imul(n, base))) >> 0;
+ }
+ if (lo >= base) {
+ n$1 = (_q$1 = lo / base, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero"));
+ hi = hi + (n$1) >> 0;
+ lo = lo - (($imul(n$1, base))) >> 0;
+ }
+ _tmp = hi;
+ _tmp$1 = lo;
+ nhi = _tmp;
+ nlo = _tmp$1;
+ return [nhi, nlo];
+ };
+ Date = function(year, month, day, hour, min, sec, nsec, loc) {
+ var $ptr, _r$1, _r$2, _r$3, _tuple$1, _tuple$2, _tuple$3, _tuple$4, _tuple$5, _tuple$6, _tuple$7, _tuple$8, abs, d, day, end, hour, loc, m, min, month, n, nsec, offset, sec, start, t, unix, utc, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, y, year, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; _tuple$5 = $f._tuple$5; _tuple$6 = $f._tuple$6; _tuple$7 = $f._tuple$7; _tuple$8 = $f._tuple$8; abs = $f.abs; d = $f.d; day = $f.day; end = $f.end; hour = $f.hour; loc = $f.loc; m = $f.m; min = $f.min; month = $f.month; n = $f.n; nsec = $f.nsec; offset = $f.offset; sec = $f.sec; start = $f.start; t = $f.t; unix = $f.unix; utc = $f.utc; x = $f.x; x$1 = $f.x$1; x$10 = $f.x$10; x$11 = $f.x$11; x$12 = $f.x$12; x$13 = $f.x$13; x$14 = $f.x$14; x$15 = $f.x$15; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; x$8 = $f.x$8; x$9 = $f.x$9; y = $f.y; year = $f.year; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ if (loc === ptrType$1.nil) {
+ $panic(new $String("time: missing Location in call to Date"));
+ }
+ m = ((month >> 0)) - 1 >> 0;
+ _tuple$1 = norm(year, m, 12);
+ year = _tuple$1[0];
+ m = _tuple$1[1];
+ month = ((m >> 0)) + 1 >> 0;
+ _tuple$2 = norm(sec, nsec, 1000000000);
+ sec = _tuple$2[0];
+ nsec = _tuple$2[1];
+ _tuple$3 = norm(min, sec, 60);
+ min = _tuple$3[0];
+ sec = _tuple$3[1];
+ _tuple$4 = norm(hour, min, 60);
+ hour = _tuple$4[0];
+ min = _tuple$4[1];
+ _tuple$5 = norm(day, hour, 24);
+ day = _tuple$5[0];
+ hour = _tuple$5[1];
+ y = ((x = (x$1 = (new $Int64(0, year)), new $Int64(x$1.$high - -69, x$1.$low - 4075721025)), new $Uint64(x.$high, x.$low)));
+ n = $div64(y, new $Uint64(0, 400), false);
+ y = (x$2 = $mul64(new $Uint64(0, 400), n), new $Uint64(y.$high - x$2.$high, y.$low - x$2.$low));
+ d = $mul64(new $Uint64(0, 146097), n);
+ n = $div64(y, new $Uint64(0, 100), false);
+ y = (x$3 = $mul64(new $Uint64(0, 100), n), new $Uint64(y.$high - x$3.$high, y.$low - x$3.$low));
+ d = (x$4 = $mul64(new $Uint64(0, 36524), n), new $Uint64(d.$high + x$4.$high, d.$low + x$4.$low));
+ n = $div64(y, new $Uint64(0, 4), false);
+ y = (x$5 = $mul64(new $Uint64(0, 4), n), new $Uint64(y.$high - x$5.$high, y.$low - x$5.$low));
+ d = (x$6 = $mul64(new $Uint64(0, 1461), n), new $Uint64(d.$high + x$6.$high, d.$low + x$6.$low));
+ n = y;
+ d = (x$7 = $mul64(new $Uint64(0, 365), n), new $Uint64(d.$high + x$7.$high, d.$low + x$7.$low));
+ d = (x$8 = (new $Uint64(0, (x$9 = month - 1 >> 0, ((x$9 < 0 || x$9 >= daysBefore.length) ? ($throwRuntimeError("index out of range"), undefined) : daysBefore[x$9])))), new $Uint64(d.$high + x$8.$high, d.$low + x$8.$low));
+ if (isLeap(year) && month >= 3) {
+ d = (x$10 = new $Uint64(0, 1), new $Uint64(d.$high + x$10.$high, d.$low + x$10.$low));
+ }
+ d = (x$11 = (new $Uint64(0, (day - 1 >> 0))), new $Uint64(d.$high + x$11.$high, d.$low + x$11.$low));
+ abs = $mul64(d, new $Uint64(0, 86400));
+ abs = (x$12 = (new $Uint64(0, ((($imul(hour, 3600)) + ($imul(min, 60)) >> 0) + sec >> 0))), new $Uint64(abs.$high + x$12.$high, abs.$low + x$12.$low));
+ unix = (x$13 = (new $Int64(abs.$high, abs.$low)), new $Int64(x$13.$high + -2147483647, x$13.$low + 3844486912));
+ _r$1 = loc.lookup(unix); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$6 = _r$1;
+ offset = _tuple$6[1];
+ start = _tuple$6[3];
+ end = _tuple$6[4];
+ /* */ if (!((offset === 0))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!((offset === 0))) { */ case 2:
+ utc = (x$14 = (new $Int64(0, offset)), new $Int64(unix.$high - x$14.$high, unix.$low - x$14.$low));
+ /* */ if ((utc.$high < start.$high || (utc.$high === start.$high && utc.$low < start.$low))) { $s = 5; continue; }
+ /* */ if ((utc.$high > end.$high || (utc.$high === end.$high && utc.$low >= end.$low))) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if ((utc.$high < start.$high || (utc.$high === start.$high && utc.$low < start.$low))) { */ case 5:
+ _r$2 = loc.lookup(new $Int64(start.$high - 0, start.$low - 1)); /* */ $s = 8; case 8: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$7 = _r$2;
+ offset = _tuple$7[1];
+ $s = 7; continue;
+ /* } else if ((utc.$high > end.$high || (utc.$high === end.$high && utc.$low >= end.$low))) { */ case 6:
+ _r$3 = loc.lookup(end); /* */ $s = 9; case 9: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _tuple$8 = _r$3;
+ offset = _tuple$8[1];
+ /* } */ case 7:
+ case 4:
+ unix = (x$15 = (new $Int64(0, offset)), new $Int64(unix.$high - x$15.$high, unix.$low - x$15.$low));
+ /* } */ case 3:
+ t = new Time.ptr(new $Int64(unix.$high + 14, unix.$low + 2006054656), ((nsec >> 0)), ptrType$1.nil);
+ t.setLoc(loc);
+ $s = -1; return t;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Date }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f._tuple$5 = _tuple$5; $f._tuple$6 = _tuple$6; $f._tuple$7 = _tuple$7; $f._tuple$8 = _tuple$8; $f.abs = abs; $f.d = d; $f.day = day; $f.end = end; $f.hour = hour; $f.loc = loc; $f.m = m; $f.min = min; $f.month = month; $f.n = n; $f.nsec = nsec; $f.offset = offset; $f.sec = sec; $f.start = start; $f.t = t; $f.unix = unix; $f.utc = utc; $f.x = x; $f.x$1 = x$1; $f.x$10 = x$10; $f.x$11 = x$11; $f.x$12 = x$12; $f.x$13 = x$13; $f.x$14 = x$14; $f.x$15 = x$15; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.x$8 = x$8; $f.x$9 = x$9; $f.y = y; $f.year = year; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Date = Date;
+ Time.ptr.prototype.Truncate = function(d) {
+ var $ptr, _tuple$1, d, r, t;
+ t = this;
+ if ((d.$high < 0 || (d.$high === 0 && d.$low <= 0))) {
+ return t;
+ }
+ _tuple$1 = div($clone(t, Time), d);
+ r = _tuple$1[1];
+ return $clone(t, Time).Add(new Duration(-r.$high, -r.$low));
+ };
+ Time.prototype.Truncate = function(d) { return this.$val.Truncate(d); };
+ Time.ptr.prototype.Round = function(d) {
+ var $ptr, _tuple$1, d, r, t, x;
+ t = this;
+ if ((d.$high < 0 || (d.$high === 0 && d.$low <= 0))) {
+ return t;
+ }
+ _tuple$1 = div($clone(t, Time), d);
+ r = _tuple$1[1];
+ if ((x = new Duration(r.$high + r.$high, r.$low + r.$low), (x.$high < d.$high || (x.$high === d.$high && x.$low < d.$low)))) {
+ return $clone(t, Time).Add(new Duration(-r.$high, -r.$low));
+ }
+ return $clone(t, Time).Add(new Duration(d.$high - r.$high, d.$low - r.$low));
+ };
+ Time.prototype.Round = function(d) { return this.$val.Round(d); };
+ div = function(t, d) {
+ var $ptr, _q, _r$1, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, d, d0, d1, d1$1, neg, nsec, qmod2, r, sec, t, tmp, u0, u0x, u1, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$19, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ qmod2 = 0;
+ r = new Duration(0, 0);
+ neg = false;
+ nsec = t.nsec;
+ if ((x = t.sec, (x.$high < 0 || (x.$high === 0 && x.$low < 0)))) {
+ neg = true;
+ t.sec = (x$1 = t.sec, new $Int64(-x$1.$high, -x$1.$low));
+ nsec = -nsec;
+ if (nsec < 0) {
+ nsec = nsec + (1000000000) >> 0;
+ t.sec = (x$2 = t.sec, x$3 = new $Int64(0, 1), new $Int64(x$2.$high - x$3.$high, x$2.$low - x$3.$low));
+ }
+ }
+ if ((d.$high < 0 || (d.$high === 0 && d.$low < 1000000000)) && (x$4 = $div64(new Duration(0, 1000000000), (new Duration(d.$high + d.$high, d.$low + d.$low)), true), (x$4.$high === 0 && x$4.$low === 0))) {
+ qmod2 = (((_q = nsec / (((d.$low + ((d.$high >> 31) * 4294967296)) >> 0)), (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")) >> 0)) & 1;
+ r = (new Duration(0, (_r$1 = nsec % (((d.$low + ((d.$high >> 31) * 4294967296)) >> 0)), _r$1 === _r$1 ? _r$1 : $throwRuntimeError("integer divide by zero"))));
+ } else if ((x$5 = $div64(d, new Duration(0, 1000000000), true), (x$5.$high === 0 && x$5.$low === 0))) {
+ d1 = ((x$6 = $div64(d, new Duration(0, 1000000000), false), new $Int64(x$6.$high, x$6.$low)));
+ qmod2 = (((x$7 = $div64(t.sec, d1, false), x$7.$low + ((x$7.$high >> 31) * 4294967296)) >> 0)) & 1;
+ r = (x$8 = $mul64(((x$9 = $div64(t.sec, d1, true), new Duration(x$9.$high, x$9.$low))), new Duration(0, 1000000000)), x$10 = (new Duration(0, nsec)), new Duration(x$8.$high + x$10.$high, x$8.$low + x$10.$low));
+ } else {
+ sec = ((x$11 = t.sec, new $Uint64(x$11.$high, x$11.$low)));
+ tmp = $mul64(($shiftRightUint64(sec, 32)), new $Uint64(0, 1000000000));
+ u1 = $shiftRightUint64(tmp, 32);
+ u0 = $shiftLeft64(tmp, 32);
+ tmp = $mul64((new $Uint64(sec.$high & 0, (sec.$low & 4294967295) >>> 0)), new $Uint64(0, 1000000000));
+ _tmp = u0;
+ _tmp$1 = new $Uint64(u0.$high + tmp.$high, u0.$low + tmp.$low);
+ u0x = _tmp;
+ u0 = _tmp$1;
+ if ((u0.$high < u0x.$high || (u0.$high === u0x.$high && u0.$low < u0x.$low))) {
+ u1 = (x$12 = new $Uint64(0, 1), new $Uint64(u1.$high + x$12.$high, u1.$low + x$12.$low));
+ }
+ _tmp$2 = u0;
+ _tmp$3 = (x$13 = (new $Uint64(0, nsec)), new $Uint64(u0.$high + x$13.$high, u0.$low + x$13.$low));
+ u0x = _tmp$2;
+ u0 = _tmp$3;
+ if ((u0.$high < u0x.$high || (u0.$high === u0x.$high && u0.$low < u0x.$low))) {
+ u1 = (x$14 = new $Uint64(0, 1), new $Uint64(u1.$high + x$14.$high, u1.$low + x$14.$low));
+ }
+ d1$1 = (new $Uint64(d.$high, d.$low));
+ while (true) {
+ if (!(!((x$15 = $shiftRightUint64(d1$1, 63), (x$15.$high === 0 && x$15.$low === 1))))) { break; }
+ d1$1 = $shiftLeft64(d1$1, (1));
+ }
+ d0 = new $Uint64(0, 0);
+ while (true) {
+ qmod2 = 0;
+ if ((u1.$high > d1$1.$high || (u1.$high === d1$1.$high && u1.$low > d1$1.$low)) || (u1.$high === d1$1.$high && u1.$low === d1$1.$low) && (u0.$high > d0.$high || (u0.$high === d0.$high && u0.$low >= d0.$low))) {
+ qmod2 = 1;
+ _tmp$4 = u0;
+ _tmp$5 = new $Uint64(u0.$high - d0.$high, u0.$low - d0.$low);
+ u0x = _tmp$4;
+ u0 = _tmp$5;
+ if ((u0.$high > u0x.$high || (u0.$high === u0x.$high && u0.$low > u0x.$low))) {
+ u1 = (x$16 = new $Uint64(0, 1), new $Uint64(u1.$high - x$16.$high, u1.$low - x$16.$low));
+ }
+ u1 = (x$17 = d1$1, new $Uint64(u1.$high - x$17.$high, u1.$low - x$17.$low));
+ }
+ if ((d1$1.$high === 0 && d1$1.$low === 0) && (x$18 = (new $Uint64(d.$high, d.$low)), (d0.$high === x$18.$high && d0.$low === x$18.$low))) {
+ break;
+ }
+ d0 = $shiftRightUint64(d0, (1));
+ d0 = (x$19 = $shiftLeft64((new $Uint64(d1$1.$high & 0, (d1$1.$low & 1) >>> 0)), 63), new $Uint64(d0.$high | x$19.$high, (d0.$low | x$19.$low) >>> 0));
+ d1$1 = $shiftRightUint64(d1$1, (1));
+ }
+ r = (new Duration(u0.$high, u0.$low));
+ }
+ if (neg && !((r.$high === 0 && r.$low === 0))) {
+ qmod2 = (qmod2 ^ (1)) >> 0;
+ r = new Duration(d.$high - r.$high, d.$low - r.$low);
+ }
+ return [qmod2, r];
+ };
+ Location.ptr.prototype.get = function() {
+ var $ptr, l, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; l = $f.l; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ l = this;
+ if (l === ptrType$1.nil) {
+ $s = -1; return utcLoc;
+ }
+ /* */ if (l === localLoc) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (l === localLoc) { */ case 1:
+ $r = localOnce.Do(initLocal); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 2:
+ $s = -1; return l;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Location.ptr.prototype.get }; } $f.$ptr = $ptr; $f.l = l; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Location.prototype.get = function() { return this.$val.get(); };
+ Location.ptr.prototype.String = function() {
+ var $ptr, _r$1, l, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; l = $f.l; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ l = this;
+ _r$1 = l.get(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1.name;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Location.ptr.prototype.String }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f.l = l; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Location.prototype.String = function() { return this.$val.String(); };
+ FixedZone = function(name, offset) {
+ var $ptr, l, name, offset, x;
+ l = new Location.ptr(name, new sliceType([new zone.ptr(name, offset, false)]), new sliceType$1([new zoneTrans.ptr(new $Int64(-2147483648, 0), 0, false, false)]), new $Int64(-2147483648, 0), new $Int64(2147483647, 4294967295), ptrType.nil);
+ l.cacheZone = (x = l.zone, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0]));
+ return l;
+ };
+ $pkg.FixedZone = FixedZone;
+ Location.ptr.prototype.lookup = function(sec) {
+ var $ptr, _q, _r$1, end, hi, isDST, l, lim, lo, m, name, offset, sec, start, tx, x, x$1, x$2, x$3, x$4, x$5, x$6, x$7, x$8, zone$1, zone$2, zone$3, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; _r$1 = $f._r$1; end = $f.end; hi = $f.hi; isDST = $f.isDST; l = $f.l; lim = $f.lim; lo = $f.lo; m = $f.m; name = $f.name; offset = $f.offset; sec = $f.sec; start = $f.start; tx = $f.tx; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; x$8 = $f.x$8; zone$1 = $f.zone$1; zone$2 = $f.zone$2; zone$3 = $f.zone$3; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ name = "";
+ offset = 0;
+ isDST = false;
+ start = new $Int64(0, 0);
+ end = new $Int64(0, 0);
+ l = this;
+ _r$1 = l.get(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ l = _r$1;
+ if (l.zone.$length === 0) {
+ name = "UTC";
+ offset = 0;
+ isDST = false;
+ start = new $Int64(-2147483648, 0);
+ end = new $Int64(2147483647, 4294967295);
+ $s = -1; return [name, offset, isDST, start, end];
+ }
+ zone$1 = l.cacheZone;
+ if (!(zone$1 === ptrType.nil) && (x = l.cacheStart, (x.$high < sec.$high || (x.$high === sec.$high && x.$low <= sec.$low))) && (x$1 = l.cacheEnd, (sec.$high < x$1.$high || (sec.$high === x$1.$high && sec.$low < x$1.$low)))) {
+ name = zone$1.name;
+ offset = zone$1.offset;
+ isDST = zone$1.isDST;
+ start = l.cacheStart;
+ end = l.cacheEnd;
+ $s = -1; return [name, offset, isDST, start, end];
+ }
+ if ((l.tx.$length === 0) || (x$2 = (x$3 = l.tx, (0 >= x$3.$length ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + 0])).when, (sec.$high < x$2.$high || (sec.$high === x$2.$high && sec.$low < x$2.$low)))) {
+ zone$2 = (x$4 = l.zone, x$5 = l.lookupFirstZone(), ((x$5 < 0 || x$5 >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + x$5]));
+ name = zone$2.name;
+ offset = zone$2.offset;
+ isDST = zone$2.isDST;
+ start = new $Int64(-2147483648, 0);
+ if (l.tx.$length > 0) {
+ end = (x$6 = l.tx, (0 >= x$6.$length ? ($throwRuntimeError("index out of range"), undefined) : x$6.$array[x$6.$offset + 0])).when;
+ } else {
+ end = new $Int64(2147483647, 4294967295);
+ }
+ $s = -1; return [name, offset, isDST, start, end];
+ }
+ tx = l.tx;
+ end = new $Int64(2147483647, 4294967295);
+ lo = 0;
+ hi = tx.$length;
+ while (true) {
+ if (!((hi - lo >> 0) > 1)) { break; }
+ m = lo + (_q = ((hi - lo >> 0)) / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")) >> 0;
+ lim = ((m < 0 || m >= tx.$length) ? ($throwRuntimeError("index out of range"), undefined) : tx.$array[tx.$offset + m]).when;
+ if ((sec.$high < lim.$high || (sec.$high === lim.$high && sec.$low < lim.$low))) {
+ end = lim;
+ hi = m;
+ } else {
+ lo = m;
+ }
+ }
+ zone$3 = (x$7 = l.zone, x$8 = ((lo < 0 || lo >= tx.$length) ? ($throwRuntimeError("index out of range"), undefined) : tx.$array[tx.$offset + lo]).index, ((x$8 < 0 || x$8 >= x$7.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$7.$array[x$7.$offset + x$8]));
+ name = zone$3.name;
+ offset = zone$3.offset;
+ isDST = zone$3.isDST;
+ start = ((lo < 0 || lo >= tx.$length) ? ($throwRuntimeError("index out of range"), undefined) : tx.$array[tx.$offset + lo]).when;
+ $s = -1; return [name, offset, isDST, start, end];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Location.ptr.prototype.lookup }; } $f.$ptr = $ptr; $f._q = _q; $f._r$1 = _r$1; $f.end = end; $f.hi = hi; $f.isDST = isDST; $f.l = l; $f.lim = lim; $f.lo = lo; $f.m = m; $f.name = name; $f.offset = offset; $f.sec = sec; $f.start = start; $f.tx = tx; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.x$8 = x$8; $f.zone$1 = zone$1; $f.zone$2 = zone$2; $f.zone$3 = zone$3; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Location.prototype.lookup = function(sec) { return this.$val.lookup(sec); };
+ Location.ptr.prototype.lookupFirstZone = function() {
+ var $ptr, _i, _ref, l, x, x$1, x$2, x$3, x$4, x$5, zi, zi$1;
+ l = this;
+ if (!l.firstZoneUsed()) {
+ return 0;
+ }
+ if (l.tx.$length > 0 && (x = l.zone, x$1 = (x$2 = l.tx, (0 >= x$2.$length ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + 0])).index, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1])).isDST) {
+ zi = (((x$3 = l.tx, (0 >= x$3.$length ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + 0])).index >> 0)) - 1 >> 0;
+ while (true) {
+ if (!(zi >= 0)) { break; }
+ if (!(x$4 = l.zone, ((zi < 0 || zi >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + zi])).isDST) {
+ return zi;
+ }
+ zi = zi - (1) >> 0;
+ }
+ }
+ _ref = l.zone;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ zi$1 = _i;
+ if (!(x$5 = l.zone, ((zi$1 < 0 || zi$1 >= x$5.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$5.$array[x$5.$offset + zi$1])).isDST) {
+ return zi$1;
+ }
+ _i++;
+ }
+ return 0;
+ };
+ Location.prototype.lookupFirstZone = function() { return this.$val.lookupFirstZone(); };
+ Location.ptr.prototype.firstZoneUsed = function() {
+ var $ptr, _i, _ref, l, tx;
+ l = this;
+ _ref = l.tx;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ tx = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), zoneTrans);
+ if (tx.index === 0) {
+ return true;
+ }
+ _i++;
+ }
+ return false;
+ };
+ Location.prototype.firstZoneUsed = function() { return this.$val.firstZoneUsed(); };
+ Location.ptr.prototype.lookupName = function(name, unix) {
+ var $ptr, _i, _i$1, _r$1, _r$2, _ref, _ref$1, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tuple$1, i, i$1, isDST, isDST$1, l, nam, name, offset, offset$1, ok, unix, x, x$1, x$2, zone$1, zone$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _i$1 = $f._i$1; _r$1 = $f._r$1; _r$2 = $f._r$2; _ref = $f._ref; _ref$1 = $f._ref$1; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tuple$1 = $f._tuple$1; i = $f.i; i$1 = $f.i$1; isDST = $f.isDST; isDST$1 = $f.isDST$1; l = $f.l; nam = $f.nam; name = $f.name; offset = $f.offset; offset$1 = $f.offset$1; ok = $f.ok; unix = $f.unix; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; zone$1 = $f.zone$1; zone$2 = $f.zone$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ offset = 0;
+ isDST = false;
+ ok = false;
+ l = this;
+ _r$1 = l.get(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ l = _r$1;
+ _ref = l.zone;
+ _i = 0;
+ /* while (true) { */ case 2:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 3; continue; }
+ i = _i;
+ zone$1 = (x = l.zone, ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]));
+ /* */ if (zone$1.name === name) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (zone$1.name === name) { */ case 4:
+ _r$2 = l.lookup((x$1 = (new $Int64(0, zone$1.offset)), new $Int64(unix.$high - x$1.$high, unix.$low - x$1.$low))); /* */ $s = 6; case 6: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$1 = _r$2;
+ nam = _tuple$1[0];
+ offset$1 = _tuple$1[1];
+ isDST$1 = _tuple$1[2];
+ if (nam === zone$1.name) {
+ _tmp = offset$1;
+ _tmp$1 = isDST$1;
+ _tmp$2 = true;
+ offset = _tmp;
+ isDST = _tmp$1;
+ ok = _tmp$2;
+ $s = -1; return [offset, isDST, ok];
+ }
+ /* } */ case 5:
+ _i++;
+ /* } */ $s = 2; continue; case 3:
+ _ref$1 = l.zone;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ i$1 = _i$1;
+ zone$2 = (x$2 = l.zone, ((i$1 < 0 || i$1 >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + i$1]));
+ if (zone$2.name === name) {
+ _tmp$3 = zone$2.offset;
+ _tmp$4 = zone$2.isDST;
+ _tmp$5 = true;
+ offset = _tmp$3;
+ isDST = _tmp$4;
+ ok = _tmp$5;
+ $s = -1; return [offset, isDST, ok];
+ }
+ _i$1++;
+ }
+ $s = -1; return [offset, isDST, ok];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Location.ptr.prototype.lookupName }; } $f.$ptr = $ptr; $f._i = _i; $f._i$1 = _i$1; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._ref = _ref; $f._ref$1 = _ref$1; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tuple$1 = _tuple$1; $f.i = i; $f.i$1 = i$1; $f.isDST = isDST; $f.isDST$1 = isDST$1; $f.l = l; $f.nam = nam; $f.name = name; $f.offset = offset; $f.offset$1 = offset$1; $f.ok = ok; $f.unix = unix; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.zone$1 = zone$1; $f.zone$2 = zone$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Location.prototype.lookupName = function(name, unix) { return this.$val.lookupName(name, unix); };
+ ptrType$3.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ Time.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Format", name: "Format", pkg: "", typ: $funcType([$String], [$String], false)}, {prop: "AppendFormat", name: "AppendFormat", pkg: "", typ: $funcType([sliceType$3, $String], [sliceType$3], false)}, {prop: "After", name: "After", pkg: "", typ: $funcType([Time], [$Bool], false)}, {prop: "Before", name: "Before", pkg: "", typ: $funcType([Time], [$Bool], false)}, {prop: "Equal", name: "Equal", pkg: "", typ: $funcType([Time], [$Bool], false)}, {prop: "IsZero", name: "IsZero", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "abs", name: "abs", pkg: "time", typ: $funcType([], [$Uint64], false)}, {prop: "locabs", name: "locabs", pkg: "time", typ: $funcType([], [$String, $Int, $Uint64], false)}, {prop: "Date", name: "Date", pkg: "", typ: $funcType([], [$Int, Month, $Int], false)}, {prop: "Year", name: "Year", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Month", name: "Month", pkg: "", typ: $funcType([], [Month], false)}, {prop: "Day", name: "Day", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Weekday", name: "Weekday", pkg: "", typ: $funcType([], [Weekday], false)}, {prop: "ISOWeek", name: "ISOWeek", pkg: "", typ: $funcType([], [$Int, $Int], false)}, {prop: "Clock", name: "Clock", pkg: "", typ: $funcType([], [$Int, $Int, $Int], false)}, {prop: "Hour", name: "Hour", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Minute", name: "Minute", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Second", name: "Second", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Nanosecond", name: "Nanosecond", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "YearDay", name: "YearDay", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Add", name: "Add", pkg: "", typ: $funcType([Duration], [Time], false)}, {prop: "Sub", name: "Sub", pkg: "", typ: $funcType([Time], [Duration], false)}, {prop: "AddDate", name: "AddDate", pkg: "", typ: $funcType([$Int, $Int, $Int], [Time], false)}, {prop: "date", name: "date", pkg: "time", typ: $funcType([$Bool], [$Int, Month, $Int, $Int], false)}, {prop: "UTC", name: "UTC", pkg: "", typ: $funcType([], [Time], false)}, {prop: "Local", name: "Local", pkg: "", typ: $funcType([], [Time], false)}, {prop: "In", name: "In", pkg: "", typ: $funcType([ptrType$1], [Time], false)}, {prop: "Location", name: "Location", pkg: "", typ: $funcType([], [ptrType$1], false)}, {prop: "Zone", name: "Zone", pkg: "", typ: $funcType([], [$String, $Int], false)}, {prop: "Unix", name: "Unix", pkg: "", typ: $funcType([], [$Int64], false)}, {prop: "UnixNano", name: "UnixNano", pkg: "", typ: $funcType([], [$Int64], false)}, {prop: "MarshalBinary", name: "MarshalBinary", pkg: "", typ: $funcType([], [sliceType$3, $error], false)}, {prop: "GobEncode", name: "GobEncode", pkg: "", typ: $funcType([], [sliceType$3, $error], false)}, {prop: "MarshalJSON", name: "MarshalJSON", pkg: "", typ: $funcType([], [sliceType$3, $error], false)}, {prop: "MarshalText", name: "MarshalText", pkg: "", typ: $funcType([], [sliceType$3, $error], false)}, {prop: "Truncate", name: "Truncate", pkg: "", typ: $funcType([Duration], [Time], false)}, {prop: "Round", name: "Round", pkg: "", typ: $funcType([Duration], [Time], false)}];
+ ptrType$6.methods = [{prop: "setLoc", name: "setLoc", pkg: "time", typ: $funcType([ptrType$1], [], false)}, {prop: "UnmarshalBinary", name: "UnmarshalBinary", pkg: "", typ: $funcType([sliceType$3], [$error], false)}, {prop: "GobDecode", name: "GobDecode", pkg: "", typ: $funcType([sliceType$3], [$error], false)}, {prop: "UnmarshalJSON", name: "UnmarshalJSON", pkg: "", typ: $funcType([sliceType$3], [$error], false)}, {prop: "UnmarshalText", name: "UnmarshalText", pkg: "", typ: $funcType([sliceType$3], [$error], false)}];
+ Month.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ Weekday.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ Duration.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Nanoseconds", name: "Nanoseconds", pkg: "", typ: $funcType([], [$Int64], false)}, {prop: "Seconds", name: "Seconds", pkg: "", typ: $funcType([], [$Float64], false)}, {prop: "Minutes", name: "Minutes", pkg: "", typ: $funcType([], [$Float64], false)}, {prop: "Hours", name: "Hours", pkg: "", typ: $funcType([], [$Float64], false)}];
+ ptrType$1.methods = [{prop: "get", name: "get", pkg: "time", typ: $funcType([], [ptrType$1], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "lookup", name: "lookup", pkg: "time", typ: $funcType([$Int64], [$String, $Int, $Bool, $Int64, $Int64], false)}, {prop: "lookupFirstZone", name: "lookupFirstZone", pkg: "time", typ: $funcType([], [$Int], false)}, {prop: "firstZoneUsed", name: "firstZoneUsed", pkg: "time", typ: $funcType([], [$Bool], false)}, {prop: "lookupName", name: "lookupName", pkg: "time", typ: $funcType([$String, $Int64], [$Int, $Bool, $Bool], false)}];
+ ParseError.init("", [{prop: "Layout", name: "Layout", exported: true, typ: $String, tag: ""}, {prop: "Value", name: "Value", exported: true, typ: $String, tag: ""}, {prop: "LayoutElem", name: "LayoutElem", exported: true, typ: $String, tag: ""}, {prop: "ValueElem", name: "ValueElem", exported: true, typ: $String, tag: ""}, {prop: "Message", name: "Message", exported: true, typ: $String, tag: ""}]);
+ Time.init("time", [{prop: "sec", name: "sec", exported: false, typ: $Int64, tag: ""}, {prop: "nsec", name: "nsec", exported: false, typ: $Int32, tag: ""}, {prop: "loc", name: "loc", exported: false, typ: ptrType$1, tag: ""}]);
+ Location.init("time", [{prop: "name", name: "name", exported: false, typ: $String, tag: ""}, {prop: "zone", name: "zone", exported: false, typ: sliceType, tag: ""}, {prop: "tx", name: "tx", exported: false, typ: sliceType$1, tag: ""}, {prop: "cacheStart", name: "cacheStart", exported: false, typ: $Int64, tag: ""}, {prop: "cacheEnd", name: "cacheEnd", exported: false, typ: $Int64, tag: ""}, {prop: "cacheZone", name: "cacheZone", exported: false, typ: ptrType, tag: ""}]);
+ zone.init("time", [{prop: "name", name: "name", exported: false, typ: $String, tag: ""}, {prop: "offset", name: "offset", exported: false, typ: $Int, tag: ""}, {prop: "isDST", name: "isDST", exported: false, typ: $Bool, tag: ""}]);
+ zoneTrans.init("time", [{prop: "when", name: "when", exported: false, typ: $Int64, tag: ""}, {prop: "index", name: "index", exported: false, typ: $Uint8, tag: ""}, {prop: "isstd", name: "isstd", exported: false, typ: $Bool, tag: ""}, {prop: "isutc", name: "isutc", exported: false, typ: $Bool, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = errors.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = js.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = nosync.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = syscall.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ localLoc = new Location.ptr("", sliceType.nil, sliceType$1.nil, new $Int64(0, 0), new $Int64(0, 0), ptrType.nil);
+ localOnce = new nosync.Once.ptr(false, false);
+ std0x = $toNativeArray($kindInt, [260, 265, 524, 526, 528, 274]);
+ longDayNames = new sliceType$2(["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]);
+ shortDayNames = new sliceType$2(["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]);
+ shortMonthNames = new sliceType$2(["---", "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]);
+ longMonthNames = new sliceType$2(["---", "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]);
+ atoiError = errors.New("time: invalid number");
+ errBad = errors.New("bad value for field");
+ errLeadingInt = errors.New("time: bad [0-9]*");
+ months = $toNativeArray($kindString, ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]);
+ days = $toNativeArray($kindString, ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]);
+ unitMap = $makeMap($String.keyFor, [{ k: "ns", v: new $Int64(0, 1) }, { k: "us", v: new $Int64(0, 1000) }, { k: "\xC2\xB5s", v: new $Int64(0, 1000) }, { k: "\xCE\xBCs", v: new $Int64(0, 1000) }, { k: "ms", v: new $Int64(0, 1000000) }, { k: "s", v: new $Int64(0, 1000000000) }, { k: "m", v: new $Int64(13, 4165425152) }, { k: "h", v: new $Int64(838, 817405952) }]);
+ daysBefore = $toNativeArray($kindInt32, [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334, 365]);
+ utcLoc = new Location.ptr("UTC", sliceType.nil, sliceType$1.nil, new $Int64(0, 0), new $Int64(0, 0), ptrType.nil);
+ $pkg.UTC = utcLoc;
+ $pkg.Local = localLoc;
+ _r = syscall.Getenv("ZONEINFO"); /* */ $s = 6; case 6: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ zoneinfo = _tuple[0];
+ badData = errors.New("malformed time zone information");
+ zoneDirs = new sliceType$2(["/usr/share/zoneinfo/", "/usr/share/lib/zoneinfo/", "/usr/lib/locale/TZ/", runtime.GOROOT() + "/lib/time/zoneinfo.zip"]);
+ init();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["os"] = (function() {
+ var $pkg = {}, $init, errors, js, io, runtime, sync, atomic, syscall, time, PathError, SyscallError, LinkError, file, dirInfo, File, FileInfo, FileMode, fileStat, sliceType, ptrType, sliceType$1, ptrType$1, sliceType$2, ptrType$2, ptrType$3, ptrType$4, ptrType$12, funcType$1, ptrType$14, arrayType$2, arrayType$5, ptrType$15, errFinished, lstat, runtime_args, init, runtime_beforeExit, Getenv, NewSyscallError, IsNotExist, underlyingError, isNotExist, Open, fixCount, sigpipe, syscallMode, Chmod, NewFile, epipecheck, OpenFile, basename, init$1, Getuid, Getgid, Exit, fillFileStatFromSys, timespecToTime, Stat, Lstat, Getpagesize;
+ errors = $packages["errors"];
+ js = $packages["github.com/gopherjs/gopherjs/js"];
+ io = $packages["io"];
+ runtime = $packages["runtime"];
+ sync = $packages["sync"];
+ atomic = $packages["sync/atomic"];
+ syscall = $packages["syscall"];
+ time = $packages["time"];
+ PathError = $pkg.PathError = $newType(0, $kindStruct, "os.PathError", true, "os", true, function(Op_, Path_, Err_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Op = "";
+ this.Path = "";
+ this.Err = $ifaceNil;
+ return;
+ }
+ this.Op = Op_;
+ this.Path = Path_;
+ this.Err = Err_;
+ });
+ SyscallError = $pkg.SyscallError = $newType(0, $kindStruct, "os.SyscallError", true, "os", true, function(Syscall_, Err_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Syscall = "";
+ this.Err = $ifaceNil;
+ return;
+ }
+ this.Syscall = Syscall_;
+ this.Err = Err_;
+ });
+ LinkError = $pkg.LinkError = $newType(0, $kindStruct, "os.LinkError", true, "os", true, function(Op_, Old_, New_, Err_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Op = "";
+ this.Old = "";
+ this.New = "";
+ this.Err = $ifaceNil;
+ return;
+ }
+ this.Op = Op_;
+ this.Old = Old_;
+ this.New = New_;
+ this.Err = Err_;
+ });
+ file = $pkg.file = $newType(0, $kindStruct, "os.file", true, "os", false, function(fd_, name_, dirinfo_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.fd = 0;
+ this.name = "";
+ this.dirinfo = ptrType$1.nil;
+ return;
+ }
+ this.fd = fd_;
+ this.name = name_;
+ this.dirinfo = dirinfo_;
+ });
+ dirInfo = $pkg.dirInfo = $newType(0, $kindStruct, "os.dirInfo", true, "os", false, function(buf_, nbuf_, bufp_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.buf = sliceType$2.nil;
+ this.nbuf = 0;
+ this.bufp = 0;
+ return;
+ }
+ this.buf = buf_;
+ this.nbuf = nbuf_;
+ this.bufp = bufp_;
+ });
+ File = $pkg.File = $newType(0, $kindStruct, "os.File", true, "os", true, function(file_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.file = ptrType$12.nil;
+ return;
+ }
+ this.file = file_;
+ });
+ FileInfo = $pkg.FileInfo = $newType(8, $kindInterface, "os.FileInfo", true, "os", true, null);
+ FileMode = $pkg.FileMode = $newType(4, $kindUint32, "os.FileMode", true, "os", true, null);
+ fileStat = $pkg.fileStat = $newType(0, $kindStruct, "os.fileStat", true, "os", false, function(name_, size_, mode_, modTime_, sys_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.name = "";
+ this.size = new $Int64(0, 0);
+ this.mode = 0;
+ this.modTime = new time.Time.ptr(new $Int64(0, 0), 0, ptrType$14.nil);
+ this.sys = new syscall.Stat_t.ptr(new $Uint64(0, 0), new $Uint64(0, 0), new $Uint64(0, 0), 0, 0, 0, 0, new $Uint64(0, 0), new $Int64(0, 0), new $Int64(0, 0), new $Int64(0, 0), new syscall.Timespec.ptr(new $Int64(0, 0), new $Int64(0, 0)), new syscall.Timespec.ptr(new $Int64(0, 0), new $Int64(0, 0)), new syscall.Timespec.ptr(new $Int64(0, 0), new $Int64(0, 0)), arrayType$2.zero());
+ return;
+ }
+ this.name = name_;
+ this.size = size_;
+ this.mode = mode_;
+ this.modTime = modTime_;
+ this.sys = sys_;
+ });
+ sliceType = $sliceType($String);
+ ptrType = $ptrType(File);
+ sliceType$1 = $sliceType(FileInfo);
+ ptrType$1 = $ptrType(dirInfo);
+ sliceType$2 = $sliceType($Uint8);
+ ptrType$2 = $ptrType(PathError);
+ ptrType$3 = $ptrType(LinkError);
+ ptrType$4 = $ptrType(SyscallError);
+ ptrType$12 = $ptrType(file);
+ funcType$1 = $funcType([ptrType$12], [$error], false);
+ ptrType$14 = $ptrType(time.Location);
+ arrayType$2 = $arrayType($Int64, 3);
+ arrayType$5 = $arrayType($Uint8, 32);
+ ptrType$15 = $ptrType(fileStat);
+ runtime_args = function() {
+ var $ptr;
+ return $pkg.Args;
+ };
+ init = function() {
+ var $ptr, argv, i, process;
+ process = $global.process;
+ if (!(process === undefined)) {
+ argv = process.argv;
+ $pkg.Args = $makeSlice(sliceType, ($parseInt(argv.length) - 1 >> 0));
+ i = 0;
+ while (true) {
+ if (!(i < ($parseInt(argv.length) - 1 >> 0))) { break; }
+ ((i < 0 || i >= $pkg.Args.$length) ? ($throwRuntimeError("index out of range"), undefined) : $pkg.Args.$array[$pkg.Args.$offset + i] = $internalize(argv[(i + 1 >> 0)], $String));
+ i = i + (1) >> 0;
+ }
+ }
+ if ($pkg.Args.$length === 0) {
+ $pkg.Args = new sliceType(["?"]);
+ }
+ };
+ runtime_beforeExit = function() {
+ var $ptr;
+ };
+ File.ptr.prototype.Readdir = function(n) {
+ var $ptr, _r, f, n, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; f = $f.f; n = $f.n; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ if (f === ptrType.nil) {
+ $s = -1; return [sliceType$1.nil, $pkg.ErrInvalid];
+ }
+ _r = f.readdir(n); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: File.ptr.prototype.Readdir }; } $f.$ptr = $ptr; $f._r = _r; $f.f = f; $f.n = n; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ File.prototype.Readdir = function(n) { return this.$val.Readdir(n); };
+ File.ptr.prototype.Readdirnames = function(n) {
+ var $ptr, _tmp, _tmp$1, _tuple, err, f, n, names;
+ names = sliceType.nil;
+ err = $ifaceNil;
+ f = this;
+ if (f === ptrType.nil) {
+ _tmp = sliceType.nil;
+ _tmp$1 = $pkg.ErrInvalid;
+ names = _tmp;
+ err = _tmp$1;
+ return [names, err];
+ }
+ _tuple = f.readdirnames(n);
+ names = _tuple[0];
+ err = _tuple[1];
+ return [names, err];
+ };
+ File.prototype.Readdirnames = function(n) { return this.$val.Readdirnames(n); };
+ File.ptr.prototype.readdir = function(n) {
+ var $ptr, _i, _r, _ref, _tmp, _tmp$1, _tmp$2, _tmp$3, _tuple, _tuple$1, dirname, err, f, fi, filename, fip, lerr, n, names, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _ref = $f._ref; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; dirname = $f.dirname; err = $f.err; f = $f.f; fi = $f.fi; filename = $f.filename; fip = $f.fip; lerr = $f.lerr; n = $f.n; names = $f.names; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ fi = sliceType$1.nil;
+ err = $ifaceNil;
+ f = this;
+ dirname = f.file.name;
+ if (dirname === "") {
+ dirname = ".";
+ }
+ _tuple = f.Readdirnames(n);
+ names = _tuple[0];
+ err = _tuple[1];
+ fi = $makeSlice(sliceType$1, 0, names.$length);
+ _ref = names;
+ _i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 2; continue; }
+ filename = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ _r = lstat(dirname + "/" + filename); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple$1 = _r;
+ fip = _tuple$1[0];
+ lerr = _tuple$1[1];
+ if (IsNotExist(lerr)) {
+ _i++;
+ /* continue; */ $s = 1; continue;
+ }
+ if (!($interfaceIsEqual(lerr, $ifaceNil))) {
+ _tmp = fi;
+ _tmp$1 = lerr;
+ fi = _tmp;
+ err = _tmp$1;
+ $s = -1; return [fi, err];
+ }
+ fi = $append(fi, fip);
+ _i++;
+ /* } */ $s = 1; continue; case 2:
+ if ((fi.$length === 0) && $interfaceIsEqual(err, $ifaceNil) && n > 0) {
+ err = io.EOF;
+ }
+ _tmp$2 = fi;
+ _tmp$3 = err;
+ fi = _tmp$2;
+ err = _tmp$3;
+ $s = -1; return [fi, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: File.ptr.prototype.readdir }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._ref = _ref; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.dirname = dirname; $f.err = err; $f.f = f; $f.fi = fi; $f.filename = filename; $f.fip = fip; $f.lerr = lerr; $f.n = n; $f.names = names; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ File.prototype.readdir = function(n) { return this.$val.readdir(n); };
+ File.ptr.prototype.readdirnames = function(n) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tuple, _tuple$1, _tuple$2, d, err, errno, f, n, names, nb, nc, size;
+ names = sliceType.nil;
+ err = $ifaceNil;
+ f = this;
+ if (f.file.dirinfo === ptrType$1.nil) {
+ f.file.dirinfo = new dirInfo.ptr(sliceType$2.nil, 0, 0);
+ f.file.dirinfo.buf = $makeSlice(sliceType$2, 4096);
+ }
+ d = f.file.dirinfo;
+ size = n;
+ if (size <= 0) {
+ size = 100;
+ n = -1;
+ }
+ names = $makeSlice(sliceType, 0, size);
+ while (true) {
+ if (!(!((n === 0)))) { break; }
+ if (d.bufp >= d.nbuf) {
+ d.bufp = 0;
+ errno = $ifaceNil;
+ _tuple$1 = syscall.ReadDirent(f.file.fd, d.buf);
+ _tuple = fixCount(_tuple$1[0], _tuple$1[1]);
+ d.nbuf = _tuple[0];
+ errno = _tuple[1];
+ if (!($interfaceIsEqual(errno, $ifaceNil))) {
+ _tmp = names;
+ _tmp$1 = NewSyscallError("readdirent", errno);
+ names = _tmp;
+ err = _tmp$1;
+ return [names, err];
+ }
+ if (d.nbuf <= 0) {
+ break;
+ }
+ }
+ _tmp$2 = 0;
+ _tmp$3 = 0;
+ nb = _tmp$2;
+ nc = _tmp$3;
+ _tuple$2 = syscall.ParseDirent($subslice(d.buf, d.bufp, d.nbuf), n, names);
+ nb = _tuple$2[0];
+ nc = _tuple$2[1];
+ names = _tuple$2[2];
+ d.bufp = d.bufp + (nb) >> 0;
+ n = n - (nc) >> 0;
+ }
+ if (n >= 0 && (names.$length === 0)) {
+ _tmp$4 = names;
+ _tmp$5 = io.EOF;
+ names = _tmp$4;
+ err = _tmp$5;
+ return [names, err];
+ }
+ _tmp$6 = names;
+ _tmp$7 = $ifaceNil;
+ names = _tmp$6;
+ err = _tmp$7;
+ return [names, err];
+ };
+ File.prototype.readdirnames = function(n) { return this.$val.readdirnames(n); };
+ Getenv = function(key) {
+ var $ptr, _r, _tuple, key, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; key = $f.key; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = syscall.Getenv(key); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ v = _tuple[0];
+ $s = -1; return v;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Getenv }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.key = key; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Getenv = Getenv;
+ PathError.ptr.prototype.Error = function() {
+ var $ptr, _r, e, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; e = $f.e; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ _r = e.Err.Error(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return e.Op + " " + e.Path + ": " + _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: PathError.ptr.prototype.Error }; } $f.$ptr = $ptr; $f._r = _r; $f.e = e; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ PathError.prototype.Error = function() { return this.$val.Error(); };
+ SyscallError.ptr.prototype.Error = function() {
+ var $ptr, _r, e, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; e = $f.e; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ _r = e.Err.Error(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return e.Syscall + ": " + _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: SyscallError.ptr.prototype.Error }; } $f.$ptr = $ptr; $f._r = _r; $f.e = e; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ SyscallError.prototype.Error = function() { return this.$val.Error(); };
+ NewSyscallError = function(syscall$1, err) {
+ var $ptr, err, syscall$1;
+ if ($interfaceIsEqual(err, $ifaceNil)) {
+ return $ifaceNil;
+ }
+ return new SyscallError.ptr(syscall$1, err);
+ };
+ $pkg.NewSyscallError = NewSyscallError;
+ IsNotExist = function(err) {
+ var $ptr, err;
+ return isNotExist(err);
+ };
+ $pkg.IsNotExist = IsNotExist;
+ underlyingError = function(err) {
+ var $ptr, _ref, err, err$1, err$2, err$3;
+ _ref = err;
+ if ($assertType(_ref, ptrType$2, true)[1]) {
+ err$1 = _ref.$val;
+ return err$1.Err;
+ } else if ($assertType(_ref, ptrType$3, true)[1]) {
+ err$2 = _ref.$val;
+ return err$2.Err;
+ } else if ($assertType(_ref, ptrType$4, true)[1]) {
+ err$3 = _ref.$val;
+ return err$3.Err;
+ }
+ return err;
+ };
+ isNotExist = function(err) {
+ var $ptr, err;
+ err = underlyingError(err);
+ return $interfaceIsEqual(err, new syscall.Errno(2)) || $interfaceIsEqual(err, $pkg.ErrNotExist);
+ };
+ File.ptr.prototype.Name = function() {
+ var $ptr, f;
+ f = this;
+ return f.file.name;
+ };
+ File.prototype.Name = function() { return this.$val.Name(); };
+ LinkError.ptr.prototype.Error = function() {
+ var $ptr, _r, e, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; e = $f.e; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ _r = e.Err.Error(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return e.Op + " " + e.Old + " " + e.New + ": " + _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: LinkError.ptr.prototype.Error }; } $f.$ptr = $ptr; $f._r = _r; $f.e = e; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ LinkError.prototype.Error = function() { return this.$val.Error(); };
+ File.ptr.prototype.Read = function(b) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tuple, b, e, err, err$1, f, n;
+ n = 0;
+ err = $ifaceNil;
+ f = this;
+ err$1 = f.checkValid("read");
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ _tmp = 0;
+ _tmp$1 = err$1;
+ n = _tmp;
+ err = _tmp$1;
+ return [n, err];
+ }
+ _tuple = f.read(b);
+ n = _tuple[0];
+ e = _tuple[1];
+ if ((n === 0) && b.$length > 0 && $interfaceIsEqual(e, $ifaceNil)) {
+ _tmp$2 = 0;
+ _tmp$3 = io.EOF;
+ n = _tmp$2;
+ err = _tmp$3;
+ return [n, err];
+ }
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ err = new PathError.ptr("read", f.file.name, e);
+ }
+ _tmp$4 = n;
+ _tmp$5 = err;
+ n = _tmp$4;
+ err = _tmp$5;
+ return [n, err];
+ };
+ File.prototype.Read = function(b) { return this.$val.Read(b); };
+ File.ptr.prototype.ReadAt = function(b, off) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tuple, b, e, err, err$1, f, m, n, off, x;
+ n = 0;
+ err = $ifaceNil;
+ f = this;
+ err$1 = f.checkValid("read");
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ _tmp = 0;
+ _tmp$1 = err$1;
+ n = _tmp;
+ err = _tmp$1;
+ return [n, err];
+ }
+ while (true) {
+ if (!(b.$length > 0)) { break; }
+ _tuple = f.pread(b, off);
+ m = _tuple[0];
+ e = _tuple[1];
+ if ((m === 0) && $interfaceIsEqual(e, $ifaceNil)) {
+ _tmp$2 = n;
+ _tmp$3 = io.EOF;
+ n = _tmp$2;
+ err = _tmp$3;
+ return [n, err];
+ }
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ err = new PathError.ptr("read", f.file.name, e);
+ break;
+ }
+ n = n + (m) >> 0;
+ b = $subslice(b, m);
+ off = (x = (new $Int64(0, m)), new $Int64(off.$high + x.$high, off.$low + x.$low));
+ }
+ return [n, err];
+ };
+ File.prototype.ReadAt = function(b, off) { return this.$val.ReadAt(b, off); };
+ File.ptr.prototype.Write = function(b) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tuple, b, e, err, err$1, f, n;
+ n = 0;
+ err = $ifaceNil;
+ f = this;
+ err$1 = f.checkValid("write");
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ _tmp = 0;
+ _tmp$1 = err$1;
+ n = _tmp;
+ err = _tmp$1;
+ return [n, err];
+ }
+ _tuple = f.write(b);
+ n = _tuple[0];
+ e = _tuple[1];
+ if (n < 0) {
+ n = 0;
+ }
+ if (!((n === b.$length))) {
+ err = io.ErrShortWrite;
+ }
+ epipecheck(f, e);
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ err = new PathError.ptr("write", f.file.name, e);
+ }
+ _tmp$2 = n;
+ _tmp$3 = err;
+ n = _tmp$2;
+ err = _tmp$3;
+ return [n, err];
+ };
+ File.prototype.Write = function(b) { return this.$val.Write(b); };
+ File.ptr.prototype.WriteAt = function(b, off) {
+ var $ptr, _tmp, _tmp$1, _tuple, b, e, err, err$1, f, m, n, off, x;
+ n = 0;
+ err = $ifaceNil;
+ f = this;
+ err$1 = f.checkValid("write");
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ _tmp = 0;
+ _tmp$1 = err$1;
+ n = _tmp;
+ err = _tmp$1;
+ return [n, err];
+ }
+ while (true) {
+ if (!(b.$length > 0)) { break; }
+ _tuple = f.pwrite(b, off);
+ m = _tuple[0];
+ e = _tuple[1];
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ err = new PathError.ptr("write", f.file.name, e);
+ break;
+ }
+ n = n + (m) >> 0;
+ b = $subslice(b, m);
+ off = (x = (new $Int64(0, m)), new $Int64(off.$high + x.$high, off.$low + x.$low));
+ }
+ return [n, err];
+ };
+ File.prototype.WriteAt = function(b, off) { return this.$val.WriteAt(b, off); };
+ File.ptr.prototype.Seek = function(offset, whence) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tuple, e, err, err$1, f, offset, r, ret, whence;
+ ret = new $Int64(0, 0);
+ err = $ifaceNil;
+ f = this;
+ err$1 = f.checkValid("seek");
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ _tmp = new $Int64(0, 0);
+ _tmp$1 = err$1;
+ ret = _tmp;
+ err = _tmp$1;
+ return [ret, err];
+ }
+ _tuple = f.seek(offset, whence);
+ r = _tuple[0];
+ e = _tuple[1];
+ if ($interfaceIsEqual(e, $ifaceNil) && !(f.file.dirinfo === ptrType$1.nil) && !((r.$high === 0 && r.$low === 0))) {
+ e = new syscall.Errno(21);
+ }
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ _tmp$2 = new $Int64(0, 0);
+ _tmp$3 = new PathError.ptr("seek", f.file.name, e);
+ ret = _tmp$2;
+ err = _tmp$3;
+ return [ret, err];
+ }
+ _tmp$4 = r;
+ _tmp$5 = $ifaceNil;
+ ret = _tmp$4;
+ err = _tmp$5;
+ return [ret, err];
+ };
+ File.prototype.Seek = function(offset, whence) { return this.$val.Seek(offset, whence); };
+ File.ptr.prototype.WriteString = function(s) {
+ var $ptr, _tuple, err, f, n, s;
+ n = 0;
+ err = $ifaceNil;
+ f = this;
+ _tuple = f.Write((new sliceType$2($stringToBytes(s))));
+ n = _tuple[0];
+ err = _tuple[1];
+ return [n, err];
+ };
+ File.prototype.WriteString = function(s) { return this.$val.WriteString(s); };
+ File.ptr.prototype.Chdir = function() {
+ var $ptr, e, err, f;
+ f = this;
+ err = f.checkValid("chdir");
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return err;
+ }
+ e = syscall.Fchdir(f.file.fd);
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ return new PathError.ptr("chdir", f.file.name, e);
+ }
+ return $ifaceNil;
+ };
+ File.prototype.Chdir = function() { return this.$val.Chdir(); };
+ Open = function(name) {
+ var $ptr, name;
+ return OpenFile(name, 0, 0);
+ };
+ $pkg.Open = Open;
+ fixCount = function(n, err) {
+ var $ptr, err, n;
+ if (n < 0) {
+ n = 0;
+ }
+ return [n, err];
+ };
+ File.ptr.prototype.checkValid = function(op) {
+ var $ptr, f, op;
+ f = this;
+ if (f === ptrType.nil) {
+ return $pkg.ErrInvalid;
+ }
+ if (f.file.fd === -1) {
+ return new PathError.ptr(op, f.file.name, $pkg.ErrClosed);
+ }
+ return $ifaceNil;
+ };
+ File.prototype.checkValid = function(op) { return this.$val.checkValid(op); };
+ sigpipe = function() {
+ $throwRuntimeError("native function not implemented: os.sigpipe");
+ };
+ syscallMode = function(i) {
+ var $ptr, i, o;
+ o = 0;
+ o = (o | (((new FileMode(i).Perm() >>> 0)))) >>> 0;
+ if (!((((i & 8388608) >>> 0) === 0))) {
+ o = (o | (2048)) >>> 0;
+ }
+ if (!((((i & 4194304) >>> 0) === 0))) {
+ o = (o | (1024)) >>> 0;
+ }
+ if (!((((i & 1048576) >>> 0) === 0))) {
+ o = (o | (512)) >>> 0;
+ }
+ return o;
+ };
+ Chmod = function(name, mode) {
+ var $ptr, e, mode, name;
+ e = syscall.Chmod(name, syscallMode(mode));
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ return new PathError.ptr("chmod", name, e);
+ }
+ return $ifaceNil;
+ };
+ $pkg.Chmod = Chmod;
+ File.ptr.prototype.Chmod = function(mode) {
+ var $ptr, e, err, f, mode;
+ f = this;
+ err = f.checkValid("chmod");
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return err;
+ }
+ e = syscall.Fchmod(f.file.fd, syscallMode(mode));
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ return new PathError.ptr("chmod", f.file.name, e);
+ }
+ return $ifaceNil;
+ };
+ File.prototype.Chmod = function(mode) { return this.$val.Chmod(mode); };
+ File.ptr.prototype.Chown = function(uid, gid) {
+ var $ptr, e, err, f, gid, uid;
+ f = this;
+ err = f.checkValid("chown");
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return err;
+ }
+ e = syscall.Fchown(f.file.fd, uid, gid);
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ return new PathError.ptr("chown", f.file.name, e);
+ }
+ return $ifaceNil;
+ };
+ File.prototype.Chown = function(uid, gid) { return this.$val.Chown(uid, gid); };
+ File.ptr.prototype.Truncate = function(size) {
+ var $ptr, e, err, f, size;
+ f = this;
+ err = f.checkValid("truncate");
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return err;
+ }
+ e = syscall.Ftruncate(f.file.fd, size);
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ return new PathError.ptr("truncate", f.file.name, e);
+ }
+ return $ifaceNil;
+ };
+ File.prototype.Truncate = function(size) { return this.$val.Truncate(size); };
+ File.ptr.prototype.Sync = function() {
+ var $ptr, e, err, f;
+ f = this;
+ err = f.checkValid("sync");
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return err;
+ }
+ e = syscall.Fsync(f.file.fd);
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ return new PathError.ptr("sync", f.file.name, e);
+ }
+ return $ifaceNil;
+ };
+ File.prototype.Sync = function() { return this.$val.Sync(); };
+ File.ptr.prototype.Fd = function() {
+ var $ptr, f;
+ f = this;
+ if (f === ptrType.nil) {
+ return 4294967295;
+ }
+ return ((f.file.fd >>> 0));
+ };
+ File.prototype.Fd = function() { return this.$val.Fd(); };
+ NewFile = function(fd, name) {
+ var $ptr, f, fd, fdi, name;
+ fdi = ((fd >> 0));
+ if (fdi < 0) {
+ return ptrType.nil;
+ }
+ f = new File.ptr(new file.ptr(fdi, name, ptrType$1.nil));
+ runtime.SetFinalizer(f.file, new funcType$1($methodExpr(ptrType$12, "close")));
+ return f;
+ };
+ $pkg.NewFile = NewFile;
+ epipecheck = function(file$1, e) {
+ var $ptr, e, file$1;
+ if ($interfaceIsEqual(e, new syscall.Errno(32)) && ((file$1.file.fd === 1) || (file$1.file.fd === 2))) {
+ sigpipe();
+ }
+ };
+ OpenFile = function(name, flag, perm) {
+ var $ptr, _tuple, _tuple$1, chmod, e, err, flag, name, perm, r;
+ chmod = false;
+ if (false && !(((flag & 64) === 0)) && !((((perm & 1048576) >>> 0) === 0))) {
+ _tuple = Stat(name);
+ err = _tuple[1];
+ if (IsNotExist(err)) {
+ chmod = true;
+ }
+ }
+ r = 0;
+ while (true) {
+ e = $ifaceNil;
+ _tuple$1 = syscall.Open(name, flag | 524288, syscallMode(perm));
+ r = _tuple$1[0];
+ e = _tuple$1[1];
+ if ($interfaceIsEqual(e, $ifaceNil)) {
+ break;
+ }
+ if (false && $interfaceIsEqual(e, new syscall.Errno(4))) {
+ continue;
+ }
+ return [ptrType.nil, new PathError.ptr("open", name, e)];
+ }
+ if (chmod) {
+ Chmod(name, perm);
+ }
+ if (false) {
+ syscall.CloseOnExec(r);
+ }
+ return [NewFile(((r >>> 0)), name), $ifaceNil];
+ };
+ $pkg.OpenFile = OpenFile;
+ File.ptr.prototype.Close = function() {
+ var $ptr, f;
+ f = this;
+ if (f === ptrType.nil) {
+ return $pkg.ErrInvalid;
+ }
+ return f.file.close();
+ };
+ File.prototype.Close = function() { return this.$val.Close(); };
+ file.ptr.prototype.close = function() {
+ var $ptr, e, err, file$1;
+ file$1 = this;
+ if (file$1 === ptrType$12.nil || (file$1.fd === -1)) {
+ return new syscall.Errno(22);
+ }
+ err = $ifaceNil;
+ e = syscall.Close(file$1.fd);
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ err = new PathError.ptr("close", file$1.name, e);
+ }
+ file$1.fd = -1;
+ runtime.SetFinalizer(file$1, $ifaceNil);
+ return err;
+ };
+ file.prototype.close = function() { return this.$val.close(); };
+ File.ptr.prototype.read = function(b) {
+ var $ptr, _tuple, _tuple$1, b, err, f, n;
+ n = 0;
+ err = $ifaceNil;
+ f = this;
+ if (false && b.$length > 1073741824) {
+ b = $subslice(b, 0, 1073741824);
+ }
+ _tuple$1 = syscall.Read(f.file.fd, b);
+ _tuple = fixCount(_tuple$1[0], _tuple$1[1]);
+ n = _tuple[0];
+ err = _tuple[1];
+ return [n, err];
+ };
+ File.prototype.read = function(b) { return this.$val.read(b); };
+ File.ptr.prototype.pread = function(b, off) {
+ var $ptr, _tuple, _tuple$1, b, err, f, n, off;
+ n = 0;
+ err = $ifaceNil;
+ f = this;
+ if (false && b.$length > 1073741824) {
+ b = $subslice(b, 0, 1073741824);
+ }
+ _tuple$1 = syscall.Pread(f.file.fd, b, off);
+ _tuple = fixCount(_tuple$1[0], _tuple$1[1]);
+ n = _tuple[0];
+ err = _tuple[1];
+ return [n, err];
+ };
+ File.prototype.pread = function(b, off) { return this.$val.pread(b, off); };
+ File.ptr.prototype.write = function(b) {
+ var $ptr, _tmp, _tmp$1, _tuple, _tuple$1, b, bcap, err, err$1, f, m, n;
+ n = 0;
+ err = $ifaceNil;
+ f = this;
+ while (true) {
+ bcap = b;
+ if (false && bcap.$length > 1073741824) {
+ bcap = $subslice(bcap, 0, 1073741824);
+ }
+ _tuple$1 = syscall.Write(f.file.fd, bcap);
+ _tuple = fixCount(_tuple$1[0], _tuple$1[1]);
+ m = _tuple[0];
+ err$1 = _tuple[1];
+ n = n + (m) >> 0;
+ if (0 < m && m < bcap.$length || $interfaceIsEqual(err$1, new syscall.Errno(4))) {
+ b = $subslice(b, m);
+ continue;
+ }
+ if (false && !((bcap.$length === b.$length)) && $interfaceIsEqual(err$1, $ifaceNil)) {
+ b = $subslice(b, m);
+ continue;
+ }
+ _tmp = n;
+ _tmp$1 = err$1;
+ n = _tmp;
+ err = _tmp$1;
+ return [n, err];
+ }
+ };
+ File.prototype.write = function(b) { return this.$val.write(b); };
+ File.ptr.prototype.pwrite = function(b, off) {
+ var $ptr, _tuple, _tuple$1, b, err, f, n, off;
+ n = 0;
+ err = $ifaceNil;
+ f = this;
+ if (false && b.$length > 1073741824) {
+ b = $subslice(b, 0, 1073741824);
+ }
+ _tuple$1 = syscall.Pwrite(f.file.fd, b, off);
+ _tuple = fixCount(_tuple$1[0], _tuple$1[1]);
+ n = _tuple[0];
+ err = _tuple[1];
+ return [n, err];
+ };
+ File.prototype.pwrite = function(b, off) { return this.$val.pwrite(b, off); };
+ File.ptr.prototype.seek = function(offset, whence) {
+ var $ptr, _tuple, err, f, offset, ret, whence;
+ ret = new $Int64(0, 0);
+ err = $ifaceNil;
+ f = this;
+ _tuple = syscall.Seek(f.file.fd, offset, whence);
+ ret = _tuple[0];
+ err = _tuple[1];
+ return [ret, err];
+ };
+ File.prototype.seek = function(offset, whence) { return this.$val.seek(offset, whence); };
+ basename = function(name) {
+ var $ptr, i, name;
+ i = name.length - 1 >> 0;
+ while (true) {
+ if (!(i > 0 && (name.charCodeAt(i) === 47))) { break; }
+ name = $substring(name, 0, i);
+ i = i - (1) >> 0;
+ }
+ i = i - (1) >> 0;
+ while (true) {
+ if (!(i >= 0)) { break; }
+ if (name.charCodeAt(i) === 47) {
+ name = $substring(name, (i + 1 >> 0));
+ break;
+ }
+ i = i - (1) >> 0;
+ }
+ return name;
+ };
+ init$1 = function() {
+ var $ptr;
+ if (false) {
+ return;
+ }
+ $pkg.Args = runtime_args();
+ };
+ Getuid = function() {
+ var $ptr;
+ return syscall.Getuid();
+ };
+ $pkg.Getuid = Getuid;
+ Getgid = function() {
+ var $ptr;
+ return syscall.Getgid();
+ };
+ $pkg.Getgid = Getgid;
+ Exit = function(code) {
+ var $ptr, code;
+ if (code === 0) {
+ runtime_beforeExit();
+ }
+ syscall.Exit(code);
+ };
+ $pkg.Exit = Exit;
+ fillFileStatFromSys = function(fs, name) {
+ var $ptr, _1, fs, name;
+ fs.name = basename(name);
+ fs.size = fs.sys.Size;
+ time.Time.copy(fs.modTime, timespecToTime($clone(fs.sys.Mtim, syscall.Timespec)));
+ fs.mode = ((((fs.sys.Mode & 511) >>> 0) >>> 0));
+ _1 = (fs.sys.Mode & 61440) >>> 0;
+ if (_1 === (24576)) {
+ fs.mode = (fs.mode | (67108864)) >>> 0;
+ } else if (_1 === (8192)) {
+ fs.mode = (fs.mode | (69206016)) >>> 0;
+ } else if (_1 === (16384)) {
+ fs.mode = (fs.mode | (2147483648)) >>> 0;
+ } else if (_1 === (4096)) {
+ fs.mode = (fs.mode | (33554432)) >>> 0;
+ } else if (_1 === (40960)) {
+ fs.mode = (fs.mode | (134217728)) >>> 0;
+ } else if (_1 === (32768)) {
+ } else if (_1 === (49152)) {
+ fs.mode = (fs.mode | (16777216)) >>> 0;
+ }
+ if (!((((fs.sys.Mode & 1024) >>> 0) === 0))) {
+ fs.mode = (fs.mode | (4194304)) >>> 0;
+ }
+ if (!((((fs.sys.Mode & 2048) >>> 0) === 0))) {
+ fs.mode = (fs.mode | (8388608)) >>> 0;
+ }
+ if (!((((fs.sys.Mode & 512) >>> 0) === 0))) {
+ fs.mode = (fs.mode | (1048576)) >>> 0;
+ }
+ };
+ timespecToTime = function(ts) {
+ var $ptr, ts;
+ return time.Unix((ts.Sec), (ts.Nsec));
+ };
+ File.ptr.prototype.Stat = function() {
+ var $ptr, err, f, fs;
+ f = this;
+ if (f === ptrType.nil) {
+ return [$ifaceNil, $pkg.ErrInvalid];
+ }
+ fs = new fileStat.ptr("", new $Int64(0, 0), 0, new time.Time.ptr(new $Int64(0, 0), 0, ptrType$14.nil), new syscall.Stat_t.ptr(new $Uint64(0, 0), new $Uint64(0, 0), new $Uint64(0, 0), 0, 0, 0, 0, new $Uint64(0, 0), new $Int64(0, 0), new $Int64(0, 0), new $Int64(0, 0), new syscall.Timespec.ptr(new $Int64(0, 0), new $Int64(0, 0)), new syscall.Timespec.ptr(new $Int64(0, 0), new $Int64(0, 0)), new syscall.Timespec.ptr(new $Int64(0, 0), new $Int64(0, 0)), arrayType$2.zero()));
+ err = syscall.Fstat(f.file.fd, fs.sys);
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return [$ifaceNil, new PathError.ptr("stat", f.file.name, err)];
+ }
+ fillFileStatFromSys(fs, f.file.name);
+ return [fs, $ifaceNil];
+ };
+ File.prototype.Stat = function() { return this.$val.Stat(); };
+ Stat = function(name) {
+ var $ptr, err, fs, name;
+ fs = new fileStat.ptr("", new $Int64(0, 0), 0, new time.Time.ptr(new $Int64(0, 0), 0, ptrType$14.nil), new syscall.Stat_t.ptr(new $Uint64(0, 0), new $Uint64(0, 0), new $Uint64(0, 0), 0, 0, 0, 0, new $Uint64(0, 0), new $Int64(0, 0), new $Int64(0, 0), new $Int64(0, 0), new syscall.Timespec.ptr(new $Int64(0, 0), new $Int64(0, 0)), new syscall.Timespec.ptr(new $Int64(0, 0), new $Int64(0, 0)), new syscall.Timespec.ptr(new $Int64(0, 0), new $Int64(0, 0)), arrayType$2.zero()));
+ err = syscall.Stat(name, fs.sys);
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return [$ifaceNil, new PathError.ptr("stat", name, err)];
+ }
+ fillFileStatFromSys(fs, name);
+ return [fs, $ifaceNil];
+ };
+ $pkg.Stat = Stat;
+ Lstat = function(name) {
+ var $ptr, err, fs, name;
+ fs = new fileStat.ptr("", new $Int64(0, 0), 0, new time.Time.ptr(new $Int64(0, 0), 0, ptrType$14.nil), new syscall.Stat_t.ptr(new $Uint64(0, 0), new $Uint64(0, 0), new $Uint64(0, 0), 0, 0, 0, 0, new $Uint64(0, 0), new $Int64(0, 0), new $Int64(0, 0), new $Int64(0, 0), new syscall.Timespec.ptr(new $Int64(0, 0), new $Int64(0, 0)), new syscall.Timespec.ptr(new $Int64(0, 0), new $Int64(0, 0)), new syscall.Timespec.ptr(new $Int64(0, 0), new $Int64(0, 0)), arrayType$2.zero()));
+ err = syscall.Lstat(name, fs.sys);
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return [$ifaceNil, new PathError.ptr("lstat", name, err)];
+ }
+ fillFileStatFromSys(fs, name);
+ return [fs, $ifaceNil];
+ };
+ $pkg.Lstat = Lstat;
+ Getpagesize = function() {
+ var $ptr;
+ return syscall.Getpagesize();
+ };
+ $pkg.Getpagesize = Getpagesize;
+ FileMode.prototype.String = function() {
+ var $ptr, _i, _i$1, _ref, _ref$1, _rune, _rune$1, buf, c, c$1, i, i$1, m, w, y, y$1;
+ m = this.$val;
+ buf = arrayType$5.zero();
+ w = 0;
+ _ref = "dalTLDpSugct";
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.length)) { break; }
+ _rune = $decodeRune(_ref, _i);
+ i = _i;
+ c = _rune[0];
+ if (!((((m & (((y = (((31 - i >> 0) >>> 0)), y < 32 ? (1 << y) : 0) >>> 0))) >>> 0) === 0))) {
+ ((w < 0 || w >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[w] = ((c << 24 >>> 24)));
+ w = w + (1) >> 0;
+ }
+ _i += _rune[1];
+ }
+ if (w === 0) {
+ ((w < 0 || w >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[w] = 45);
+ w = w + (1) >> 0;
+ }
+ _ref$1 = "rwxrwxrwx";
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.length)) { break; }
+ _rune$1 = $decodeRune(_ref$1, _i$1);
+ i$1 = _i$1;
+ c$1 = _rune$1[0];
+ if (!((((m & (((y$1 = (((8 - i$1 >> 0) >>> 0)), y$1 < 32 ? (1 << y$1) : 0) >>> 0))) >>> 0) === 0))) {
+ ((w < 0 || w >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[w] = ((c$1 << 24 >>> 24)));
+ } else {
+ ((w < 0 || w >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[w] = 45);
+ }
+ w = w + (1) >> 0;
+ _i$1 += _rune$1[1];
+ }
+ return ($bytesToString($subslice(new sliceType$2(buf), 0, w)));
+ };
+ $ptrType(FileMode).prototype.String = function() { return new FileMode(this.$get()).String(); };
+ FileMode.prototype.IsDir = function() {
+ var $ptr, m;
+ m = this.$val;
+ return !((((m & 2147483648) >>> 0) === 0));
+ };
+ $ptrType(FileMode).prototype.IsDir = function() { return new FileMode(this.$get()).IsDir(); };
+ FileMode.prototype.IsRegular = function() {
+ var $ptr, m;
+ m = this.$val;
+ return ((m & 2399141888) >>> 0) === 0;
+ };
+ $ptrType(FileMode).prototype.IsRegular = function() { return new FileMode(this.$get()).IsRegular(); };
+ FileMode.prototype.Perm = function() {
+ var $ptr, m;
+ m = this.$val;
+ return (m & 511) >>> 0;
+ };
+ $ptrType(FileMode).prototype.Perm = function() { return new FileMode(this.$get()).Perm(); };
+ fileStat.ptr.prototype.Name = function() {
+ var $ptr, fs;
+ fs = this;
+ return fs.name;
+ };
+ fileStat.prototype.Name = function() { return this.$val.Name(); };
+ fileStat.ptr.prototype.IsDir = function() {
+ var $ptr, fs;
+ fs = this;
+ return new FileMode(fs.Mode()).IsDir();
+ };
+ fileStat.prototype.IsDir = function() { return this.$val.IsDir(); };
+ fileStat.ptr.prototype.Size = function() {
+ var $ptr, fs;
+ fs = this;
+ return fs.size;
+ };
+ fileStat.prototype.Size = function() { return this.$val.Size(); };
+ fileStat.ptr.prototype.Mode = function() {
+ var $ptr, fs;
+ fs = this;
+ return fs.mode;
+ };
+ fileStat.prototype.Mode = function() { return this.$val.Mode(); };
+ fileStat.ptr.prototype.ModTime = function() {
+ var $ptr, fs;
+ fs = this;
+ return fs.modTime;
+ };
+ fileStat.prototype.ModTime = function() { return this.$val.ModTime(); };
+ fileStat.ptr.prototype.Sys = function() {
+ var $ptr, fs;
+ fs = this;
+ return fs.sys;
+ };
+ fileStat.prototype.Sys = function() { return this.$val.Sys(); };
+ ptrType$2.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$4.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$3.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$12.methods = [{prop: "close", name: "close", pkg: "os", typ: $funcType([], [$error], false)}];
+ ptrType.methods = [{prop: "Readdir", name: "Readdir", pkg: "", typ: $funcType([$Int], [sliceType$1, $error], false)}, {prop: "Readdirnames", name: "Readdirnames", pkg: "", typ: $funcType([$Int], [sliceType, $error], false)}, {prop: "readdir", name: "readdir", pkg: "os", typ: $funcType([$Int], [sliceType$1, $error], false)}, {prop: "readdirnames", name: "readdirnames", pkg: "os", typ: $funcType([$Int], [sliceType, $error], false)}, {prop: "Name", name: "Name", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "ReadAt", name: "ReadAt", pkg: "", typ: $funcType([sliceType$2, $Int64], [$Int, $error], false)}, {prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "WriteAt", name: "WriteAt", pkg: "", typ: $funcType([sliceType$2, $Int64], [$Int, $error], false)}, {prop: "Seek", name: "Seek", pkg: "", typ: $funcType([$Int64, $Int], [$Int64, $error], false)}, {prop: "WriteString", name: "WriteString", pkg: "", typ: $funcType([$String], [$Int, $error], false)}, {prop: "Chdir", name: "Chdir", pkg: "", typ: $funcType([], [$error], false)}, {prop: "checkValid", name: "checkValid", pkg: "os", typ: $funcType([$String], [$error], false)}, {prop: "Chmod", name: "Chmod", pkg: "", typ: $funcType([FileMode], [$error], false)}, {prop: "Chown", name: "Chown", pkg: "", typ: $funcType([$Int, $Int], [$error], false)}, {prop: "Truncate", name: "Truncate", pkg: "", typ: $funcType([$Int64], [$error], false)}, {prop: "Sync", name: "Sync", pkg: "", typ: $funcType([], [$error], false)}, {prop: "Fd", name: "Fd", pkg: "", typ: $funcType([], [$Uintptr], false)}, {prop: "Close", name: "Close", pkg: "", typ: $funcType([], [$error], false)}, {prop: "read", name: "read", pkg: "os", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "pread", name: "pread", pkg: "os", typ: $funcType([sliceType$2, $Int64], [$Int, $error], false)}, {prop: "write", name: "write", pkg: "os", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "pwrite", name: "pwrite", pkg: "os", typ: $funcType([sliceType$2, $Int64], [$Int, $error], false)}, {prop: "seek", name: "seek", pkg: "os", typ: $funcType([$Int64, $Int], [$Int64, $error], false)}, {prop: "Stat", name: "Stat", pkg: "", typ: $funcType([], [FileInfo, $error], false)}];
+ FileMode.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "IsDir", name: "IsDir", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "IsRegular", name: "IsRegular", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Perm", name: "Perm", pkg: "", typ: $funcType([], [FileMode], false)}];
+ ptrType$15.methods = [{prop: "Name", name: "Name", pkg: "", typ: $funcType([], [$String], false)}, {prop: "IsDir", name: "IsDir", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Size", name: "Size", pkg: "", typ: $funcType([], [$Int64], false)}, {prop: "Mode", name: "Mode", pkg: "", typ: $funcType([], [FileMode], false)}, {prop: "ModTime", name: "ModTime", pkg: "", typ: $funcType([], [time.Time], false)}, {prop: "Sys", name: "Sys", pkg: "", typ: $funcType([], [$emptyInterface], false)}];
+ PathError.init("", [{prop: "Op", name: "Op", exported: true, typ: $String, tag: ""}, {prop: "Path", name: "Path", exported: true, typ: $String, tag: ""}, {prop: "Err", name: "Err", exported: true, typ: $error, tag: ""}]);
+ SyscallError.init("", [{prop: "Syscall", name: "Syscall", exported: true, typ: $String, tag: ""}, {prop: "Err", name: "Err", exported: true, typ: $error, tag: ""}]);
+ LinkError.init("", [{prop: "Op", name: "Op", exported: true, typ: $String, tag: ""}, {prop: "Old", name: "Old", exported: true, typ: $String, tag: ""}, {prop: "New", name: "New", exported: true, typ: $String, tag: ""}, {prop: "Err", name: "Err", exported: true, typ: $error, tag: ""}]);
+ file.init("os", [{prop: "fd", name: "fd", exported: false, typ: $Int, tag: ""}, {prop: "name", name: "name", exported: false, typ: $String, tag: ""}, {prop: "dirinfo", name: "dirinfo", exported: false, typ: ptrType$1, tag: ""}]);
+ dirInfo.init("os", [{prop: "buf", name: "buf", exported: false, typ: sliceType$2, tag: ""}, {prop: "nbuf", name: "nbuf", exported: false, typ: $Int, tag: ""}, {prop: "bufp", name: "bufp", exported: false, typ: $Int, tag: ""}]);
+ File.init("os", [{prop: "file", name: "", exported: false, typ: ptrType$12, tag: ""}]);
+ FileInfo.init([{prop: "IsDir", name: "IsDir", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "ModTime", name: "ModTime", pkg: "", typ: $funcType([], [time.Time], false)}, {prop: "Mode", name: "Mode", pkg: "", typ: $funcType([], [FileMode], false)}, {prop: "Name", name: "Name", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Size", name: "Size", pkg: "", typ: $funcType([], [$Int64], false)}, {prop: "Sys", name: "Sys", pkg: "", typ: $funcType([], [$emptyInterface], false)}]);
+ fileStat.init("os", [{prop: "name", name: "name", exported: false, typ: $String, tag: ""}, {prop: "size", name: "size", exported: false, typ: $Int64, tag: ""}, {prop: "mode", name: "mode", exported: false, typ: FileMode, tag: ""}, {prop: "modTime", name: "modTime", exported: false, typ: time.Time, tag: ""}, {prop: "sys", name: "sys", exported: false, typ: syscall.Stat_t, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = errors.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = js.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = atomic.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = syscall.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = time.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $pkg.Args = sliceType.nil;
+ $pkg.ErrInvalid = errors.New("invalid argument");
+ $pkg.ErrPermission = errors.New("permission denied");
+ $pkg.ErrExist = errors.New("file already exists");
+ $pkg.ErrNotExist = errors.New("file does not exist");
+ $pkg.ErrClosed = errors.New("file already closed");
+ errFinished = errors.New("os: process already finished");
+ lstat = Lstat;
+ $pkg.Stdin = NewFile(((syscall.Stdin >>> 0)), "/dev/stdin");
+ $pkg.Stdout = NewFile(((syscall.Stdout >>> 0)), "/dev/stdout");
+ $pkg.Stderr = NewFile(((syscall.Stderr >>> 0)), "/dev/stderr");
+ init();
+ init$1();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["reflect"] = (function() {
+ var $pkg = {}, $init, errors, js, math, runtime, strconv, sync, uncommonType, funcType, name, nameData, mapIter, Type, Kind, tflag, rtype, typeAlg, method, ChanDir, arrayType, chanType, imethod, interfaceType, mapType, ptrType, sliceType, structField, structType, Method, nameOff, typeOff, textOff, StructField, StructTag, fieldScan, Value, flag, ValueError, sliceType$1, ptrType$1, sliceType$2, sliceType$3, mapType$1, structType$1, sliceType$5, ptrType$3, funcType$1, sliceType$6, ptrType$4, ptrType$5, sliceType$7, sliceType$8, ptrType$6, ptrType$7, structType$8, sliceType$9, sliceType$10, sliceType$11, sliceType$12, ptrType$8, ptrType$9, sliceType$14, sliceType$15, ptrType$10, sliceType$16, ptrType$16, sliceType$18, ptrType$17, funcType$3, funcType$4, funcType$5, arrayType$12, ptrType$18, initialized, uncommonTypeMap, nameMap, nameOffList, typeOffList, callHelper, jsObjectPtr, selectHelper, kindNames, methodCache, uint8Type, init, jsType, reflectType, setKindType, newName, newNameOff, newTypeOff, internalStr, isWrapped, copyStruct, makeValue, MakeSlice, TypeOf, ValueOf, FuncOf, SliceOf, Zero, unsafe_New, makeInt, typedmemmove, makemap, keyFor, mapaccess, mapassign, mapdelete, mapiterinit, mapiterkey, mapiternext, maplen, cvtDirect, Copy, methodReceiver, valueInterface, ifaceE2I, methodName, makeMethodValue, wrapJsObject, unwrapJsObject, getJsTag, chanrecv, chansend, PtrTo, implements$1, directlyAssignable, haveIdenticalType, haveIdenticalUnderlyingType, toType, ifaceIndir, overflowFloat32, typesMustMatch, grow, Append, MakeMap, Indirect, New, convertOp, makeFloat, makeComplex, makeString, makeBytes, makeRunes, cvtInt, cvtUint, cvtFloatInt, cvtFloatUint, cvtIntFloat, cvtUintFloat, cvtFloat, cvtComplex, cvtIntString, cvtUintString, cvtBytesString, cvtStringBytes, cvtRunesString, cvtStringRunes, cvtT2I, cvtI2I;
+ errors = $packages["errors"];
+ js = $packages["github.com/gopherjs/gopherjs/js"];
+ math = $packages["math"];
+ runtime = $packages["runtime"];
+ strconv = $packages["strconv"];
+ sync = $packages["sync"];
+ uncommonType = $pkg.uncommonType = $newType(0, $kindStruct, "reflect.uncommonType", true, "reflect", false, function(pkgPath_, mcount_, _$2_, moff_, _$4_, _methods_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.pkgPath = 0;
+ this.mcount = 0;
+ this._$2 = 0;
+ this.moff = 0;
+ this._$4 = 0;
+ this._methods = sliceType$3.nil;
+ return;
+ }
+ this.pkgPath = pkgPath_;
+ this.mcount = mcount_;
+ this._$2 = _$2_;
+ this.moff = moff_;
+ this._$4 = _$4_;
+ this._methods = _methods_;
+ });
+ funcType = $pkg.funcType = $newType(0, $kindStruct, "reflect.funcType", true, "reflect", false, function(rtype_, inCount_, outCount_, _in_, _out_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.rtype = new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0);
+ this.inCount = 0;
+ this.outCount = 0;
+ this._in = sliceType$2.nil;
+ this._out = sliceType$2.nil;
+ return;
+ }
+ this.rtype = rtype_;
+ this.inCount = inCount_;
+ this.outCount = outCount_;
+ this._in = _in_;
+ this._out = _out_;
+ });
+ name = $pkg.name = $newType(0, $kindStruct, "reflect.name", true, "reflect", false, function(bytes_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.bytes = ptrType$5.nil;
+ return;
+ }
+ this.bytes = bytes_;
+ });
+ nameData = $pkg.nameData = $newType(0, $kindStruct, "reflect.nameData", true, "reflect", false, function(name_, tag_, pkgPath_, exported_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.name = "";
+ this.tag = "";
+ this.pkgPath = "";
+ this.exported = false;
+ return;
+ }
+ this.name = name_;
+ this.tag = tag_;
+ this.pkgPath = pkgPath_;
+ this.exported = exported_;
+ });
+ mapIter = $pkg.mapIter = $newType(0, $kindStruct, "reflect.mapIter", true, "reflect", false, function(t_, m_, keys_, i_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.t = $ifaceNil;
+ this.m = null;
+ this.keys = null;
+ this.i = 0;
+ return;
+ }
+ this.t = t_;
+ this.m = m_;
+ this.keys = keys_;
+ this.i = i_;
+ });
+ Type = $pkg.Type = $newType(8, $kindInterface, "reflect.Type", true, "reflect", true, null);
+ Kind = $pkg.Kind = $newType(4, $kindUint, "reflect.Kind", true, "reflect", true, null);
+ tflag = $pkg.tflag = $newType(1, $kindUint8, "reflect.tflag", true, "reflect", false, null);
+ rtype = $pkg.rtype = $newType(0, $kindStruct, "reflect.rtype", true, "reflect", false, function(size_, ptrdata_, hash_, tflag_, align_, fieldAlign_, kind_, alg_, gcdata_, str_, ptrToThis_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.size = 0;
+ this.ptrdata = 0;
+ this.hash = 0;
+ this.tflag = 0;
+ this.align = 0;
+ this.fieldAlign = 0;
+ this.kind = 0;
+ this.alg = ptrType$4.nil;
+ this.gcdata = ptrType$5.nil;
+ this.str = 0;
+ this.ptrToThis = 0;
+ return;
+ }
+ this.size = size_;
+ this.ptrdata = ptrdata_;
+ this.hash = hash_;
+ this.tflag = tflag_;
+ this.align = align_;
+ this.fieldAlign = fieldAlign_;
+ this.kind = kind_;
+ this.alg = alg_;
+ this.gcdata = gcdata_;
+ this.str = str_;
+ this.ptrToThis = ptrToThis_;
+ });
+ typeAlg = $pkg.typeAlg = $newType(0, $kindStruct, "reflect.typeAlg", true, "reflect", false, function(hash_, equal_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.hash = $throwNilPointerError;
+ this.equal = $throwNilPointerError;
+ return;
+ }
+ this.hash = hash_;
+ this.equal = equal_;
+ });
+ method = $pkg.method = $newType(0, $kindStruct, "reflect.method", true, "reflect", false, function(name_, mtyp_, ifn_, tfn_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.name = 0;
+ this.mtyp = 0;
+ this.ifn = 0;
+ this.tfn = 0;
+ return;
+ }
+ this.name = name_;
+ this.mtyp = mtyp_;
+ this.ifn = ifn_;
+ this.tfn = tfn_;
+ });
+ ChanDir = $pkg.ChanDir = $newType(4, $kindInt, "reflect.ChanDir", true, "reflect", true, null);
+ arrayType = $pkg.arrayType = $newType(0, $kindStruct, "reflect.arrayType", true, "reflect", false, function(rtype_, elem_, slice_, len_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.rtype = new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0);
+ this.elem = ptrType$1.nil;
+ this.slice = ptrType$1.nil;
+ this.len = 0;
+ return;
+ }
+ this.rtype = rtype_;
+ this.elem = elem_;
+ this.slice = slice_;
+ this.len = len_;
+ });
+ chanType = $pkg.chanType = $newType(0, $kindStruct, "reflect.chanType", true, "reflect", false, function(rtype_, elem_, dir_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.rtype = new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0);
+ this.elem = ptrType$1.nil;
+ this.dir = 0;
+ return;
+ }
+ this.rtype = rtype_;
+ this.elem = elem_;
+ this.dir = dir_;
+ });
+ imethod = $pkg.imethod = $newType(0, $kindStruct, "reflect.imethod", true, "reflect", false, function(name_, typ_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.name = 0;
+ this.typ = 0;
+ return;
+ }
+ this.name = name_;
+ this.typ = typ_;
+ });
+ interfaceType = $pkg.interfaceType = $newType(0, $kindStruct, "reflect.interfaceType", true, "reflect", false, function(rtype_, pkgPath_, methods_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.rtype = new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0);
+ this.pkgPath = new name.ptr(ptrType$5.nil);
+ this.methods = sliceType$7.nil;
+ return;
+ }
+ this.rtype = rtype_;
+ this.pkgPath = pkgPath_;
+ this.methods = methods_;
+ });
+ mapType = $pkg.mapType = $newType(0, $kindStruct, "reflect.mapType", true, "reflect", false, function(rtype_, key_, elem_, bucket_, hmap_, keysize_, indirectkey_, valuesize_, indirectvalue_, bucketsize_, reflexivekey_, needkeyupdate_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.rtype = new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0);
+ this.key = ptrType$1.nil;
+ this.elem = ptrType$1.nil;
+ this.bucket = ptrType$1.nil;
+ this.hmap = ptrType$1.nil;
+ this.keysize = 0;
+ this.indirectkey = 0;
+ this.valuesize = 0;
+ this.indirectvalue = 0;
+ this.bucketsize = 0;
+ this.reflexivekey = false;
+ this.needkeyupdate = false;
+ return;
+ }
+ this.rtype = rtype_;
+ this.key = key_;
+ this.elem = elem_;
+ this.bucket = bucket_;
+ this.hmap = hmap_;
+ this.keysize = keysize_;
+ this.indirectkey = indirectkey_;
+ this.valuesize = valuesize_;
+ this.indirectvalue = indirectvalue_;
+ this.bucketsize = bucketsize_;
+ this.reflexivekey = reflexivekey_;
+ this.needkeyupdate = needkeyupdate_;
+ });
+ ptrType = $pkg.ptrType = $newType(0, $kindStruct, "reflect.ptrType", true, "reflect", false, function(rtype_, elem_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.rtype = new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0);
+ this.elem = ptrType$1.nil;
+ return;
+ }
+ this.rtype = rtype_;
+ this.elem = elem_;
+ });
+ sliceType = $pkg.sliceType = $newType(0, $kindStruct, "reflect.sliceType", true, "reflect", false, function(rtype_, elem_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.rtype = new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0);
+ this.elem = ptrType$1.nil;
+ return;
+ }
+ this.rtype = rtype_;
+ this.elem = elem_;
+ });
+ structField = $pkg.structField = $newType(0, $kindStruct, "reflect.structField", true, "reflect", false, function(name_, typ_, offset_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.name = new name.ptr(ptrType$5.nil);
+ this.typ = ptrType$1.nil;
+ this.offset = 0;
+ return;
+ }
+ this.name = name_;
+ this.typ = typ_;
+ this.offset = offset_;
+ });
+ structType = $pkg.structType = $newType(0, $kindStruct, "reflect.structType", true, "reflect", false, function(rtype_, pkgPath_, fields_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.rtype = new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0);
+ this.pkgPath = new name.ptr(ptrType$5.nil);
+ this.fields = sliceType$8.nil;
+ return;
+ }
+ this.rtype = rtype_;
+ this.pkgPath = pkgPath_;
+ this.fields = fields_;
+ });
+ Method = $pkg.Method = $newType(0, $kindStruct, "reflect.Method", true, "reflect", true, function(Name_, PkgPath_, Type_, Func_, Index_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Name = "";
+ this.PkgPath = "";
+ this.Type = $ifaceNil;
+ this.Func = new Value.ptr(ptrType$1.nil, 0, 0);
+ this.Index = 0;
+ return;
+ }
+ this.Name = Name_;
+ this.PkgPath = PkgPath_;
+ this.Type = Type_;
+ this.Func = Func_;
+ this.Index = Index_;
+ });
+ nameOff = $pkg.nameOff = $newType(4, $kindInt32, "reflect.nameOff", true, "reflect", false, null);
+ typeOff = $pkg.typeOff = $newType(4, $kindInt32, "reflect.typeOff", true, "reflect", false, null);
+ textOff = $pkg.textOff = $newType(4, $kindInt32, "reflect.textOff", true, "reflect", false, null);
+ StructField = $pkg.StructField = $newType(0, $kindStruct, "reflect.StructField", true, "reflect", true, function(Name_, PkgPath_, Type_, Tag_, Offset_, Index_, Anonymous_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Name = "";
+ this.PkgPath = "";
+ this.Type = $ifaceNil;
+ this.Tag = "";
+ this.Offset = 0;
+ this.Index = sliceType$14.nil;
+ this.Anonymous = false;
+ return;
+ }
+ this.Name = Name_;
+ this.PkgPath = PkgPath_;
+ this.Type = Type_;
+ this.Tag = Tag_;
+ this.Offset = Offset_;
+ this.Index = Index_;
+ this.Anonymous = Anonymous_;
+ });
+ StructTag = $pkg.StructTag = $newType(8, $kindString, "reflect.StructTag", true, "reflect", true, null);
+ fieldScan = $pkg.fieldScan = $newType(0, $kindStruct, "reflect.fieldScan", true, "reflect", false, function(typ_, index_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.typ = ptrType$10.nil;
+ this.index = sliceType$14.nil;
+ return;
+ }
+ this.typ = typ_;
+ this.index = index_;
+ });
+ Value = $pkg.Value = $newType(0, $kindStruct, "reflect.Value", true, "reflect", true, function(typ_, ptr_, flag_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.typ = ptrType$1.nil;
+ this.ptr = 0;
+ this.flag = 0;
+ return;
+ }
+ this.typ = typ_;
+ this.ptr = ptr_;
+ this.flag = flag_;
+ });
+ flag = $pkg.flag = $newType(4, $kindUintptr, "reflect.flag", true, "reflect", false, null);
+ ValueError = $pkg.ValueError = $newType(0, $kindStruct, "reflect.ValueError", true, "reflect", true, function(Method_, Kind_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Method = "";
+ this.Kind = 0;
+ return;
+ }
+ this.Method = Method_;
+ this.Kind = Kind_;
+ });
+ sliceType$1 = $sliceType(name);
+ ptrType$1 = $ptrType(rtype);
+ sliceType$2 = $sliceType(ptrType$1);
+ sliceType$3 = $sliceType(method);
+ mapType$1 = $mapType(ptrType$1, sliceType$3);
+ structType$1 = $structType("reflect", [{prop: "RWMutex", name: "", exported: true, typ: sync.RWMutex, tag: ""}, {prop: "m", name: "m", exported: false, typ: mapType$1, tag: ""}]);
+ sliceType$5 = $sliceType($emptyInterface);
+ ptrType$3 = $ptrType(js.Object);
+ funcType$1 = $funcType([sliceType$5], [ptrType$3], true);
+ sliceType$6 = $sliceType($String);
+ ptrType$4 = $ptrType(typeAlg);
+ ptrType$5 = $ptrType($Uint8);
+ sliceType$7 = $sliceType(imethod);
+ sliceType$8 = $sliceType(structField);
+ ptrType$6 = $ptrType(uncommonType);
+ ptrType$7 = $ptrType(nameData);
+ structType$8 = $structType("reflect", [{prop: "str", name: "str", exported: false, typ: $String, tag: ""}]);
+ sliceType$9 = $sliceType(ptrType$3);
+ sliceType$10 = $sliceType(Value);
+ sliceType$11 = $sliceType(Type);
+ sliceType$12 = $sliceType(sliceType$9);
+ ptrType$8 = $ptrType(interfaceType);
+ ptrType$9 = $ptrType(imethod);
+ sliceType$14 = $sliceType($Int);
+ sliceType$15 = $sliceType(fieldScan);
+ ptrType$10 = $ptrType(structType);
+ sliceType$16 = $sliceType($Uint8);
+ ptrType$16 = $ptrType($UnsafePointer);
+ sliceType$18 = $sliceType($Int32);
+ ptrType$17 = $ptrType(funcType);
+ funcType$3 = $funcType([$String], [$Bool], false);
+ funcType$4 = $funcType([$UnsafePointer, $Uintptr], [$Uintptr], false);
+ funcType$5 = $funcType([$UnsafePointer, $UnsafePointer], [$Bool], false);
+ arrayType$12 = $arrayType($Uintptr, 2);
+ ptrType$18 = $ptrType(ValueError);
+ init = function() {
+ var $ptr, used, x, x$1, x$10, x$11, x$12, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; used = $f.used; x = $f.x; x$1 = $f.x$1; x$10 = $f.x$10; x$11 = $f.x$11; x$12 = $f.x$12; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; x$8 = $f.x$8; x$9 = $f.x$9; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ used = (function(i) {
+ var $ptr, i;
+ });
+ $r = used((x = new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0), new x.constructor.elem(x))); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = used((x$1 = new uncommonType.ptr(0, 0, 0, 0, 0, sliceType$3.nil), new x$1.constructor.elem(x$1))); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = used((x$2 = new method.ptr(0, 0, 0, 0), new x$2.constructor.elem(x$2))); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = used((x$3 = new arrayType.ptr(new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0), ptrType$1.nil, ptrType$1.nil, 0), new x$3.constructor.elem(x$3))); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = used((x$4 = new chanType.ptr(new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0), ptrType$1.nil, 0), new x$4.constructor.elem(x$4))); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = used((x$5 = new funcType.ptr(new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0), 0, 0, sliceType$2.nil, sliceType$2.nil), new x$5.constructor.elem(x$5))); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = used((x$6 = new interfaceType.ptr(new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0), new name.ptr(ptrType$5.nil), sliceType$7.nil), new x$6.constructor.elem(x$6))); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = used((x$7 = new mapType.ptr(new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0), ptrType$1.nil, ptrType$1.nil, ptrType$1.nil, ptrType$1.nil, 0, 0, 0, 0, 0, false, false), new x$7.constructor.elem(x$7))); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = used((x$8 = new ptrType.ptr(new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0), ptrType$1.nil), new x$8.constructor.elem(x$8))); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = used((x$9 = new sliceType.ptr(new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0), ptrType$1.nil), new x$9.constructor.elem(x$9))); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = used((x$10 = new structType.ptr(new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0), new name.ptr(ptrType$5.nil), sliceType$8.nil), new x$10.constructor.elem(x$10))); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = used((x$11 = new imethod.ptr(0, 0), new x$11.constructor.elem(x$11))); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = used((x$12 = new structField.ptr(new name.ptr(ptrType$5.nil), ptrType$1.nil, 0), new x$12.constructor.elem(x$12))); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ initialized = true;
+ uint8Type = $assertType(TypeOf(new $Uint8(0)), ptrType$1);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: init }; } $f.$ptr = $ptr; $f.used = used; $f.x = x; $f.x$1 = x$1; $f.x$10 = x$10; $f.x$11 = x$11; $f.x$12 = x$12; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.x$8 = x$8; $f.x$9 = x$9; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ jsType = function(typ) {
+ var $ptr, typ;
+ return typ.jsType;
+ };
+ reflectType = function(typ) {
+ var $ptr, _1, _i, _i$1, _i$2, _i$3, _i$4, _key, _ref, _ref$1, _ref$2, _ref$3, _ref$4, dir, f, fields, i, i$1, i$2, i$3, i$4, imethods, in$1, m, m$1, methodSet, methods, out, outCount, params, reflectFields, reflectMethods, results, rt, typ, ut;
+ if (typ.reflectType === undefined) {
+ rt = new rtype.ptr(((($parseInt(typ.size) >> 0) >>> 0)), 0, 0, 0, 0, 0, ((($parseInt(typ.kind) >> 0) << 24 >>> 24)), ptrType$4.nil, ptrType$5.nil, newNameOff($clone(newName(internalStr(typ.string), "", "", !!(typ.exported)), name)), 0);
+ rt.jsType = typ;
+ typ.reflectType = rt;
+ methodSet = $methodSet(typ);
+ if (!(($parseInt(methodSet.length) === 0)) || !!(typ.named)) {
+ rt.tflag = (rt.tflag | (1)) >>> 0;
+ if (!!(typ.named)) {
+ rt.tflag = (rt.tflag | (4)) >>> 0;
+ }
+ reflectMethods = $makeSlice(sliceType$3, $parseInt(methodSet.length));
+ _ref = reflectMethods;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ m = methodSet[i];
+ method.copy(((i < 0 || i >= reflectMethods.$length) ? ($throwRuntimeError("index out of range"), undefined) : reflectMethods.$array[reflectMethods.$offset + i]), new method.ptr(newNameOff($clone(newName(internalStr(m.name), "", "", internalStr(m.pkg) === ""), name)), newTypeOff(reflectType(m.typ)), 0, 0));
+ _i++;
+ }
+ ut = new uncommonType.ptr(newNameOff($clone(newName(internalStr(typ.pkg), "", "", false), name)), (($parseInt(methodSet.length) << 16 >>> 16)), 0, 0, 0, reflectMethods);
+ _key = rt; (uncommonTypeMap || $throwRuntimeError("assignment to entry in nil map"))[ptrType$1.keyFor(_key)] = { k: _key, v: ut };
+ ut.jsType = typ;
+ }
+ _1 = rt.Kind();
+ if (_1 === (17)) {
+ setKindType(rt, new arrayType.ptr(new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0), reflectType(typ.elem), ptrType$1.nil, ((($parseInt(typ.len) >> 0) >>> 0))));
+ } else if (_1 === (18)) {
+ dir = 3;
+ if (!!(typ.sendOnly)) {
+ dir = 2;
+ }
+ if (!!(typ.recvOnly)) {
+ dir = 1;
+ }
+ setKindType(rt, new chanType.ptr(new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0), reflectType(typ.elem), ((dir >>> 0))));
+ } else if (_1 === (19)) {
+ params = typ.params;
+ in$1 = $makeSlice(sliceType$2, $parseInt(params.length));
+ _ref$1 = in$1;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ i$1 = _i$1;
+ ((i$1 < 0 || i$1 >= in$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : in$1.$array[in$1.$offset + i$1] = reflectType(params[i$1]));
+ _i$1++;
+ }
+ results = typ.results;
+ out = $makeSlice(sliceType$2, $parseInt(results.length));
+ _ref$2 = out;
+ _i$2 = 0;
+ while (true) {
+ if (!(_i$2 < _ref$2.$length)) { break; }
+ i$2 = _i$2;
+ ((i$2 < 0 || i$2 >= out.$length) ? ($throwRuntimeError("index out of range"), undefined) : out.$array[out.$offset + i$2] = reflectType(results[i$2]));
+ _i$2++;
+ }
+ outCount = (($parseInt(results.length) << 16 >>> 16));
+ if (!!(typ.variadic)) {
+ outCount = (outCount | (32768)) >>> 0;
+ }
+ setKindType(rt, new funcType.ptr($clone(rt, rtype), (($parseInt(params.length) << 16 >>> 16)), outCount, in$1, out));
+ } else if (_1 === (20)) {
+ methods = typ.methods;
+ imethods = $makeSlice(sliceType$7, $parseInt(methods.length));
+ _ref$3 = imethods;
+ _i$3 = 0;
+ while (true) {
+ if (!(_i$3 < _ref$3.$length)) { break; }
+ i$3 = _i$3;
+ m$1 = methods[i$3];
+ imethod.copy(((i$3 < 0 || i$3 >= imethods.$length) ? ($throwRuntimeError("index out of range"), undefined) : imethods.$array[imethods.$offset + i$3]), new imethod.ptr(newNameOff($clone(newName(internalStr(m$1.name), "", "", internalStr(m$1.pkg) === ""), name)), newTypeOff(reflectType(m$1.typ))));
+ _i$3++;
+ }
+ setKindType(rt, new interfaceType.ptr($clone(rt, rtype), new name.ptr(ptrType$5.nil), imethods));
+ } else if (_1 === (21)) {
+ setKindType(rt, new mapType.ptr(new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0), reflectType(typ.key), reflectType(typ.elem), ptrType$1.nil, ptrType$1.nil, 0, 0, 0, 0, 0, false, false));
+ } else if (_1 === (22)) {
+ setKindType(rt, new ptrType.ptr(new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0), reflectType(typ.elem)));
+ } else if (_1 === (23)) {
+ setKindType(rt, new sliceType.ptr(new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0), reflectType(typ.elem)));
+ } else if (_1 === (25)) {
+ fields = typ.fields;
+ reflectFields = $makeSlice(sliceType$8, $parseInt(fields.length));
+ _ref$4 = reflectFields;
+ _i$4 = 0;
+ while (true) {
+ if (!(_i$4 < _ref$4.$length)) { break; }
+ i$4 = _i$4;
+ f = fields[i$4];
+ structField.copy(((i$4 < 0 || i$4 >= reflectFields.$length) ? ($throwRuntimeError("index out of range"), undefined) : reflectFields.$array[reflectFields.$offset + i$4]), new structField.ptr($clone(newName(internalStr(f.name), internalStr(f.tag), "", !!(f.exported)), name), reflectType(f.typ), ((i$4 >>> 0))));
+ _i$4++;
+ }
+ setKindType(rt, new structType.ptr($clone(rt, rtype), $clone(newName(internalStr(typ.pkgPath), "", "", false), name), reflectFields));
+ }
+ }
+ return ((typ.reflectType));
+ };
+ setKindType = function(rt, kindType) {
+ var $ptr, kindType, rt;
+ rt.kindType = kindType;
+ kindType.rtype = rt;
+ };
+ uncommonType.ptr.prototype.methods = function() {
+ var $ptr, t;
+ t = this;
+ return t._methods;
+ };
+ uncommonType.prototype.methods = function() { return this.$val.methods(); };
+ rtype.ptr.prototype.uncommon = function() {
+ var $ptr, _entry, t;
+ t = this;
+ return (_entry = uncommonTypeMap[ptrType$1.keyFor(t)], _entry !== undefined ? _entry.v : ptrType$6.nil);
+ };
+ rtype.prototype.uncommon = function() { return this.$val.uncommon(); };
+ funcType.ptr.prototype.in$ = function() {
+ var $ptr, t;
+ t = this;
+ return t._in;
+ };
+ funcType.prototype.in$ = function() { return this.$val.in$(); };
+ funcType.ptr.prototype.out = function() {
+ var $ptr, t;
+ t = this;
+ return t._out;
+ };
+ funcType.prototype.out = function() { return this.$val.out(); };
+ name.ptr.prototype.name = function() {
+ var $ptr, _entry, n, s;
+ s = "";
+ n = this;
+ s = (_entry = nameMap[ptrType$5.keyFor(n.bytes)], _entry !== undefined ? _entry.v : ptrType$7.nil).name;
+ return s;
+ };
+ name.prototype.name = function() { return this.$val.name(); };
+ name.ptr.prototype.tag = function() {
+ var $ptr, _entry, n, s;
+ s = "";
+ n = this;
+ s = (_entry = nameMap[ptrType$5.keyFor(n.bytes)], _entry !== undefined ? _entry.v : ptrType$7.nil).tag;
+ return s;
+ };
+ name.prototype.tag = function() { return this.$val.tag(); };
+ name.ptr.prototype.pkgPath = function() {
+ var $ptr, _entry, n;
+ n = this;
+ return (_entry = nameMap[ptrType$5.keyFor(n.bytes)], _entry !== undefined ? _entry.v : ptrType$7.nil).pkgPath;
+ };
+ name.prototype.pkgPath = function() { return this.$val.pkgPath(); };
+ name.ptr.prototype.isExported = function() {
+ var $ptr, _entry, n;
+ n = this;
+ return (_entry = nameMap[ptrType$5.keyFor(n.bytes)], _entry !== undefined ? _entry.v : ptrType$7.nil).exported;
+ };
+ name.prototype.isExported = function() { return this.$val.isExported(); };
+ newName = function(n, tag, pkgPath, exported) {
+ var $ptr, _key, b, exported, n, pkgPath, tag;
+ b = $newDataPointer(0, ptrType$5);
+ _key = b; (nameMap || $throwRuntimeError("assignment to entry in nil map"))[ptrType$5.keyFor(_key)] = { k: _key, v: new nameData.ptr(n, tag, pkgPath, exported) };
+ return new name.ptr(b);
+ };
+ rtype.ptr.prototype.nameOff = function(off) {
+ var $ptr, off, t, x;
+ t = this;
+ return (x = ((off >> 0)), ((x < 0 || x >= nameOffList.$length) ? ($throwRuntimeError("index out of range"), undefined) : nameOffList.$array[nameOffList.$offset + x]));
+ };
+ rtype.prototype.nameOff = function(off) { return this.$val.nameOff(off); };
+ newNameOff = function(n) {
+ var $ptr, i, n;
+ i = nameOffList.$length;
+ nameOffList = $append(nameOffList, n);
+ return ((i >> 0));
+ };
+ rtype.ptr.prototype.typeOff = function(off) {
+ var $ptr, off, t, x;
+ t = this;
+ return (x = ((off >> 0)), ((x < 0 || x >= typeOffList.$length) ? ($throwRuntimeError("index out of range"), undefined) : typeOffList.$array[typeOffList.$offset + x]));
+ };
+ rtype.prototype.typeOff = function(off) { return this.$val.typeOff(off); };
+ newTypeOff = function(t) {
+ var $ptr, i, t;
+ i = typeOffList.$length;
+ typeOffList = $append(typeOffList, t);
+ return ((i >> 0));
+ };
+ internalStr = function(strObj) {
+ var $ptr, c, strObj;
+ c = new structType$8.ptr("");
+ c.str = strObj;
+ return c.str;
+ };
+ isWrapped = function(typ) {
+ var $ptr, typ;
+ return !!(jsType(typ).wrapped);
+ };
+ copyStruct = function(dst, src, typ) {
+ var $ptr, dst, fields, i, prop, src, typ;
+ fields = jsType(typ).fields;
+ i = 0;
+ while (true) {
+ if (!(i < $parseInt(fields.length))) { break; }
+ prop = $internalize(fields[i].prop, $String);
+ dst[$externalize(prop, $String)] = src[$externalize(prop, $String)];
+ i = i + (1) >> 0;
+ }
+ };
+ makeValue = function(t, v, fl) {
+ var $ptr, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _v, _v$1, fl, rt, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _v = $f._v; _v$1 = $f._v$1; fl = $f.fl; rt = $f.rt; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = t.common(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ rt = _r;
+ _r$1 = t.Kind(); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ if (_r$1 === 17) { _v$1 = true; $s = 5; continue s; }
+ _r$2 = t.Kind(); /* */ $s = 7; case 7: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _v$1 = _r$2 === 25; case 5:
+ if (_v$1) { _v = true; $s = 4; continue s; }
+ _r$3 = t.Kind(); /* */ $s = 8; case 8: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _v = _r$3 === 22; case 4:
+ /* */ if (_v) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (_v) { */ case 2:
+ _r$4 = t.Kind(); /* */ $s = 9; case 9: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ $s = -1; return new Value.ptr(rt, (v), (fl | ((_r$4 >>> 0))) >>> 0);
+ /* } */ case 3:
+ _r$5 = t.Kind(); /* */ $s = 10; case 10: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $s = -1; return new Value.ptr(rt, ($newDataPointer(v, jsType(rt.ptrTo()))), (((fl | ((_r$5 >>> 0))) >>> 0) | 128) >>> 0);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: makeValue }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._v = _v; $f._v$1 = _v$1; $f.fl = fl; $f.rt = rt; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ MakeSlice = function(typ, len, cap) {
+ var $ptr, _r, _r$1, cap, len, typ, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; cap = $f.cap; len = $f.len; typ = $f.typ; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ typ = [typ];
+ _r = typ[0].Kind(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (!((_r === 23))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!((_r === 23))) { */ case 1:
+ $panic(new $String("reflect.MakeSlice of non-slice type"));
+ /* } */ case 2:
+ if (len < 0) {
+ $panic(new $String("reflect.MakeSlice: negative len"));
+ }
+ if (cap < 0) {
+ $panic(new $String("reflect.MakeSlice: negative cap"));
+ }
+ if (len > cap) {
+ $panic(new $String("reflect.MakeSlice: len > cap"));
+ }
+ _r$1 = makeValue(typ[0], $makeSlice(jsType(typ[0]), len, cap, (function(typ) { return function $b() {
+ var $ptr, _r$1, _r$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$1 = typ[0].Elem(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = jsType(_r$1); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return _r$2.zero();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.$s = $s; $f.$r = $r; return $f;
+ }; })(typ)), 0); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: MakeSlice }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.cap = cap; $f.len = len; $f.typ = typ; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.MakeSlice = MakeSlice;
+ TypeOf = function(i) {
+ var $ptr, i;
+ if (!initialized) {
+ return new rtype.ptr(0, 0, 0, 0, 0, 0, 0, ptrType$4.nil, ptrType$5.nil, 0, 0);
+ }
+ if ($interfaceIsEqual(i, $ifaceNil)) {
+ return $ifaceNil;
+ }
+ return reflectType(i.constructor);
+ };
+ $pkg.TypeOf = TypeOf;
+ ValueOf = function(i) {
+ var $ptr, _r, i, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; i = $f.i; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ if ($interfaceIsEqual(i, $ifaceNil)) {
+ $s = -1; return new Value.ptr(ptrType$1.nil, 0, 0);
+ }
+ _r = makeValue(reflectType(i.constructor), i.$val, 0); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ValueOf }; } $f.$ptr = $ptr; $f._r = _r; $f.i = i; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.ValueOf = ValueOf;
+ FuncOf = function(in$1, out, variadic) {
+ var $ptr, _i, _i$1, _r, _ref, _ref$1, _v, _v$1, i, i$1, in$1, jsIn, jsOut, out, v, v$1, variadic, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _i$1 = $f._i$1; _r = $f._r; _ref = $f._ref; _ref$1 = $f._ref$1; _v = $f._v; _v$1 = $f._v$1; i = $f.i; i$1 = $f.i$1; in$1 = $f.in$1; jsIn = $f.jsIn; jsOut = $f.jsOut; out = $f.out; v = $f.v; v$1 = $f.v$1; variadic = $f.variadic; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ if (!(variadic)) { _v = false; $s = 3; continue s; }
+ if (in$1.$length === 0) { _v$1 = true; $s = 4; continue s; }
+ _r = (x = in$1.$length - 1 >> 0, ((x < 0 || x >= in$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : in$1.$array[in$1.$offset + x])).Kind(); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _v$1 = !((_r === 23)); case 4:
+ _v = _v$1; case 3:
+ /* */ if (_v) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (_v) { */ case 1:
+ $panic(new $String("reflect.FuncOf: last arg of variadic func must be slice"));
+ /* } */ case 2:
+ jsIn = $makeSlice(sliceType$9, in$1.$length);
+ _ref = in$1;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ v = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ ((i < 0 || i >= jsIn.$length) ? ($throwRuntimeError("index out of range"), undefined) : jsIn.$array[jsIn.$offset + i] = jsType(v));
+ _i++;
+ }
+ jsOut = $makeSlice(sliceType$9, out.$length);
+ _ref$1 = out;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ i$1 = _i$1;
+ v$1 = ((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]);
+ ((i$1 < 0 || i$1 >= jsOut.$length) ? ($throwRuntimeError("index out of range"), undefined) : jsOut.$array[jsOut.$offset + i$1] = jsType(v$1));
+ _i$1++;
+ }
+ $s = -1; return reflectType($funcType($externalize(jsIn, sliceType$9), $externalize(jsOut, sliceType$9), $externalize(variadic, $Bool)));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FuncOf }; } $f.$ptr = $ptr; $f._i = _i; $f._i$1 = _i$1; $f._r = _r; $f._ref = _ref; $f._ref$1 = _ref$1; $f._v = _v; $f._v$1 = _v$1; $f.i = i; $f.i$1 = i$1; $f.in$1 = in$1; $f.jsIn = jsIn; $f.jsOut = jsOut; $f.out = out; $f.v = v; $f.v$1 = v$1; $f.variadic = variadic; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.FuncOf = FuncOf;
+ rtype.ptr.prototype.ptrTo = function() {
+ var $ptr, t;
+ t = this;
+ return reflectType($ptrType(jsType(t)));
+ };
+ rtype.prototype.ptrTo = function() { return this.$val.ptrTo(); };
+ SliceOf = function(t) {
+ var $ptr, t;
+ return reflectType($sliceType(jsType(t)));
+ };
+ $pkg.SliceOf = SliceOf;
+ Zero = function(typ) {
+ var $ptr, _r, typ, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; typ = $f.typ; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = makeValue(typ, jsType(typ).zero(), 0); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Zero }; } $f.$ptr = $ptr; $f._r = _r; $f.typ = typ; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Zero = Zero;
+ unsafe_New = function(typ) {
+ var $ptr, _1, typ;
+ _1 = typ.Kind();
+ if (_1 === (25)) {
+ return (new (jsType(typ).ptr)());
+ } else if (_1 === (17)) {
+ return (jsType(typ).zero());
+ } else {
+ return ($newDataPointer(jsType(typ).zero(), jsType(typ.ptrTo())));
+ }
+ };
+ makeInt = function(f, bits, t) {
+ var $ptr, _1, _r, bits, f, ptr, t, typ, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; bits = $f.bits; f = $f.f; ptr = $f.ptr; t = $f.t; typ = $f.typ; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = t.common(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ typ = _r;
+ ptr = unsafe_New(typ);
+ _1 = typ.Kind();
+ if (_1 === (3)) {
+ (ptr).$set(((bits.$low << 24 >> 24)));
+ } else if (_1 === (4)) {
+ (ptr).$set(((bits.$low << 16 >> 16)));
+ } else if ((_1 === (2)) || (_1 === (5))) {
+ (ptr).$set(((bits.$low >> 0)));
+ } else if (_1 === (6)) {
+ (ptr).$set((new $Int64(bits.$high, bits.$low)));
+ } else if (_1 === (8)) {
+ (ptr).$set(((bits.$low << 24 >>> 24)));
+ } else if (_1 === (9)) {
+ (ptr).$set(((bits.$low << 16 >>> 16)));
+ } else if ((_1 === (7)) || (_1 === (10)) || (_1 === (12))) {
+ (ptr).$set(((bits.$low >>> 0)));
+ } else if (_1 === (11)) {
+ (ptr).$set((bits));
+ }
+ $s = -1; return new Value.ptr(typ, ptr, (((f | 128) >>> 0) | ((typ.Kind() >>> 0))) >>> 0);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: makeInt }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f.bits = bits; $f.f = f; $f.ptr = ptr; $f.t = t; $f.typ = typ; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ typedmemmove = function(t, dst, src) {
+ var $ptr, dst, src, t;
+ dst.$set(src.$get());
+ };
+ makemap = function(t) {
+ var $ptr, m, t;
+ m = 0;
+ m = (new ($global.Object)());
+ return m;
+ };
+ keyFor = function(t, key) {
+ var $ptr, k, key, kv, t;
+ kv = key;
+ if (!(kv.$get === undefined)) {
+ kv = kv.$get();
+ }
+ k = $internalize(jsType(t.Key()).keyFor(kv), $String);
+ return [kv, k];
+ };
+ mapaccess = function(t, m, key) {
+ var $ptr, _tuple, entry, k, key, m, t;
+ _tuple = keyFor(t, key);
+ k = _tuple[1];
+ entry = m[$externalize(k, $String)];
+ if (entry === undefined) {
+ return 0;
+ }
+ return ($newDataPointer(entry.v, jsType(PtrTo(t.Elem()))));
+ };
+ mapassign = function(t, m, key, val) {
+ var $ptr, _r, _tuple, entry, et, jsVal, k, key, kv, m, newVal, t, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; entry = $f.entry; et = $f.et; jsVal = $f.jsVal; k = $f.k; key = $f.key; kv = $f.kv; m = $f.m; newVal = $f.newVal; t = $f.t; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _tuple = keyFor(t, key);
+ kv = _tuple[0];
+ k = _tuple[1];
+ jsVal = val.$get();
+ et = t.Elem();
+ _r = et.Kind(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (_r === 25) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (_r === 25) { */ case 1:
+ newVal = jsType(et).zero();
+ copyStruct(newVal, jsVal, et);
+ jsVal = newVal;
+ /* } */ case 2:
+ entry = new ($global.Object)();
+ entry.k = kv;
+ entry.v = jsVal;
+ m[$externalize(k, $String)] = entry;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: mapassign }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.entry = entry; $f.et = et; $f.jsVal = jsVal; $f.k = k; $f.key = key; $f.kv = kv; $f.m = m; $f.newVal = newVal; $f.t = t; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ mapdelete = function(t, m, key) {
+ var $ptr, _tuple, k, key, m, t;
+ _tuple = keyFor(t, key);
+ k = _tuple[1];
+ delete m[$externalize(k, $String)];
+ };
+ mapiterinit = function(t, m) {
+ var $ptr, m, t;
+ return ((new mapIter.ptr(t, m, $keys(m), 0)));
+ };
+ mapiterkey = function(it) {
+ var $ptr, _r, _r$1, _r$2, it, iter, k, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; it = $f.it; iter = $f.iter; k = $f.k; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ iter = ((it));
+ k = iter.keys[iter.i];
+ _r = iter.t.Key(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = PtrTo(_r); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = jsType(_r$1); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return ($newDataPointer(iter.m[$externalize($internalize(k, $String), $String)].k, _r$2));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: mapiterkey }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.it = it; $f.iter = iter; $f.k = k; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ mapiternext = function(it) {
+ var $ptr, it, iter;
+ iter = ((it));
+ iter.i = iter.i + (1) >> 0;
+ };
+ maplen = function(m) {
+ var $ptr, m;
+ return $parseInt($keys(m).length);
+ };
+ cvtDirect = function(v, typ) {
+ var $ptr, _1, _arg, _arg$1, _arg$2, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, k, slice, srcVal, typ, v, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; k = $f.k; slice = $f.slice; srcVal = $f.srcVal; typ = $f.typ; v = $f.v; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ srcVal = $clone(v, Value).object();
+ /* */ if (srcVal === jsType(v.typ).nil) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (srcVal === jsType(v.typ).nil) { */ case 1:
+ _r = makeValue(typ, jsType(typ).nil, v.flag); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* } */ case 2:
+ val = null;
+ _r$1 = typ.Kind(); /* */ $s = 5; case 5: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ k = _r$1;
+ _1 = k;
+ /* */ if (_1 === (23)) { $s = 6; continue; }
+ /* */ if (_1 === (22)) { $s = 7; continue; }
+ /* */ if (_1 === (25)) { $s = 8; continue; }
+ /* */ if ((_1 === (17)) || (_1 === (1)) || (_1 === (18)) || (_1 === (19)) || (_1 === (20)) || (_1 === (21)) || (_1 === (24))) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (_1 === (23)) { */ case 6:
+ slice = new (jsType(typ))(srcVal.$array);
+ slice.$offset = srcVal.$offset;
+ slice.$length = srcVal.$length;
+ slice.$capacity = srcVal.$capacity;
+ val = $newDataPointer(slice, jsType(PtrTo(typ)));
+ $s = 11; continue;
+ /* } else if (_1 === (22)) { */ case 7:
+ _r$2 = typ.Elem(); /* */ $s = 14; case 14: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$3 = _r$2.Kind(); /* */ $s = 15; case 15: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ /* */ if (_r$3 === 25) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if (_r$3 === 25) { */ case 12:
+ _r$4 = typ.Elem(); /* */ $s = 18; case 18: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ /* */ if ($interfaceIsEqual(_r$4, v.typ.Elem())) { $s = 16; continue; }
+ /* */ $s = 17; continue;
+ /* if ($interfaceIsEqual(_r$4, v.typ.Elem())) { */ case 16:
+ val = srcVal;
+ /* break; */ $s = 4; continue;
+ /* } */ case 17:
+ val = new (jsType(typ))();
+ _arg = val;
+ _arg$1 = srcVal;
+ _r$5 = typ.Elem(); /* */ $s = 19; case 19: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _arg$2 = _r$5;
+ $r = copyStruct(_arg, _arg$1, _arg$2); /* */ $s = 20; case 20: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* break; */ $s = 4; continue;
+ /* } */ case 13:
+ val = new (jsType(typ))(srcVal.$get, srcVal.$set);
+ $s = 11; continue;
+ /* } else if (_1 === (25)) { */ case 8:
+ val = new (jsType(typ).ptr)();
+ copyStruct(val, srcVal, typ);
+ $s = 11; continue;
+ /* } else if ((_1 === (17)) || (_1 === (1)) || (_1 === (18)) || (_1 === (19)) || (_1 === (20)) || (_1 === (21)) || (_1 === (24))) { */ case 9:
+ val = v.ptr;
+ $s = 11; continue;
+ /* } else { */ case 10:
+ $panic(new ValueError.ptr("reflect.Convert", k));
+ /* } */ case 11:
+ case 4:
+ _r$6 = typ.common(); /* */ $s = 21; case 21: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$7 = typ.Kind(); /* */ $s = 22; case 22: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $s = -1; return new Value.ptr(_r$6, (val), (((v.flag & 224) >>> 0) | ((_r$7 >>> 0))) >>> 0);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtDirect }; } $f.$ptr = $ptr; $f._1 = _1; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f.k = k; $f.slice = slice; $f.srcVal = srcVal; $f.typ = typ; $f.v = v; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Copy = function(dst, src) {
+ var $ptr, dk, dst, dstVal, sk, src, srcVal, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; dk = $f.dk; dst = $f.dst; dstVal = $f.dstVal; sk = $f.sk; src = $f.src; srcVal = $f.srcVal; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ dk = new flag(dst.flag).kind();
+ if (!((dk === 17)) && !((dk === 23))) {
+ $panic(new ValueError.ptr("reflect.Copy", dk));
+ }
+ if (dk === 17) {
+ new flag(dst.flag).mustBeAssignable();
+ }
+ new flag(dst.flag).mustBeExported();
+ sk = new flag(src.flag).kind();
+ if (!((sk === 17)) && !((sk === 23))) {
+ $panic(new ValueError.ptr("reflect.Copy", sk));
+ }
+ new flag(src.flag).mustBeExported();
+ $r = typesMustMatch("reflect.Copy", dst.typ.Elem(), src.typ.Elem()); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ dstVal = $clone(dst, Value).object();
+ if (dk === 17) {
+ dstVal = new (jsType(SliceOf(dst.typ.Elem())))(dstVal);
+ }
+ srcVal = $clone(src, Value).object();
+ if (sk === 17) {
+ srcVal = new (jsType(SliceOf(src.typ.Elem())))(srcVal);
+ }
+ $s = -1; return $parseInt($copySlice(dstVal, srcVal)) >> 0;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Copy }; } $f.$ptr = $ptr; $f.dk = dk; $f.dst = dst; $f.dstVal = dstVal; $f.sk = sk; $f.src = src; $f.srcVal = srcVal; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Copy = Copy;
+ methodReceiver = function(op, v, i) {
+ var $ptr, _$38, fn, i, m, m$1, op, prop, rcvr, t, tt, ut, v, x, x$1;
+ _$38 = ptrType$1.nil;
+ t = ptrType$1.nil;
+ fn = 0;
+ prop = "";
+ if (v.typ.Kind() === 20) {
+ tt = (v.typ.kindType);
+ if (i < 0 || i >= tt.methods.$length) {
+ $panic(new $String("reflect: internal error: invalid method index"));
+ }
+ m = (x = tt.methods, ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]));
+ if (!$clone(tt.rtype.nameOff(m.name), name).isExported()) {
+ $panic(new $String("reflect: " + op + " of unexported method"));
+ }
+ t = tt.rtype.typeOff(m.typ);
+ prop = $clone(tt.rtype.nameOff(m.name), name).name();
+ } else {
+ ut = v.typ.uncommon();
+ if (ut === ptrType$6.nil || ((i >>> 0)) >= ((ut.mcount >>> 0))) {
+ $panic(new $String("reflect: internal error: invalid method index"));
+ }
+ m$1 = $clone((x$1 = ut.methods(), ((i < 0 || i >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + i])), method);
+ if (!$clone(v.typ.nameOff(m$1.name), name).isExported()) {
+ $panic(new $String("reflect: " + op + " of unexported method"));
+ }
+ t = v.typ.typeOff(m$1.mtyp);
+ prop = $internalize($methodSet(jsType(v.typ))[i].prop, $String);
+ }
+ rcvr = $clone(v, Value).object();
+ if (isWrapped(v.typ)) {
+ rcvr = new (jsType(v.typ))(rcvr);
+ }
+ fn = (rcvr[$externalize(prop, $String)]);
+ return [_$38, t, fn];
+ };
+ valueInterface = function(v, safe) {
+ var $ptr, _r, safe, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; safe = $f.safe; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ if (v.flag === 0) {
+ $panic(new ValueError.ptr("reflect.Value.Interface", 0));
+ }
+ if (safe && !((((v.flag & 96) >>> 0) === 0))) {
+ $panic(new $String("reflect.Value.Interface: cannot return value obtained from unexported field or method"));
+ }
+ /* */ if (!((((v.flag & 512) >>> 0) === 0))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!((((v.flag & 512) >>> 0) === 0))) { */ case 1:
+ _r = makeMethodValue("Interface", $clone(v, Value)); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ v = _r;
+ /* } */ case 2:
+ if (isWrapped(v.typ)) {
+ $s = -1; return ((new (jsType(v.typ))($clone(v, Value).object())));
+ }
+ $s = -1; return (($clone(v, Value).object()));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: valueInterface }; } $f.$ptr = $ptr; $f._r = _r; $f.safe = safe; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ifaceE2I = function(t, src, dst) {
+ var $ptr, dst, src, t;
+ dst.$set(src);
+ };
+ methodName = function() {
+ var $ptr;
+ return "?FIXME?";
+ };
+ makeMethodValue = function(op, v) {
+ var $ptr, _r, _tuple, fn, fv, op, rcvr, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; fn = $f.fn; fv = $f.fv; op = $f.op; rcvr = $f.rcvr; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ fn = [fn];
+ rcvr = [rcvr];
+ if (((v.flag & 512) >>> 0) === 0) {
+ $panic(new $String("reflect: internal error: invalid use of makePartialFunc"));
+ }
+ _tuple = methodReceiver(op, $clone(v, Value), ((v.flag >> 0)) >> 10 >> 0);
+ fn[0] = _tuple[2];
+ rcvr[0] = $clone(v, Value).object();
+ if (isWrapped(v.typ)) {
+ rcvr[0] = new (jsType(v.typ))(rcvr[0]);
+ }
+ fv = js.MakeFunc((function(fn, rcvr) { return function(this$1, arguments$1) {
+ var $ptr, arguments$1, this$1;
+ return new $jsObjectPtr(fn[0].apply(rcvr[0], $externalize(arguments$1, sliceType$9)));
+ }; })(fn, rcvr));
+ _r = $clone(v, Value).Type().common(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return new Value.ptr(_r, (fv), (((v.flag & 96) >>> 0) | 19) >>> 0);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: makeMethodValue }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.fn = fn; $f.fv = fv; $f.op = op; $f.rcvr = rcvr; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ rtype.ptr.prototype.pointers = function() {
+ var $ptr, _1, t;
+ t = this;
+ _1 = t.Kind();
+ if ((_1 === (22)) || (_1 === (21)) || (_1 === (18)) || (_1 === (19)) || (_1 === (25)) || (_1 === (17))) {
+ return true;
+ } else {
+ return false;
+ }
+ };
+ rtype.prototype.pointers = function() { return this.$val.pointers(); };
+ rtype.ptr.prototype.Comparable = function() {
+ var $ptr, _1, _r, _r$1, _r$2, i, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; i = $f.i; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ _1 = t.Kind();
+ /* */ if ((_1 === (19)) || (_1 === (23)) || (_1 === (21))) { $s = 2; continue; }
+ /* */ if (_1 === (17)) { $s = 3; continue; }
+ /* */ if (_1 === (25)) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if ((_1 === (19)) || (_1 === (23)) || (_1 === (21))) { */ case 2:
+ $s = -1; return false;
+ /* } else if (_1 === (17)) { */ case 3:
+ _r = t.Elem().Comparable(); /* */ $s = 6; case 6: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* } else if (_1 === (25)) { */ case 4:
+ i = 0;
+ /* while (true) { */ case 7:
+ /* if (!(i < t.NumField())) { break; } */ if(!(i < t.NumField())) { $s = 8; continue; }
+ _r$1 = t.Field(i); /* */ $s = 11; case 11: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = _r$1.Type.Comparable(); /* */ $s = 12; case 12: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ /* */ if (!_r$2) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (!_r$2) { */ case 9:
+ $s = -1; return false;
+ /* } */ case 10:
+ i = i + (1) >> 0;
+ /* } */ $s = 7; continue; case 8:
+ /* } */ case 5:
+ case 1:
+ $s = -1; return true;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: rtype.ptr.prototype.Comparable }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.i = i; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ rtype.prototype.Comparable = function() { return this.$val.Comparable(); };
+ rtype.ptr.prototype.Method = function(i) {
+ var $ptr, _i, _i$1, _r, _r$1, _ref, _ref$1, arg, fl, fn, ft, i, in$1, m, methods, mt, mtyp, out, p, pname, prop, ret, t, tt, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _i$1 = $f._i$1; _r = $f._r; _r$1 = $f._r$1; _ref = $f._ref; _ref$1 = $f._ref$1; arg = $f.arg; fl = $f.fl; fn = $f.fn; ft = $f.ft; i = $f.i; in$1 = $f.in$1; m = $f.m; methods = $f.methods; mt = $f.mt; mtyp = $f.mtyp; out = $f.out; p = $f.p; pname = $f.pname; prop = $f.prop; ret = $f.ret; t = $f.t; tt = $f.tt; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ prop = [prop];
+ m = new Method.ptr("", "", $ifaceNil, new Value.ptr(ptrType$1.nil, 0, 0), 0);
+ t = this;
+ if (t.Kind() === 20) {
+ tt = (t.kindType);
+ Method.copy(m, tt.Method(i));
+ $s = -1; return m;
+ }
+ _r = t.exportedMethods(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ methods = _r;
+ if (i < 0 || i >= methods.$length) {
+ $panic(new $String("reflect: Method index out of range"));
+ }
+ p = $clone(((i < 0 || i >= methods.$length) ? ($throwRuntimeError("index out of range"), undefined) : methods.$array[methods.$offset + i]), method);
+ pname = $clone(t.nameOff(p.name), name);
+ m.Name = $clone(pname, name).name();
+ fl = 19;
+ mtyp = t.typeOff(p.mtyp);
+ ft = (mtyp.kindType);
+ in$1 = $makeSlice(sliceType$11, 0, (1 + ft.in$().$length >> 0));
+ in$1 = $append(in$1, t);
+ _ref = ft.in$();
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ arg = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ in$1 = $append(in$1, arg);
+ _i++;
+ }
+ out = $makeSlice(sliceType$11, 0, ft.out().$length);
+ _ref$1 = ft.out();
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ ret = ((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]);
+ out = $append(out, ret);
+ _i$1++;
+ }
+ _r$1 = FuncOf(in$1, out, ft.rtype.IsVariadic()); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ mt = _r$1;
+ m.Type = mt;
+ prop[0] = $internalize($methodSet(t.jsType)[i].prop, $String);
+ fn = js.MakeFunc((function(prop) { return function(this$1, arguments$1) {
+ var $ptr, arguments$1, rcvr, this$1;
+ rcvr = (0 >= arguments$1.$length ? ($throwRuntimeError("index out of range"), undefined) : arguments$1.$array[arguments$1.$offset + 0]);
+ return new $jsObjectPtr(rcvr[$externalize(prop[0], $String)].apply(rcvr, $externalize($subslice(arguments$1, 1), sliceType$9)));
+ }; })(prop));
+ m.Func = new Value.ptr($assertType(mt, ptrType$1), (fn), fl);
+ m.Index = i;
+ Method.copy(m, m);
+ $s = -1; return m;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: rtype.ptr.prototype.Method }; } $f.$ptr = $ptr; $f._i = _i; $f._i$1 = _i$1; $f._r = _r; $f._r$1 = _r$1; $f._ref = _ref; $f._ref$1 = _ref$1; $f.arg = arg; $f.fl = fl; $f.fn = fn; $f.ft = ft; $f.i = i; $f.in$1 = in$1; $f.m = m; $f.methods = methods; $f.mt = mt; $f.mtyp = mtyp; $f.out = out; $f.p = p; $f.pname = pname; $f.prop = prop; $f.ret = ret; $f.t = t; $f.tt = tt; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ rtype.prototype.Method = function(i) { return this.$val.Method(i); };
+ Value.ptr.prototype.object = function() {
+ var $ptr, _1, newVal, v, val;
+ v = this;
+ if ((v.typ.Kind() === 17) || (v.typ.Kind() === 25)) {
+ return v.ptr;
+ }
+ if (!((((v.flag & 128) >>> 0) === 0))) {
+ val = v.ptr.$get();
+ if (!(val === $ifaceNil) && !(val.constructor === jsType(v.typ))) {
+ switch (0) { default:
+ _1 = v.typ.Kind();
+ if ((_1 === (11)) || (_1 === (6))) {
+ val = new (jsType(v.typ))(val.$high, val.$low);
+ } else if ((_1 === (15)) || (_1 === (16))) {
+ val = new (jsType(v.typ))(val.$real, val.$imag);
+ } else if (_1 === (23)) {
+ if (val === val.constructor.nil) {
+ val = jsType(v.typ).nil;
+ break;
+ }
+ newVal = new (jsType(v.typ))(val.$array);
+ newVal.$offset = val.$offset;
+ newVal.$length = val.$length;
+ newVal.$capacity = val.$capacity;
+ val = newVal;
+ }
+ }
+ }
+ return val;
+ }
+ return v.ptr;
+ };
+ Value.prototype.object = function() { return this.$val.object(); };
+ Value.ptr.prototype.call = function(op, in$1) {
+ var $ptr, _1, _arg, _arg$1, _arg$2, _arg$3, _i, _i$1, _i$2, _r, _r$1, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _ref, _ref$1, _ref$2, _tmp, _tmp$1, _tuple, arg, argsArray, elem, fn, i, i$1, i$2, i$3, in$1, isSlice, m, n, nin, nout, op, origIn, rcvr, results, ret, slice, t, targ, v, x, x$1, x$2, xt, xt$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _arg$3 = $f._arg$3; _i = $f._i; _i$1 = $f._i$1; _i$2 = $f._i$2; _r = $f._r; _r$1 = $f._r$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _ref = $f._ref; _ref$1 = $f._ref$1; _ref$2 = $f._ref$2; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tuple = $f._tuple; arg = $f.arg; argsArray = $f.argsArray; elem = $f.elem; fn = $f.fn; i = $f.i; i$1 = $f.i$1; i$2 = $f.i$2; i$3 = $f.i$3; in$1 = $f.in$1; isSlice = $f.isSlice; m = $f.m; n = $f.n; nin = $f.nin; nout = $f.nout; op = $f.op; origIn = $f.origIn; rcvr = $f.rcvr; results = $f.results; ret = $f.ret; slice = $f.slice; t = $f.t; targ = $f.targ; v = $f.v; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; xt = $f.xt; xt$1 = $f.xt$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ t = ptrType$1.nil;
+ fn = 0;
+ rcvr = null;
+ if (!((((v.flag & 512) >>> 0) === 0))) {
+ _tuple = methodReceiver(op, $clone(v, Value), ((v.flag >> 0)) >> 10 >> 0);
+ t = _tuple[1];
+ fn = _tuple[2];
+ rcvr = $clone(v, Value).object();
+ if (isWrapped(v.typ)) {
+ rcvr = new (jsType(v.typ))(rcvr);
+ }
+ } else {
+ t = v.typ;
+ fn = ($clone(v, Value).object());
+ rcvr = undefined;
+ }
+ if (fn === 0) {
+ $panic(new $String("reflect.Value.Call: call of nil function"));
+ }
+ isSlice = op === "CallSlice";
+ n = t.NumIn();
+ if (isSlice) {
+ if (!t.IsVariadic()) {
+ $panic(new $String("reflect: CallSlice of non-variadic function"));
+ }
+ if (in$1.$length < n) {
+ $panic(new $String("reflect: CallSlice with too few input arguments"));
+ }
+ if (in$1.$length > n) {
+ $panic(new $String("reflect: CallSlice with too many input arguments"));
+ }
+ } else {
+ if (t.IsVariadic()) {
+ n = n - (1) >> 0;
+ }
+ if (in$1.$length < n) {
+ $panic(new $String("reflect: Call with too few input arguments"));
+ }
+ if (!t.IsVariadic() && in$1.$length > n) {
+ $panic(new $String("reflect: Call with too many input arguments"));
+ }
+ }
+ _ref = in$1;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ x = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if ($clone(x, Value).Kind() === 0) {
+ $panic(new $String("reflect: " + op + " using zero Value argument"));
+ }
+ _i++;
+ }
+ i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(i < n)) { break; } */ if(!(i < n)) { $s = 2; continue; }
+ _tmp = $clone(((i < 0 || i >= in$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : in$1.$array[in$1.$offset + i]), Value).Type();
+ _tmp$1 = t.In(i);
+ xt = _tmp;
+ targ = _tmp$1;
+ _r = xt.AssignableTo(targ); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (!_r) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!_r) { */ case 3:
+ _r$1 = xt.String(); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = targ.String(); /* */ $s = 7; case 7: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $panic(new $String("reflect: " + op + " using " + _r$1 + " as type " + _r$2));
+ /* } */ case 4:
+ i = i + (1) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ /* */ if (!isSlice && t.IsVariadic()) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if (!isSlice && t.IsVariadic()) { */ case 8:
+ m = in$1.$length - n >> 0;
+ _r$3 = MakeSlice(t.In(n), m, m); /* */ $s = 10; case 10: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ slice = _r$3;
+ _r$4 = t.In(n).Elem(); /* */ $s = 11; case 11: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ elem = _r$4;
+ i$1 = 0;
+ /* while (true) { */ case 12:
+ /* if (!(i$1 < m)) { break; } */ if(!(i$1 < m)) { $s = 13; continue; }
+ x$2 = (x$1 = n + i$1 >> 0, ((x$1 < 0 || x$1 >= in$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : in$1.$array[in$1.$offset + x$1]));
+ xt$1 = $clone(x$2, Value).Type();
+ _r$5 = xt$1.AssignableTo(elem); /* */ $s = 16; case 16: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ /* */ if (!_r$5) { $s = 14; continue; }
+ /* */ $s = 15; continue;
+ /* if (!_r$5) { */ case 14:
+ _r$6 = xt$1.String(); /* */ $s = 17; case 17: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$7 = elem.String(); /* */ $s = 18; case 18: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $panic(new $String("reflect: cannot use " + _r$6 + " as type " + _r$7 + " in " + op));
+ /* } */ case 15:
+ _r$8 = $clone(slice, Value).Index(i$1); /* */ $s = 19; case 19: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $r = $clone(_r$8, Value).Set($clone(x$2, Value)); /* */ $s = 20; case 20: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i$1 = i$1 + (1) >> 0;
+ /* } */ $s = 12; continue; case 13:
+ origIn = in$1;
+ in$1 = $makeSlice(sliceType$10, (n + 1 >> 0));
+ $copySlice($subslice(in$1, 0, n), origIn);
+ ((n < 0 || n >= in$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : in$1.$array[in$1.$offset + n] = slice);
+ /* } */ case 9:
+ nin = in$1.$length;
+ if (!((nin === t.NumIn()))) {
+ $panic(new $String("reflect.Value.Call: wrong argument count"));
+ }
+ nout = t.NumOut();
+ argsArray = new ($global.Array)(t.NumIn());
+ _ref$1 = in$1;
+ _i$1 = 0;
+ /* while (true) { */ case 21:
+ /* if (!(_i$1 < _ref$1.$length)) { break; } */ if(!(_i$1 < _ref$1.$length)) { $s = 22; continue; }
+ i$2 = _i$1;
+ arg = ((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]);
+ _arg = t.In(i$2);
+ _r$9 = t.In(i$2).common(); /* */ $s = 23; case 23: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _arg$1 = _r$9;
+ _arg$2 = 0;
+ _r$10 = $clone(arg, Value).assignTo("reflect.Value.Call", _arg$1, _arg$2); /* */ $s = 24; case 24: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _r$11 = $clone(_r$10, Value).object(); /* */ $s = 25; case 25: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _arg$3 = _r$11;
+ _r$12 = unwrapJsObject(_arg, _arg$3); /* */ $s = 26; case 26: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ argsArray[i$2] = _r$12;
+ _i$1++;
+ /* } */ $s = 21; continue; case 22:
+ _r$13 = callHelper(new sliceType$5([new $jsObjectPtr(fn), new $jsObjectPtr(rcvr), new $jsObjectPtr(argsArray)])); /* */ $s = 27; case 27: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ results = _r$13;
+ _1 = nout;
+ /* */ if (_1 === (0)) { $s = 29; continue; }
+ /* */ if (_1 === (1)) { $s = 30; continue; }
+ /* */ $s = 31; continue;
+ /* if (_1 === (0)) { */ case 29:
+ $s = -1; return sliceType$10.nil;
+ /* } else if (_1 === (1)) { */ case 30:
+ _r$14 = makeValue(t.Out(0), wrapJsObject(t.Out(0), results), 0); /* */ $s = 33; case 33: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ $s = -1; return new sliceType$10([$clone(_r$14, Value)]);
+ /* } else { */ case 31:
+ ret = $makeSlice(sliceType$10, nout);
+ _ref$2 = ret;
+ _i$2 = 0;
+ /* while (true) { */ case 34:
+ /* if (!(_i$2 < _ref$2.$length)) { break; } */ if(!(_i$2 < _ref$2.$length)) { $s = 35; continue; }
+ i$3 = _i$2;
+ _r$15 = makeValue(t.Out(i$3), wrapJsObject(t.Out(i$3), results[i$3]), 0); /* */ $s = 36; case 36: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ ((i$3 < 0 || i$3 >= ret.$length) ? ($throwRuntimeError("index out of range"), undefined) : ret.$array[ret.$offset + i$3] = _r$15);
+ _i$2++;
+ /* } */ $s = 34; continue; case 35:
+ $s = -1; return ret;
+ /* } */ case 32:
+ case 28:
+ $s = -1; return sliceType$10.nil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.call }; } $f.$ptr = $ptr; $f._1 = _1; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._arg$3 = _arg$3; $f._i = _i; $f._i$1 = _i$1; $f._i$2 = _i$2; $f._r = _r; $f._r$1 = _r$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._ref = _ref; $f._ref$1 = _ref$1; $f._ref$2 = _ref$2; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tuple = _tuple; $f.arg = arg; $f.argsArray = argsArray; $f.elem = elem; $f.fn = fn; $f.i = i; $f.i$1 = i$1; $f.i$2 = i$2; $f.i$3 = i$3; $f.in$1 = in$1; $f.isSlice = isSlice; $f.m = m; $f.n = n; $f.nin = nin; $f.nout = nout; $f.op = op; $f.origIn = origIn; $f.rcvr = rcvr; $f.results = results; $f.ret = ret; $f.slice = slice; $f.t = t; $f.targ = targ; $f.v = v; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.xt = xt; $f.xt$1 = xt$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.call = function(op, in$1) { return this.$val.call(op, in$1); };
+ Value.ptr.prototype.Cap = function() {
+ var $ptr, _1, k, v;
+ v = this;
+ k = new flag(v.flag).kind();
+ _1 = k;
+ if (_1 === (17)) {
+ return v.typ.Len();
+ } else if ((_1 === (18)) || (_1 === (23))) {
+ return $parseInt($clone(v, Value).object().$capacity) >> 0;
+ }
+ $panic(new ValueError.ptr("reflect.Value.Cap", k));
+ };
+ Value.prototype.Cap = function() { return this.$val.Cap(); };
+ wrapJsObject = function(typ, val) {
+ var $ptr, typ, val;
+ if ($interfaceIsEqual(typ, jsObjectPtr)) {
+ return new (jsType(jsObjectPtr))(val);
+ }
+ return val;
+ };
+ unwrapJsObject = function(typ, val) {
+ var $ptr, typ, val;
+ if ($interfaceIsEqual(typ, jsObjectPtr)) {
+ return val.object;
+ }
+ return val;
+ };
+ Value.ptr.prototype.Elem = function() {
+ var $ptr, _1, _r, fl, k, tt, typ, v, val, val$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; fl = $f.fl; k = $f.k; tt = $f.tt; typ = $f.typ; v = $f.v; val = $f.val; val$1 = $f.val$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ k = new flag(v.flag).kind();
+ _1 = k;
+ /* */ if (_1 === (20)) { $s = 2; continue; }
+ /* */ if (_1 === (22)) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (_1 === (20)) { */ case 2:
+ val = $clone(v, Value).object();
+ if (val === $ifaceNil) {
+ $s = -1; return new Value.ptr(ptrType$1.nil, 0, 0);
+ }
+ typ = reflectType(val.constructor);
+ _r = makeValue(typ, val.$val, (v.flag & 96) >>> 0); /* */ $s = 6; case 6: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* } else if (_1 === (22)) { */ case 3:
+ if ($clone(v, Value).IsNil()) {
+ $s = -1; return new Value.ptr(ptrType$1.nil, 0, 0);
+ }
+ val$1 = $clone(v, Value).object();
+ tt = (v.typ.kindType);
+ fl = (((((v.flag & 96) >>> 0) | 128) >>> 0) | 256) >>> 0;
+ fl = (fl | (((tt.elem.Kind() >>> 0)))) >>> 0;
+ $s = -1; return new Value.ptr(tt.elem, (wrapJsObject(tt.elem, val$1)), fl);
+ /* } else { */ case 4:
+ $panic(new ValueError.ptr("reflect.Value.Elem", k));
+ /* } */ case 5:
+ case 1:
+ $s = -1; return new Value.ptr(ptrType$1.nil, 0, 0);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.Elem }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f.fl = fl; $f.k = k; $f.tt = tt; $f.typ = typ; $f.v = v; $f.val = val; $f.val$1 = val$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.Elem = function() { return this.$val.Elem(); };
+ Value.ptr.prototype.Field = function(i) {
+ var $ptr, _r, _r$1, _r$2, field, fl, i, jsTag, o, prop, s, tag, tt, typ, v, x, x$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; field = $f.field; fl = $f.fl; i = $f.i; jsTag = $f.jsTag; o = $f.o; prop = $f.prop; s = $f.s; tag = $f.tag; tt = $f.tt; typ = $f.typ; v = $f.v; x = $f.x; x$1 = $f.x$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ jsTag = [jsTag];
+ prop = [prop];
+ s = [s];
+ typ = [typ];
+ v = this;
+ if (!((new flag(v.flag).kind() === 25))) {
+ $panic(new ValueError.ptr("reflect.Value.Field", new flag(v.flag).kind()));
+ }
+ tt = (v.typ.kindType);
+ if (((i >>> 0)) >= ((tt.fields.$length >>> 0))) {
+ $panic(new $String("reflect: Field index out of range"));
+ }
+ prop[0] = $internalize(jsType(v.typ).fields[i].prop, $String);
+ field = (x = tt.fields, ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]));
+ typ[0] = field.typ;
+ fl = (((v.flag & 416) >>> 0) | ((typ[0].Kind() >>> 0))) >>> 0;
+ if (!$clone(field.name, name).isExported()) {
+ if ($clone(field.name, name).name() === "") {
+ fl = (fl | (64)) >>> 0;
+ } else {
+ fl = (fl | (32)) >>> 0;
+ }
+ }
+ tag = $clone((x$1 = tt.fields, ((i < 0 || i >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + i])).name, name).tag();
+ /* */ if (!(tag === "") && !((i === 0))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!(tag === "") && !((i === 0))) { */ case 1:
+ jsTag[0] = getJsTag(tag);
+ /* */ if (!(jsTag[0] === "")) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!(jsTag[0] === "")) { */ case 3:
+ /* while (true) { */ case 5:
+ o = [o];
+ _r = $clone(v, Value).Field(0); /* */ $s = 7; case 7: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ v = _r;
+ /* */ if (v.typ === jsObjectPtr) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if (v.typ === jsObjectPtr) { */ case 8:
+ o[0] = $clone(v, Value).object().object;
+ $s = -1; return new Value.ptr(typ[0], (new (jsType(PtrTo(typ[0])))((function(jsTag, o, prop, s, typ) { return function() {
+ var $ptr;
+ return $internalize(o[0][$externalize(jsTag[0], $String)], jsType(typ[0]));
+ }; })(jsTag, o, prop, s, typ), (function(jsTag, o, prop, s, typ) { return function(x$2) {
+ var $ptr, x$2;
+ o[0][$externalize(jsTag[0], $String)] = $externalize(x$2, jsType(typ[0]));
+ }; })(jsTag, o, prop, s, typ))), fl);
+ /* } */ case 9:
+ /* */ if (v.typ.Kind() === 22) { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if (v.typ.Kind() === 22) { */ case 10:
+ _r$1 = $clone(v, Value).Elem(); /* */ $s = 12; case 12: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ v = _r$1;
+ /* } */ case 11:
+ /* } */ $s = 5; continue; case 6:
+ /* } */ case 4:
+ /* } */ case 2:
+ s[0] = v.ptr;
+ /* */ if (!((((fl & 128) >>> 0) === 0)) && !((typ[0].Kind() === 17)) && !((typ[0].Kind() === 25))) { $s = 13; continue; }
+ /* */ $s = 14; continue;
+ /* if (!((((fl & 128) >>> 0) === 0)) && !((typ[0].Kind() === 17)) && !((typ[0].Kind() === 25))) { */ case 13:
+ $s = -1; return new Value.ptr(typ[0], (new (jsType(PtrTo(typ[0])))((function(jsTag, prop, s, typ) { return function() {
+ var $ptr;
+ return wrapJsObject(typ[0], s[0][$externalize(prop[0], $String)]);
+ }; })(jsTag, prop, s, typ), (function(jsTag, prop, s, typ) { return function(x$2) {
+ var $ptr, x$2;
+ s[0][$externalize(prop[0], $String)] = unwrapJsObject(typ[0], x$2);
+ }; })(jsTag, prop, s, typ))), fl);
+ /* } */ case 14:
+ _r$2 = makeValue(typ[0], wrapJsObject(typ[0], s[0][$externalize(prop[0], $String)]), fl); /* */ $s = 15; case 15: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return _r$2;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.Field }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.field = field; $f.fl = fl; $f.i = i; $f.jsTag = jsTag; $f.o = o; $f.prop = prop; $f.s = s; $f.tag = tag; $f.tt = tt; $f.typ = typ; $f.v = v; $f.x = x; $f.x$1 = x$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.Field = function(i) { return this.$val.Field(i); };
+ getJsTag = function(tag) {
+ var $ptr, _tuple, i, name$1, qvalue, tag, value;
+ while (true) {
+ if (!(!(tag === ""))) { break; }
+ i = 0;
+ while (true) {
+ if (!(i < tag.length && (tag.charCodeAt(i) === 32))) { break; }
+ i = i + (1) >> 0;
+ }
+ tag = $substring(tag, i);
+ if (tag === "") {
+ break;
+ }
+ i = 0;
+ while (true) {
+ if (!(i < tag.length && !((tag.charCodeAt(i) === 32)) && !((tag.charCodeAt(i) === 58)) && !((tag.charCodeAt(i) === 34)))) { break; }
+ i = i + (1) >> 0;
+ }
+ if ((i + 1 >> 0) >= tag.length || !((tag.charCodeAt(i) === 58)) || !((tag.charCodeAt((i + 1 >> 0)) === 34))) {
+ break;
+ }
+ name$1 = ($substring(tag, 0, i));
+ tag = $substring(tag, (i + 1 >> 0));
+ i = 1;
+ while (true) {
+ if (!(i < tag.length && !((tag.charCodeAt(i) === 34)))) { break; }
+ if (tag.charCodeAt(i) === 92) {
+ i = i + (1) >> 0;
+ }
+ i = i + (1) >> 0;
+ }
+ if (i >= tag.length) {
+ break;
+ }
+ qvalue = ($substring(tag, 0, (i + 1 >> 0)));
+ tag = $substring(tag, (i + 1 >> 0));
+ if (name$1 === "js") {
+ _tuple = strconv.Unquote(qvalue);
+ value = _tuple[0];
+ return value;
+ }
+ }
+ return "";
+ };
+ Value.ptr.prototype.Index = function(i) {
+ var $ptr, _1, _r, _r$1, a, a$1, c, fl, fl$1, fl$2, i, k, s, str, tt, tt$1, typ, typ$1, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; _r$1 = $f._r$1; a = $f.a; a$1 = $f.a$1; c = $f.c; fl = $f.fl; fl$1 = $f.fl$1; fl$2 = $f.fl$2; i = $f.i; k = $f.k; s = $f.s; str = $f.str; tt = $f.tt; tt$1 = $f.tt$1; typ = $f.typ; typ$1 = $f.typ$1; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ a = [a];
+ a$1 = [a$1];
+ c = [c];
+ i = [i];
+ typ = [typ];
+ typ$1 = [typ$1];
+ v = this;
+ k = new flag(v.flag).kind();
+ _1 = k;
+ /* */ if (_1 === (17)) { $s = 2; continue; }
+ /* */ if (_1 === (23)) { $s = 3; continue; }
+ /* */ if (_1 === (24)) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (_1 === (17)) { */ case 2:
+ tt = (v.typ.kindType);
+ if (i[0] < 0 || i[0] > ((tt.len >> 0))) {
+ $panic(new $String("reflect: array index out of range"));
+ }
+ typ[0] = tt.elem;
+ fl = (v.flag & 480) >>> 0;
+ fl = (fl | (((typ[0].Kind() >>> 0)))) >>> 0;
+ a[0] = v.ptr;
+ /* */ if (!((((fl & 128) >>> 0) === 0)) && !((typ[0].Kind() === 17)) && !((typ[0].Kind() === 25))) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (!((((fl & 128) >>> 0) === 0)) && !((typ[0].Kind() === 17)) && !((typ[0].Kind() === 25))) { */ case 7:
+ $s = -1; return new Value.ptr(typ[0], (new (jsType(PtrTo(typ[0])))((function(a, a$1, c, i, typ, typ$1) { return function() {
+ var $ptr;
+ return wrapJsObject(typ[0], a[0][i[0]]);
+ }; })(a, a$1, c, i, typ, typ$1), (function(a, a$1, c, i, typ, typ$1) { return function(x) {
+ var $ptr, x;
+ a[0][i[0]] = unwrapJsObject(typ[0], x);
+ }; })(a, a$1, c, i, typ, typ$1))), fl);
+ /* } */ case 8:
+ _r = makeValue(typ[0], wrapJsObject(typ[0], a[0][i[0]]), fl); /* */ $s = 9; case 9: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* } else if (_1 === (23)) { */ case 3:
+ s = $clone(v, Value).object();
+ if (i[0] < 0 || i[0] >= ($parseInt(s.$length) >> 0)) {
+ $panic(new $String("reflect: slice index out of range"));
+ }
+ tt$1 = (v.typ.kindType);
+ typ$1[0] = tt$1.elem;
+ fl$1 = (384 | ((v.flag & 96) >>> 0)) >>> 0;
+ fl$1 = (fl$1 | (((typ$1[0].Kind() >>> 0)))) >>> 0;
+ i[0] = i[0] + (($parseInt(s.$offset) >> 0)) >> 0;
+ a$1[0] = s.$array;
+ /* */ if (!((((fl$1 & 128) >>> 0) === 0)) && !((typ$1[0].Kind() === 17)) && !((typ$1[0].Kind() === 25))) { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if (!((((fl$1 & 128) >>> 0) === 0)) && !((typ$1[0].Kind() === 17)) && !((typ$1[0].Kind() === 25))) { */ case 10:
+ $s = -1; return new Value.ptr(typ$1[0], (new (jsType(PtrTo(typ$1[0])))((function(a, a$1, c, i, typ, typ$1) { return function() {
+ var $ptr;
+ return wrapJsObject(typ$1[0], a$1[0][i[0]]);
+ }; })(a, a$1, c, i, typ, typ$1), (function(a, a$1, c, i, typ, typ$1) { return function(x) {
+ var $ptr, x;
+ a$1[0][i[0]] = unwrapJsObject(typ$1[0], x);
+ }; })(a, a$1, c, i, typ, typ$1))), fl$1);
+ /* } */ case 11:
+ _r$1 = makeValue(typ$1[0], wrapJsObject(typ$1[0], a$1[0][i[0]]), fl$1); /* */ $s = 12; case 12: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* } else if (_1 === (24)) { */ case 4:
+ str = (v.ptr).$get();
+ if (i[0] < 0 || i[0] >= str.length) {
+ $panic(new $String("reflect: string index out of range"));
+ }
+ fl$2 = (((v.flag & 96) >>> 0) | 8) >>> 0;
+ c[0] = str.charCodeAt(i[0]);
+ $s = -1; return new Value.ptr(uint8Type, ((c.$ptr || (c.$ptr = new ptrType$5(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, c)))), (fl$2 | 128) >>> 0);
+ /* } else { */ case 5:
+ $panic(new ValueError.ptr("reflect.Value.Index", k));
+ /* } */ case 6:
+ case 1:
+ $s = -1; return new Value.ptr(ptrType$1.nil, 0, 0);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.Index }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f._r$1 = _r$1; $f.a = a; $f.a$1 = a$1; $f.c = c; $f.fl = fl; $f.fl$1 = fl$1; $f.fl$2 = fl$2; $f.i = i; $f.k = k; $f.s = s; $f.str = str; $f.tt = tt; $f.tt$1 = tt$1; $f.typ = typ; $f.typ$1 = typ$1; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.Index = function(i) { return this.$val.Index(i); };
+ Value.ptr.prototype.InterfaceData = function() {
+ var $ptr, v;
+ v = this;
+ $panic(errors.New("InterfaceData is not supported by GopherJS"));
+ };
+ Value.prototype.InterfaceData = function() { return this.$val.InterfaceData(); };
+ Value.ptr.prototype.IsNil = function() {
+ var $ptr, _1, k, v;
+ v = this;
+ k = new flag(v.flag).kind();
+ _1 = k;
+ if ((_1 === (22)) || (_1 === (23))) {
+ return $clone(v, Value).object() === jsType(v.typ).nil;
+ } else if (_1 === (18)) {
+ return $clone(v, Value).object() === $chanNil;
+ } else if (_1 === (19)) {
+ return $clone(v, Value).object() === $throwNilPointerError;
+ } else if (_1 === (21)) {
+ return $clone(v, Value).object() === false;
+ } else if (_1 === (20)) {
+ return $clone(v, Value).object() === $ifaceNil;
+ } else {
+ $panic(new ValueError.ptr("reflect.Value.IsNil", k));
+ }
+ };
+ Value.prototype.IsNil = function() { return this.$val.IsNil(); };
+ Value.ptr.prototype.Len = function() {
+ var $ptr, _1, k, v;
+ v = this;
+ k = new flag(v.flag).kind();
+ _1 = k;
+ if ((_1 === (17)) || (_1 === (24))) {
+ return $parseInt($clone(v, Value).object().length);
+ } else if (_1 === (23)) {
+ return $parseInt($clone(v, Value).object().$length) >> 0;
+ } else if (_1 === (18)) {
+ return $parseInt($clone(v, Value).object().$buffer.length) >> 0;
+ } else if (_1 === (21)) {
+ return $parseInt($keys($clone(v, Value).object()).length);
+ } else {
+ $panic(new ValueError.ptr("reflect.Value.Len", k));
+ }
+ };
+ Value.prototype.Len = function() { return this.$val.Len(); };
+ Value.ptr.prototype.Pointer = function() {
+ var $ptr, _1, k, v;
+ v = this;
+ k = new flag(v.flag).kind();
+ _1 = k;
+ if ((_1 === (18)) || (_1 === (21)) || (_1 === (22)) || (_1 === (26))) {
+ if ($clone(v, Value).IsNil()) {
+ return 0;
+ }
+ return $clone(v, Value).object();
+ } else if (_1 === (19)) {
+ if ($clone(v, Value).IsNil()) {
+ return 0;
+ }
+ return 1;
+ } else if (_1 === (23)) {
+ if ($clone(v, Value).IsNil()) {
+ return 0;
+ }
+ return $clone(v, Value).object().$array;
+ } else {
+ $panic(new ValueError.ptr("reflect.Value.Pointer", k));
+ }
+ };
+ Value.prototype.Pointer = function() { return this.$val.Pointer(); };
+ Value.ptr.prototype.Set = function(x) {
+ var $ptr, _1, _r, _r$1, v, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; _r$1 = $f._r$1; v = $f.v; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ new flag(v.flag).mustBeAssignable();
+ new flag(x.flag).mustBeExported();
+ _r = $clone(x, Value).assignTo("reflect.Set", v.typ, 0); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ x = _r;
+ /* */ if (!((((v.flag & 128) >>> 0) === 0))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!((((v.flag & 128) >>> 0) === 0))) { */ case 2:
+ _1 = v.typ.Kind();
+ /* */ if (_1 === (17)) { $s = 5; continue; }
+ /* */ if (_1 === (20)) { $s = 6; continue; }
+ /* */ if (_1 === (25)) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (_1 === (17)) { */ case 5:
+ jsType(v.typ).copy(v.ptr, x.ptr);
+ $s = 9; continue;
+ /* } else if (_1 === (20)) { */ case 6:
+ _r$1 = valueInterface($clone(x, Value), false); /* */ $s = 10; case 10: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ v.ptr.$set(_r$1);
+ $s = 9; continue;
+ /* } else if (_1 === (25)) { */ case 7:
+ copyStruct(v.ptr, x.ptr, v.typ);
+ $s = 9; continue;
+ /* } else { */ case 8:
+ v.ptr.$set($clone(x, Value).object());
+ /* } */ case 9:
+ case 4:
+ $s = -1; return;
+ /* } */ case 3:
+ v.ptr = x.ptr;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.Set }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f._r$1 = _r$1; $f.v = v; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.Set = function(x) { return this.$val.Set(x); };
+ Value.ptr.prototype.SetBytes = function(x) {
+ var $ptr, _r, _r$1, _v, slice, typedSlice, v, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _v = $f._v; slice = $f.slice; typedSlice = $f.typedSlice; v = $f.v; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ new flag(v.flag).mustBeAssignable();
+ new flag(v.flag).mustBe(23);
+ _r = v.typ.Elem().Kind(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (!((_r === 8))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!((_r === 8))) { */ case 1:
+ $panic(new $String("reflect.Value.SetBytes of non-byte slice"));
+ /* } */ case 2:
+ slice = x;
+ if (!(v.typ.Name() === "")) { _v = true; $s = 6; continue s; }
+ _r$1 = v.typ.Elem().Name(); /* */ $s = 7; case 7: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _v = !(_r$1 === ""); case 6:
+ /* */ if (_v) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (_v) { */ case 4:
+ typedSlice = new (jsType(v.typ))(slice.$array);
+ typedSlice.$offset = slice.$offset;
+ typedSlice.$length = slice.$length;
+ typedSlice.$capacity = slice.$capacity;
+ slice = typedSlice;
+ /* } */ case 5:
+ v.ptr.$set(slice);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.SetBytes }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._v = _v; $f.slice = slice; $f.typedSlice = typedSlice; $f.v = v; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.SetBytes = function(x) { return this.$val.SetBytes(x); };
+ Value.ptr.prototype.SetCap = function(n) {
+ var $ptr, n, newSlice, s, v;
+ v = this;
+ new flag(v.flag).mustBeAssignable();
+ new flag(v.flag).mustBe(23);
+ s = v.ptr.$get();
+ if (n < ($parseInt(s.$length) >> 0) || n > ($parseInt(s.$capacity) >> 0)) {
+ $panic(new $String("reflect: slice capacity out of range in SetCap"));
+ }
+ newSlice = new (jsType(v.typ))(s.$array);
+ newSlice.$offset = s.$offset;
+ newSlice.$length = s.$length;
+ newSlice.$capacity = n;
+ v.ptr.$set(newSlice);
+ };
+ Value.prototype.SetCap = function(n) { return this.$val.SetCap(n); };
+ Value.ptr.prototype.SetLen = function(n) {
+ var $ptr, n, newSlice, s, v;
+ v = this;
+ new flag(v.flag).mustBeAssignable();
+ new flag(v.flag).mustBe(23);
+ s = v.ptr.$get();
+ if (n < 0 || n > ($parseInt(s.$capacity) >> 0)) {
+ $panic(new $String("reflect: slice length out of range in SetLen"));
+ }
+ newSlice = new (jsType(v.typ))(s.$array);
+ newSlice.$offset = s.$offset;
+ newSlice.$length = n;
+ newSlice.$capacity = s.$capacity;
+ v.ptr.$set(newSlice);
+ };
+ Value.prototype.SetLen = function(n) { return this.$val.SetLen(n); };
+ Value.ptr.prototype.Slice = function(i, j) {
+ var $ptr, _1, _r, _r$1, cap, i, j, kind, s, str, tt, typ, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; _r$1 = $f._r$1; cap = $f.cap; i = $f.i; j = $f.j; kind = $f.kind; s = $f.s; str = $f.str; tt = $f.tt; typ = $f.typ; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ cap = 0;
+ typ = $ifaceNil;
+ s = null;
+ kind = new flag(v.flag).kind();
+ _1 = kind;
+ /* */ if (_1 === (17)) { $s = 2; continue; }
+ /* */ if (_1 === (23)) { $s = 3; continue; }
+ /* */ if (_1 === (24)) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (_1 === (17)) { */ case 2:
+ if (((v.flag & 256) >>> 0) === 0) {
+ $panic(new $String("reflect.Value.Slice: slice of unaddressable array"));
+ }
+ tt = (v.typ.kindType);
+ cap = ((tt.len >> 0));
+ typ = SliceOf(tt.elem);
+ s = new (jsType(typ))($clone(v, Value).object());
+ $s = 6; continue;
+ /* } else if (_1 === (23)) { */ case 3:
+ typ = v.typ;
+ s = $clone(v, Value).object();
+ cap = $parseInt(s.$capacity) >> 0;
+ $s = 6; continue;
+ /* } else if (_1 === (24)) { */ case 4:
+ str = (v.ptr).$get();
+ if (i < 0 || j < i || j > str.length) {
+ $panic(new $String("reflect.Value.Slice: string slice index out of bounds"));
+ }
+ _r = ValueOf(new $String($substring(str, i, j))); /* */ $s = 7; case 7: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* } else { */ case 5:
+ $panic(new ValueError.ptr("reflect.Value.Slice", kind));
+ /* } */ case 6:
+ case 1:
+ if (i < 0 || j < i || j > cap) {
+ $panic(new $String("reflect.Value.Slice: slice index out of bounds"));
+ }
+ _r$1 = makeValue(typ, $subslice(s, i, j), (v.flag & 96) >>> 0); /* */ $s = 8; case 8: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.Slice }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f._r$1 = _r$1; $f.cap = cap; $f.i = i; $f.j = j; $f.kind = kind; $f.s = s; $f.str = str; $f.tt = tt; $f.typ = typ; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.Slice = function(i, j) { return this.$val.Slice(i, j); };
+ Value.ptr.prototype.Slice3 = function(i, j, k) {
+ var $ptr, _1, _r, cap, i, j, k, kind, s, tt, typ, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; cap = $f.cap; i = $f.i; j = $f.j; k = $f.k; kind = $f.kind; s = $f.s; tt = $f.tt; typ = $f.typ; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ cap = 0;
+ typ = $ifaceNil;
+ s = null;
+ kind = new flag(v.flag).kind();
+ _1 = kind;
+ if (_1 === (17)) {
+ if (((v.flag & 256) >>> 0) === 0) {
+ $panic(new $String("reflect.Value.Slice: slice of unaddressable array"));
+ }
+ tt = (v.typ.kindType);
+ cap = ((tt.len >> 0));
+ typ = SliceOf(tt.elem);
+ s = new (jsType(typ))($clone(v, Value).object());
+ } else if (_1 === (23)) {
+ typ = v.typ;
+ s = $clone(v, Value).object();
+ cap = $parseInt(s.$capacity) >> 0;
+ } else {
+ $panic(new ValueError.ptr("reflect.Value.Slice3", kind));
+ }
+ if (i < 0 || j < i || k < j || k > cap) {
+ $panic(new $String("reflect.Value.Slice3: slice index out of bounds"));
+ }
+ _r = makeValue(typ, $subslice(s, i, j, k), (v.flag & 96) >>> 0); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.Slice3 }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f.cap = cap; $f.i = i; $f.j = j; $f.k = k; $f.kind = kind; $f.s = s; $f.tt = tt; $f.typ = typ; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.Slice3 = function(i, j, k) { return this.$val.Slice3(i, j, k); };
+ Value.ptr.prototype.Close = function() {
+ var $ptr, v;
+ v = this;
+ new flag(v.flag).mustBe(18);
+ new flag(v.flag).mustBeExported();
+ $close($clone(v, Value).object());
+ };
+ Value.prototype.Close = function() { return this.$val.Close(); };
+ chanrecv = function(t, ch, nb, val) {
+ var $ptr, _r, _tmp, _tmp$1, _tmp$2, _tmp$3, ch, comms, nb, received, recvRes, selectRes, selected, t, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; ch = $f.ch; comms = $f.comms; nb = $f.nb; received = $f.received; recvRes = $f.recvRes; selectRes = $f.selectRes; selected = $f.selected; t = $f.t; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ selected = false;
+ received = false;
+ comms = new sliceType$12([new sliceType$9([ch])]);
+ if (nb) {
+ comms = $append(comms, new sliceType$9([]));
+ }
+ _r = selectHelper(new sliceType$5([comms])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ selectRes = _r;
+ if (nb && (($parseInt(selectRes[0]) >> 0) === 1)) {
+ _tmp = false;
+ _tmp$1 = false;
+ selected = _tmp;
+ received = _tmp$1;
+ $s = -1; return [selected, received];
+ }
+ recvRes = selectRes[1];
+ val.$set(recvRes[0]);
+ _tmp$2 = true;
+ _tmp$3 = !!(recvRes[1]);
+ selected = _tmp$2;
+ received = _tmp$3;
+ $s = -1; return [selected, received];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: chanrecv }; } $f.$ptr = $ptr; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f.ch = ch; $f.comms = comms; $f.nb = nb; $f.received = received; $f.recvRes = recvRes; $f.selectRes = selectRes; $f.selected = selected; $f.t = t; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ chansend = function(t, ch, val, nb) {
+ var $ptr, _r, ch, comms, nb, selectRes, t, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; ch = $f.ch; comms = $f.comms; nb = $f.nb; selectRes = $f.selectRes; t = $f.t; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ comms = new sliceType$12([new sliceType$9([ch, val.$get()])]);
+ if (nb) {
+ comms = $append(comms, new sliceType$9([]));
+ }
+ _r = selectHelper(new sliceType$5([comms])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ selectRes = _r;
+ if (nb && (($parseInt(selectRes[0]) >> 0) === 1)) {
+ $s = -1; return false;
+ }
+ $s = -1; return true;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: chansend }; } $f.$ptr = $ptr; $f._r = _r; $f.ch = ch; $f.comms = comms; $f.nb = nb; $f.selectRes = selectRes; $f.t = t; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Kind.prototype.String = function() {
+ var $ptr, k;
+ k = this.$val;
+ if (((k >> 0)) < kindNames.$length) {
+ return ((k < 0 || k >= kindNames.$length) ? ($throwRuntimeError("index out of range"), undefined) : kindNames.$array[kindNames.$offset + k]);
+ }
+ return "kind" + strconv.Itoa(((k >> 0)));
+ };
+ $ptrType(Kind).prototype.String = function() { return new Kind(this.$get()).String(); };
+ rtype.ptr.prototype.String = function() {
+ var $ptr, s, t;
+ t = this;
+ s = $clone(t.nameOff(t.str), name).name();
+ if (!((((t.tflag & 2) >>> 0) === 0))) {
+ return $substring(s, 1);
+ }
+ return s;
+ };
+ rtype.prototype.String = function() { return this.$val.String(); };
+ rtype.ptr.prototype.Size = function() {
+ var $ptr, t;
+ t = this;
+ return t.size;
+ };
+ rtype.prototype.Size = function() { return this.$val.Size(); };
+ rtype.ptr.prototype.Bits = function() {
+ var $ptr, k, t;
+ t = this;
+ if (t === ptrType$1.nil) {
+ $panic(new $String("reflect: Bits of nil Type"));
+ }
+ k = t.Kind();
+ if (k < 2 || k > 16) {
+ $panic(new $String("reflect: Bits of non-arithmetic Type " + t.String()));
+ }
+ return $imul(((t.size >> 0)), 8);
+ };
+ rtype.prototype.Bits = function() { return this.$val.Bits(); };
+ rtype.ptr.prototype.Align = function() {
+ var $ptr, t;
+ t = this;
+ return ((t.align >> 0));
+ };
+ rtype.prototype.Align = function() { return this.$val.Align(); };
+ rtype.ptr.prototype.FieldAlign = function() {
+ var $ptr, t;
+ t = this;
+ return ((t.fieldAlign >> 0));
+ };
+ rtype.prototype.FieldAlign = function() { return this.$val.FieldAlign(); };
+ rtype.ptr.prototype.Kind = function() {
+ var $ptr, t;
+ t = this;
+ return ((((t.kind & 31) >>> 0) >>> 0));
+ };
+ rtype.prototype.Kind = function() { return this.$val.Kind(); };
+ rtype.ptr.prototype.common = function() {
+ var $ptr, t;
+ t = this;
+ return t;
+ };
+ rtype.prototype.common = function() { return this.$val.common(); };
+ rtype.ptr.prototype.exportedMethods = function() {
+ var $ptr, _entry, _i, _i$1, _key, _ref, _ref$1, _tuple, allExported, allm, found, m, m$1, methods, name$1, name$2, t, ut, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _i = $f._i; _i$1 = $f._i$1; _key = $f._key; _ref = $f._ref; _ref$1 = $f._ref$1; _tuple = $f._tuple; allExported = $f.allExported; allm = $f.allm; found = $f.found; m = $f.m; m$1 = $f.m$1; methods = $f.methods; name$1 = $f.name$1; name$2 = $f.name$2; t = $f.t; ut = $f.ut; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ $r = methodCache.RWMutex.RLock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _tuple = (_entry = methodCache.m[ptrType$1.keyFor(t)], _entry !== undefined ? [_entry.v, true] : [sliceType$3.nil, false]);
+ methods = _tuple[0];
+ found = _tuple[1];
+ $r = methodCache.RWMutex.RUnlock(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if (found) {
+ $s = -1; return methods;
+ }
+ ut = t.uncommon();
+ if (ut === ptrType$6.nil) {
+ $s = -1; return sliceType$3.nil;
+ }
+ allm = ut.methods();
+ allExported = true;
+ _ref = allm;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ m = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), method);
+ name$1 = $clone(t.nameOff(m.name), name);
+ if (!$clone(name$1, name).isExported()) {
+ allExported = false;
+ break;
+ }
+ _i++;
+ }
+ if (allExported) {
+ methods = allm;
+ } else {
+ methods = $makeSlice(sliceType$3, 0, allm.$length);
+ _ref$1 = allm;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ m$1 = $clone(((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]), method);
+ name$2 = $clone(t.nameOff(m$1.name), name);
+ if ($clone(name$2, name).isExported()) {
+ methods = $append(methods, m$1);
+ }
+ _i$1++;
+ }
+ methods = $subslice(methods, 0, methods.$length, methods.$length);
+ }
+ $r = methodCache.RWMutex.Lock(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if (methodCache.m === false) {
+ methodCache.m = {};
+ }
+ _key = t; (methodCache.m || $throwRuntimeError("assignment to entry in nil map"))[ptrType$1.keyFor(_key)] = { k: _key, v: methods };
+ $r = methodCache.RWMutex.Unlock(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return methods;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: rtype.ptr.prototype.exportedMethods }; } $f.$ptr = $ptr; $f._entry = _entry; $f._i = _i; $f._i$1 = _i$1; $f._key = _key; $f._ref = _ref; $f._ref$1 = _ref$1; $f._tuple = _tuple; $f.allExported = allExported; $f.allm = allm; $f.found = found; $f.m = m; $f.m$1 = m$1; $f.methods = methods; $f.name$1 = name$1; $f.name$2 = name$2; $f.t = t; $f.ut = ut; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ rtype.prototype.exportedMethods = function() { return this.$val.exportedMethods(); };
+ rtype.ptr.prototype.NumMethod = function() {
+ var $ptr, _r, t, tt, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; t = $f.t; tt = $f.tt; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ if (t.Kind() === 20) {
+ tt = (t.kindType);
+ $s = -1; return tt.NumMethod();
+ }
+ if (((t.tflag & 1) >>> 0) === 0) {
+ $s = -1; return 0;
+ }
+ _r = t.exportedMethods(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r.$length;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: rtype.ptr.prototype.NumMethod }; } $f.$ptr = $ptr; $f._r = _r; $f.t = t; $f.tt = tt; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ rtype.prototype.NumMethod = function() { return this.$val.NumMethod(); };
+ rtype.ptr.prototype.MethodByName = function(name$1) {
+ var $ptr, _r, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tuple, i, m, name$1, ok, p, pname, t, tt, ut, utmethods, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tuple = $f._tuple; i = $f.i; m = $f.m; name$1 = $f.name$1; ok = $f.ok; p = $f.p; pname = $f.pname; t = $f.t; tt = $f.tt; ut = $f.ut; utmethods = $f.utmethods; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ m = new Method.ptr("", "", $ifaceNil, new Value.ptr(ptrType$1.nil, 0, 0), 0);
+ ok = false;
+ t = this;
+ if (t.Kind() === 20) {
+ tt = (t.kindType);
+ _tuple = tt.MethodByName(name$1);
+ Method.copy(m, _tuple[0]);
+ ok = _tuple[1];
+ $s = -1; return [m, ok];
+ }
+ ut = t.uncommon();
+ if (ut === ptrType$6.nil) {
+ _tmp = new Method.ptr("", "", $ifaceNil, new Value.ptr(ptrType$1.nil, 0, 0), 0);
+ _tmp$1 = false;
+ Method.copy(m, _tmp);
+ ok = _tmp$1;
+ $s = -1; return [m, ok];
+ }
+ utmethods = ut.methods();
+ i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(i < ((ut.mcount >> 0)))) { break; } */ if(!(i < ((ut.mcount >> 0)))) { $s = 2; continue; }
+ p = $clone(((i < 0 || i >= utmethods.$length) ? ($throwRuntimeError("index out of range"), undefined) : utmethods.$array[utmethods.$offset + i]), method);
+ pname = $clone(t.nameOff(p.name), name);
+ /* */ if ($clone(pname, name).isExported() && $clone(pname, name).name() === name$1) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if ($clone(pname, name).isExported() && $clone(pname, name).name() === name$1) { */ case 3:
+ _r = t.Method(i); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tmp$2 = $clone(_r, Method);
+ _tmp$3 = true;
+ Method.copy(m, _tmp$2);
+ ok = _tmp$3;
+ $s = -1; return [m, ok];
+ /* } */ case 4:
+ i = i + (1) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ _tmp$4 = new Method.ptr("", "", $ifaceNil, new Value.ptr(ptrType$1.nil, 0, 0), 0);
+ _tmp$5 = false;
+ Method.copy(m, _tmp$4);
+ ok = _tmp$5;
+ $s = -1; return [m, ok];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: rtype.ptr.prototype.MethodByName }; } $f.$ptr = $ptr; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tuple = _tuple; $f.i = i; $f.m = m; $f.name$1 = name$1; $f.ok = ok; $f.p = p; $f.pname = pname; $f.t = t; $f.tt = tt; $f.ut = ut; $f.utmethods = utmethods; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ rtype.prototype.MethodByName = function(name$1) { return this.$val.MethodByName(name$1); };
+ rtype.ptr.prototype.PkgPath = function() {
+ var $ptr, t, ut;
+ t = this;
+ if (((t.tflag & 4) >>> 0) === 0) {
+ return "";
+ }
+ ut = t.uncommon();
+ if (ut === ptrType$6.nil) {
+ return "";
+ }
+ return $clone(t.nameOff(ut.pkgPath), name).name();
+ };
+ rtype.prototype.PkgPath = function() { return this.$val.PkgPath(); };
+ rtype.ptr.prototype.Name = function() {
+ var $ptr, i, s, t;
+ t = this;
+ if (((t.tflag & 4) >>> 0) === 0) {
+ return "";
+ }
+ s = t.String();
+ i = s.length - 1 >> 0;
+ while (true) {
+ if (!(i >= 0)) { break; }
+ if (s.charCodeAt(i) === 46) {
+ break;
+ }
+ i = i - (1) >> 0;
+ }
+ return $substring(s, (i + 1 >> 0));
+ };
+ rtype.prototype.Name = function() { return this.$val.Name(); };
+ rtype.ptr.prototype.ChanDir = function() {
+ var $ptr, t, tt;
+ t = this;
+ if (!((t.Kind() === 18))) {
+ $panic(new $String("reflect: ChanDir of non-chan type"));
+ }
+ tt = (t.kindType);
+ return ((tt.dir >> 0));
+ };
+ rtype.prototype.ChanDir = function() { return this.$val.ChanDir(); };
+ rtype.ptr.prototype.IsVariadic = function() {
+ var $ptr, t, tt;
+ t = this;
+ if (!((t.Kind() === 19))) {
+ $panic(new $String("reflect: IsVariadic of non-func type"));
+ }
+ tt = (t.kindType);
+ return !((((tt.outCount & 32768) >>> 0) === 0));
+ };
+ rtype.prototype.IsVariadic = function() { return this.$val.IsVariadic(); };
+ rtype.ptr.prototype.Elem = function() {
+ var $ptr, _1, t, tt, tt$1, tt$2, tt$3, tt$4;
+ t = this;
+ _1 = t.Kind();
+ if (_1 === (17)) {
+ tt = (t.kindType);
+ return toType(tt.elem);
+ } else if (_1 === (18)) {
+ tt$1 = (t.kindType);
+ return toType(tt$1.elem);
+ } else if (_1 === (21)) {
+ tt$2 = (t.kindType);
+ return toType(tt$2.elem);
+ } else if (_1 === (22)) {
+ tt$3 = (t.kindType);
+ return toType(tt$3.elem);
+ } else if (_1 === (23)) {
+ tt$4 = (t.kindType);
+ return toType(tt$4.elem);
+ }
+ $panic(new $String("reflect: Elem of invalid type"));
+ };
+ rtype.prototype.Elem = function() { return this.$val.Elem(); };
+ rtype.ptr.prototype.Field = function(i) {
+ var $ptr, _r, i, t, tt, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; i = $f.i; t = $f.t; tt = $f.tt; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ if (!((t.Kind() === 25))) {
+ $panic(new $String("reflect: Field of non-struct type"));
+ }
+ tt = (t.kindType);
+ _r = tt.Field(i); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: rtype.ptr.prototype.Field }; } $f.$ptr = $ptr; $f._r = _r; $f.i = i; $f.t = t; $f.tt = tt; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ rtype.prototype.Field = function(i) { return this.$val.Field(i); };
+ rtype.ptr.prototype.FieldByIndex = function(index) {
+ var $ptr, _r, index, t, tt, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; index = $f.index; t = $f.t; tt = $f.tt; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ if (!((t.Kind() === 25))) {
+ $panic(new $String("reflect: FieldByIndex of non-struct type"));
+ }
+ tt = (t.kindType);
+ _r = tt.FieldByIndex(index); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: rtype.ptr.prototype.FieldByIndex }; } $f.$ptr = $ptr; $f._r = _r; $f.index = index; $f.t = t; $f.tt = tt; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ rtype.prototype.FieldByIndex = function(index) { return this.$val.FieldByIndex(index); };
+ rtype.ptr.prototype.FieldByName = function(name$1) {
+ var $ptr, _r, name$1, t, tt, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; name$1 = $f.name$1; t = $f.t; tt = $f.tt; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ if (!((t.Kind() === 25))) {
+ $panic(new $String("reflect: FieldByName of non-struct type"));
+ }
+ tt = (t.kindType);
+ _r = tt.FieldByName(name$1); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: rtype.ptr.prototype.FieldByName }; } $f.$ptr = $ptr; $f._r = _r; $f.name$1 = name$1; $f.t = t; $f.tt = tt; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ rtype.prototype.FieldByName = function(name$1) { return this.$val.FieldByName(name$1); };
+ rtype.ptr.prototype.FieldByNameFunc = function(match) {
+ var $ptr, _r, match, t, tt, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; match = $f.match; t = $f.t; tt = $f.tt; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ if (!((t.Kind() === 25))) {
+ $panic(new $String("reflect: FieldByNameFunc of non-struct type"));
+ }
+ tt = (t.kindType);
+ _r = tt.FieldByNameFunc(match); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: rtype.ptr.prototype.FieldByNameFunc }; } $f.$ptr = $ptr; $f._r = _r; $f.match = match; $f.t = t; $f.tt = tt; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ rtype.prototype.FieldByNameFunc = function(match) { return this.$val.FieldByNameFunc(match); };
+ rtype.ptr.prototype.In = function(i) {
+ var $ptr, i, t, tt, x;
+ t = this;
+ if (!((t.Kind() === 19))) {
+ $panic(new $String("reflect: In of non-func type"));
+ }
+ tt = (t.kindType);
+ return toType((x = tt.in$(), ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i])));
+ };
+ rtype.prototype.In = function(i) { return this.$val.In(i); };
+ rtype.ptr.prototype.Key = function() {
+ var $ptr, t, tt;
+ t = this;
+ if (!((t.Kind() === 21))) {
+ $panic(new $String("reflect: Key of non-map type"));
+ }
+ tt = (t.kindType);
+ return toType(tt.key);
+ };
+ rtype.prototype.Key = function() { return this.$val.Key(); };
+ rtype.ptr.prototype.Len = function() {
+ var $ptr, t, tt;
+ t = this;
+ if (!((t.Kind() === 17))) {
+ $panic(new $String("reflect: Len of non-array type"));
+ }
+ tt = (t.kindType);
+ return ((tt.len >> 0));
+ };
+ rtype.prototype.Len = function() { return this.$val.Len(); };
+ rtype.ptr.prototype.NumField = function() {
+ var $ptr, t, tt;
+ t = this;
+ if (!((t.Kind() === 25))) {
+ $panic(new $String("reflect: NumField of non-struct type"));
+ }
+ tt = (t.kindType);
+ return tt.fields.$length;
+ };
+ rtype.prototype.NumField = function() { return this.$val.NumField(); };
+ rtype.ptr.prototype.NumIn = function() {
+ var $ptr, t, tt;
+ t = this;
+ if (!((t.Kind() === 19))) {
+ $panic(new $String("reflect: NumIn of non-func type"));
+ }
+ tt = (t.kindType);
+ return ((tt.inCount >> 0));
+ };
+ rtype.prototype.NumIn = function() { return this.$val.NumIn(); };
+ rtype.ptr.prototype.NumOut = function() {
+ var $ptr, t, tt;
+ t = this;
+ if (!((t.Kind() === 19))) {
+ $panic(new $String("reflect: NumOut of non-func type"));
+ }
+ tt = (t.kindType);
+ return tt.out().$length;
+ };
+ rtype.prototype.NumOut = function() { return this.$val.NumOut(); };
+ rtype.ptr.prototype.Out = function(i) {
+ var $ptr, i, t, tt, x;
+ t = this;
+ if (!((t.Kind() === 19))) {
+ $panic(new $String("reflect: Out of non-func type"));
+ }
+ tt = (t.kindType);
+ return toType((x = tt.out(), ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i])));
+ };
+ rtype.prototype.Out = function(i) { return this.$val.Out(i); };
+ ChanDir.prototype.String = function() {
+ var $ptr, _1, d;
+ d = this.$val;
+ _1 = d;
+ if (_1 === (2)) {
+ return "chan<-";
+ } else if (_1 === (1)) {
+ return "<-chan";
+ } else if (_1 === (3)) {
+ return "chan";
+ }
+ return "ChanDir" + strconv.Itoa(((d >> 0)));
+ };
+ $ptrType(ChanDir).prototype.String = function() { return new ChanDir(this.$get()).String(); };
+ interfaceType.ptr.prototype.Method = function(i) {
+ var $ptr, i, m, p, pname, t, x;
+ m = new Method.ptr("", "", $ifaceNil, new Value.ptr(ptrType$1.nil, 0, 0), 0);
+ t = this;
+ if (i < 0 || i >= t.methods.$length) {
+ return m;
+ }
+ p = (x = t.methods, ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]));
+ pname = $clone(t.rtype.nameOff(p.name), name);
+ m.Name = $clone(pname, name).name();
+ if (!$clone(pname, name).isExported()) {
+ m.PkgPath = $clone(pname, name).pkgPath();
+ if (m.PkgPath === "") {
+ m.PkgPath = $clone(t.pkgPath, name).name();
+ }
+ }
+ m.Type = toType(t.rtype.typeOff(p.typ));
+ m.Index = i;
+ return m;
+ };
+ interfaceType.prototype.Method = function(i) { return this.$val.Method(i); };
+ interfaceType.ptr.prototype.NumMethod = function() {
+ var $ptr, t;
+ t = this;
+ return t.methods.$length;
+ };
+ interfaceType.prototype.NumMethod = function() { return this.$val.NumMethod(); };
+ interfaceType.ptr.prototype.MethodByName = function(name$1) {
+ var $ptr, _i, _ref, _tmp, _tmp$1, i, m, name$1, ok, p, t, x;
+ m = new Method.ptr("", "", $ifaceNil, new Value.ptr(ptrType$1.nil, 0, 0), 0);
+ ok = false;
+ t = this;
+ if (t === ptrType$8.nil) {
+ return [m, ok];
+ }
+ p = ptrType$9.nil;
+ _ref = t.methods;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ p = (x = t.methods, ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]));
+ if ($clone(t.rtype.nameOff(p.name), name).name() === name$1) {
+ _tmp = $clone(t.Method(i), Method);
+ _tmp$1 = true;
+ Method.copy(m, _tmp);
+ ok = _tmp$1;
+ return [m, ok];
+ }
+ _i++;
+ }
+ return [m, ok];
+ };
+ interfaceType.prototype.MethodByName = function(name$1) { return this.$val.MethodByName(name$1); };
+ StructTag.prototype.Get = function(key) {
+ var $ptr, _tuple, key, tag, v;
+ tag = this.$val;
+ _tuple = new StructTag(tag).Lookup(key);
+ v = _tuple[0];
+ return v;
+ };
+ $ptrType(StructTag).prototype.Get = function(key) { return new StructTag(this.$get()).Get(key); };
+ StructTag.prototype.Lookup = function(key) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tuple, err, i, key, name$1, ok, qvalue, tag, value, value$1;
+ value = "";
+ ok = false;
+ tag = this.$val;
+ while (true) {
+ if (!(!(tag === ""))) { break; }
+ i = 0;
+ while (true) {
+ if (!(i < tag.length && (tag.charCodeAt(i) === 32))) { break; }
+ i = i + (1) >> 0;
+ }
+ tag = $substring(tag, i);
+ if (tag === "") {
+ break;
+ }
+ i = 0;
+ while (true) {
+ if (!(i < tag.length && tag.charCodeAt(i) > 32 && !((tag.charCodeAt(i) === 58)) && !((tag.charCodeAt(i) === 34)) && !((tag.charCodeAt(i) === 127)))) { break; }
+ i = i + (1) >> 0;
+ }
+ if ((i === 0) || (i + 1 >> 0) >= tag.length || !((tag.charCodeAt(i) === 58)) || !((tag.charCodeAt((i + 1 >> 0)) === 34))) {
+ break;
+ }
+ name$1 = ($substring(tag, 0, i));
+ tag = $substring(tag, (i + 1 >> 0));
+ i = 1;
+ while (true) {
+ if (!(i < tag.length && !((tag.charCodeAt(i) === 34)))) { break; }
+ if (tag.charCodeAt(i) === 92) {
+ i = i + (1) >> 0;
+ }
+ i = i + (1) >> 0;
+ }
+ if (i >= tag.length) {
+ break;
+ }
+ qvalue = ($substring(tag, 0, (i + 1 >> 0)));
+ tag = $substring(tag, (i + 1 >> 0));
+ if (key === name$1) {
+ _tuple = strconv.Unquote(qvalue);
+ value$1 = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ break;
+ }
+ _tmp = value$1;
+ _tmp$1 = true;
+ value = _tmp;
+ ok = _tmp$1;
+ return [value, ok];
+ }
+ }
+ _tmp$2 = "";
+ _tmp$3 = false;
+ value = _tmp$2;
+ ok = _tmp$3;
+ return [value, ok];
+ };
+ $ptrType(StructTag).prototype.Lookup = function(key) { return new StructTag(this.$get()).Lookup(key); };
+ structType.ptr.prototype.Field = function(i) {
+ var $ptr, _r, _r$1, _r$2, f, i, name$1, p, t, t$1, tag, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; f = $f.f; i = $f.i; name$1 = $f.name$1; p = $f.p; t = $f.t; t$1 = $f.t$1; tag = $f.tag; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = new StructField.ptr("", "", $ifaceNil, "", 0, sliceType$14.nil, false);
+ t = this;
+ if (i < 0 || i >= t.fields.$length) {
+ $panic(new $String("reflect: Field index out of bounds"));
+ }
+ p = (x = t.fields, ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]));
+ f.Type = toType(p.typ);
+ name$1 = $clone(p.name, name).name();
+ /* */ if (!(name$1 === "")) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!(name$1 === "")) { */ case 1:
+ f.Name = name$1;
+ $s = 3; continue;
+ /* } else { */ case 2:
+ t$1 = f.Type;
+ _r = t$1.Kind(); /* */ $s = 6; case 6: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (_r === 22) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (_r === 22) { */ case 4:
+ _r$1 = t$1.Elem(); /* */ $s = 7; case 7: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ t$1 = _r$1;
+ /* } */ case 5:
+ _r$2 = t$1.Name(); /* */ $s = 8; case 8: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ f.Name = _r$2;
+ f.Anonymous = true;
+ /* } */ case 3:
+ if (!$clone(p.name, name).isExported()) {
+ f.PkgPath = $clone(p.name, name).pkgPath();
+ if (f.PkgPath === "") {
+ f.PkgPath = $clone(t.pkgPath, name).name();
+ }
+ }
+ tag = $clone(p.name, name).tag();
+ if (!(tag === "")) {
+ f.Tag = (tag);
+ }
+ f.Offset = p.offset;
+ f.Index = new sliceType$14([i]);
+ $s = -1; return f;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: structType.ptr.prototype.Field }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.f = f; $f.i = i; $f.name$1 = name$1; $f.p = p; $f.t = t; $f.t$1 = t$1; $f.tag = tag; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ structType.prototype.Field = function(i) { return this.$val.Field(i); };
+ structType.ptr.prototype.FieldByIndex = function(index) {
+ var $ptr, _i, _r, _r$1, _r$2, _r$3, _r$4, _ref, _v, f, ft, i, index, t, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _ref = $f._ref; _v = $f._v; f = $f.f; ft = $f.ft; i = $f.i; index = $f.index; t = $f.t; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = new StructField.ptr("", "", $ifaceNil, "", 0, sliceType$14.nil, false);
+ t = this;
+ f.Type = toType(t.rtype);
+ _ref = index;
+ _i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 2; continue; }
+ i = _i;
+ x = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ /* */ if (i > 0) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (i > 0) { */ case 3:
+ ft = f.Type;
+ _r = ft.Kind(); /* */ $s = 8; case 8: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ if (!(_r === 22)) { _v = false; $s = 7; continue s; }
+ _r$1 = ft.Elem(); /* */ $s = 9; case 9: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = _r$1.Kind(); /* */ $s = 10; case 10: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _v = _r$2 === 25; case 7:
+ /* */ if (_v) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (_v) { */ case 5:
+ _r$3 = ft.Elem(); /* */ $s = 11; case 11: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ ft = _r$3;
+ /* } */ case 6:
+ f.Type = ft;
+ /* } */ case 4:
+ _r$4 = f.Type.Field(x); /* */ $s = 12; case 12: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ StructField.copy(f, _r$4);
+ _i++;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return f;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: structType.ptr.prototype.FieldByIndex }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._ref = _ref; $f._v = _v; $f.f = f; $f.ft = ft; $f.i = i; $f.index = index; $f.t = t; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ structType.prototype.FieldByIndex = function(index) { return this.$val.FieldByIndex(index); };
+ structType.ptr.prototype.FieldByNameFunc = function(match) {
+ var $ptr, _entry, _entry$1, _entry$2, _entry$3, _i, _i$1, _key, _key$1, _key$2, _key$3, _r, _r$1, _r$2, _ref, _ref$1, _tmp, _tmp$1, _tmp$2, _tmp$3, count, current, f, fname, i, index, match, name$1, next, nextCount, ntyp, ok, result, scan, styp, t, t$1, visited, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _entry$1 = $f._entry$1; _entry$2 = $f._entry$2; _entry$3 = $f._entry$3; _i = $f._i; _i$1 = $f._i$1; _key = $f._key; _key$1 = $f._key$1; _key$2 = $f._key$2; _key$3 = $f._key$3; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _ref = $f._ref; _ref$1 = $f._ref$1; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; count = $f.count; current = $f.current; f = $f.f; fname = $f.fname; i = $f.i; index = $f.index; match = $f.match; name$1 = $f.name$1; next = $f.next; nextCount = $f.nextCount; ntyp = $f.ntyp; ok = $f.ok; result = $f.result; scan = $f.scan; styp = $f.styp; t = $f.t; t$1 = $f.t$1; visited = $f.visited; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ result = new StructField.ptr("", "", $ifaceNil, "", 0, sliceType$14.nil, false);
+ ok = false;
+ t = this;
+ current = new sliceType$15([]);
+ next = new sliceType$15([new fieldScan.ptr(t, sliceType$14.nil)]);
+ nextCount = false;
+ visited = $makeMap(ptrType$10.keyFor, []);
+ /* while (true) { */ case 1:
+ /* if (!(next.$length > 0)) { break; } */ if(!(next.$length > 0)) { $s = 2; continue; }
+ _tmp = next;
+ _tmp$1 = $subslice(current, 0, 0);
+ current = _tmp;
+ next = _tmp$1;
+ count = nextCount;
+ nextCount = false;
+ _ref = current;
+ _i = 0;
+ /* while (true) { */ case 3:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 4; continue; }
+ scan = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), fieldScan);
+ t$1 = scan.typ;
+ /* */ if ((_entry = visited[ptrType$10.keyFor(t$1)], _entry !== undefined ? _entry.v : false)) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if ((_entry = visited[ptrType$10.keyFor(t$1)], _entry !== undefined ? _entry.v : false)) { */ case 5:
+ _i++;
+ /* continue; */ $s = 3; continue;
+ /* } */ case 6:
+ _key = t$1; (visited || $throwRuntimeError("assignment to entry in nil map"))[ptrType$10.keyFor(_key)] = { k: _key, v: true };
+ _ref$1 = t$1.fields;
+ _i$1 = 0;
+ /* while (true) { */ case 7:
+ /* if (!(_i$1 < _ref$1.$length)) { break; } */ if(!(_i$1 < _ref$1.$length)) { $s = 8; continue; }
+ i = _i$1;
+ f = (x = t$1.fields, ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]));
+ fname = "";
+ ntyp = ptrType$1.nil;
+ name$1 = $clone(f.name, name).name();
+ /* */ if (!(name$1 === "")) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (!(name$1 === "")) { */ case 9:
+ fname = name$1;
+ $s = 11; continue;
+ /* } else { */ case 10:
+ ntyp = f.typ;
+ /* */ if (ntyp.Kind() === 22) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if (ntyp.Kind() === 22) { */ case 12:
+ _r = ntyp.Elem().common(); /* */ $s = 14; case 14: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ ntyp = _r;
+ /* } */ case 13:
+ fname = ntyp.Name();
+ /* } */ case 11:
+ _r$1 = match(fname); /* */ $s = 17; case 17: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ /* */ if (_r$1) { $s = 15; continue; }
+ /* */ $s = 16; continue;
+ /* if (_r$1) { */ case 15:
+ if ((_entry$1 = count[ptrType$10.keyFor(t$1)], _entry$1 !== undefined ? _entry$1.v : 0) > 1 || ok) {
+ _tmp$2 = new StructField.ptr("", "", $ifaceNil, "", 0, sliceType$14.nil, false);
+ _tmp$3 = false;
+ StructField.copy(result, _tmp$2);
+ ok = _tmp$3;
+ $s = -1; return [result, ok];
+ }
+ _r$2 = t$1.Field(i); /* */ $s = 18; case 18: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ StructField.copy(result, _r$2);
+ result.Index = sliceType$14.nil;
+ result.Index = $appendSlice(result.Index, scan.index);
+ result.Index = $append(result.Index, i);
+ ok = true;
+ _i$1++;
+ /* continue; */ $s = 7; continue;
+ /* } */ case 16:
+ if (ok || ntyp === ptrType$1.nil || !((ntyp.Kind() === 25))) {
+ _i$1++;
+ /* continue; */ $s = 7; continue;
+ }
+ styp = (ntyp.kindType);
+ if ((_entry$2 = nextCount[ptrType$10.keyFor(styp)], _entry$2 !== undefined ? _entry$2.v : 0) > 0) {
+ _key$1 = styp; (nextCount || $throwRuntimeError("assignment to entry in nil map"))[ptrType$10.keyFor(_key$1)] = { k: _key$1, v: 2 };
+ _i$1++;
+ /* continue; */ $s = 7; continue;
+ }
+ if (nextCount === false) {
+ nextCount = $makeMap(ptrType$10.keyFor, []);
+ }
+ _key$2 = styp; (nextCount || $throwRuntimeError("assignment to entry in nil map"))[ptrType$10.keyFor(_key$2)] = { k: _key$2, v: 1 };
+ if ((_entry$3 = count[ptrType$10.keyFor(t$1)], _entry$3 !== undefined ? _entry$3.v : 0) > 1) {
+ _key$3 = styp; (nextCount || $throwRuntimeError("assignment to entry in nil map"))[ptrType$10.keyFor(_key$3)] = { k: _key$3, v: 2 };
+ }
+ index = sliceType$14.nil;
+ index = $appendSlice(index, scan.index);
+ index = $append(index, i);
+ next = $append(next, new fieldScan.ptr(styp, index));
+ _i$1++;
+ /* } */ $s = 7; continue; case 8:
+ _i++;
+ /* } */ $s = 3; continue; case 4:
+ if (ok) {
+ /* break; */ $s = 2; continue;
+ }
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return [result, ok];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: structType.ptr.prototype.FieldByNameFunc }; } $f.$ptr = $ptr; $f._entry = _entry; $f._entry$1 = _entry$1; $f._entry$2 = _entry$2; $f._entry$3 = _entry$3; $f._i = _i; $f._i$1 = _i$1; $f._key = _key; $f._key$1 = _key$1; $f._key$2 = _key$2; $f._key$3 = _key$3; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._ref = _ref; $f._ref$1 = _ref$1; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f.count = count; $f.current = current; $f.f = f; $f.fname = fname; $f.i = i; $f.index = index; $f.match = match; $f.name$1 = name$1; $f.next = next; $f.nextCount = nextCount; $f.ntyp = ntyp; $f.ok = ok; $f.result = result; $f.scan = scan; $f.styp = styp; $f.t = t; $f.t$1 = t$1; $f.visited = visited; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ structType.prototype.FieldByNameFunc = function(match) { return this.$val.FieldByNameFunc(match); };
+ structType.ptr.prototype.FieldByName = function(name$1) {
+ var $ptr, _i, _r, _r$1, _ref, _tmp, _tmp$1, _tuple, f, hasAnon, i, name$1, present, t, tf, tfname, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _ref = $f._ref; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tuple = $f._tuple; f = $f.f; hasAnon = $f.hasAnon; i = $f.i; name$1 = $f.name$1; present = $f.present; t = $f.t; tf = $f.tf; tfname = $f.tfname; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ name$1 = [name$1];
+ f = new StructField.ptr("", "", $ifaceNil, "", 0, sliceType$14.nil, false);
+ present = false;
+ t = this;
+ hasAnon = false;
+ /* */ if (!(name$1[0] === "")) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!(name$1[0] === "")) { */ case 1:
+ _ref = t.fields;
+ _i = 0;
+ /* while (true) { */ case 3:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 4; continue; }
+ i = _i;
+ tf = (x = t.fields, ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]));
+ tfname = $clone(tf.name, name).name();
+ /* */ if (tfname === "") { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (tfname === "") { */ case 5:
+ hasAnon = true;
+ _i++;
+ /* continue; */ $s = 3; continue;
+ /* } */ case 6:
+ /* */ if (tfname === name$1[0]) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (tfname === name$1[0]) { */ case 7:
+ _r = t.Field(i); /* */ $s = 9; case 9: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tmp = $clone(_r, StructField);
+ _tmp$1 = true;
+ StructField.copy(f, _tmp);
+ present = _tmp$1;
+ $s = -1; return [f, present];
+ /* } */ case 8:
+ _i++;
+ /* } */ $s = 3; continue; case 4:
+ /* } */ case 2:
+ if (!hasAnon) {
+ $s = -1; return [f, present];
+ }
+ _r$1 = t.FieldByNameFunc((function(name$1) { return function(s) {
+ var $ptr, s;
+ return s === name$1[0];
+ }; })(name$1)); /* */ $s = 10; case 10: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple = _r$1;
+ StructField.copy(f, _tuple[0]);
+ present = _tuple[1];
+ $s = -1; return [f, present];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: structType.ptr.prototype.FieldByName }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._ref = _ref; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tuple = _tuple; $f.f = f; $f.hasAnon = hasAnon; $f.i = i; $f.name$1 = name$1; $f.present = present; $f.t = t; $f.tf = tf; $f.tfname = tfname; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ structType.prototype.FieldByName = function(name$1) { return this.$val.FieldByName(name$1); };
+ PtrTo = function(t) {
+ var $ptr, t;
+ return $assertType(t, ptrType$1).ptrTo();
+ };
+ $pkg.PtrTo = PtrTo;
+ rtype.ptr.prototype.Implements = function(u) {
+ var $ptr, _r, t, u, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; t = $f.t; u = $f.u; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ if ($interfaceIsEqual(u, $ifaceNil)) {
+ $panic(new $String("reflect: nil type passed to Type.Implements"));
+ }
+ _r = u.Kind(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (!((_r === 20))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!((_r === 20))) { */ case 1:
+ $panic(new $String("reflect: non-interface type passed to Type.Implements"));
+ /* } */ case 2:
+ $s = -1; return implements$1($assertType(u, ptrType$1), t);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: rtype.ptr.prototype.Implements }; } $f.$ptr = $ptr; $f._r = _r; $f.t = t; $f.u = u; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ rtype.prototype.Implements = function(u) { return this.$val.Implements(u); };
+ rtype.ptr.prototype.AssignableTo = function(u) {
+ var $ptr, _r, t, u, uu, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; t = $f.t; u = $f.u; uu = $f.uu; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ if ($interfaceIsEqual(u, $ifaceNil)) {
+ $panic(new $String("reflect: nil type passed to Type.AssignableTo"));
+ }
+ uu = $assertType(u, ptrType$1);
+ _r = directlyAssignable(uu, t); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r || implements$1(uu, t);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: rtype.ptr.prototype.AssignableTo }; } $f.$ptr = $ptr; $f._r = _r; $f.t = t; $f.u = u; $f.uu = uu; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ rtype.prototype.AssignableTo = function(u) { return this.$val.AssignableTo(u); };
+ rtype.ptr.prototype.ConvertibleTo = function(u) {
+ var $ptr, _r, t, u, uu, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; t = $f.t; u = $f.u; uu = $f.uu; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = this;
+ if ($interfaceIsEqual(u, $ifaceNil)) {
+ $panic(new $String("reflect: nil type passed to Type.ConvertibleTo"));
+ }
+ uu = $assertType(u, ptrType$1);
+ _r = convertOp(uu, t); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return !(_r === $throwNilPointerError);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: rtype.ptr.prototype.ConvertibleTo }; } $f.$ptr = $ptr; $f._r = _r; $f.t = t; $f.u = u; $f.uu = uu; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ rtype.prototype.ConvertibleTo = function(u) { return this.$val.ConvertibleTo(u); };
+ implements$1 = function(T, V) {
+ var $ptr, T, V, i, i$1, j, j$1, t, tm, tm$1, v, v$1, vm, vm$1, vmethods, x, x$1, x$2;
+ if (!((T.Kind() === 20))) {
+ return false;
+ }
+ t = (T.kindType);
+ if (t.methods.$length === 0) {
+ return true;
+ }
+ if (V.Kind() === 20) {
+ v = (V.kindType);
+ i = 0;
+ j = 0;
+ while (true) {
+ if (!(j < v.methods.$length)) { break; }
+ tm = (x = t.methods, ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]));
+ vm = (x$1 = v.methods, ((j < 0 || j >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + j]));
+ if ($clone(V.nameOff(vm.name), name).name() === $clone(t.rtype.nameOff(tm.name), name).name() && V.typeOff(vm.typ) === t.rtype.typeOff(tm.typ)) {
+ i = i + (1) >> 0;
+ if (i >= t.methods.$length) {
+ return true;
+ }
+ }
+ j = j + (1) >> 0;
+ }
+ return false;
+ }
+ v$1 = V.uncommon();
+ if (v$1 === ptrType$6.nil) {
+ return false;
+ }
+ i$1 = 0;
+ vmethods = v$1.methods();
+ j$1 = 0;
+ while (true) {
+ if (!(j$1 < ((v$1.mcount >> 0)))) { break; }
+ tm$1 = (x$2 = t.methods, ((i$1 < 0 || i$1 >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + i$1]));
+ vm$1 = $clone(((j$1 < 0 || j$1 >= vmethods.$length) ? ($throwRuntimeError("index out of range"), undefined) : vmethods.$array[vmethods.$offset + j$1]), method);
+ if ($clone(V.nameOff(vm$1.name), name).name() === $clone(t.rtype.nameOff(tm$1.name), name).name() && V.typeOff(vm$1.mtyp) === t.rtype.typeOff(tm$1.typ)) {
+ i$1 = i$1 + (1) >> 0;
+ if (i$1 >= t.methods.$length) {
+ return true;
+ }
+ }
+ j$1 = j$1 + (1) >> 0;
+ }
+ return false;
+ };
+ directlyAssignable = function(T, V) {
+ var $ptr, T, V, _r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; T = $f.T; V = $f.V; _r = $f._r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ if (T === V) {
+ $s = -1; return true;
+ }
+ if (!(T.Name() === "") && !(V.Name() === "") || !((T.Kind() === V.Kind()))) {
+ $s = -1; return false;
+ }
+ _r = haveIdenticalUnderlyingType(T, V, true); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: directlyAssignable }; } $f.$ptr = $ptr; $f.T = T; $f.V = V; $f._r = _r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ haveIdenticalType = function(T, V, cmpTags) {
+ var $ptr, T, V, _arg, _arg$1, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _v, cmpTags, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; T = $f.T; V = $f.V; _arg = $f._arg; _arg$1 = $f._arg$1; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _v = $f._v; cmpTags = $f.cmpTags; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ if (cmpTags) {
+ $s = -1; return $interfaceIsEqual(T, V);
+ }
+ _r = T.Name(); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = V.Name(); /* */ $s = 5; case 5: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ if (!(_r === _r$1)) { _v = true; $s = 3; continue s; }
+ _r$2 = T.Kind(); /* */ $s = 6; case 6: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$3 = V.Kind(); /* */ $s = 7; case 7: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _v = !((_r$2 === _r$3)); case 3:
+ /* */ if (_v) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (_v) { */ case 1:
+ $s = -1; return false;
+ /* } */ case 2:
+ _r$4 = T.common(); /* */ $s = 8; case 8: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _arg = _r$4;
+ _r$5 = V.common(); /* */ $s = 9; case 9: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _arg$1 = _r$5;
+ _r$6 = haveIdenticalUnderlyingType(_arg, _arg$1, false); /* */ $s = 10; case 10: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return _r$6;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: haveIdenticalType }; } $f.$ptr = $ptr; $f.T = T; $f.V = V; $f._arg = _arg; $f._arg$1 = _arg$1; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._v = _v; $f.cmpTags = cmpTags; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ haveIdenticalUnderlyingType = function(T, V, cmpTags) {
+ var $ptr, T, V, _1, _i, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _ref, _v, _v$1, _v$2, _v$3, cmpTags, i, i$1, i$2, kind, t, t$1, t$2, tf, tp, v, v$1, v$2, vf, vp, x, x$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; T = $f.T; V = $f.V; _1 = $f._1; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _ref = $f._ref; _v = $f._v; _v$1 = $f._v$1; _v$2 = $f._v$2; _v$3 = $f._v$3; cmpTags = $f.cmpTags; i = $f.i; i$1 = $f.i$1; i$2 = $f.i$2; kind = $f.kind; t = $f.t; t$1 = $f.t$1; t$2 = $f.t$2; tf = $f.tf; tp = $f.tp; v = $f.v; v$1 = $f.v$1; v$2 = $f.v$2; vf = $f.vf; vp = $f.vp; x = $f.x; x$1 = $f.x$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ if (T === V) {
+ $s = -1; return true;
+ }
+ kind = T.Kind();
+ if (!((kind === V.Kind()))) {
+ $s = -1; return false;
+ }
+ if (1 <= kind && kind <= 16 || (kind === 24) || (kind === 26)) {
+ $s = -1; return true;
+ }
+ _1 = kind;
+ /* */ if (_1 === (17)) { $s = 2; continue; }
+ /* */ if (_1 === (18)) { $s = 3; continue; }
+ /* */ if (_1 === (19)) { $s = 4; continue; }
+ /* */ if (_1 === (20)) { $s = 5; continue; }
+ /* */ if (_1 === (21)) { $s = 6; continue; }
+ /* */ if ((_1 === (22)) || (_1 === (23))) { $s = 7; continue; }
+ /* */ if (_1 === (25)) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if (_1 === (17)) { */ case 2:
+ if (!(T.Len() === V.Len())) { _v = false; $s = 10; continue s; }
+ _r = haveIdenticalType(T.Elem(), V.Elem(), cmpTags); /* */ $s = 11; case 11: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _v = _r; case 10:
+ $s = -1; return _v;
+ /* } else if (_1 === (18)) { */ case 3:
+ if (!(V.ChanDir() === 3)) { _v$1 = false; $s = 14; continue s; }
+ _r$1 = haveIdenticalType(T.Elem(), V.Elem(), cmpTags); /* */ $s = 15; case 15: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _v$1 = _r$1; case 14:
+ /* */ if (_v$1) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if (_v$1) { */ case 12:
+ $s = -1; return true;
+ /* } */ case 13:
+ if (!(V.ChanDir() === T.ChanDir())) { _v$2 = false; $s = 16; continue s; }
+ _r$2 = haveIdenticalType(T.Elem(), V.Elem(), cmpTags); /* */ $s = 17; case 17: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _v$2 = _r$2; case 16:
+ $s = -1; return _v$2;
+ /* } else if (_1 === (19)) { */ case 4:
+ t = (T.kindType);
+ v = (V.kindType);
+ if (!((t.outCount === v.outCount)) || !((t.inCount === v.inCount))) {
+ $s = -1; return false;
+ }
+ i = 0;
+ /* while (true) { */ case 18:
+ /* if (!(i < t.rtype.NumIn())) { break; } */ if(!(i < t.rtype.NumIn())) { $s = 19; continue; }
+ _r$3 = haveIdenticalType(t.rtype.In(i), v.rtype.In(i), cmpTags); /* */ $s = 22; case 22: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ /* */ if (!_r$3) { $s = 20; continue; }
+ /* */ $s = 21; continue;
+ /* if (!_r$3) { */ case 20:
+ $s = -1; return false;
+ /* } */ case 21:
+ i = i + (1) >> 0;
+ /* } */ $s = 18; continue; case 19:
+ i$1 = 0;
+ /* while (true) { */ case 23:
+ /* if (!(i$1 < t.rtype.NumOut())) { break; } */ if(!(i$1 < t.rtype.NumOut())) { $s = 24; continue; }
+ _r$4 = haveIdenticalType(t.rtype.Out(i$1), v.rtype.Out(i$1), cmpTags); /* */ $s = 27; case 27: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ /* */ if (!_r$4) { $s = 25; continue; }
+ /* */ $s = 26; continue;
+ /* if (!_r$4) { */ case 25:
+ $s = -1; return false;
+ /* } */ case 26:
+ i$1 = i$1 + (1) >> 0;
+ /* } */ $s = 23; continue; case 24:
+ $s = -1; return true;
+ /* } else if (_1 === (20)) { */ case 5:
+ t$1 = (T.kindType);
+ v$1 = (V.kindType);
+ if ((t$1.methods.$length === 0) && (v$1.methods.$length === 0)) {
+ $s = -1; return true;
+ }
+ $s = -1; return false;
+ /* } else if (_1 === (21)) { */ case 6:
+ _r$5 = haveIdenticalType(T.Key(), V.Key(), cmpTags); /* */ $s = 29; case 29: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ if (!(_r$5)) { _v$3 = false; $s = 28; continue s; }
+ _r$6 = haveIdenticalType(T.Elem(), V.Elem(), cmpTags); /* */ $s = 30; case 30: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _v$3 = _r$6; case 28:
+ $s = -1; return _v$3;
+ /* } else if ((_1 === (22)) || (_1 === (23))) { */ case 7:
+ _r$7 = haveIdenticalType(T.Elem(), V.Elem(), cmpTags); /* */ $s = 31; case 31: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $s = -1; return _r$7;
+ /* } else if (_1 === (25)) { */ case 8:
+ t$2 = (T.kindType);
+ v$2 = (V.kindType);
+ if (!((t$2.fields.$length === v$2.fields.$length))) {
+ $s = -1; return false;
+ }
+ _ref = t$2.fields;
+ _i = 0;
+ /* while (true) { */ case 32:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 33; continue; }
+ i$2 = _i;
+ tf = (x = t$2.fields, ((i$2 < 0 || i$2 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i$2]));
+ vf = (x$1 = v$2.fields, ((i$2 < 0 || i$2 >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + i$2]));
+ if (!($clone(tf.name, name).name() === $clone(vf.name, name).name())) {
+ $s = -1; return false;
+ }
+ _r$8 = haveIdenticalType(tf.typ, vf.typ, cmpTags); /* */ $s = 36; case 36: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ /* */ if (!_r$8) { $s = 34; continue; }
+ /* */ $s = 35; continue;
+ /* if (!_r$8) { */ case 34:
+ $s = -1; return false;
+ /* } */ case 35:
+ if (cmpTags && !($clone(tf.name, name).tag() === $clone(vf.name, name).tag())) {
+ $s = -1; return false;
+ }
+ if (!((tf.offset === vf.offset))) {
+ $s = -1; return false;
+ }
+ if (!$clone(tf.name, name).isExported()) {
+ tp = $clone(tf.name, name).pkgPath();
+ if (tp === "") {
+ tp = $clone(t$2.pkgPath, name).name();
+ }
+ vp = $clone(vf.name, name).pkgPath();
+ if (vp === "") {
+ vp = $clone(v$2.pkgPath, name).name();
+ }
+ if (!(tp === vp)) {
+ $s = -1; return false;
+ }
+ }
+ _i++;
+ /* } */ $s = 32; continue; case 33:
+ $s = -1; return true;
+ /* } */ case 9:
+ case 1:
+ $s = -1; return false;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: haveIdenticalUnderlyingType }; } $f.$ptr = $ptr; $f.T = T; $f.V = V; $f._1 = _1; $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._ref = _ref; $f._v = _v; $f._v$1 = _v$1; $f._v$2 = _v$2; $f._v$3 = _v$3; $f.cmpTags = cmpTags; $f.i = i; $f.i$1 = i$1; $f.i$2 = i$2; $f.kind = kind; $f.t = t; $f.t$1 = t$1; $f.t$2 = t$2; $f.tf = tf; $f.tp = tp; $f.v = v; $f.v$1 = v$1; $f.v$2 = v$2; $f.vf = vf; $f.vp = vp; $f.x = x; $f.x$1 = x$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ toType = function(t) {
+ var $ptr, t;
+ if (t === ptrType$1.nil) {
+ return $ifaceNil;
+ }
+ return t;
+ };
+ ifaceIndir = function(t) {
+ var $ptr, t;
+ return ((t.kind & 32) >>> 0) === 0;
+ };
+ flag.prototype.kind = function() {
+ var $ptr, f;
+ f = this.$val;
+ return ((((f & 31) >>> 0) >>> 0));
+ };
+ $ptrType(flag).prototype.kind = function() { return new flag(this.$get()).kind(); };
+ Value.ptr.prototype.pointer = function() {
+ var $ptr, v;
+ v = this;
+ if (!((v.typ.size === 4)) || !v.typ.pointers()) {
+ $panic(new $String("can't call pointer on a non-pointer Value"));
+ }
+ if (!((((v.flag & 128) >>> 0) === 0))) {
+ return (v.ptr).$get();
+ }
+ return v.ptr;
+ };
+ Value.prototype.pointer = function() { return this.$val.pointer(); };
+ ValueError.ptr.prototype.Error = function() {
+ var $ptr, e;
+ e = this;
+ if (e.Kind === 0) {
+ return "reflect: call of " + e.Method + " on zero Value";
+ }
+ return "reflect: call of " + e.Method + " on " + new Kind(e.Kind).String() + " Value";
+ };
+ ValueError.prototype.Error = function() { return this.$val.Error(); };
+ flag.prototype.mustBe = function(expected) {
+ var $ptr, expected, f;
+ f = this.$val;
+ if (!((new flag(f).kind() === expected))) {
+ $panic(new ValueError.ptr(methodName(), new flag(f).kind()));
+ }
+ };
+ $ptrType(flag).prototype.mustBe = function(expected) { return new flag(this.$get()).mustBe(expected); };
+ flag.prototype.mustBeExported = function() {
+ var $ptr, f;
+ f = this.$val;
+ if (f === 0) {
+ $panic(new ValueError.ptr(methodName(), 0));
+ }
+ if (!((((f & 96) >>> 0) === 0))) {
+ $panic(new $String("reflect: " + methodName() + " using value obtained using unexported field"));
+ }
+ };
+ $ptrType(flag).prototype.mustBeExported = function() { return new flag(this.$get()).mustBeExported(); };
+ flag.prototype.mustBeAssignable = function() {
+ var $ptr, f;
+ f = this.$val;
+ if (f === 0) {
+ $panic(new ValueError.ptr(methodName(), 0));
+ }
+ if (!((((f & 96) >>> 0) === 0))) {
+ $panic(new $String("reflect: " + methodName() + " using value obtained using unexported field"));
+ }
+ if (((f & 256) >>> 0) === 0) {
+ $panic(new $String("reflect: " + methodName() + " using unaddressable value"));
+ }
+ };
+ $ptrType(flag).prototype.mustBeAssignable = function() { return new flag(this.$get()).mustBeAssignable(); };
+ Value.ptr.prototype.Addr = function() {
+ var $ptr, v;
+ v = this;
+ if (((v.flag & 256) >>> 0) === 0) {
+ $panic(new $String("reflect.Value.Addr of unaddressable value"));
+ }
+ return new Value.ptr(v.typ.ptrTo(), v.ptr, ((((v.flag & 96) >>> 0)) | 22) >>> 0);
+ };
+ Value.prototype.Addr = function() { return this.$val.Addr(); };
+ Value.ptr.prototype.Bool = function() {
+ var $ptr, v;
+ v = this;
+ new flag(v.flag).mustBe(1);
+ return (v.ptr).$get();
+ };
+ Value.prototype.Bool = function() { return this.$val.Bool(); };
+ Value.ptr.prototype.Bytes = function() {
+ var $ptr, _r, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ new flag(v.flag).mustBe(23);
+ _r = v.typ.Elem().Kind(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (!((_r === 8))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!((_r === 8))) { */ case 1:
+ $panic(new $String("reflect.Value.Bytes of non-byte slice"));
+ /* } */ case 2:
+ $s = -1; return (v.ptr).$get();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.Bytes }; } $f.$ptr = $ptr; $f._r = _r; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.Bytes = function() { return this.$val.Bytes(); };
+ Value.ptr.prototype.runes = function() {
+ var $ptr, _r, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ new flag(v.flag).mustBe(23);
+ _r = v.typ.Elem().Kind(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (!((_r === 5))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!((_r === 5))) { */ case 1:
+ $panic(new $String("reflect.Value.Bytes of non-rune slice"));
+ /* } */ case 2:
+ $s = -1; return (v.ptr).$get();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.runes }; } $f.$ptr = $ptr; $f._r = _r; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.runes = function() { return this.$val.runes(); };
+ Value.ptr.prototype.CanAddr = function() {
+ var $ptr, v;
+ v = this;
+ return !((((v.flag & 256) >>> 0) === 0));
+ };
+ Value.prototype.CanAddr = function() { return this.$val.CanAddr(); };
+ Value.ptr.prototype.CanSet = function() {
+ var $ptr, v;
+ v = this;
+ return ((v.flag & 352) >>> 0) === 256;
+ };
+ Value.prototype.CanSet = function() { return this.$val.CanSet(); };
+ Value.ptr.prototype.Call = function(in$1) {
+ var $ptr, _r, in$1, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; in$1 = $f.in$1; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ new flag(v.flag).mustBe(19);
+ new flag(v.flag).mustBeExported();
+ _r = $clone(v, Value).call("Call", in$1); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.Call }; } $f.$ptr = $ptr; $f._r = _r; $f.in$1 = in$1; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.Call = function(in$1) { return this.$val.Call(in$1); };
+ Value.ptr.prototype.CallSlice = function(in$1) {
+ var $ptr, _r, in$1, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; in$1 = $f.in$1; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ new flag(v.flag).mustBe(19);
+ new flag(v.flag).mustBeExported();
+ _r = $clone(v, Value).call("CallSlice", in$1); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.CallSlice }; } $f.$ptr = $ptr; $f._r = _r; $f.in$1 = in$1; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.CallSlice = function(in$1) { return this.$val.CallSlice(in$1); };
+ Value.ptr.prototype.Complex = function() {
+ var $ptr, _1, k, v, x;
+ v = this;
+ k = new flag(v.flag).kind();
+ _1 = k;
+ if (_1 === (15)) {
+ return ((x = (v.ptr).$get(), new $Complex128(x.$real, x.$imag)));
+ } else if (_1 === (16)) {
+ return (v.ptr).$get();
+ }
+ $panic(new ValueError.ptr("reflect.Value.Complex", new flag(v.flag).kind()));
+ };
+ Value.prototype.Complex = function() { return this.$val.Complex(); };
+ Value.ptr.prototype.FieldByIndex = function(index) {
+ var $ptr, _i, _r, _r$1, _r$2, _r$3, _ref, _v, i, index, v, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _ref = $f._ref; _v = $f._v; i = $f.i; index = $f.index; v = $f.v; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ /* */ if (index.$length === 1) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (index.$length === 1) { */ case 1:
+ _r = $clone(v, Value).Field((0 >= index.$length ? ($throwRuntimeError("index out of range"), undefined) : index.$array[index.$offset + 0])); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* } */ case 2:
+ new flag(v.flag).mustBe(25);
+ _ref = index;
+ _i = 0;
+ /* while (true) { */ case 4:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 5; continue; }
+ i = _i;
+ x = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ /* */ if (i > 0) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (i > 0) { */ case 6:
+ if (!($clone(v, Value).Kind() === 22)) { _v = false; $s = 10; continue s; }
+ _r$1 = v.typ.Elem().Kind(); /* */ $s = 11; case 11: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _v = _r$1 === 25; case 10:
+ /* */ if (_v) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if (_v) { */ case 8:
+ if ($clone(v, Value).IsNil()) {
+ $panic(new $String("reflect: indirection through nil pointer to embedded struct"));
+ }
+ _r$2 = $clone(v, Value).Elem(); /* */ $s = 12; case 12: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ v = _r$2;
+ /* } */ case 9:
+ /* } */ case 7:
+ _r$3 = $clone(v, Value).Field(x); /* */ $s = 13; case 13: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ v = _r$3;
+ _i++;
+ /* } */ $s = 4; continue; case 5:
+ $s = -1; return v;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.FieldByIndex }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._ref = _ref; $f._v = _v; $f.i = i; $f.index = index; $f.v = v; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.FieldByIndex = function(index) { return this.$val.FieldByIndex(index); };
+ Value.ptr.prototype.FieldByName = function(name$1) {
+ var $ptr, _r, _r$1, _tuple, f, name$1, ok, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; f = $f.f; name$1 = $f.name$1; ok = $f.ok; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ new flag(v.flag).mustBe(25);
+ _r = v.typ.FieldByName(name$1); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ f = $clone(_tuple[0], StructField);
+ ok = _tuple[1];
+ /* */ if (ok) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (ok) { */ case 2:
+ _r$1 = $clone(v, Value).FieldByIndex(f.Index); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* } */ case 3:
+ $s = -1; return new Value.ptr(ptrType$1.nil, 0, 0);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.FieldByName }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.f = f; $f.name$1 = name$1; $f.ok = ok; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.FieldByName = function(name$1) { return this.$val.FieldByName(name$1); };
+ Value.ptr.prototype.FieldByNameFunc = function(match) {
+ var $ptr, _r, _r$1, _tuple, f, match, ok, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; f = $f.f; match = $f.match; ok = $f.ok; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ _r = v.typ.FieldByNameFunc(match); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ f = $clone(_tuple[0], StructField);
+ ok = _tuple[1];
+ /* */ if (ok) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (ok) { */ case 2:
+ _r$1 = $clone(v, Value).FieldByIndex(f.Index); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* } */ case 3:
+ $s = -1; return new Value.ptr(ptrType$1.nil, 0, 0);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.FieldByNameFunc }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.f = f; $f.match = match; $f.ok = ok; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.FieldByNameFunc = function(match) { return this.$val.FieldByNameFunc(match); };
+ Value.ptr.prototype.Float = function() {
+ var $ptr, _1, k, v;
+ v = this;
+ k = new flag(v.flag).kind();
+ _1 = k;
+ if (_1 === (13)) {
+ return ((v.ptr).$get());
+ } else if (_1 === (14)) {
+ return (v.ptr).$get();
+ }
+ $panic(new ValueError.ptr("reflect.Value.Float", new flag(v.flag).kind()));
+ };
+ Value.prototype.Float = function() { return this.$val.Float(); };
+ Value.ptr.prototype.Int = function() {
+ var $ptr, _1, k, p, v;
+ v = this;
+ k = new flag(v.flag).kind();
+ p = v.ptr;
+ _1 = k;
+ if (_1 === (2)) {
+ return (new $Int64(0, (p).$get()));
+ } else if (_1 === (3)) {
+ return (new $Int64(0, (p).$get()));
+ } else if (_1 === (4)) {
+ return (new $Int64(0, (p).$get()));
+ } else if (_1 === (5)) {
+ return (new $Int64(0, (p).$get()));
+ } else if (_1 === (6)) {
+ return (p).$get();
+ }
+ $panic(new ValueError.ptr("reflect.Value.Int", new flag(v.flag).kind()));
+ };
+ Value.prototype.Int = function() { return this.$val.Int(); };
+ Value.ptr.prototype.CanInterface = function() {
+ var $ptr, v;
+ v = this;
+ if (v.flag === 0) {
+ $panic(new ValueError.ptr("reflect.Value.CanInterface", 0));
+ }
+ return ((v.flag & 96) >>> 0) === 0;
+ };
+ Value.prototype.CanInterface = function() { return this.$val.CanInterface(); };
+ Value.ptr.prototype.Interface = function() {
+ var $ptr, _r, i, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; i = $f.i; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = $ifaceNil;
+ v = this;
+ _r = valueInterface($clone(v, Value), true); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ i = _r;
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.Interface }; } $f.$ptr = $ptr; $f._r = _r; $f.i = i; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.Interface = function() { return this.$val.Interface(); };
+ Value.ptr.prototype.IsValid = function() {
+ var $ptr, v;
+ v = this;
+ return !((v.flag === 0));
+ };
+ Value.prototype.IsValid = function() { return this.$val.IsValid(); };
+ Value.ptr.prototype.Kind = function() {
+ var $ptr, v;
+ v = this;
+ return new flag(v.flag).kind();
+ };
+ Value.prototype.Kind = function() { return this.$val.Kind(); };
+ Value.ptr.prototype.MapIndex = function(key) {
+ var $ptr, _r, c, e, fl, k, key, tt, typ, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; c = $f.c; e = $f.e; fl = $f.fl; k = $f.k; key = $f.key; tt = $f.tt; typ = $f.typ; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ new flag(v.flag).mustBe(21);
+ tt = (v.typ.kindType);
+ _r = $clone(key, Value).assignTo("reflect.Value.MapIndex", tt.key, 0); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ key = _r;
+ k = 0;
+ if (!((((key.flag & 128) >>> 0) === 0))) {
+ k = key.ptr;
+ } else {
+ k = ((key.$ptr_ptr || (key.$ptr_ptr = new ptrType$16(function() { return this.$target.ptr; }, function($v) { this.$target.ptr = $v; }, key))));
+ }
+ e = mapaccess(v.typ, $clone(v, Value).pointer(), k);
+ if (e === 0) {
+ $s = -1; return new Value.ptr(ptrType$1.nil, 0, 0);
+ }
+ typ = tt.elem;
+ fl = ((((v.flag | key.flag) >>> 0)) & 96) >>> 0;
+ fl = (fl | (((typ.Kind() >>> 0)))) >>> 0;
+ if (ifaceIndir(typ)) {
+ c = unsafe_New(typ);
+ typedmemmove(typ, c, e);
+ $s = -1; return new Value.ptr(typ, c, (fl | 128) >>> 0);
+ } else {
+ $s = -1; return new Value.ptr(typ, (e).$get(), fl);
+ }
+ $s = -1; return new Value.ptr(ptrType$1.nil, 0, 0);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.MapIndex }; } $f.$ptr = $ptr; $f._r = _r; $f.c = c; $f.e = e; $f.fl = fl; $f.k = k; $f.key = key; $f.tt = tt; $f.typ = typ; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.MapIndex = function(key) { return this.$val.MapIndex(key); };
+ Value.ptr.prototype.MapKeys = function() {
+ var $ptr, _r, a, c, fl, i, it, key, keyType, m, mlen, tt, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; c = $f.c; fl = $f.fl; i = $f.i; it = $f.it; key = $f.key; keyType = $f.keyType; m = $f.m; mlen = $f.mlen; tt = $f.tt; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ new flag(v.flag).mustBe(21);
+ tt = (v.typ.kindType);
+ keyType = tt.key;
+ fl = (((v.flag & 96) >>> 0) | ((keyType.Kind() >>> 0))) >>> 0;
+ m = $clone(v, Value).pointer();
+ mlen = 0;
+ if (!(m === 0)) {
+ mlen = maplen(m);
+ }
+ it = mapiterinit(v.typ, m);
+ a = $makeSlice(sliceType$10, mlen);
+ i = 0;
+ i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(i < a.$length)) { break; } */ if(!(i < a.$length)) { $s = 2; continue; }
+ _r = mapiterkey(it); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ key = _r;
+ if (key === 0) {
+ /* break; */ $s = 2; continue;
+ }
+ if (ifaceIndir(keyType)) {
+ c = unsafe_New(keyType);
+ typedmemmove(keyType, c, key);
+ ((i < 0 || i >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + i] = new Value.ptr(keyType, c, (fl | 128) >>> 0));
+ } else {
+ ((i < 0 || i >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + i] = new Value.ptr(keyType, (key).$get(), fl));
+ }
+ mapiternext(it);
+ i = i + (1) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return $subslice(a, 0, i);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.MapKeys }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.c = c; $f.fl = fl; $f.i = i; $f.it = it; $f.key = key; $f.keyType = keyType; $f.m = m; $f.mlen = mlen; $f.tt = tt; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.MapKeys = function() { return this.$val.MapKeys(); };
+ Value.ptr.prototype.Method = function(i) {
+ var $ptr, _r, _v, fl, i, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _v = $f._v; fl = $f.fl; i = $f.i; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ if (v.typ === ptrType$1.nil) {
+ $panic(new ValueError.ptr("reflect.Value.Method", 0));
+ }
+ if (!((((v.flag & 512) >>> 0) === 0))) { _v = true; $s = 3; continue s; }
+ _r = v.typ.NumMethod(); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _v = ((i >>> 0)) >= ((_r >>> 0)); case 3:
+ /* */ if (_v) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (_v) { */ case 1:
+ $panic(new $String("reflect: Method index out of range"));
+ /* } */ case 2:
+ if ((v.typ.Kind() === 20) && $clone(v, Value).IsNil()) {
+ $panic(new $String("reflect: Method on nil interface value"));
+ }
+ fl = (v.flag & 160) >>> 0;
+ fl = (fl | (19)) >>> 0;
+ fl = (fl | ((((((i >>> 0)) << 10 >>> 0) | 512) >>> 0))) >>> 0;
+ $s = -1; return new Value.ptr(v.typ, v.ptr, fl);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.Method }; } $f.$ptr = $ptr; $f._r = _r; $f._v = _v; $f.fl = fl; $f.i = i; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.Method = function(i) { return this.$val.Method(i); };
+ Value.ptr.prototype.NumMethod = function() {
+ var $ptr, _r, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ if (v.typ === ptrType$1.nil) {
+ $panic(new ValueError.ptr("reflect.Value.NumMethod", 0));
+ }
+ if (!((((v.flag & 512) >>> 0) === 0))) {
+ $s = -1; return 0;
+ }
+ _r = v.typ.NumMethod(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.NumMethod }; } $f.$ptr = $ptr; $f._r = _r; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.NumMethod = function() { return this.$val.NumMethod(); };
+ Value.ptr.prototype.MethodByName = function(name$1) {
+ var $ptr, _r, _r$1, _tuple, m, name$1, ok, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; m = $f.m; name$1 = $f.name$1; ok = $f.ok; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ if (v.typ === ptrType$1.nil) {
+ $panic(new ValueError.ptr("reflect.Value.MethodByName", 0));
+ }
+ if (!((((v.flag & 512) >>> 0) === 0))) {
+ $s = -1; return new Value.ptr(ptrType$1.nil, 0, 0);
+ }
+ _r = v.typ.MethodByName(name$1); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ m = $clone(_tuple[0], Method);
+ ok = _tuple[1];
+ if (!ok) {
+ $s = -1; return new Value.ptr(ptrType$1.nil, 0, 0);
+ }
+ _r$1 = $clone(v, Value).Method(m.Index); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.MethodByName }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.m = m; $f.name$1 = name$1; $f.ok = ok; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.MethodByName = function(name$1) { return this.$val.MethodByName(name$1); };
+ Value.ptr.prototype.NumField = function() {
+ var $ptr, tt, v;
+ v = this;
+ new flag(v.flag).mustBe(25);
+ tt = (v.typ.kindType);
+ return tt.fields.$length;
+ };
+ Value.prototype.NumField = function() { return this.$val.NumField(); };
+ Value.ptr.prototype.OverflowComplex = function(x) {
+ var $ptr, _1, k, v, x;
+ v = this;
+ k = new flag(v.flag).kind();
+ _1 = k;
+ if (_1 === (15)) {
+ return overflowFloat32(x.$real) || overflowFloat32(x.$imag);
+ } else if (_1 === (16)) {
+ return false;
+ }
+ $panic(new ValueError.ptr("reflect.Value.OverflowComplex", new flag(v.flag).kind()));
+ };
+ Value.prototype.OverflowComplex = function(x) { return this.$val.OverflowComplex(x); };
+ Value.ptr.prototype.OverflowFloat = function(x) {
+ var $ptr, _1, k, v, x;
+ v = this;
+ k = new flag(v.flag).kind();
+ _1 = k;
+ if (_1 === (13)) {
+ return overflowFloat32(x);
+ } else if (_1 === (14)) {
+ return false;
+ }
+ $panic(new ValueError.ptr("reflect.Value.OverflowFloat", new flag(v.flag).kind()));
+ };
+ Value.prototype.OverflowFloat = function(x) { return this.$val.OverflowFloat(x); };
+ overflowFloat32 = function(x) {
+ var $ptr, x;
+ if (x < 0) {
+ x = -x;
+ }
+ return 3.4028234663852886e+38 < x && x <= 1.7976931348623157e+308;
+ };
+ Value.ptr.prototype.OverflowInt = function(x) {
+ var $ptr, _1, bitSize, k, trunc, v, x;
+ v = this;
+ k = new flag(v.flag).kind();
+ _1 = k;
+ if ((_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6))) {
+ bitSize = $imul(v.typ.size, 8) >>> 0;
+ trunc = $shiftRightInt64(($shiftLeft64(x, ((64 - bitSize >>> 0)))), ((64 - bitSize >>> 0)));
+ return !((x.$high === trunc.$high && x.$low === trunc.$low));
+ }
+ $panic(new ValueError.ptr("reflect.Value.OverflowInt", new flag(v.flag).kind()));
+ };
+ Value.prototype.OverflowInt = function(x) { return this.$val.OverflowInt(x); };
+ Value.ptr.prototype.OverflowUint = function(x) {
+ var $ptr, _1, bitSize, k, trunc, v, x;
+ v = this;
+ k = new flag(v.flag).kind();
+ _1 = k;
+ if ((_1 === (7)) || (_1 === (12)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11))) {
+ bitSize = $imul(v.typ.size, 8) >>> 0;
+ trunc = $shiftRightUint64(($shiftLeft64(x, ((64 - bitSize >>> 0)))), ((64 - bitSize >>> 0)));
+ return !((x.$high === trunc.$high && x.$low === trunc.$low));
+ }
+ $panic(new ValueError.ptr("reflect.Value.OverflowUint", new flag(v.flag).kind()));
+ };
+ Value.prototype.OverflowUint = function(x) { return this.$val.OverflowUint(x); };
+ Value.ptr.prototype.Recv = function() {
+ var $ptr, _r, _tuple, ok, v, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; ok = $f.ok; v = $f.v; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ x = new Value.ptr(ptrType$1.nil, 0, 0);
+ ok = false;
+ v = this;
+ new flag(v.flag).mustBe(18);
+ new flag(v.flag).mustBeExported();
+ _r = $clone(v, Value).recv(false); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ x = _tuple[0];
+ ok = _tuple[1];
+ $s = -1; return [x, ok];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.Recv }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.ok = ok; $f.v = v; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.Recv = function() { return this.$val.Recv(); };
+ Value.ptr.prototype.recv = function(nb) {
+ var $ptr, _r, _tuple, nb, ok, p, selected, t, tt, v, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; nb = $f.nb; ok = $f.ok; p = $f.p; selected = $f.selected; t = $f.t; tt = $f.tt; v = $f.v; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ val = new Value.ptr(ptrType$1.nil, 0, 0);
+ ok = false;
+ v = this;
+ tt = (v.typ.kindType);
+ if ((((tt.dir >> 0)) & 1) === 0) {
+ $panic(new $String("reflect: recv on send-only channel"));
+ }
+ t = tt.elem;
+ val = new Value.ptr(t, 0, ((t.Kind() >>> 0)));
+ p = 0;
+ if (ifaceIndir(t)) {
+ p = unsafe_New(t);
+ val.ptr = p;
+ val.flag = (val.flag | (128)) >>> 0;
+ } else {
+ p = ((val.$ptr_ptr || (val.$ptr_ptr = new ptrType$16(function() { return this.$target.ptr; }, function($v) { this.$target.ptr = $v; }, val))));
+ }
+ _r = chanrecv(v.typ, $clone(v, Value).pointer(), nb, p); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ selected = _tuple[0];
+ ok = _tuple[1];
+ if (!selected) {
+ val = new Value.ptr(ptrType$1.nil, 0, 0);
+ }
+ $s = -1; return [val, ok];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.recv }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.nb = nb; $f.ok = ok; $f.p = p; $f.selected = selected; $f.t = t; $f.tt = tt; $f.v = v; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.recv = function(nb) { return this.$val.recv(nb); };
+ Value.ptr.prototype.Send = function(x) {
+ var $ptr, _r, v, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; v = $f.v; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ new flag(v.flag).mustBe(18);
+ new flag(v.flag).mustBeExported();
+ _r = $clone(v, Value).send($clone(x, Value), false); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.Send }; } $f.$ptr = $ptr; $f._r = _r; $f.v = v; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.Send = function(x) { return this.$val.Send(x); };
+ Value.ptr.prototype.send = function(x, nb) {
+ var $ptr, _r, _r$1, nb, p, selected, tt, v, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; nb = $f.nb; p = $f.p; selected = $f.selected; tt = $f.tt; v = $f.v; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ selected = false;
+ v = this;
+ tt = (v.typ.kindType);
+ if ((((tt.dir >> 0)) & 2) === 0) {
+ $panic(new $String("reflect: send on recv-only channel"));
+ }
+ new flag(x.flag).mustBeExported();
+ _r = $clone(x, Value).assignTo("reflect.Value.Send", tt.elem, 0); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ x = _r;
+ p = 0;
+ if (!((((x.flag & 128) >>> 0) === 0))) {
+ p = x.ptr;
+ } else {
+ p = ((x.$ptr_ptr || (x.$ptr_ptr = new ptrType$16(function() { return this.$target.ptr; }, function($v) { this.$target.ptr = $v; }, x))));
+ }
+ _r$1 = chansend(v.typ, $clone(v, Value).pointer(), p, nb); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ selected = _r$1;
+ $s = -1; return selected;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.send }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.nb = nb; $f.p = p; $f.selected = selected; $f.tt = tt; $f.v = v; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.send = function(x, nb) { return this.$val.send(x, nb); };
+ Value.ptr.prototype.SetBool = function(x) {
+ var $ptr, v, x;
+ v = this;
+ new flag(v.flag).mustBeAssignable();
+ new flag(v.flag).mustBe(1);
+ (v.ptr).$set(x);
+ };
+ Value.prototype.SetBool = function(x) { return this.$val.SetBool(x); };
+ Value.ptr.prototype.setRunes = function(x) {
+ var $ptr, _r, v, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; v = $f.v; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ new flag(v.flag).mustBeAssignable();
+ new flag(v.flag).mustBe(23);
+ _r = v.typ.Elem().Kind(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (!((_r === 5))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!((_r === 5))) { */ case 1:
+ $panic(new $String("reflect.Value.setRunes of non-rune slice"));
+ /* } */ case 2:
+ (v.ptr).$set(x);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.setRunes }; } $f.$ptr = $ptr; $f._r = _r; $f.v = v; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.setRunes = function(x) { return this.$val.setRunes(x); };
+ Value.ptr.prototype.SetComplex = function(x) {
+ var $ptr, _1, k, v, x;
+ v = this;
+ new flag(v.flag).mustBeAssignable();
+ k = new flag(v.flag).kind();
+ _1 = k;
+ if (_1 === (15)) {
+ (v.ptr).$set((new $Complex64(x.$real, x.$imag)));
+ } else if (_1 === (16)) {
+ (v.ptr).$set(x);
+ } else {
+ $panic(new ValueError.ptr("reflect.Value.SetComplex", new flag(v.flag).kind()));
+ }
+ };
+ Value.prototype.SetComplex = function(x) { return this.$val.SetComplex(x); };
+ Value.ptr.prototype.SetFloat = function(x) {
+ var $ptr, _1, k, v, x;
+ v = this;
+ new flag(v.flag).mustBeAssignable();
+ k = new flag(v.flag).kind();
+ _1 = k;
+ if (_1 === (13)) {
+ (v.ptr).$set(($fround(x)));
+ } else if (_1 === (14)) {
+ (v.ptr).$set(x);
+ } else {
+ $panic(new ValueError.ptr("reflect.Value.SetFloat", new flag(v.flag).kind()));
+ }
+ };
+ Value.prototype.SetFloat = function(x) { return this.$val.SetFloat(x); };
+ Value.ptr.prototype.SetInt = function(x) {
+ var $ptr, _1, k, v, x;
+ v = this;
+ new flag(v.flag).mustBeAssignable();
+ k = new flag(v.flag).kind();
+ _1 = k;
+ if (_1 === (2)) {
+ (v.ptr).$set((((x.$low + ((x.$high >> 31) * 4294967296)) >> 0)));
+ } else if (_1 === (3)) {
+ (v.ptr).$set((((x.$low + ((x.$high >> 31) * 4294967296)) << 24 >> 24)));
+ } else if (_1 === (4)) {
+ (v.ptr).$set((((x.$low + ((x.$high >> 31) * 4294967296)) << 16 >> 16)));
+ } else if (_1 === (5)) {
+ (v.ptr).$set((((x.$low + ((x.$high >> 31) * 4294967296)) >> 0)));
+ } else if (_1 === (6)) {
+ (v.ptr).$set(x);
+ } else {
+ $panic(new ValueError.ptr("reflect.Value.SetInt", new flag(v.flag).kind()));
+ }
+ };
+ Value.prototype.SetInt = function(x) { return this.$val.SetInt(x); };
+ Value.ptr.prototype.SetMapIndex = function(key, val) {
+ var $ptr, _r, _r$1, e, k, key, tt, v, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; e = $f.e; k = $f.k; key = $f.key; tt = $f.tt; v = $f.v; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ new flag(v.flag).mustBe(21);
+ new flag(v.flag).mustBeExported();
+ new flag(key.flag).mustBeExported();
+ tt = (v.typ.kindType);
+ _r = $clone(key, Value).assignTo("reflect.Value.SetMapIndex", tt.key, 0); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ key = _r;
+ k = 0;
+ if (!((((key.flag & 128) >>> 0) === 0))) {
+ k = key.ptr;
+ } else {
+ k = ((key.$ptr_ptr || (key.$ptr_ptr = new ptrType$16(function() { return this.$target.ptr; }, function($v) { this.$target.ptr = $v; }, key))));
+ }
+ if (val.typ === ptrType$1.nil) {
+ mapdelete(v.typ, $clone(v, Value).pointer(), k);
+ $s = -1; return;
+ }
+ new flag(val.flag).mustBeExported();
+ _r$1 = $clone(val, Value).assignTo("reflect.Value.SetMapIndex", tt.elem, 0); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ val = _r$1;
+ e = 0;
+ if (!((((val.flag & 128) >>> 0) === 0))) {
+ e = val.ptr;
+ } else {
+ e = ((val.$ptr_ptr || (val.$ptr_ptr = new ptrType$16(function() { return this.$target.ptr; }, function($v) { this.$target.ptr = $v; }, val))));
+ }
+ $r = mapassign(v.typ, $clone(v, Value).pointer(), k, e); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.SetMapIndex }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.e = e; $f.k = k; $f.key = key; $f.tt = tt; $f.v = v; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.SetMapIndex = function(key, val) { return this.$val.SetMapIndex(key, val); };
+ Value.ptr.prototype.SetUint = function(x) {
+ var $ptr, _1, k, v, x;
+ v = this;
+ new flag(v.flag).mustBeAssignable();
+ k = new flag(v.flag).kind();
+ _1 = k;
+ if (_1 === (7)) {
+ (v.ptr).$set(((x.$low >>> 0)));
+ } else if (_1 === (8)) {
+ (v.ptr).$set(((x.$low << 24 >>> 24)));
+ } else if (_1 === (9)) {
+ (v.ptr).$set(((x.$low << 16 >>> 16)));
+ } else if (_1 === (10)) {
+ (v.ptr).$set(((x.$low >>> 0)));
+ } else if (_1 === (11)) {
+ (v.ptr).$set(x);
+ } else if (_1 === (12)) {
+ (v.ptr).$set(((x.$low >>> 0)));
+ } else {
+ $panic(new ValueError.ptr("reflect.Value.SetUint", new flag(v.flag).kind()));
+ }
+ };
+ Value.prototype.SetUint = function(x) { return this.$val.SetUint(x); };
+ Value.ptr.prototype.SetPointer = function(x) {
+ var $ptr, v, x;
+ v = this;
+ new flag(v.flag).mustBeAssignable();
+ new flag(v.flag).mustBe(26);
+ (v.ptr).$set(x);
+ };
+ Value.prototype.SetPointer = function(x) { return this.$val.SetPointer(x); };
+ Value.ptr.prototype.SetString = function(x) {
+ var $ptr, v, x;
+ v = this;
+ new flag(v.flag).mustBeAssignable();
+ new flag(v.flag).mustBe(24);
+ (v.ptr).$set(x);
+ };
+ Value.prototype.SetString = function(x) { return this.$val.SetString(x); };
+ Value.ptr.prototype.String = function() {
+ var $ptr, _1, _r, k, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; k = $f.k; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ k = new flag(v.flag).kind();
+ _1 = k;
+ if (_1 === (0)) {
+ $s = -1; return "<invalid Value>";
+ } else if (_1 === (24)) {
+ $s = -1; return (v.ptr).$get();
+ }
+ _r = $clone(v, Value).Type().String(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return "<" + _r + " Value>";
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.String }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f.k = k; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.String = function() { return this.$val.String(); };
+ Value.ptr.prototype.TryRecv = function() {
+ var $ptr, _r, _tuple, ok, v, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; ok = $f.ok; v = $f.v; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ x = new Value.ptr(ptrType$1.nil, 0, 0);
+ ok = false;
+ v = this;
+ new flag(v.flag).mustBe(18);
+ new flag(v.flag).mustBeExported();
+ _r = $clone(v, Value).recv(true); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ x = _tuple[0];
+ ok = _tuple[1];
+ $s = -1; return [x, ok];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.TryRecv }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.ok = ok; $f.v = v; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.TryRecv = function() { return this.$val.TryRecv(); };
+ Value.ptr.prototype.TrySend = function(x) {
+ var $ptr, _r, v, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; v = $f.v; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ new flag(v.flag).mustBe(18);
+ new flag(v.flag).mustBeExported();
+ _r = $clone(v, Value).send($clone(x, Value), true); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.TrySend }; } $f.$ptr = $ptr; $f._r = _r; $f.v = v; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.TrySend = function(x) { return this.$val.TrySend(x); };
+ Value.ptr.prototype.Type = function() {
+ var $ptr, f, i, m, m$1, tt, ut, v, x, x$1;
+ v = this;
+ f = v.flag;
+ if (f === 0) {
+ $panic(new ValueError.ptr("reflect.Value.Type", 0));
+ }
+ if (((f & 512) >>> 0) === 0) {
+ return v.typ;
+ }
+ i = ((v.flag >> 0)) >> 10 >> 0;
+ if (v.typ.Kind() === 20) {
+ tt = (v.typ.kindType);
+ if (((i >>> 0)) >= ((tt.methods.$length >>> 0))) {
+ $panic(new $String("reflect: internal error: invalid method index"));
+ }
+ m = (x = tt.methods, ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]));
+ return v.typ.typeOff(m.typ);
+ }
+ ut = v.typ.uncommon();
+ if (ut === ptrType$6.nil || ((i >>> 0)) >= ((ut.mcount >>> 0))) {
+ $panic(new $String("reflect: internal error: invalid method index"));
+ }
+ m$1 = $clone((x$1 = ut.methods(), ((i < 0 || i >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + i])), method);
+ return v.typ.typeOff(m$1.mtyp);
+ };
+ Value.prototype.Type = function() { return this.$val.Type(); };
+ Value.ptr.prototype.Uint = function() {
+ var $ptr, _1, k, p, v, x;
+ v = this;
+ k = new flag(v.flag).kind();
+ p = v.ptr;
+ _1 = k;
+ if (_1 === (7)) {
+ return (new $Uint64(0, (p).$get()));
+ } else if (_1 === (8)) {
+ return (new $Uint64(0, (p).$get()));
+ } else if (_1 === (9)) {
+ return (new $Uint64(0, (p).$get()));
+ } else if (_1 === (10)) {
+ return (new $Uint64(0, (p).$get()));
+ } else if (_1 === (11)) {
+ return (p).$get();
+ } else if (_1 === (12)) {
+ return ((x = (p).$get(), new $Uint64(0, x.constructor === Number ? x : 1)));
+ }
+ $panic(new ValueError.ptr("reflect.Value.Uint", new flag(v.flag).kind()));
+ };
+ Value.prototype.Uint = function() { return this.$val.Uint(); };
+ Value.ptr.prototype.UnsafeAddr = function() {
+ var $ptr, v;
+ v = this;
+ if (v.typ === ptrType$1.nil) {
+ $panic(new ValueError.ptr("reflect.Value.UnsafeAddr", 0));
+ }
+ if (((v.flag & 256) >>> 0) === 0) {
+ $panic(new $String("reflect.Value.UnsafeAddr of unaddressable value"));
+ }
+ return (v.ptr);
+ };
+ Value.prototype.UnsafeAddr = function() { return this.$val.UnsafeAddr(); };
+ typesMustMatch = function(what, t1, t2) {
+ var $ptr, _r, _r$1, t1, t2, what, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; t1 = $f.t1; t2 = $f.t2; what = $f.what; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ if (!($interfaceIsEqual(t1, t2))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!($interfaceIsEqual(t1, t2))) { */ case 1:
+ _r = t1.String(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = t2.String(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $panic(new $String(what + ": " + _r + " != " + _r$1));
+ /* } */ case 2:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: typesMustMatch }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.t1 = t1; $f.t2 = t2; $f.what = what; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ grow = function(s, extra) {
+ var $ptr, _q, _r, _r$1, _r$2, extra, i0, i1, m, s, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; extra = $f.extra; i0 = $f.i0; i1 = $f.i1; m = $f.m; s = $f.s; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i0 = $clone(s, Value).Len();
+ i1 = i0 + extra >> 0;
+ if (i1 < i0) {
+ $panic(new $String("reflect.Append: slice overflow"));
+ }
+ m = $clone(s, Value).Cap();
+ /* */ if (i1 <= m) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (i1 <= m) { */ case 1:
+ _r = $clone(s, Value).Slice(0, i1); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return [_r, i0, i1];
+ /* } */ case 2:
+ if (m === 0) {
+ m = extra;
+ } else {
+ while (true) {
+ if (!(m < i1)) { break; }
+ if (i0 < 1024) {
+ m = m + (m) >> 0;
+ } else {
+ m = m + ((_q = m / 4, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"))) >> 0;
+ }
+ }
+ }
+ _r$1 = MakeSlice($clone(s, Value).Type(), i1, m); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ t = _r$1;
+ _r$2 = Copy($clone(t, Value), $clone(s, Value)); /* */ $s = 5; case 5: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ $s = -1; return [t, i0, i1];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: grow }; } $f.$ptr = $ptr; $f._q = _q; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.extra = extra; $f.i0 = i0; $f.i1 = i1; $f.m = m; $f.s = s; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Append = function(s, x) {
+ var $ptr, _r, _r$1, _tmp, _tmp$1, _tmp$2, _tmp$3, _tuple, i, i0, i1, j, s, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tuple = $f._tuple; i = $f.i; i0 = $f.i0; i1 = $f.i1; j = $f.j; s = $f.s; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ new flag(s.flag).mustBe(23);
+ _r = grow($clone(s, Value), x.$length); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ s = _tuple[0];
+ i0 = _tuple[1];
+ i1 = _tuple[2];
+ _tmp = i0;
+ _tmp$1 = 0;
+ i = _tmp;
+ j = _tmp$1;
+ /* while (true) { */ case 2:
+ /* if (!(i < i1)) { break; } */ if(!(i < i1)) { $s = 3; continue; }
+ _r$1 = $clone(s, Value).Index(i); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $r = $clone(_r$1, Value).Set($clone(((j < 0 || j >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + j]), Value)); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _tmp$2 = i + 1 >> 0;
+ _tmp$3 = j + 1 >> 0;
+ i = _tmp$2;
+ j = _tmp$3;
+ /* } */ $s = 2; continue; case 3:
+ $s = -1; return s;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Append }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tuple = _tuple; $f.i = i; $f.i0 = i0; $f.i1 = i1; $f.j = j; $f.s = s; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Append = Append;
+ MakeMap = function(typ) {
+ var $ptr, _r, _r$1, m, typ, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; m = $f.m; typ = $f.typ; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = typ.Kind(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (!((_r === 21))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!((_r === 21))) { */ case 1:
+ $panic(new $String("reflect.MakeMap of non-map type"));
+ /* } */ case 2:
+ m = makemap($assertType(typ, ptrType$1));
+ _r$1 = typ.common(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return new Value.ptr(_r$1, m, 21);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: MakeMap }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.m = m; $f.typ = typ; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.MakeMap = MakeMap;
+ Indirect = function(v) {
+ var $ptr, _r, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ if (!(($clone(v, Value).Kind() === 22))) {
+ $s = -1; return v;
+ }
+ _r = $clone(v, Value).Elem(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Indirect }; } $f.$ptr = $ptr; $f._r = _r; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Indirect = Indirect;
+ New = function(typ) {
+ var $ptr, _r, _r$1, fl, ptr, typ, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; fl = $f.fl; ptr = $f.ptr; typ = $f.typ; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ if ($interfaceIsEqual(typ, $ifaceNil)) {
+ $panic(new $String("reflect: New(nil)"));
+ }
+ ptr = unsafe_New($assertType(typ, ptrType$1));
+ fl = 22;
+ _r = typ.common(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = _r.ptrTo(); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return new Value.ptr(_r$1, ptr, fl);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: New }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.fl = fl; $f.ptr = ptr; $f.typ = typ; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.New = New;
+ Value.ptr.prototype.assignTo = function(context, dst, target) {
+ var $ptr, _r, _r$1, _r$2, _r$3, context, dst, fl, target, v, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; context = $f.context; dst = $f.dst; fl = $f.fl; target = $f.target; v = $f.v; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ /* */ if (!((((v.flag & 512) >>> 0) === 0))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!((((v.flag & 512) >>> 0) === 0))) { */ case 1:
+ _r = makeMethodValue(context, $clone(v, Value)); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ v = _r;
+ /* } */ case 2:
+ _r$1 = directlyAssignable(dst, v.typ); /* */ $s = 8; case 8: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ /* */ if (_r$1) { $s = 5; continue; }
+ /* */ if (implements$1(dst, v.typ)) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (_r$1) { */ case 5:
+ v.typ = dst;
+ fl = (v.flag & 480) >>> 0;
+ fl = (fl | (((dst.Kind() >>> 0)))) >>> 0;
+ $s = -1; return new Value.ptr(dst, v.ptr, fl);
+ /* } else if (implements$1(dst, v.typ)) { */ case 6:
+ if (target === 0) {
+ target = unsafe_New(dst);
+ }
+ _r$2 = valueInterface($clone(v, Value), false); /* */ $s = 9; case 9: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ x = _r$2;
+ _r$3 = dst.NumMethod(); /* */ $s = 13; case 13: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ /* */ if (_r$3 === 0) { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if (_r$3 === 0) { */ case 10:
+ (target).$set(x);
+ $s = 12; continue;
+ /* } else { */ case 11:
+ ifaceE2I(dst, x, target);
+ /* } */ case 12:
+ $s = -1; return new Value.ptr(dst, target, 148);
+ /* } */ case 7:
+ case 4:
+ $panic(new $String(context + ": value of type " + v.typ.String() + " is not assignable to type " + dst.String()));
+ $s = -1; return new Value.ptr(ptrType$1.nil, 0, 0);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.assignTo }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f.context = context; $f.dst = dst; $f.fl = fl; $f.target = target; $f.v = v; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.assignTo = function(context, dst, target) { return this.$val.assignTo(context, dst, target); };
+ Value.ptr.prototype.Convert = function(t) {
+ var $ptr, _r, _r$1, _r$2, _r$3, _r$4, op, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; op = $f.op; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ v = this;
+ /* */ if (!((((v.flag & 512) >>> 0) === 0))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!((((v.flag & 512) >>> 0) === 0))) { */ case 1:
+ _r = makeMethodValue("Convert", $clone(v, Value)); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ v = _r;
+ /* } */ case 2:
+ _r$1 = t.common(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = convertOp(_r$1, v.typ); /* */ $s = 5; case 5: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ op = _r$2;
+ /* */ if (op === $throwNilPointerError) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (op === $throwNilPointerError) { */ case 6:
+ _r$3 = t.String(); /* */ $s = 8; case 8: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $panic(new $String("reflect.Value.Convert: value of type " + v.typ.String() + " cannot be converted to type " + _r$3));
+ /* } */ case 7:
+ _r$4 = op($clone(v, Value), t); /* */ $s = 9; case 9: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ $s = -1; return _r$4;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Value.ptr.prototype.Convert }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f.op = op; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Value.prototype.Convert = function(t) { return this.$val.Convert(t); };
+ convertOp = function(dst, src) {
+ var $ptr, _1, _2, _3, _4, _5, _6, _7, _arg, _arg$1, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _v, _v$1, _v$2, dst, src, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _2 = $f._2; _3 = $f._3; _4 = $f._4; _5 = $f._5; _6 = $f._6; _7 = $f._7; _arg = $f._arg; _arg$1 = $f._arg$1; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _v = $f._v; _v$1 = $f._v$1; _v$2 = $f._v$2; dst = $f.dst; src = $f.src; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _1 = src.Kind();
+ /* */ if ((_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6))) { $s = 2; continue; }
+ /* */ if ((_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12))) { $s = 3; continue; }
+ /* */ if ((_1 === (13)) || (_1 === (14))) { $s = 4; continue; }
+ /* */ if ((_1 === (15)) || (_1 === (16))) { $s = 5; continue; }
+ /* */ if (_1 === (24)) { $s = 6; continue; }
+ /* */ if (_1 === (23)) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if ((_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6))) { */ case 2:
+ _2 = dst.Kind();
+ if ((_2 === (2)) || (_2 === (3)) || (_2 === (4)) || (_2 === (5)) || (_2 === (6)) || (_2 === (7)) || (_2 === (8)) || (_2 === (9)) || (_2 === (10)) || (_2 === (11)) || (_2 === (12))) {
+ $s = -1; return cvtInt;
+ } else if ((_2 === (13)) || (_2 === (14))) {
+ $s = -1; return cvtIntFloat;
+ } else if (_2 === (24)) {
+ $s = -1; return cvtIntString;
+ }
+ $s = 8; continue;
+ /* } else if ((_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12))) { */ case 3:
+ _3 = dst.Kind();
+ if ((_3 === (2)) || (_3 === (3)) || (_3 === (4)) || (_3 === (5)) || (_3 === (6)) || (_3 === (7)) || (_3 === (8)) || (_3 === (9)) || (_3 === (10)) || (_3 === (11)) || (_3 === (12))) {
+ $s = -1; return cvtUint;
+ } else if ((_3 === (13)) || (_3 === (14))) {
+ $s = -1; return cvtUintFloat;
+ } else if (_3 === (24)) {
+ $s = -1; return cvtUintString;
+ }
+ $s = 8; continue;
+ /* } else if ((_1 === (13)) || (_1 === (14))) { */ case 4:
+ _4 = dst.Kind();
+ if ((_4 === (2)) || (_4 === (3)) || (_4 === (4)) || (_4 === (5)) || (_4 === (6))) {
+ $s = -1; return cvtFloatInt;
+ } else if ((_4 === (7)) || (_4 === (8)) || (_4 === (9)) || (_4 === (10)) || (_4 === (11)) || (_4 === (12))) {
+ $s = -1; return cvtFloatUint;
+ } else if ((_4 === (13)) || (_4 === (14))) {
+ $s = -1; return cvtFloat;
+ }
+ $s = 8; continue;
+ /* } else if ((_1 === (15)) || (_1 === (16))) { */ case 5:
+ _5 = dst.Kind();
+ if ((_5 === (15)) || (_5 === (16))) {
+ $s = -1; return cvtComplex;
+ }
+ $s = 8; continue;
+ /* } else if (_1 === (24)) { */ case 6:
+ if (!(dst.Kind() === 23)) { _v = false; $s = 11; continue s; }
+ _r = dst.Elem().PkgPath(); /* */ $s = 12; case 12: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _v = _r === ""; case 11:
+ /* */ if (_v) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (_v) { */ case 9:
+ _r$1 = dst.Elem().Kind(); /* */ $s = 14; case 14: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _6 = _r$1;
+ if (_6 === (8)) {
+ $s = -1; return cvtStringBytes;
+ } else if (_6 === (5)) {
+ $s = -1; return cvtStringRunes;
+ }
+ case 13:
+ /* } */ case 10:
+ $s = 8; continue;
+ /* } else if (_1 === (23)) { */ case 7:
+ if (!(dst.Kind() === 24)) { _v$1 = false; $s = 17; continue s; }
+ _r$2 = src.Elem().PkgPath(); /* */ $s = 18; case 18: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _v$1 = _r$2 === ""; case 17:
+ /* */ if (_v$1) { $s = 15; continue; }
+ /* */ $s = 16; continue;
+ /* if (_v$1) { */ case 15:
+ _r$3 = src.Elem().Kind(); /* */ $s = 20; case 20: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _7 = _r$3;
+ if (_7 === (8)) {
+ $s = -1; return cvtBytesString;
+ } else if (_7 === (5)) {
+ $s = -1; return cvtRunesString;
+ }
+ case 19:
+ /* } */ case 16:
+ /* } */ case 8:
+ case 1:
+ _r$4 = haveIdenticalUnderlyingType(dst, src, false); /* */ $s = 23; case 23: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ /* */ if (_r$4) { $s = 21; continue; }
+ /* */ $s = 22; continue;
+ /* if (_r$4) { */ case 21:
+ $s = -1; return cvtDirect;
+ /* } */ case 22:
+ if (!((dst.Kind() === 22) && dst.Name() === "" && (src.Kind() === 22) && src.Name() === "")) { _v$2 = false; $s = 26; continue s; }
+ _r$5 = dst.Elem().common(); /* */ $s = 27; case 27: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _arg = _r$5;
+ _r$6 = src.Elem().common(); /* */ $s = 28; case 28: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _arg$1 = _r$6;
+ _r$7 = haveIdenticalUnderlyingType(_arg, _arg$1, false); /* */ $s = 29; case 29: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _v$2 = _r$7; case 26:
+ /* */ if (_v$2) { $s = 24; continue; }
+ /* */ $s = 25; continue;
+ /* if (_v$2) { */ case 24:
+ $s = -1; return cvtDirect;
+ /* } */ case 25:
+ if (implements$1(dst, src)) {
+ if (src.Kind() === 20) {
+ $s = -1; return cvtI2I;
+ }
+ $s = -1; return cvtT2I;
+ }
+ $s = -1; return $throwNilPointerError;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: convertOp }; } $f.$ptr = $ptr; $f._1 = _1; $f._2 = _2; $f._3 = _3; $f._4 = _4; $f._5 = _5; $f._6 = _6; $f._7 = _7; $f._arg = _arg; $f._arg$1 = _arg$1; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._v = _v; $f._v$1 = _v$1; $f._v$2 = _v$2; $f.dst = dst; $f.src = src; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ makeFloat = function(f, v, t) {
+ var $ptr, _1, _r, f, ptr, t, typ, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; f = $f.f; ptr = $f.ptr; t = $f.t; typ = $f.typ; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = t.common(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ typ = _r;
+ ptr = unsafe_New(typ);
+ _1 = typ.size;
+ if (_1 === (4)) {
+ (ptr).$set(($fround(v)));
+ } else if (_1 === (8)) {
+ (ptr).$set(v);
+ }
+ $s = -1; return new Value.ptr(typ, ptr, (((f | 128) >>> 0) | ((typ.Kind() >>> 0))) >>> 0);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: makeFloat }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f.f = f; $f.ptr = ptr; $f.t = t; $f.typ = typ; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ makeComplex = function(f, v, t) {
+ var $ptr, _1, _r, f, ptr, t, typ, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; f = $f.f; ptr = $f.ptr; t = $f.t; typ = $f.typ; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = t.common(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ typ = _r;
+ ptr = unsafe_New(typ);
+ _1 = typ.size;
+ if (_1 === (8)) {
+ (ptr).$set((new $Complex64(v.$real, v.$imag)));
+ } else if (_1 === (16)) {
+ (ptr).$set(v);
+ }
+ $s = -1; return new Value.ptr(typ, ptr, (((f | 128) >>> 0) | ((typ.Kind() >>> 0))) >>> 0);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: makeComplex }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f.f = f; $f.ptr = ptr; $f.t = t; $f.typ = typ; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ makeString = function(f, v, t) {
+ var $ptr, _r, _r$1, f, ret, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; f = $f.f; ret = $f.ret; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = New(t); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = $clone(_r, Value).Elem(); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ ret = _r$1;
+ $clone(ret, Value).SetString(v);
+ ret.flag = (((ret.flag & ~256) >>> 0) | f) >>> 0;
+ $s = -1; return ret;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: makeString }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.f = f; $f.ret = ret; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ makeBytes = function(f, v, t) {
+ var $ptr, _r, _r$1, f, ret, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; f = $f.f; ret = $f.ret; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = New(t); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = $clone(_r, Value).Elem(); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ ret = _r$1;
+ $r = $clone(ret, Value).SetBytes(v); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ ret.flag = (((ret.flag & ~256) >>> 0) | f) >>> 0;
+ $s = -1; return ret;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: makeBytes }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.f = f; $f.ret = ret; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ makeRunes = function(f, v, t) {
+ var $ptr, _r, _r$1, f, ret, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; f = $f.f; ret = $f.ret; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = New(t); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = $clone(_r, Value).Elem(); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ ret = _r$1;
+ $r = $clone(ret, Value).setRunes(v); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ ret.flag = (((ret.flag & ~256) >>> 0) | f) >>> 0;
+ $s = -1; return ret;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: makeRunes }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.f = f; $f.ret = ret; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cvtInt = function(v, t) {
+ var $ptr, _r, t, v, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; t = $f.t; v = $f.v; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = makeInt((v.flag & 96) >>> 0, ((x = $clone(v, Value).Int(), new $Uint64(x.$high, x.$low))), t); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtInt }; } $f.$ptr = $ptr; $f._r = _r; $f.t = t; $f.v = v; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cvtUint = function(v, t) {
+ var $ptr, _r, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = makeInt((v.flag & 96) >>> 0, $clone(v, Value).Uint(), t); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtUint }; } $f.$ptr = $ptr; $f._r = _r; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cvtFloatInt = function(v, t) {
+ var $ptr, _r, t, v, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; t = $f.t; v = $f.v; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = makeInt((v.flag & 96) >>> 0, ((x = (new $Int64(0, $clone(v, Value).Float())), new $Uint64(x.$high, x.$low))), t); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtFloatInt }; } $f.$ptr = $ptr; $f._r = _r; $f.t = t; $f.v = v; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cvtFloatUint = function(v, t) {
+ var $ptr, _r, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = makeInt((v.flag & 96) >>> 0, (new $Uint64(0, $clone(v, Value).Float())), t); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtFloatUint }; } $f.$ptr = $ptr; $f._r = _r; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cvtIntFloat = function(v, t) {
+ var $ptr, _r, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = makeFloat((v.flag & 96) >>> 0, ($flatten64($clone(v, Value).Int())), t); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtIntFloat }; } $f.$ptr = $ptr; $f._r = _r; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cvtUintFloat = function(v, t) {
+ var $ptr, _r, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = makeFloat((v.flag & 96) >>> 0, ($flatten64($clone(v, Value).Uint())), t); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtUintFloat }; } $f.$ptr = $ptr; $f._r = _r; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cvtFloat = function(v, t) {
+ var $ptr, _r, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = makeFloat((v.flag & 96) >>> 0, $clone(v, Value).Float(), t); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtFloat }; } $f.$ptr = $ptr; $f._r = _r; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cvtComplex = function(v, t) {
+ var $ptr, _r, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = makeComplex((v.flag & 96) >>> 0, $clone(v, Value).Complex(), t); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtComplex }; } $f.$ptr = $ptr; $f._r = _r; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cvtIntString = function(v, t) {
+ var $ptr, _r, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = makeString((v.flag & 96) >>> 0, ($encodeRune($clone(v, Value).Int().$low)), t); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtIntString }; } $f.$ptr = $ptr; $f._r = _r; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cvtUintString = function(v, t) {
+ var $ptr, _r, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = makeString((v.flag & 96) >>> 0, ($encodeRune($clone(v, Value).Uint().$low)), t); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtUintString }; } $f.$ptr = $ptr; $f._r = _r; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cvtBytesString = function(v, t) {
+ var $ptr, _arg, _arg$1, _arg$2, _r, _r$1, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _r = $f._r; _r$1 = $f._r$1; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _arg = (v.flag & 96) >>> 0;
+ _r = $clone(v, Value).Bytes(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg$1 = ($bytesToString(_r));
+ _arg$2 = t;
+ _r$1 = makeString(_arg, _arg$1, _arg$2); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtBytesString }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._r = _r; $f._r$1 = _r$1; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cvtStringBytes = function(v, t) {
+ var $ptr, _arg, _arg$1, _arg$2, _r, _r$1, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _r = $f._r; _r$1 = $f._r$1; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _arg = (v.flag & 96) >>> 0;
+ _r = $clone(v, Value).String(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg$1 = (new sliceType$16($stringToBytes(_r)));
+ _arg$2 = t;
+ _r$1 = makeBytes(_arg, _arg$1, _arg$2); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtStringBytes }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._r = _r; $f._r$1 = _r$1; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cvtRunesString = function(v, t) {
+ var $ptr, _arg, _arg$1, _arg$2, _r, _r$1, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _r = $f._r; _r$1 = $f._r$1; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _arg = (v.flag & 96) >>> 0;
+ _r = $clone(v, Value).runes(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg$1 = ($runesToString(_r));
+ _arg$2 = t;
+ _r$1 = makeString(_arg, _arg$1, _arg$2); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtRunesString }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._r = _r; $f._r$1 = _r$1; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cvtStringRunes = function(v, t) {
+ var $ptr, _arg, _arg$1, _arg$2, _r, _r$1, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _r = $f._r; _r$1 = $f._r$1; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _arg = (v.flag & 96) >>> 0;
+ _r = $clone(v, Value).String(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg$1 = (new sliceType$18($stringToRunes(_r)));
+ _arg$2 = t;
+ _r$1 = makeRunes(_arg, _arg$1, _arg$2); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtStringRunes }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._r = _r; $f._r$1 = _r$1; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cvtT2I = function(v, typ) {
+ var $ptr, _r, _r$1, _r$2, _r$3, _r$4, target, typ, v, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; target = $f.target; typ = $f.typ; v = $f.v; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = typ.common(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = unsafe_New(_r); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ target = _r$1;
+ _r$2 = valueInterface($clone(v, Value), false); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ x = _r$2;
+ _r$3 = typ.NumMethod(); /* */ $s = 7; case 7: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ /* */ if (_r$3 === 0) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (_r$3 === 0) { */ case 4:
+ (target).$set(x);
+ $s = 6; continue;
+ /* } else { */ case 5:
+ ifaceE2I($assertType(typ, ptrType$1), x, target);
+ /* } */ case 6:
+ _r$4 = typ.common(); /* */ $s = 8; case 8: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ $s = -1; return new Value.ptr(_r$4, target, (((((v.flag & 96) >>> 0) | 128) >>> 0) | 20) >>> 0);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtT2I }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f.target = target; $f.typ = typ; $f.v = v; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cvtI2I = function(v, typ) {
+ var $ptr, _r, _r$1, _r$2, ret, typ, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; ret = $f.ret; typ = $f.typ; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ if ($clone(v, Value).IsNil()) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ($clone(v, Value).IsNil()) { */ case 1:
+ _r = Zero(typ); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ ret = _r;
+ ret.flag = (ret.flag | (((v.flag & 96) >>> 0))) >>> 0;
+ $s = -1; return ret;
+ /* } */ case 2:
+ _r$1 = $clone(v, Value).Elem(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = cvtT2I($clone(_r$1, Value), typ); /* */ $s = 5; case 5: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return _r$2;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cvtI2I }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.ret = ret; $f.typ = typ; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ptrType$6.methods = [{prop: "methods", name: "methods", pkg: "reflect", typ: $funcType([], [sliceType$3], false)}];
+ ptrType$17.methods = [{prop: "in$", name: "in", pkg: "reflect", typ: $funcType([], [sliceType$2], false)}, {prop: "out", name: "out", pkg: "reflect", typ: $funcType([], [sliceType$2], false)}];
+ name.methods = [{prop: "name", name: "name", pkg: "reflect", typ: $funcType([], [$String], false)}, {prop: "tag", name: "tag", pkg: "reflect", typ: $funcType([], [$String], false)}, {prop: "pkgPath", name: "pkgPath", pkg: "reflect", typ: $funcType([], [$String], false)}, {prop: "isExported", name: "isExported", pkg: "reflect", typ: $funcType([], [$Bool], false)}, {prop: "data", name: "data", pkg: "reflect", typ: $funcType([$Int], [ptrType$5], false)}, {prop: "nameLen", name: "nameLen", pkg: "reflect", typ: $funcType([], [$Int], false)}, {prop: "tagLen", name: "tagLen", pkg: "reflect", typ: $funcType([], [$Int], false)}];
+ Kind.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$1.methods = [{prop: "uncommon", name: "uncommon", pkg: "reflect", typ: $funcType([], [ptrType$6], false)}, {prop: "nameOff", name: "nameOff", pkg: "reflect", typ: $funcType([nameOff], [name], false)}, {prop: "typeOff", name: "typeOff", pkg: "reflect", typ: $funcType([typeOff], [ptrType$1], false)}, {prop: "ptrTo", name: "ptrTo", pkg: "reflect", typ: $funcType([], [ptrType$1], false)}, {prop: "pointers", name: "pointers", pkg: "reflect", typ: $funcType([], [$Bool], false)}, {prop: "Comparable", name: "Comparable", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Method", name: "Method", pkg: "", typ: $funcType([$Int], [Method], false)}, {prop: "textOff", name: "textOff", pkg: "reflect", typ: $funcType([textOff], [$UnsafePointer], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Size", name: "Size", pkg: "", typ: $funcType([], [$Uintptr], false)}, {prop: "Bits", name: "Bits", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Align", name: "Align", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "FieldAlign", name: "FieldAlign", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Kind", name: "Kind", pkg: "", typ: $funcType([], [Kind], false)}, {prop: "common", name: "common", pkg: "reflect", typ: $funcType([], [ptrType$1], false)}, {prop: "exportedMethods", name: "exportedMethods", pkg: "reflect", typ: $funcType([], [sliceType$3], false)}, {prop: "NumMethod", name: "NumMethod", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "MethodByName", name: "MethodByName", pkg: "", typ: $funcType([$String], [Method, $Bool], false)}, {prop: "PkgPath", name: "PkgPath", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Name", name: "Name", pkg: "", typ: $funcType([], [$String], false)}, {prop: "ChanDir", name: "ChanDir", pkg: "", typ: $funcType([], [ChanDir], false)}, {prop: "IsVariadic", name: "IsVariadic", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Elem", name: "Elem", pkg: "", typ: $funcType([], [Type], false)}, {prop: "Field", name: "Field", pkg: "", typ: $funcType([$Int], [StructField], false)}, {prop: "FieldByIndex", name: "FieldByIndex", pkg: "", typ: $funcType([sliceType$14], [StructField], false)}, {prop: "FieldByName", name: "FieldByName", pkg: "", typ: $funcType([$String], [StructField, $Bool], false)}, {prop: "FieldByNameFunc", name: "FieldByNameFunc", pkg: "", typ: $funcType([funcType$3], [StructField, $Bool], false)}, {prop: "In", name: "In", pkg: "", typ: $funcType([$Int], [Type], false)}, {prop: "Key", name: "Key", pkg: "", typ: $funcType([], [Type], false)}, {prop: "Len", name: "Len", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "NumField", name: "NumField", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "NumIn", name: "NumIn", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "NumOut", name: "NumOut", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Out", name: "Out", pkg: "", typ: $funcType([$Int], [Type], false)}, {prop: "Implements", name: "Implements", pkg: "", typ: $funcType([Type], [$Bool], false)}, {prop: "AssignableTo", name: "AssignableTo", pkg: "", typ: $funcType([Type], [$Bool], false)}, {prop: "ConvertibleTo", name: "ConvertibleTo", pkg: "", typ: $funcType([Type], [$Bool], false)}];
+ ChanDir.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$8.methods = [{prop: "Method", name: "Method", pkg: "", typ: $funcType([$Int], [Method], false)}, {prop: "NumMethod", name: "NumMethod", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "MethodByName", name: "MethodByName", pkg: "", typ: $funcType([$String], [Method, $Bool], false)}];
+ ptrType$10.methods = [{prop: "Field", name: "Field", pkg: "", typ: $funcType([$Int], [StructField], false)}, {prop: "FieldByIndex", name: "FieldByIndex", pkg: "", typ: $funcType([sliceType$14], [StructField], false)}, {prop: "FieldByNameFunc", name: "FieldByNameFunc", pkg: "", typ: $funcType([funcType$3], [StructField, $Bool], false)}, {prop: "FieldByName", name: "FieldByName", pkg: "", typ: $funcType([$String], [StructField, $Bool], false)}];
+ StructTag.methods = [{prop: "Get", name: "Get", pkg: "", typ: $funcType([$String], [$String], false)}, {prop: "Lookup", name: "Lookup", pkg: "", typ: $funcType([$String], [$String, $Bool], false)}];
+ Value.methods = [{prop: "object", name: "object", pkg: "reflect", typ: $funcType([], [ptrType$3], false)}, {prop: "call", name: "call", pkg: "reflect", typ: $funcType([$String, sliceType$10], [sliceType$10], false)}, {prop: "Cap", name: "Cap", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Elem", name: "Elem", pkg: "", typ: $funcType([], [Value], false)}, {prop: "Field", name: "Field", pkg: "", typ: $funcType([$Int], [Value], false)}, {prop: "Index", name: "Index", pkg: "", typ: $funcType([$Int], [Value], false)}, {prop: "InterfaceData", name: "InterfaceData", pkg: "", typ: $funcType([], [arrayType$12], false)}, {prop: "IsNil", name: "IsNil", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Len", name: "Len", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Pointer", name: "Pointer", pkg: "", typ: $funcType([], [$Uintptr], false)}, {prop: "Set", name: "Set", pkg: "", typ: $funcType([Value], [], false)}, {prop: "SetBytes", name: "SetBytes", pkg: "", typ: $funcType([sliceType$16], [], false)}, {prop: "SetCap", name: "SetCap", pkg: "", typ: $funcType([$Int], [], false)}, {prop: "SetLen", name: "SetLen", pkg: "", typ: $funcType([$Int], [], false)}, {prop: "Slice", name: "Slice", pkg: "", typ: $funcType([$Int, $Int], [Value], false)}, {prop: "Slice3", name: "Slice3", pkg: "", typ: $funcType([$Int, $Int, $Int], [Value], false)}, {prop: "Close", name: "Close", pkg: "", typ: $funcType([], [], false)}, {prop: "pointer", name: "pointer", pkg: "reflect", typ: $funcType([], [$UnsafePointer], false)}, {prop: "Addr", name: "Addr", pkg: "", typ: $funcType([], [Value], false)}, {prop: "Bool", name: "Bool", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Bytes", name: "Bytes", pkg: "", typ: $funcType([], [sliceType$16], false)}, {prop: "runes", name: "runes", pkg: "reflect", typ: $funcType([], [sliceType$18], false)}, {prop: "CanAddr", name: "CanAddr", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "CanSet", name: "CanSet", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Call", name: "Call", pkg: "", typ: $funcType([sliceType$10], [sliceType$10], false)}, {prop: "CallSlice", name: "CallSlice", pkg: "", typ: $funcType([sliceType$10], [sliceType$10], false)}, {prop: "Complex", name: "Complex", pkg: "", typ: $funcType([], [$Complex128], false)}, {prop: "FieldByIndex", name: "FieldByIndex", pkg: "", typ: $funcType([sliceType$14], [Value], false)}, {prop: "FieldByName", name: "FieldByName", pkg: "", typ: $funcType([$String], [Value], false)}, {prop: "FieldByNameFunc", name: "FieldByNameFunc", pkg: "", typ: $funcType([funcType$3], [Value], false)}, {prop: "Float", name: "Float", pkg: "", typ: $funcType([], [$Float64], false)}, {prop: "Int", name: "Int", pkg: "", typ: $funcType([], [$Int64], false)}, {prop: "CanInterface", name: "CanInterface", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Interface", name: "Interface", pkg: "", typ: $funcType([], [$emptyInterface], false)}, {prop: "IsValid", name: "IsValid", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Kind", name: "Kind", pkg: "", typ: $funcType([], [Kind], false)}, {prop: "MapIndex", name: "MapIndex", pkg: "", typ: $funcType([Value], [Value], false)}, {prop: "MapKeys", name: "MapKeys", pkg: "", typ: $funcType([], [sliceType$10], false)}, {prop: "Method", name: "Method", pkg: "", typ: $funcType([$Int], [Value], false)}, {prop: "NumMethod", name: "NumMethod", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "MethodByName", name: "MethodByName", pkg: "", typ: $funcType([$String], [Value], false)}, {prop: "NumField", name: "NumField", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "OverflowComplex", name: "OverflowComplex", pkg: "", typ: $funcType([$Complex128], [$Bool], false)}, {prop: "OverflowFloat", name: "OverflowFloat", pkg: "", typ: $funcType([$Float64], [$Bool], false)}, {prop: "OverflowInt", name: "OverflowInt", pkg: "", typ: $funcType([$Int64], [$Bool], false)}, {prop: "OverflowUint", name: "OverflowUint", pkg: "", typ: $funcType([$Uint64], [$Bool], false)}, {prop: "Recv", name: "Recv", pkg: "", typ: $funcType([], [Value, $Bool], false)}, {prop: "recv", name: "recv", pkg: "reflect", typ: $funcType([$Bool], [Value, $Bool], false)}, {prop: "Send", name: "Send", pkg: "", typ: $funcType([Value], [], false)}, {prop: "send", name: "send", pkg: "reflect", typ: $funcType([Value, $Bool], [$Bool], false)}, {prop: "SetBool", name: "SetBool", pkg: "", typ: $funcType([$Bool], [], false)}, {prop: "setRunes", name: "setRunes", pkg: "reflect", typ: $funcType([sliceType$18], [], false)}, {prop: "SetComplex", name: "SetComplex", pkg: "", typ: $funcType([$Complex128], [], false)}, {prop: "SetFloat", name: "SetFloat", pkg: "", typ: $funcType([$Float64], [], false)}, {prop: "SetInt", name: "SetInt", pkg: "", typ: $funcType([$Int64], [], false)}, {prop: "SetMapIndex", name: "SetMapIndex", pkg: "", typ: $funcType([Value, Value], [], false)}, {prop: "SetUint", name: "SetUint", pkg: "", typ: $funcType([$Uint64], [], false)}, {prop: "SetPointer", name: "SetPointer", pkg: "", typ: $funcType([$UnsafePointer], [], false)}, {prop: "SetString", name: "SetString", pkg: "", typ: $funcType([$String], [], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "TryRecv", name: "TryRecv", pkg: "", typ: $funcType([], [Value, $Bool], false)}, {prop: "TrySend", name: "TrySend", pkg: "", typ: $funcType([Value], [$Bool], false)}, {prop: "Type", name: "Type", pkg: "", typ: $funcType([], [Type], false)}, {prop: "Uint", name: "Uint", pkg: "", typ: $funcType([], [$Uint64], false)}, {prop: "UnsafeAddr", name: "UnsafeAddr", pkg: "", typ: $funcType([], [$Uintptr], false)}, {prop: "assignTo", name: "assignTo", pkg: "reflect", typ: $funcType([$String, ptrType$1, $UnsafePointer], [Value], false)}, {prop: "Convert", name: "Convert", pkg: "", typ: $funcType([Type], [Value], false)}];
+ flag.methods = [{prop: "kind", name: "kind", pkg: "reflect", typ: $funcType([], [Kind], false)}, {prop: "mustBe", name: "mustBe", pkg: "reflect", typ: $funcType([Kind], [], false)}, {prop: "mustBeExported", name: "mustBeExported", pkg: "reflect", typ: $funcType([], [], false)}, {prop: "mustBeAssignable", name: "mustBeAssignable", pkg: "reflect", typ: $funcType([], [], false)}];
+ ptrType$18.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ uncommonType.init("reflect", [{prop: "pkgPath", name: "pkgPath", exported: false, typ: nameOff, tag: ""}, {prop: "mcount", name: "mcount", exported: false, typ: $Uint16, tag: ""}, {prop: "_$2", name: "_", exported: false, typ: $Uint16, tag: ""}, {prop: "moff", name: "moff", exported: false, typ: $Uint32, tag: ""}, {prop: "_$4", name: "_", exported: false, typ: $Uint32, tag: ""}, {prop: "_methods", name: "_methods", exported: false, typ: sliceType$3, tag: ""}]);
+ funcType.init("reflect", [{prop: "rtype", name: "", exported: false, typ: rtype, tag: "reflect:\"func\""}, {prop: "inCount", name: "inCount", exported: false, typ: $Uint16, tag: ""}, {prop: "outCount", name: "outCount", exported: false, typ: $Uint16, tag: ""}, {prop: "_in", name: "_in", exported: false, typ: sliceType$2, tag: ""}, {prop: "_out", name: "_out", exported: false, typ: sliceType$2, tag: ""}]);
+ name.init("reflect", [{prop: "bytes", name: "bytes", exported: false, typ: ptrType$5, tag: ""}]);
+ nameData.init("reflect", [{prop: "name", name: "name", exported: false, typ: $String, tag: ""}, {prop: "tag", name: "tag", exported: false, typ: $String, tag: ""}, {prop: "pkgPath", name: "pkgPath", exported: false, typ: $String, tag: ""}, {prop: "exported", name: "exported", exported: false, typ: $Bool, tag: ""}]);
+ mapIter.init("reflect", [{prop: "t", name: "t", exported: false, typ: Type, tag: ""}, {prop: "m", name: "m", exported: false, typ: ptrType$3, tag: ""}, {prop: "keys", name: "keys", exported: false, typ: ptrType$3, tag: ""}, {prop: "i", name: "i", exported: false, typ: $Int, tag: ""}]);
+ Type.init([{prop: "Align", name: "Align", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "AssignableTo", name: "AssignableTo", pkg: "", typ: $funcType([Type], [$Bool], false)}, {prop: "Bits", name: "Bits", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "ChanDir", name: "ChanDir", pkg: "", typ: $funcType([], [ChanDir], false)}, {prop: "Comparable", name: "Comparable", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "ConvertibleTo", name: "ConvertibleTo", pkg: "", typ: $funcType([Type], [$Bool], false)}, {prop: "Elem", name: "Elem", pkg: "", typ: $funcType([], [Type], false)}, {prop: "Field", name: "Field", pkg: "", typ: $funcType([$Int], [StructField], false)}, {prop: "FieldAlign", name: "FieldAlign", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "FieldByIndex", name: "FieldByIndex", pkg: "", typ: $funcType([sliceType$14], [StructField], false)}, {prop: "FieldByName", name: "FieldByName", pkg: "", typ: $funcType([$String], [StructField, $Bool], false)}, {prop: "FieldByNameFunc", name: "FieldByNameFunc", pkg: "", typ: $funcType([funcType$3], [StructField, $Bool], false)}, {prop: "Implements", name: "Implements", pkg: "", typ: $funcType([Type], [$Bool], false)}, {prop: "In", name: "In", pkg: "", typ: $funcType([$Int], [Type], false)}, {prop: "IsVariadic", name: "IsVariadic", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Key", name: "Key", pkg: "", typ: $funcType([], [Type], false)}, {prop: "Kind", name: "Kind", pkg: "", typ: $funcType([], [Kind], false)}, {prop: "Len", name: "Len", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Method", name: "Method", pkg: "", typ: $funcType([$Int], [Method], false)}, {prop: "MethodByName", name: "MethodByName", pkg: "", typ: $funcType([$String], [Method, $Bool], false)}, {prop: "Name", name: "Name", pkg: "", typ: $funcType([], [$String], false)}, {prop: "NumField", name: "NumField", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "NumIn", name: "NumIn", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "NumMethod", name: "NumMethod", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "NumOut", name: "NumOut", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Out", name: "Out", pkg: "", typ: $funcType([$Int], [Type], false)}, {prop: "PkgPath", name: "PkgPath", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Size", name: "Size", pkg: "", typ: $funcType([], [$Uintptr], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "common", name: "common", pkg: "reflect", typ: $funcType([], [ptrType$1], false)}, {prop: "uncommon", name: "uncommon", pkg: "reflect", typ: $funcType([], [ptrType$6], false)}]);
+ rtype.init("reflect", [{prop: "size", name: "size", exported: false, typ: $Uintptr, tag: ""}, {prop: "ptrdata", name: "ptrdata", exported: false, typ: $Uintptr, tag: ""}, {prop: "hash", name: "hash", exported: false, typ: $Uint32, tag: ""}, {prop: "tflag", name: "tflag", exported: false, typ: tflag, tag: ""}, {prop: "align", name: "align", exported: false, typ: $Uint8, tag: ""}, {prop: "fieldAlign", name: "fieldAlign", exported: false, typ: $Uint8, tag: ""}, {prop: "kind", name: "kind", exported: false, typ: $Uint8, tag: ""}, {prop: "alg", name: "alg", exported: false, typ: ptrType$4, tag: ""}, {prop: "gcdata", name: "gcdata", exported: false, typ: ptrType$5, tag: ""}, {prop: "str", name: "str", exported: false, typ: nameOff, tag: ""}, {prop: "ptrToThis", name: "ptrToThis", exported: false, typ: typeOff, tag: ""}]);
+ typeAlg.init("reflect", [{prop: "hash", name: "hash", exported: false, typ: funcType$4, tag: ""}, {prop: "equal", name: "equal", exported: false, typ: funcType$5, tag: ""}]);
+ method.init("reflect", [{prop: "name", name: "name", exported: false, typ: nameOff, tag: ""}, {prop: "mtyp", name: "mtyp", exported: false, typ: typeOff, tag: ""}, {prop: "ifn", name: "ifn", exported: false, typ: textOff, tag: ""}, {prop: "tfn", name: "tfn", exported: false, typ: textOff, tag: ""}]);
+ arrayType.init("reflect", [{prop: "rtype", name: "", exported: false, typ: rtype, tag: "reflect:\"array\""}, {prop: "elem", name: "elem", exported: false, typ: ptrType$1, tag: ""}, {prop: "slice", name: "slice", exported: false, typ: ptrType$1, tag: ""}, {prop: "len", name: "len", exported: false, typ: $Uintptr, tag: ""}]);
+ chanType.init("reflect", [{prop: "rtype", name: "", exported: false, typ: rtype, tag: "reflect:\"chan\""}, {prop: "elem", name: "elem", exported: false, typ: ptrType$1, tag: ""}, {prop: "dir", name: "dir", exported: false, typ: $Uintptr, tag: ""}]);
+ imethod.init("reflect", [{prop: "name", name: "name", exported: false, typ: nameOff, tag: ""}, {prop: "typ", name: "typ", exported: false, typ: typeOff, tag: ""}]);
+ interfaceType.init("reflect", [{prop: "rtype", name: "", exported: false, typ: rtype, tag: "reflect:\"interface\""}, {prop: "pkgPath", name: "pkgPath", exported: false, typ: name, tag: ""}, {prop: "methods", name: "methods", exported: false, typ: sliceType$7, tag: ""}]);
+ mapType.init("reflect", [{prop: "rtype", name: "", exported: false, typ: rtype, tag: "reflect:\"map\""}, {prop: "key", name: "key", exported: false, typ: ptrType$1, tag: ""}, {prop: "elem", name: "elem", exported: false, typ: ptrType$1, tag: ""}, {prop: "bucket", name: "bucket", exported: false, typ: ptrType$1, tag: ""}, {prop: "hmap", name: "hmap", exported: false, typ: ptrType$1, tag: ""}, {prop: "keysize", name: "keysize", exported: false, typ: $Uint8, tag: ""}, {prop: "indirectkey", name: "indirectkey", exported: false, typ: $Uint8, tag: ""}, {prop: "valuesize", name: "valuesize", exported: false, typ: $Uint8, tag: ""}, {prop: "indirectvalue", name: "indirectvalue", exported: false, typ: $Uint8, tag: ""}, {prop: "bucketsize", name: "bucketsize", exported: false, typ: $Uint16, tag: ""}, {prop: "reflexivekey", name: "reflexivekey", exported: false, typ: $Bool, tag: ""}, {prop: "needkeyupdate", name: "needkeyupdate", exported: false, typ: $Bool, tag: ""}]);
+ ptrType.init("reflect", [{prop: "rtype", name: "", exported: false, typ: rtype, tag: "reflect:\"ptr\""}, {prop: "elem", name: "elem", exported: false, typ: ptrType$1, tag: ""}]);
+ sliceType.init("reflect", [{prop: "rtype", name: "", exported: false, typ: rtype, tag: "reflect:\"slice\""}, {prop: "elem", name: "elem", exported: false, typ: ptrType$1, tag: ""}]);
+ structField.init("reflect", [{prop: "name", name: "name", exported: false, typ: name, tag: ""}, {prop: "typ", name: "typ", exported: false, typ: ptrType$1, tag: ""}, {prop: "offset", name: "offset", exported: false, typ: $Uintptr, tag: ""}]);
+ structType.init("reflect", [{prop: "rtype", name: "", exported: false, typ: rtype, tag: "reflect:\"struct\""}, {prop: "pkgPath", name: "pkgPath", exported: false, typ: name, tag: ""}, {prop: "fields", name: "fields", exported: false, typ: sliceType$8, tag: ""}]);
+ Method.init("", [{prop: "Name", name: "Name", exported: true, typ: $String, tag: ""}, {prop: "PkgPath", name: "PkgPath", exported: true, typ: $String, tag: ""}, {prop: "Type", name: "Type", exported: true, typ: Type, tag: ""}, {prop: "Func", name: "Func", exported: true, typ: Value, tag: ""}, {prop: "Index", name: "Index", exported: true, typ: $Int, tag: ""}]);
+ StructField.init("", [{prop: "Name", name: "Name", exported: true, typ: $String, tag: ""}, {prop: "PkgPath", name: "PkgPath", exported: true, typ: $String, tag: ""}, {prop: "Type", name: "Type", exported: true, typ: Type, tag: ""}, {prop: "Tag", name: "Tag", exported: true, typ: StructTag, tag: ""}, {prop: "Offset", name: "Offset", exported: true, typ: $Uintptr, tag: ""}, {prop: "Index", name: "Index", exported: true, typ: sliceType$14, tag: ""}, {prop: "Anonymous", name: "Anonymous", exported: true, typ: $Bool, tag: ""}]);
+ fieldScan.init("reflect", [{prop: "typ", name: "typ", exported: false, typ: ptrType$10, tag: ""}, {prop: "index", name: "index", exported: false, typ: sliceType$14, tag: ""}]);
+ Value.init("reflect", [{prop: "typ", name: "typ", exported: false, typ: ptrType$1, tag: ""}, {prop: "ptr", name: "ptr", exported: false, typ: $UnsafePointer, tag: ""}, {prop: "flag", name: "", exported: false, typ: flag, tag: ""}]);
+ ValueError.init("", [{prop: "Method", name: "Method", exported: true, typ: $String, tag: ""}, {prop: "Kind", name: "Kind", exported: true, typ: Kind, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = errors.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = js.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = math.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ nameOffList = sliceType$1.nil;
+ typeOffList = sliceType$2.nil;
+ methodCache = new structType$1.ptr(new sync.RWMutex.ptr(new sync.Mutex.ptr(0, 0), 0, 0, 0, 0), false);
+ initialized = false;
+ uncommonTypeMap = {};
+ nameMap = {};
+ callHelper = $assertType($internalize($call, $emptyInterface), funcType$1);
+ selectHelper = $assertType($internalize($select, $emptyInterface), funcType$1);
+ jsObjectPtr = reflectType($jsObjectPtr);
+ kindNames = new sliceType$6(["invalid", "bool", "int", "int8", "int16", "int32", "int64", "uint", "uint8", "uint16", "uint32", "uint64", "uintptr", "float32", "float64", "complex64", "complex128", "array", "chan", "func", "interface", "map", "ptr", "slice", "string", "struct", "unsafe.Pointer"]);
+ uint8Type = $assertType(TypeOf(new $Uint8(0)), ptrType$1);
+ $r = init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["fmt"] = (function() {
+ var $pkg = {}, $init, errors, io, math, os, reflect, strconv, sync, utf8, fmtFlags, fmt, State, Formatter, Stringer, GoStringer, buffer, pp, ScanState, scanError, ss, ssave, sliceType, ptrType, ptrType$1, arrayType, arrayType$1, sliceType$1, sliceType$2, ptrType$2, ptrType$5, ptrType$25, funcType, ppFree, byteType, space, ssFree, complexError, boolError, newPrinter, Fprintf, Sprintf, Errorf, Fprint, Print, Sprint, Fprintln, Println, Sprintln, getField, tooLarge, parsenum, intFromArg, parseArgNumber, isSpace, notSpace, indexRune;
+ errors = $packages["errors"];
+ io = $packages["io"];
+ math = $packages["math"];
+ os = $packages["os"];
+ reflect = $packages["reflect"];
+ strconv = $packages["strconv"];
+ sync = $packages["sync"];
+ utf8 = $packages["unicode/utf8"];
+ fmtFlags = $pkg.fmtFlags = $newType(0, $kindStruct, "fmt.fmtFlags", true, "fmt", false, function(widPresent_, precPresent_, minus_, plus_, sharp_, space_, zero_, plusV_, sharpV_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.widPresent = false;
+ this.precPresent = false;
+ this.minus = false;
+ this.plus = false;
+ this.sharp = false;
+ this.space = false;
+ this.zero = false;
+ this.plusV = false;
+ this.sharpV = false;
+ return;
+ }
+ this.widPresent = widPresent_;
+ this.precPresent = precPresent_;
+ this.minus = minus_;
+ this.plus = plus_;
+ this.sharp = sharp_;
+ this.space = space_;
+ this.zero = zero_;
+ this.plusV = plusV_;
+ this.sharpV = sharpV_;
+ });
+ fmt = $pkg.fmt = $newType(0, $kindStruct, "fmt.fmt", true, "fmt", false, function(buf_, fmtFlags_, wid_, prec_, intbuf_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.buf = ptrType$1.nil;
+ this.fmtFlags = new fmtFlags.ptr(false, false, false, false, false, false, false, false, false);
+ this.wid = 0;
+ this.prec = 0;
+ this.intbuf = arrayType.zero();
+ return;
+ }
+ this.buf = buf_;
+ this.fmtFlags = fmtFlags_;
+ this.wid = wid_;
+ this.prec = prec_;
+ this.intbuf = intbuf_;
+ });
+ State = $pkg.State = $newType(8, $kindInterface, "fmt.State", true, "fmt", true, null);
+ Formatter = $pkg.Formatter = $newType(8, $kindInterface, "fmt.Formatter", true, "fmt", true, null);
+ Stringer = $pkg.Stringer = $newType(8, $kindInterface, "fmt.Stringer", true, "fmt", true, null);
+ GoStringer = $pkg.GoStringer = $newType(8, $kindInterface, "fmt.GoStringer", true, "fmt", true, null);
+ buffer = $pkg.buffer = $newType(12, $kindSlice, "fmt.buffer", true, "fmt", false, null);
+ pp = $pkg.pp = $newType(0, $kindStruct, "fmt.pp", true, "fmt", false, function(buf_, arg_, value_, fmt_, reordered_, goodArgNum_, panicking_, erroring_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.buf = buffer.nil;
+ this.arg = $ifaceNil;
+ this.value = new reflect.Value.ptr(ptrType.nil, 0, 0);
+ this.fmt = new fmt.ptr(ptrType$1.nil, new fmtFlags.ptr(false, false, false, false, false, false, false, false, false), 0, 0, arrayType.zero());
+ this.reordered = false;
+ this.goodArgNum = false;
+ this.panicking = false;
+ this.erroring = false;
+ return;
+ }
+ this.buf = buf_;
+ this.arg = arg_;
+ this.value = value_;
+ this.fmt = fmt_;
+ this.reordered = reordered_;
+ this.goodArgNum = goodArgNum_;
+ this.panicking = panicking_;
+ this.erroring = erroring_;
+ });
+ ScanState = $pkg.ScanState = $newType(8, $kindInterface, "fmt.ScanState", true, "fmt", true, null);
+ scanError = $pkg.scanError = $newType(0, $kindStruct, "fmt.scanError", true, "fmt", false, function(err_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.err = $ifaceNil;
+ return;
+ }
+ this.err = err_;
+ });
+ ss = $pkg.ss = $newType(0, $kindStruct, "fmt.ss", true, "fmt", false, function(rs_, buf_, count_, atEOF_, ssave_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.rs = $ifaceNil;
+ this.buf = buffer.nil;
+ this.count = 0;
+ this.atEOF = false;
+ this.ssave = new ssave.ptr(false, false, false, 0, 0, 0);
+ return;
+ }
+ this.rs = rs_;
+ this.buf = buf_;
+ this.count = count_;
+ this.atEOF = atEOF_;
+ this.ssave = ssave_;
+ });
+ ssave = $pkg.ssave = $newType(0, $kindStruct, "fmt.ssave", true, "fmt", false, function(validSave_, nlIsEnd_, nlIsSpace_, argLimit_, limit_, maxWid_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.validSave = false;
+ this.nlIsEnd = false;
+ this.nlIsSpace = false;
+ this.argLimit = 0;
+ this.limit = 0;
+ this.maxWid = 0;
+ return;
+ }
+ this.validSave = validSave_;
+ this.nlIsEnd = nlIsEnd_;
+ this.nlIsSpace = nlIsSpace_;
+ this.argLimit = argLimit_;
+ this.limit = limit_;
+ this.maxWid = maxWid_;
+ });
+ sliceType = $sliceType($emptyInterface);
+ ptrType = $ptrType(reflect.rtype);
+ ptrType$1 = $ptrType(buffer);
+ arrayType = $arrayType($Uint8, 68);
+ arrayType$1 = $arrayType($Uint16, 2);
+ sliceType$1 = $sliceType(arrayType$1);
+ sliceType$2 = $sliceType($Uint8);
+ ptrType$2 = $ptrType(pp);
+ ptrType$5 = $ptrType(ss);
+ ptrType$25 = $ptrType(fmt);
+ funcType = $funcType([$Int32], [$Bool], false);
+ fmt.ptr.prototype.clearflags = function() {
+ var $ptr, f;
+ f = this;
+ fmtFlags.copy(f.fmtFlags, new fmtFlags.ptr(false, false, false, false, false, false, false, false, false));
+ };
+ fmt.prototype.clearflags = function() { return this.$val.clearflags(); };
+ fmt.ptr.prototype.init = function(buf) {
+ var $ptr, buf, f;
+ f = this;
+ f.buf = buf;
+ f.clearflags();
+ };
+ fmt.prototype.init = function(buf) { return this.$val.init(buf); };
+ fmt.ptr.prototype.writePadding = function(n) {
+ var $ptr, _i, _ref, buf, f, i, n, newLen, oldLen, padByte, padding;
+ f = this;
+ if (n <= 0) {
+ return;
+ }
+ buf = f.buf.$get();
+ oldLen = buf.$length;
+ newLen = oldLen + n >> 0;
+ if (newLen > buf.$capacity) {
+ buf = $makeSlice(buffer, (($imul(buf.$capacity, 2)) + n >> 0));
+ $copySlice(buf, f.buf.$get());
+ }
+ padByte = 32;
+ if (f.fmtFlags.zero) {
+ padByte = 48;
+ }
+ padding = $subslice(buf, oldLen, newLen);
+ _ref = padding;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ ((i < 0 || i >= padding.$length) ? ($throwRuntimeError("index out of range"), undefined) : padding.$array[padding.$offset + i] = padByte);
+ _i++;
+ }
+ f.buf.$set($subslice(buf, 0, newLen));
+ };
+ fmt.prototype.writePadding = function(n) { return this.$val.writePadding(n); };
+ fmt.ptr.prototype.pad = function(b) {
+ var $ptr, b, f, width;
+ f = this;
+ if (!f.fmtFlags.widPresent || (f.wid === 0)) {
+ f.buf.Write(b);
+ return;
+ }
+ width = f.wid - utf8.RuneCount(b) >> 0;
+ if (!f.fmtFlags.minus) {
+ f.writePadding(width);
+ f.buf.Write(b);
+ } else {
+ f.buf.Write(b);
+ f.writePadding(width);
+ }
+ };
+ fmt.prototype.pad = function(b) { return this.$val.pad(b); };
+ fmt.ptr.prototype.padString = function(s) {
+ var $ptr, f, s, width;
+ f = this;
+ if (!f.fmtFlags.widPresent || (f.wid === 0)) {
+ f.buf.WriteString(s);
+ return;
+ }
+ width = f.wid - utf8.RuneCountInString(s) >> 0;
+ if (!f.fmtFlags.minus) {
+ f.writePadding(width);
+ f.buf.WriteString(s);
+ } else {
+ f.buf.WriteString(s);
+ f.writePadding(width);
+ }
+ };
+ fmt.prototype.padString = function(s) { return this.$val.padString(s); };
+ fmt.ptr.prototype.fmt_boolean = function(v) {
+ var $ptr, f, v;
+ f = this;
+ if (v) {
+ f.padString("true");
+ } else {
+ f.padString("false");
+ }
+ };
+ fmt.prototype.fmt_boolean = function(v) { return this.$val.fmt_boolean(v); };
+ fmt.ptr.prototype.fmt_unicode = function(u) {
+ var $ptr, buf, f, i, oldZero, prec, u, width;
+ f = this;
+ buf = $subslice(new sliceType$2(f.intbuf), 0);
+ prec = 4;
+ if (f.fmtFlags.precPresent && f.prec > 4) {
+ prec = f.prec;
+ width = (((2 + prec >> 0) + 2 >> 0) + 4 >> 0) + 1 >> 0;
+ if (width > buf.$length) {
+ buf = $makeSlice(sliceType$2, width);
+ }
+ }
+ i = buf.$length;
+ if (f.fmtFlags.sharp && (u.$high < 0 || (u.$high === 0 && u.$low <= 1114111)) && strconv.IsPrint(((u.$low >> 0)))) {
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = 39);
+ i = i - (utf8.RuneLen(((u.$low >> 0)))) >> 0;
+ utf8.EncodeRune($subslice(buf, i), ((u.$low >> 0)));
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = 39);
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = 32);
+ }
+ while (true) {
+ if (!((u.$high > 0 || (u.$high === 0 && u.$low >= 16)))) { break; }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = "0123456789ABCDEFX".charCodeAt($flatten64(new $Uint64(u.$high & 0, (u.$low & 15) >>> 0))));
+ prec = prec - (1) >> 0;
+ u = $shiftRightUint64(u, (4));
+ }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = "0123456789ABCDEFX".charCodeAt($flatten64(u)));
+ prec = prec - (1) >> 0;
+ while (true) {
+ if (!(prec > 0)) { break; }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = 48);
+ prec = prec - (1) >> 0;
+ }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = 43);
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = 85);
+ oldZero = f.fmtFlags.zero;
+ f.fmtFlags.zero = false;
+ f.pad($subslice(buf, i));
+ f.fmtFlags.zero = oldZero;
+ };
+ fmt.prototype.fmt_unicode = function(u) { return this.$val.fmt_unicode(u); };
+ fmt.ptr.prototype.fmt_integer = function(u, base, isSigned, digits) {
+ var $ptr, _1, _2, base, buf, digits, f, i, isSigned, negative, next, oldZero, oldZero$1, prec, u, width, x, x$1, x$2, x$3, x$4;
+ f = this;
+ negative = isSigned && (x = (new $Int64(u.$high, u.$low)), (x.$high < 0 || (x.$high === 0 && x.$low < 0)));
+ if (negative) {
+ u = new $Uint64(-u.$high, -u.$low);
+ }
+ buf = $subslice(new sliceType$2(f.intbuf), 0);
+ if (f.fmtFlags.widPresent || f.fmtFlags.precPresent) {
+ width = (3 + f.wid >> 0) + f.prec >> 0;
+ if (width > buf.$length) {
+ buf = $makeSlice(sliceType$2, width);
+ }
+ }
+ prec = 0;
+ if (f.fmtFlags.precPresent) {
+ prec = f.prec;
+ if ((prec === 0) && (u.$high === 0 && u.$low === 0)) {
+ oldZero = f.fmtFlags.zero;
+ f.fmtFlags.zero = false;
+ f.writePadding(f.wid);
+ f.fmtFlags.zero = oldZero;
+ return;
+ }
+ } else if (f.fmtFlags.zero && f.fmtFlags.widPresent) {
+ prec = f.wid;
+ if (negative || f.fmtFlags.plus || f.fmtFlags.space) {
+ prec = prec - (1) >> 0;
+ }
+ }
+ i = buf.$length;
+ _1 = base;
+ if (_1 === (10)) {
+ while (true) {
+ if (!((u.$high > 0 || (u.$high === 0 && u.$low >= 10)))) { break; }
+ i = i - (1) >> 0;
+ next = $div64(u, new $Uint64(0, 10), false);
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = (((x$1 = new $Uint64(0 + u.$high, 48 + u.$low), x$2 = $mul64(next, new $Uint64(0, 10)), new $Uint64(x$1.$high - x$2.$high, x$1.$low - x$2.$low)).$low << 24 >>> 24)));
+ u = next;
+ }
+ } else if (_1 === (16)) {
+ while (true) {
+ if (!((u.$high > 0 || (u.$high === 0 && u.$low >= 16)))) { break; }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = digits.charCodeAt($flatten64(new $Uint64(u.$high & 0, (u.$low & 15) >>> 0))));
+ u = $shiftRightUint64(u, (4));
+ }
+ } else if (_1 === (8)) {
+ while (true) {
+ if (!((u.$high > 0 || (u.$high === 0 && u.$low >= 8)))) { break; }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = (((x$3 = new $Uint64(u.$high & 0, (u.$low & 7) >>> 0), new $Uint64(0 + x$3.$high, 48 + x$3.$low)).$low << 24 >>> 24)));
+ u = $shiftRightUint64(u, (3));
+ }
+ } else if (_1 === (2)) {
+ while (true) {
+ if (!((u.$high > 0 || (u.$high === 0 && u.$low >= 2)))) { break; }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = (((x$4 = new $Uint64(u.$high & 0, (u.$low & 1) >>> 0), new $Uint64(0 + x$4.$high, 48 + x$4.$low)).$low << 24 >>> 24)));
+ u = $shiftRightUint64(u, (1));
+ }
+ } else {
+ $panic(new $String("fmt: unknown base; can't happen"));
+ }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = digits.charCodeAt($flatten64(u)));
+ while (true) {
+ if (!(i > 0 && prec > (buf.$length - i >> 0))) { break; }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = 48);
+ }
+ if (f.fmtFlags.sharp) {
+ _2 = base;
+ if (_2 === (8)) {
+ if (!((((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i]) === 48))) {
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = 48);
+ }
+ } else if (_2 === (16)) {
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = digits.charCodeAt(16));
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = 48);
+ }
+ }
+ if (negative) {
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = 45);
+ } else if (f.fmtFlags.plus) {
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = 43);
+ } else if (f.fmtFlags.space) {
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = 32);
+ }
+ oldZero$1 = f.fmtFlags.zero;
+ f.fmtFlags.zero = false;
+ f.pad($subslice(buf, i));
+ f.fmtFlags.zero = oldZero$1;
+ };
+ fmt.prototype.fmt_integer = function(u, base, isSigned, digits) { return this.$val.fmt_integer(u, base, isSigned, digits); };
+ fmt.ptr.prototype.truncate = function(s) {
+ var $ptr, _i, _ref, _rune, f, i, n, s;
+ f = this;
+ if (f.fmtFlags.precPresent) {
+ n = f.prec;
+ _ref = s;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.length)) { break; }
+ _rune = $decodeRune(_ref, _i);
+ i = _i;
+ n = n - (1) >> 0;
+ if (n < 0) {
+ return $substring(s, 0, i);
+ }
+ _i += _rune[1];
+ }
+ }
+ return s;
+ };
+ fmt.prototype.truncate = function(s) { return this.$val.truncate(s); };
+ fmt.ptr.prototype.fmt_s = function(s) {
+ var $ptr, f, s;
+ f = this;
+ s = f.truncate(s);
+ f.padString(s);
+ };
+ fmt.prototype.fmt_s = function(s) { return this.$val.fmt_s(s); };
+ fmt.ptr.prototype.fmt_sbx = function(s, b, digits) {
+ var $ptr, b, buf, c, digits, f, i, length, s, width;
+ f = this;
+ length = b.$length;
+ if (b === sliceType$2.nil) {
+ length = s.length;
+ }
+ if (f.fmtFlags.precPresent && f.prec < length) {
+ length = f.prec;
+ }
+ width = $imul(2, length);
+ if (width > 0) {
+ if (f.fmtFlags.space) {
+ if (f.fmtFlags.sharp) {
+ width = $imul(width, (2));
+ }
+ width = width + ((length - 1 >> 0)) >> 0;
+ } else if (f.fmtFlags.sharp) {
+ width = width + (2) >> 0;
+ }
+ } else {
+ if (f.fmtFlags.widPresent) {
+ f.writePadding(f.wid);
+ }
+ return;
+ }
+ if (f.fmtFlags.widPresent && f.wid > width && !f.fmtFlags.minus) {
+ f.writePadding(f.wid - width >> 0);
+ }
+ buf = f.buf.$get();
+ if (f.fmtFlags.sharp) {
+ buf = $append(buf, 48, digits.charCodeAt(16));
+ }
+ c = 0;
+ i = 0;
+ while (true) {
+ if (!(i < length)) { break; }
+ if (f.fmtFlags.space && i > 0) {
+ buf = $append(buf, 32);
+ if (f.fmtFlags.sharp) {
+ buf = $append(buf, 48, digits.charCodeAt(16));
+ }
+ }
+ if (!(b === sliceType$2.nil)) {
+ c = ((i < 0 || i >= b.$length) ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + i]);
+ } else {
+ c = s.charCodeAt(i);
+ }
+ buf = $append(buf, digits.charCodeAt((c >>> 4 << 24 >>> 24)), digits.charCodeAt(((c & 15) >>> 0)));
+ i = i + (1) >> 0;
+ }
+ f.buf.$set(buf);
+ if (f.fmtFlags.widPresent && f.wid > width && f.fmtFlags.minus) {
+ f.writePadding(f.wid - width >> 0);
+ }
+ };
+ fmt.prototype.fmt_sbx = function(s, b, digits) { return this.$val.fmt_sbx(s, b, digits); };
+ fmt.ptr.prototype.fmt_sx = function(s, digits) {
+ var $ptr, digits, f, s;
+ f = this;
+ f.fmt_sbx(s, sliceType$2.nil, digits);
+ };
+ fmt.prototype.fmt_sx = function(s, digits) { return this.$val.fmt_sx(s, digits); };
+ fmt.ptr.prototype.fmt_bx = function(b, digits) {
+ var $ptr, b, digits, f;
+ f = this;
+ f.fmt_sbx("", b, digits);
+ };
+ fmt.prototype.fmt_bx = function(b, digits) { return this.$val.fmt_bx(b, digits); };
+ fmt.ptr.prototype.fmt_q = function(s) {
+ var $ptr, buf, f, s;
+ f = this;
+ s = f.truncate(s);
+ if (f.fmtFlags.sharp && strconv.CanBackquote(s)) {
+ f.padString("`" + s + "`");
+ return;
+ }
+ buf = $subslice(new sliceType$2(f.intbuf), 0, 0);
+ if (f.fmtFlags.plus) {
+ f.pad(strconv.AppendQuoteToASCII(buf, s));
+ } else {
+ f.pad(strconv.AppendQuote(buf, s));
+ }
+ };
+ fmt.prototype.fmt_q = function(s) { return this.$val.fmt_q(s); };
+ fmt.ptr.prototype.fmt_c = function(c) {
+ var $ptr, buf, c, f, r, w;
+ f = this;
+ r = ((c.$low >> 0));
+ if ((c.$high > 0 || (c.$high === 0 && c.$low > 1114111))) {
+ r = 65533;
+ }
+ buf = $subslice(new sliceType$2(f.intbuf), 0, 0);
+ w = utf8.EncodeRune($subslice(buf, 0, 4), r);
+ f.pad($subslice(buf, 0, w));
+ };
+ fmt.prototype.fmt_c = function(c) { return this.$val.fmt_c(c); };
+ fmt.ptr.prototype.fmt_qc = function(c) {
+ var $ptr, buf, c, f, r;
+ f = this;
+ r = ((c.$low >> 0));
+ if ((c.$high > 0 || (c.$high === 0 && c.$low > 1114111))) {
+ r = 65533;
+ }
+ buf = $subslice(new sliceType$2(f.intbuf), 0, 0);
+ if (f.fmtFlags.plus) {
+ f.pad(strconv.AppendQuoteRuneToASCII(buf, r));
+ } else {
+ f.pad(strconv.AppendQuoteRune(buf, r));
+ }
+ };
+ fmt.prototype.fmt_qc = function(c) { return this.$val.fmt_qc(c); };
+ fmt.ptr.prototype.fmt_float = function(v, size, verb, prec) {
+ var $ptr, f, num, oldZero, prec, size, v, verb;
+ f = this;
+ if (f.fmtFlags.precPresent) {
+ prec = f.prec;
+ }
+ num = strconv.AppendFloat($subslice(new sliceType$2(f.intbuf), 0, 1), v, ((verb << 24 >>> 24)), prec, size);
+ if (((1 >= num.$length ? ($throwRuntimeError("index out of range"), undefined) : num.$array[num.$offset + 1]) === 45) || ((1 >= num.$length ? ($throwRuntimeError("index out of range"), undefined) : num.$array[num.$offset + 1]) === 43)) {
+ num = $subslice(num, 1);
+ } else {
+ (0 >= num.$length ? ($throwRuntimeError("index out of range"), undefined) : num.$array[num.$offset + 0] = 43);
+ }
+ if (f.fmtFlags.space && ((0 >= num.$length ? ($throwRuntimeError("index out of range"), undefined) : num.$array[num.$offset + 0]) === 43) && !f.fmtFlags.plus) {
+ (0 >= num.$length ? ($throwRuntimeError("index out of range"), undefined) : num.$array[num.$offset + 0] = 32);
+ }
+ if (((1 >= num.$length ? ($throwRuntimeError("index out of range"), undefined) : num.$array[num.$offset + 1]) === 73) || ((1 >= num.$length ? ($throwRuntimeError("index out of range"), undefined) : num.$array[num.$offset + 1]) === 78)) {
+ oldZero = f.fmtFlags.zero;
+ f.fmtFlags.zero = false;
+ if (((1 >= num.$length ? ($throwRuntimeError("index out of range"), undefined) : num.$array[num.$offset + 1]) === 78) && !f.fmtFlags.space && !f.fmtFlags.plus) {
+ num = $subslice(num, 1);
+ }
+ f.pad(num);
+ f.fmtFlags.zero = oldZero;
+ return;
+ }
+ if (f.fmtFlags.plus || !(((0 >= num.$length ? ($throwRuntimeError("index out of range"), undefined) : num.$array[num.$offset + 0]) === 43))) {
+ if (f.fmtFlags.zero && f.fmtFlags.widPresent && f.wid > num.$length) {
+ f.buf.WriteByte((0 >= num.$length ? ($throwRuntimeError("index out of range"), undefined) : num.$array[num.$offset + 0]));
+ f.writePadding(f.wid - num.$length >> 0);
+ f.buf.Write($subslice(num, 1));
+ return;
+ }
+ f.pad(num);
+ return;
+ }
+ f.pad($subslice(num, 1));
+ };
+ fmt.prototype.fmt_float = function(v, size, verb, prec) { return this.$val.fmt_float(v, size, verb, prec); };
+ $ptrType(buffer).prototype.Write = function(p) {
+ var $ptr, b, p;
+ b = this;
+ b.$set($appendSlice(b.$get(), p));
+ };
+ $ptrType(buffer).prototype.WriteString = function(s) {
+ var $ptr, b, s;
+ b = this;
+ b.$set($appendSlice(b.$get(), s));
+ };
+ $ptrType(buffer).prototype.WriteByte = function(c) {
+ var $ptr, b, c;
+ b = this;
+ b.$set($append(b.$get(), c));
+ };
+ $ptrType(buffer).prototype.WriteRune = function(r) {
+ var $ptr, b, bp, n, r, w, x;
+ bp = this;
+ if (r < 128) {
+ bp.$set($append(bp.$get(), ((r << 24 >>> 24))));
+ return;
+ }
+ b = bp.$get();
+ n = b.$length;
+ while (true) {
+ if (!((n + 4 >> 0) > b.$capacity)) { break; }
+ b = $append(b, 0);
+ }
+ w = utf8.EncodeRune((x = $subslice(b, n, (n + 4 >> 0)), $subslice(new sliceType$2(x.$array), x.$offset, x.$offset + x.$length)), r);
+ bp.$set($subslice(b, 0, (n + w >> 0)));
+ };
+ newPrinter = function() {
+ var $ptr, _r, p, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; p = $f.p; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = ppFree.Get(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ p = $assertType(_r, ptrType$2);
+ p.panicking = false;
+ p.erroring = false;
+ p.fmt.init((p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))));
+ $s = -1; return p;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: newPrinter }; } $f.$ptr = $ptr; $f._r = _r; $f.p = p; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ pp.ptr.prototype.free = function() {
+ var $ptr, p;
+ p = this;
+ p.buf = $subslice(p.buf, 0, 0);
+ p.arg = $ifaceNil;
+ p.value = new reflect.Value.ptr(ptrType.nil, 0, 0);
+ ppFree.Put(p);
+ };
+ pp.prototype.free = function() { return this.$val.free(); };
+ pp.ptr.prototype.Width = function() {
+ var $ptr, _tmp, _tmp$1, ok, p, wid;
+ wid = 0;
+ ok = false;
+ p = this;
+ _tmp = p.fmt.wid;
+ _tmp$1 = p.fmt.fmtFlags.widPresent;
+ wid = _tmp;
+ ok = _tmp$1;
+ return [wid, ok];
+ };
+ pp.prototype.Width = function() { return this.$val.Width(); };
+ pp.ptr.prototype.Precision = function() {
+ var $ptr, _tmp, _tmp$1, ok, p, prec;
+ prec = 0;
+ ok = false;
+ p = this;
+ _tmp = p.fmt.prec;
+ _tmp$1 = p.fmt.fmtFlags.precPresent;
+ prec = _tmp;
+ ok = _tmp$1;
+ return [prec, ok];
+ };
+ pp.prototype.Precision = function() { return this.$val.Precision(); };
+ pp.ptr.prototype.Flag = function(b) {
+ var $ptr, _1, b, p;
+ p = this;
+ _1 = b;
+ if (_1 === (45)) {
+ return p.fmt.fmtFlags.minus;
+ } else if (_1 === (43)) {
+ return p.fmt.fmtFlags.plus || p.fmt.fmtFlags.plusV;
+ } else if (_1 === (35)) {
+ return p.fmt.fmtFlags.sharp || p.fmt.fmtFlags.sharpV;
+ } else if (_1 === (32)) {
+ return p.fmt.fmtFlags.space;
+ } else if (_1 === (48)) {
+ return p.fmt.fmtFlags.zero;
+ }
+ return false;
+ };
+ pp.prototype.Flag = function(b) { return this.$val.Flag(b); };
+ pp.ptr.prototype.Write = function(b) {
+ var $ptr, _tmp, _tmp$1, b, err, p, ret;
+ ret = 0;
+ err = $ifaceNil;
+ p = this;
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).Write(b);
+ _tmp = b.$length;
+ _tmp$1 = $ifaceNil;
+ ret = _tmp;
+ err = _tmp$1;
+ return [ret, err];
+ };
+ pp.prototype.Write = function(b) { return this.$val.Write(b); };
+ Fprintf = function(w, format, a) {
+ var $ptr, _r, _r$1, _tuple, a, err, format, n, p, w, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; a = $f.a; err = $f.err; format = $f.format; n = $f.n; p = $f.p; w = $f.w; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ _r = newPrinter(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ p = _r;
+ $r = p.doPrintf(format, a); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$1 = w.Write((x = p.buf, $subslice(new sliceType$2(x.$array), x.$offset, x.$offset + x.$length))); /* */ $s = 3; case 3: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple = _r$1;
+ n = _tuple[0];
+ err = _tuple[1];
+ p.free();
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Fprintf }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.a = a; $f.err = err; $f.format = format; $f.n = n; $f.p = p; $f.w = w; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Fprintf = Fprintf;
+ Sprintf = function(format, a) {
+ var $ptr, _r, a, format, p, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; format = $f.format; p = $f.p; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = newPrinter(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ p = _r;
+ $r = p.doPrintf(format, a); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ s = ($bytesToString(p.buf));
+ p.free();
+ $s = -1; return s;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Sprintf }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.format = format; $f.p = p; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Sprintf = Sprintf;
+ Errorf = function(format, a) {
+ var $ptr, _r, _r$1, a, format, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; a = $f.a; format = $f.format; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = Sprintf(format, a); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = errors.New(_r); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Errorf }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.a = a; $f.format = format; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Errorf = Errorf;
+ Fprint = function(w, a) {
+ var $ptr, _r, _r$1, _tuple, a, err, n, p, w, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; a = $f.a; err = $f.err; n = $f.n; p = $f.p; w = $f.w; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ _r = newPrinter(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ p = _r;
+ $r = p.doPrint(a); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$1 = w.Write((x = p.buf, $subslice(new sliceType$2(x.$array), x.$offset, x.$offset + x.$length))); /* */ $s = 3; case 3: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple = _r$1;
+ n = _tuple[0];
+ err = _tuple[1];
+ p.free();
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Fprint }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.a = a; $f.err = err; $f.n = n; $f.p = p; $f.w = w; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Fprint = Fprint;
+ Print = function(a) {
+ var $ptr, _r, _tuple, a, err, n, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; a = $f.a; err = $f.err; n = $f.n; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ _r = Fprint(os.Stdout, a); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ n = _tuple[0];
+ err = _tuple[1];
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Print }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.a = a; $f.err = err; $f.n = n; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Print = Print;
+ Sprint = function(a) {
+ var $ptr, _r, a, p, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; p = $f.p; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = newPrinter(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ p = _r;
+ $r = p.doPrint(a); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ s = ($bytesToString(p.buf));
+ p.free();
+ $s = -1; return s;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Sprint }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.p = p; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Sprint = Sprint;
+ Fprintln = function(w, a) {
+ var $ptr, _r, _r$1, _tuple, a, err, n, p, w, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; a = $f.a; err = $f.err; n = $f.n; p = $f.p; w = $f.w; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ _r = newPrinter(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ p = _r;
+ $r = p.doPrintln(a); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$1 = w.Write((x = p.buf, $subslice(new sliceType$2(x.$array), x.$offset, x.$offset + x.$length))); /* */ $s = 3; case 3: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple = _r$1;
+ n = _tuple[0];
+ err = _tuple[1];
+ p.free();
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Fprintln }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.a = a; $f.err = err; $f.n = n; $f.p = p; $f.w = w; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Fprintln = Fprintln;
+ Println = function(a) {
+ var $ptr, _r, _tuple, a, err, n, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; a = $f.a; err = $f.err; n = $f.n; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ _r = Fprintln(os.Stdout, a); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ n = _tuple[0];
+ err = _tuple[1];
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Println }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.a = a; $f.err = err; $f.n = n; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Println = Println;
+ Sprintln = function(a) {
+ var $ptr, _r, a, p, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; p = $f.p; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = newPrinter(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ p = _r;
+ $r = p.doPrintln(a); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ s = ($bytesToString(p.buf));
+ p.free();
+ $s = -1; return s;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Sprintln }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.p = p; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Sprintln = Sprintln;
+ getField = function(v, i) {
+ var $ptr, _r, _r$1, i, v, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; i = $f.i; v = $f.v; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = $clone(v, reflect.Value).Field(i); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ val = _r;
+ /* */ if (($clone(val, reflect.Value).Kind() === 20) && !$clone(val, reflect.Value).IsNil()) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (($clone(val, reflect.Value).Kind() === 20) && !$clone(val, reflect.Value).IsNil()) { */ case 2:
+ _r$1 = $clone(val, reflect.Value).Elem(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ val = _r$1;
+ /* } */ case 3:
+ $s = -1; return val;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: getField }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.i = i; $f.v = v; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ tooLarge = function(x) {
+ var $ptr, x;
+ return x > 1000000 || x < -1000000;
+ };
+ parsenum = function(s, start, end) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, end, isnum, newi, num, s, start;
+ num = 0;
+ isnum = false;
+ newi = 0;
+ if (start >= end) {
+ _tmp = 0;
+ _tmp$1 = false;
+ _tmp$2 = end;
+ num = _tmp;
+ isnum = _tmp$1;
+ newi = _tmp$2;
+ return [num, isnum, newi];
+ }
+ newi = start;
+ while (true) {
+ if (!(newi < end && 48 <= s.charCodeAt(newi) && s.charCodeAt(newi) <= 57)) { break; }
+ if (tooLarge(num)) {
+ _tmp$3 = 0;
+ _tmp$4 = false;
+ _tmp$5 = end;
+ num = _tmp$3;
+ isnum = _tmp$4;
+ newi = _tmp$5;
+ return [num, isnum, newi];
+ }
+ num = ($imul(num, 10)) + (((s.charCodeAt(newi) - 48 << 24 >>> 24) >> 0)) >> 0;
+ isnum = true;
+ newi = newi + (1) >> 0;
+ }
+ return [num, isnum, newi];
+ };
+ pp.ptr.prototype.unknownType = function(v) {
+ var $ptr, _r, p, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; p = $f.p; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ if (!$clone(v, reflect.Value).IsValid()) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("<nil>");
+ $s = -1; return;
+ }
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(63);
+ _r = $clone(v, reflect.Value).Type().String(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $r = (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(_r); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(63);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: pp.ptr.prototype.unknownType }; } $f.$ptr = $ptr; $f._r = _r; $f.p = p; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ pp.prototype.unknownType = function(v) { return this.$val.unknownType(v); };
+ pp.ptr.prototype.badVerb = function(verb) {
+ var $ptr, _r, _r$1, p, verb, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; p = $f.p; verb = $f.verb; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ p.erroring = true;
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("%!");
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteRune(verb);
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(40);
+ /* */ if (!($interfaceIsEqual(p.arg, $ifaceNil))) { $s = 2; continue; }
+ /* */ if ($clone(p.value, reflect.Value).IsValid()) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!($interfaceIsEqual(p.arg, $ifaceNil))) { */ case 2:
+ _r = reflect.TypeOf(p.arg).String(); /* */ $s = 6; case 6: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $r = (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(_r); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(61);
+ $r = p.printArg(p.arg, 118); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 5; continue;
+ /* } else if ($clone(p.value, reflect.Value).IsValid()) { */ case 3:
+ _r$1 = $clone(p.value, reflect.Value).Type().String(); /* */ $s = 9; case 9: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $r = (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(_r$1); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(61);
+ $r = p.printValue($clone(p.value, reflect.Value), 118, 0); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 5; continue;
+ /* } else { */ case 4:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("<nil>");
+ /* } */ case 5:
+ case 1:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(41);
+ p.erroring = false;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: pp.ptr.prototype.badVerb }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.p = p; $f.verb = verb; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ pp.prototype.badVerb = function(verb) { return this.$val.badVerb(verb); };
+ pp.ptr.prototype.fmtBool = function(v, verb) {
+ var $ptr, _1, p, v, verb, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; p = $f.p; v = $f.v; verb = $f.verb; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ _1 = verb;
+ /* */ if ((_1 === (116)) || (_1 === (118))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if ((_1 === (116)) || (_1 === (118))) { */ case 2:
+ p.fmt.fmt_boolean(v);
+ $s = 4; continue;
+ /* } else { */ case 3:
+ $r = p.badVerb(verb); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 4:
+ case 1:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: pp.ptr.prototype.fmtBool }; } $f.$ptr = $ptr; $f._1 = _1; $f.p = p; $f.v = v; $f.verb = verb; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ pp.prototype.fmtBool = function(v, verb) { return this.$val.fmtBool(v, verb); };
+ pp.ptr.prototype.fmt0x64 = function(v, leading0x) {
+ var $ptr, leading0x, p, sharp, v;
+ p = this;
+ sharp = p.fmt.fmtFlags.sharp;
+ p.fmt.fmtFlags.sharp = leading0x;
+ p.fmt.fmt_integer(v, 16, false, "0123456789abcdefx");
+ p.fmt.fmtFlags.sharp = sharp;
+ };
+ pp.prototype.fmt0x64 = function(v, leading0x) { return this.$val.fmt0x64(v, leading0x); };
+ pp.ptr.prototype.fmtInteger = function(v, isSigned, verb) {
+ var $ptr, _1, isSigned, p, v, verb, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; isSigned = $f.isSigned; p = $f.p; v = $f.v; verb = $f.verb; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ _1 = verb;
+ /* */ if (_1 === (118)) { $s = 2; continue; }
+ /* */ if (_1 === (100)) { $s = 3; continue; }
+ /* */ if (_1 === (98)) { $s = 4; continue; }
+ /* */ if (_1 === (111)) { $s = 5; continue; }
+ /* */ if (_1 === (120)) { $s = 6; continue; }
+ /* */ if (_1 === (88)) { $s = 7; continue; }
+ /* */ if (_1 === (99)) { $s = 8; continue; }
+ /* */ if (_1 === (113)) { $s = 9; continue; }
+ /* */ if (_1 === (85)) { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if (_1 === (118)) { */ case 2:
+ if (p.fmt.fmtFlags.sharpV && !isSigned) {
+ p.fmt0x64(v, true);
+ } else {
+ p.fmt.fmt_integer(v, 10, isSigned, "0123456789abcdefx");
+ }
+ $s = 12; continue;
+ /* } else if (_1 === (100)) { */ case 3:
+ p.fmt.fmt_integer(v, 10, isSigned, "0123456789abcdefx");
+ $s = 12; continue;
+ /* } else if (_1 === (98)) { */ case 4:
+ p.fmt.fmt_integer(v, 2, isSigned, "0123456789abcdefx");
+ $s = 12; continue;
+ /* } else if (_1 === (111)) { */ case 5:
+ p.fmt.fmt_integer(v, 8, isSigned, "0123456789abcdefx");
+ $s = 12; continue;
+ /* } else if (_1 === (120)) { */ case 6:
+ p.fmt.fmt_integer(v, 16, isSigned, "0123456789abcdefx");
+ $s = 12; continue;
+ /* } else if (_1 === (88)) { */ case 7:
+ p.fmt.fmt_integer(v, 16, isSigned, "0123456789ABCDEFX");
+ $s = 12; continue;
+ /* } else if (_1 === (99)) { */ case 8:
+ p.fmt.fmt_c(v);
+ $s = 12; continue;
+ /* } else if (_1 === (113)) { */ case 9:
+ /* */ if ((v.$high < 0 || (v.$high === 0 && v.$low <= 1114111))) { $s = 13; continue; }
+ /* */ $s = 14; continue;
+ /* if ((v.$high < 0 || (v.$high === 0 && v.$low <= 1114111))) { */ case 13:
+ p.fmt.fmt_qc(v);
+ $s = 15; continue;
+ /* } else { */ case 14:
+ $r = p.badVerb(verb); /* */ $s = 16; case 16: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 15:
+ $s = 12; continue;
+ /* } else if (_1 === (85)) { */ case 10:
+ p.fmt.fmt_unicode(v);
+ $s = 12; continue;
+ /* } else { */ case 11:
+ $r = p.badVerb(verb); /* */ $s = 17; case 17: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 12:
+ case 1:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: pp.ptr.prototype.fmtInteger }; } $f.$ptr = $ptr; $f._1 = _1; $f.isSigned = isSigned; $f.p = p; $f.v = v; $f.verb = verb; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ pp.prototype.fmtInteger = function(v, isSigned, verb) { return this.$val.fmtInteger(v, isSigned, verb); };
+ pp.ptr.prototype.fmtFloat = function(v, size, verb) {
+ var $ptr, _1, p, size, v, verb, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; p = $f.p; size = $f.size; v = $f.v; verb = $f.verb; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ _1 = verb;
+ /* */ if (_1 === (118)) { $s = 2; continue; }
+ /* */ if ((_1 === (98)) || (_1 === (103)) || (_1 === (71))) { $s = 3; continue; }
+ /* */ if ((_1 === (102)) || (_1 === (101)) || (_1 === (69))) { $s = 4; continue; }
+ /* */ if (_1 === (70)) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (_1 === (118)) { */ case 2:
+ p.fmt.fmt_float(v, size, 103, -1);
+ $s = 7; continue;
+ /* } else if ((_1 === (98)) || (_1 === (103)) || (_1 === (71))) { */ case 3:
+ p.fmt.fmt_float(v, size, verb, -1);
+ $s = 7; continue;
+ /* } else if ((_1 === (102)) || (_1 === (101)) || (_1 === (69))) { */ case 4:
+ p.fmt.fmt_float(v, size, verb, 6);
+ $s = 7; continue;
+ /* } else if (_1 === (70)) { */ case 5:
+ p.fmt.fmt_float(v, size, 102, 6);
+ $s = 7; continue;
+ /* } else { */ case 6:
+ $r = p.badVerb(verb); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 7:
+ case 1:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: pp.ptr.prototype.fmtFloat }; } $f.$ptr = $ptr; $f._1 = _1; $f.p = p; $f.size = size; $f.v = v; $f.verb = verb; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ pp.prototype.fmtFloat = function(v, size, verb) { return this.$val.fmtFloat(v, size, verb); };
+ pp.ptr.prototype.fmtComplex = function(v, size, verb) {
+ var $ptr, _1, _q, _q$1, oldPlus, p, size, v, verb, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _q = $f._q; _q$1 = $f._q$1; oldPlus = $f.oldPlus; p = $f.p; size = $f.size; v = $f.v; verb = $f.verb; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ _1 = verb;
+ /* */ if ((_1 === (118)) || (_1 === (98)) || (_1 === (103)) || (_1 === (71)) || (_1 === (102)) || (_1 === (70)) || (_1 === (101)) || (_1 === (69))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if ((_1 === (118)) || (_1 === (98)) || (_1 === (103)) || (_1 === (71)) || (_1 === (102)) || (_1 === (70)) || (_1 === (101)) || (_1 === (69))) { */ case 2:
+ oldPlus = p.fmt.fmtFlags.plus;
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(40);
+ $r = p.fmtFloat(v.$real, (_q = size / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")), verb); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ p.fmt.fmtFlags.plus = true;
+ $r = p.fmtFloat(v.$imag, (_q$1 = size / 2, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero")), verb); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("i)");
+ p.fmt.fmtFlags.plus = oldPlus;
+ $s = 4; continue;
+ /* } else { */ case 3:
+ $r = p.badVerb(verb); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 4:
+ case 1:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: pp.ptr.prototype.fmtComplex }; } $f.$ptr = $ptr; $f._1 = _1; $f._q = _q; $f._q$1 = _q$1; $f.oldPlus = oldPlus; $f.p = p; $f.size = size; $f.v = v; $f.verb = verb; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ pp.prototype.fmtComplex = function(v, size, verb) { return this.$val.fmtComplex(v, size, verb); };
+ pp.ptr.prototype.fmtString = function(v, verb) {
+ var $ptr, _1, p, v, verb, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; p = $f.p; v = $f.v; verb = $f.verb; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ _1 = verb;
+ /* */ if (_1 === (118)) { $s = 2; continue; }
+ /* */ if (_1 === (115)) { $s = 3; continue; }
+ /* */ if (_1 === (120)) { $s = 4; continue; }
+ /* */ if (_1 === (88)) { $s = 5; continue; }
+ /* */ if (_1 === (113)) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (_1 === (118)) { */ case 2:
+ if (p.fmt.fmtFlags.sharpV) {
+ p.fmt.fmt_q(v);
+ } else {
+ p.fmt.fmt_s(v);
+ }
+ $s = 8; continue;
+ /* } else if (_1 === (115)) { */ case 3:
+ p.fmt.fmt_s(v);
+ $s = 8; continue;
+ /* } else if (_1 === (120)) { */ case 4:
+ p.fmt.fmt_sx(v, "0123456789abcdefx");
+ $s = 8; continue;
+ /* } else if (_1 === (88)) { */ case 5:
+ p.fmt.fmt_sx(v, "0123456789ABCDEFX");
+ $s = 8; continue;
+ /* } else if (_1 === (113)) { */ case 6:
+ p.fmt.fmt_q(v);
+ $s = 8; continue;
+ /* } else { */ case 7:
+ $r = p.badVerb(verb); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 8:
+ case 1:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: pp.ptr.prototype.fmtString }; } $f.$ptr = $ptr; $f._1 = _1; $f.p = p; $f.v = v; $f.verb = verb; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ pp.prototype.fmtString = function(v, verb) { return this.$val.fmtString(v, verb); };
+ pp.ptr.prototype.fmtBytes = function(v, verb, typeString) {
+ var $ptr, _1, _i, _i$1, _r, _ref, _ref$1, c, c$1, i, i$1, p, typeString, v, verb, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _i = $f._i; _i$1 = $f._i$1; _r = $f._r; _ref = $f._ref; _ref$1 = $f._ref$1; c = $f.c; c$1 = $f.c$1; i = $f.i; i$1 = $f.i$1; p = $f.p; typeString = $f.typeString; v = $f.v; verb = $f.verb; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ _1 = verb;
+ /* */ if ((_1 === (118)) || (_1 === (100))) { $s = 2; continue; }
+ /* */ if (_1 === (115)) { $s = 3; continue; }
+ /* */ if (_1 === (120)) { $s = 4; continue; }
+ /* */ if (_1 === (88)) { $s = 5; continue; }
+ /* */ if (_1 === (113)) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if ((_1 === (118)) || (_1 === (100))) { */ case 2:
+ if (p.fmt.fmtFlags.sharpV) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(typeString);
+ if (v === sliceType$2.nil) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("(nil)");
+ $s = -1; return;
+ }
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(123);
+ _ref = v;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ c = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (i > 0) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(", ");
+ }
+ p.fmt0x64((new $Uint64(0, c)), true);
+ _i++;
+ }
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(125);
+ } else {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(91);
+ _ref$1 = v;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ i$1 = _i$1;
+ c$1 = ((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]);
+ if (i$1 > 0) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(32);
+ }
+ p.fmt.fmt_integer((new $Uint64(0, c$1)), 10, false, "0123456789abcdefx");
+ _i$1++;
+ }
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(93);
+ }
+ $s = 8; continue;
+ /* } else if (_1 === (115)) { */ case 3:
+ p.fmt.fmt_s(($bytesToString(v)));
+ $s = 8; continue;
+ /* } else if (_1 === (120)) { */ case 4:
+ p.fmt.fmt_bx(v, "0123456789abcdefx");
+ $s = 8; continue;
+ /* } else if (_1 === (88)) { */ case 5:
+ p.fmt.fmt_bx(v, "0123456789ABCDEFX");
+ $s = 8; continue;
+ /* } else if (_1 === (113)) { */ case 6:
+ p.fmt.fmt_q(($bytesToString(v)));
+ $s = 8; continue;
+ /* } else { */ case 7:
+ _r = reflect.ValueOf(v); /* */ $s = 9; case 9: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $r = p.printValue($clone(_r, reflect.Value), verb, 0); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 8:
+ case 1:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: pp.ptr.prototype.fmtBytes }; } $f.$ptr = $ptr; $f._1 = _1; $f._i = _i; $f._i$1 = _i$1; $f._r = _r; $f._ref = _ref; $f._ref$1 = _ref$1; $f.c = c; $f.c$1 = c$1; $f.i = i; $f.i$1 = i$1; $f.p = p; $f.typeString = typeString; $f.v = v; $f.verb = verb; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ pp.prototype.fmtBytes = function(v, verb, typeString) { return this.$val.fmtBytes(v, verb, typeString); };
+ pp.ptr.prototype.fmtPointer = function(value, verb) {
+ var $ptr, _1, _2, _r, p, u, value, verb, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _2 = $f._2; _r = $f._r; p = $f.p; u = $f.u; value = $f.value; verb = $f.verb; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ u = 0;
+ _1 = $clone(value, reflect.Value).Kind();
+ /* */ if ((_1 === (18)) || (_1 === (19)) || (_1 === (21)) || (_1 === (22)) || (_1 === (23)) || (_1 === (26))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if ((_1 === (18)) || (_1 === (19)) || (_1 === (21)) || (_1 === (22)) || (_1 === (23)) || (_1 === (26))) { */ case 2:
+ u = $clone(value, reflect.Value).Pointer();
+ $s = 4; continue;
+ /* } else { */ case 3:
+ $r = p.badVerb(verb); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* } */ case 4:
+ case 1:
+ _2 = verb;
+ /* */ if (_2 === (118)) { $s = 7; continue; }
+ /* */ if (_2 === (112)) { $s = 8; continue; }
+ /* */ if ((_2 === (98)) || (_2 === (111)) || (_2 === (100)) || (_2 === (120)) || (_2 === (88))) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (_2 === (118)) { */ case 7:
+ /* */ if (p.fmt.fmtFlags.sharpV) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if (p.fmt.fmtFlags.sharpV) { */ case 12:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(40);
+ _r = $clone(value, reflect.Value).Type().String(); /* */ $s = 15; case 15: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $r = (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(_r); /* */ $s = 16; case 16: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(")(");
+ if (u === 0) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("nil");
+ } else {
+ p.fmt0x64((new $Uint64(0, u.constructor === Number ? u : 1)), true);
+ }
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(41);
+ $s = 14; continue;
+ /* } else { */ case 13:
+ if (u === 0) {
+ p.fmt.padString("<nil>");
+ } else {
+ p.fmt0x64((new $Uint64(0, u.constructor === Number ? u : 1)), !p.fmt.fmtFlags.sharp);
+ }
+ /* } */ case 14:
+ $s = 11; continue;
+ /* } else if (_2 === (112)) { */ case 8:
+ p.fmt0x64((new $Uint64(0, u.constructor === Number ? u : 1)), !p.fmt.fmtFlags.sharp);
+ $s = 11; continue;
+ /* } else if ((_2 === (98)) || (_2 === (111)) || (_2 === (100)) || (_2 === (120)) || (_2 === (88))) { */ case 9:
+ $r = p.fmtInteger((new $Uint64(0, u.constructor === Number ? u : 1)), false, verb); /* */ $s = 17; case 17: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 11; continue;
+ /* } else { */ case 10:
+ $r = p.badVerb(verb); /* */ $s = 18; case 18: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 11:
+ case 6:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: pp.ptr.prototype.fmtPointer }; } $f.$ptr = $ptr; $f._1 = _1; $f._2 = _2; $f._r = _r; $f.p = p; $f.u = u; $f.value = value; $f.verb = verb; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ pp.prototype.fmtPointer = function(value, verb) { return this.$val.fmtPointer(value, verb); };
+ pp.ptr.prototype.catchPanic = function(arg, verb) {
+ var $ptr, _r, arg, err, oldFlags, p, v, verb, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; arg = $f.arg; err = $f.err; oldFlags = $f.oldFlags; p = $f.p; v = $f.v; verb = $f.verb; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ err = $recover();
+ /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!($interfaceIsEqual(err, $ifaceNil))) { */ case 1:
+ _r = reflect.ValueOf(arg); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ v = _r;
+ if (($clone(v, reflect.Value).Kind() === 22) && $clone(v, reflect.Value).IsNil()) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("<nil>");
+ $s = -1; return;
+ }
+ if (p.panicking) {
+ $panic(err);
+ }
+ oldFlags = $clone(p.fmt.fmtFlags, fmtFlags);
+ p.fmt.clearflags();
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("%!");
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteRune(verb);
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("(PANIC=");
+ p.panicking = true;
+ $r = p.printArg(err, 118); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ p.panicking = false;
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(41);
+ fmtFlags.copy(p.fmt.fmtFlags, oldFlags);
+ /* } */ case 2:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: pp.ptr.prototype.catchPanic }; } $f.$ptr = $ptr; $f._r = _r; $f.arg = arg; $f.err = err; $f.oldFlags = oldFlags; $f.p = p; $f.v = v; $f.verb = verb; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ pp.prototype.catchPanic = function(arg, verb) { return this.$val.catchPanic(arg, verb); };
+ pp.ptr.prototype.handleMethods = function(verb) {
+ var $ptr, _1, _r, _r$1, _r$2, _ref, _tuple, _tuple$1, formatter, handled, ok, ok$1, p, stringer, v, v$1, verb, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _ref = $f._ref; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; formatter = $f.formatter; handled = $f.handled; ok = $f.ok; ok$1 = $f.ok$1; p = $f.p; stringer = $f.stringer; v = $f.v; v$1 = $f.v$1; verb = $f.verb; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ handled = false;
+ p = this;
+ if (p.erroring) {
+ $s = -1; return handled;
+ }
+ _tuple = $assertType(p.arg, Formatter, true);
+ formatter = _tuple[0];
+ ok = _tuple[1];
+ /* */ if (ok) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (ok) { */ case 1:
+ handled = true;
+ $deferred.push([$methodVal(p, "catchPanic"), [p.arg, verb]]);
+ $r = formatter.Format(p, verb); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return handled;
+ /* } */ case 2:
+ /* */ if (p.fmt.fmtFlags.sharpV) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (p.fmt.fmtFlags.sharpV) { */ case 4:
+ _tuple$1 = $assertType(p.arg, GoStringer, true);
+ stringer = _tuple$1[0];
+ ok$1 = _tuple$1[1];
+ /* */ if (ok$1) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (ok$1) { */ case 7:
+ handled = true;
+ $deferred.push([$methodVal(p, "catchPanic"), [p.arg, verb]]);
+ _r = stringer.GoString(); /* */ $s = 9; case 9: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $r = p.fmt.fmt_s(_r); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return handled;
+ /* } */ case 8:
+ $s = 6; continue;
+ /* } else { */ case 5:
+ _1 = verb;
+ /* */ if ((_1 === (118)) || (_1 === (115)) || (_1 === (120)) || (_1 === (88)) || (_1 === (113))) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if ((_1 === (118)) || (_1 === (115)) || (_1 === (120)) || (_1 === (88)) || (_1 === (113))) { */ case 12:
+ _ref = p.arg;
+ /* */ if ($assertType(_ref, $error, true)[1]) { $s = 14; continue; }
+ /* */ if ($assertType(_ref, Stringer, true)[1]) { $s = 15; continue; }
+ /* */ $s = 16; continue;
+ /* if ($assertType(_ref, $error, true)[1]) { */ case 14:
+ v = _ref;
+ handled = true;
+ $deferred.push([$methodVal(p, "catchPanic"), [p.arg, verb]]);
+ _r$1 = v.Error(); /* */ $s = 17; case 17: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $r = p.fmtString(_r$1, verb); /* */ $s = 18; case 18: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return handled;
+ /* } else if ($assertType(_ref, Stringer, true)[1]) { */ case 15:
+ v$1 = _ref;
+ handled = true;
+ $deferred.push([$methodVal(p, "catchPanic"), [p.arg, verb]]);
+ _r$2 = v$1.String(); /* */ $s = 19; case 19: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $r = p.fmtString(_r$2, verb); /* */ $s = 20; case 20: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return handled;
+ /* } */ case 16:
+ /* } */ case 13:
+ case 11:
+ /* } */ case 6:
+ handled = false;
+ $s = -1; return handled;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if (!$curGoroutine.asleep) { return handled; } if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: pp.ptr.prototype.handleMethods }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._ref = _ref; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.formatter = formatter; $f.handled = handled; $f.ok = ok; $f.ok$1 = ok$1; $f.p = p; $f.stringer = stringer; $f.v = v; $f.v$1 = v$1; $f.verb = verb; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ pp.prototype.handleMethods = function(verb) { return this.$val.handleMethods(verb); };
+ pp.ptr.prototype.printArg = function(arg, verb) {
+ var $ptr, _1, _2, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _ref, arg, f, f$1, f$10, f$11, f$12, f$13, f$14, f$15, f$16, f$17, f$18, f$19, f$2, f$3, f$4, f$5, f$6, f$7, f$8, f$9, p, verb, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _2 = $f._2; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _ref = $f._ref; arg = $f.arg; f = $f.f; f$1 = $f.f$1; f$10 = $f.f$10; f$11 = $f.f$11; f$12 = $f.f$12; f$13 = $f.f$13; f$14 = $f.f$14; f$15 = $f.f$15; f$16 = $f.f$16; f$17 = $f.f$17; f$18 = $f.f$18; f$19 = $f.f$19; f$2 = $f.f$2; f$3 = $f.f$3; f$4 = $f.f$4; f$5 = $f.f$5; f$6 = $f.f$6; f$7 = $f.f$7; f$8 = $f.f$8; f$9 = $f.f$9; p = $f.p; verb = $f.verb; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ p.arg = arg;
+ p.value = new reflect.Value.ptr(ptrType.nil, 0, 0);
+ /* */ if ($interfaceIsEqual(arg, $ifaceNil)) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ($interfaceIsEqual(arg, $ifaceNil)) { */ case 1:
+ _1 = verb;
+ /* */ if ((_1 === (84)) || (_1 === (118))) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if ((_1 === (84)) || (_1 === (118))) { */ case 4:
+ p.fmt.padString("<nil>");
+ $s = 6; continue;
+ /* } else { */ case 5:
+ $r = p.badVerb(verb); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 6:
+ case 3:
+ $s = -1; return;
+ /* } */ case 2:
+ _2 = verb;
+ /* */ if (_2 === (84)) { $s = 9; continue; }
+ /* */ if (_2 === (112)) { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if (_2 === (84)) { */ case 9:
+ _r = reflect.TypeOf(arg).String(); /* */ $s = 12; case 12: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $r = p.fmt.fmt_s(_r); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* } else if (_2 === (112)) { */ case 10:
+ _r$1 = reflect.ValueOf(arg); /* */ $s = 14; case 14: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $r = p.fmtPointer($clone(_r$1, reflect.Value), 112); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* } */ case 11:
+ case 8:
+ _ref = arg;
+ /* */ if ($assertType(_ref, $Bool, true)[1]) { $s = 16; continue; }
+ /* */ if ($assertType(_ref, $Float32, true)[1]) { $s = 17; continue; }
+ /* */ if ($assertType(_ref, $Float64, true)[1]) { $s = 18; continue; }
+ /* */ if ($assertType(_ref, $Complex64, true)[1]) { $s = 19; continue; }
+ /* */ if ($assertType(_ref, $Complex128, true)[1]) { $s = 20; continue; }
+ /* */ if ($assertType(_ref, $Int, true)[1]) { $s = 21; continue; }
+ /* */ if ($assertType(_ref, $Int8, true)[1]) { $s = 22; continue; }
+ /* */ if ($assertType(_ref, $Int16, true)[1]) { $s = 23; continue; }
+ /* */ if ($assertType(_ref, $Int32, true)[1]) { $s = 24; continue; }
+ /* */ if ($assertType(_ref, $Int64, true)[1]) { $s = 25; continue; }
+ /* */ if ($assertType(_ref, $Uint, true)[1]) { $s = 26; continue; }
+ /* */ if ($assertType(_ref, $Uint8, true)[1]) { $s = 27; continue; }
+ /* */ if ($assertType(_ref, $Uint16, true)[1]) { $s = 28; continue; }
+ /* */ if ($assertType(_ref, $Uint32, true)[1]) { $s = 29; continue; }
+ /* */ if ($assertType(_ref, $Uint64, true)[1]) { $s = 30; continue; }
+ /* */ if ($assertType(_ref, $Uintptr, true)[1]) { $s = 31; continue; }
+ /* */ if ($assertType(_ref, $String, true)[1]) { $s = 32; continue; }
+ /* */ if ($assertType(_ref, sliceType$2, true)[1]) { $s = 33; continue; }
+ /* */ if ($assertType(_ref, reflect.Value, true)[1]) { $s = 34; continue; }
+ /* */ $s = 35; continue;
+ /* if ($assertType(_ref, $Bool, true)[1]) { */ case 16:
+ f = _ref.$val;
+ $r = p.fmtBool(f, verb); /* */ $s = 37; case 37: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, $Float32, true)[1]) { */ case 17:
+ f$1 = _ref.$val;
+ $r = p.fmtFloat((f$1), 32, verb); /* */ $s = 38; case 38: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, $Float64, true)[1]) { */ case 18:
+ f$2 = _ref.$val;
+ $r = p.fmtFloat(f$2, 64, verb); /* */ $s = 39; case 39: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, $Complex64, true)[1]) { */ case 19:
+ f$3 = _ref.$val;
+ $r = p.fmtComplex((new $Complex128(f$3.$real, f$3.$imag)), 64, verb); /* */ $s = 40; case 40: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, $Complex128, true)[1]) { */ case 20:
+ f$4 = _ref.$val;
+ $r = p.fmtComplex(f$4, 128, verb); /* */ $s = 41; case 41: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, $Int, true)[1]) { */ case 21:
+ f$5 = _ref.$val;
+ $r = p.fmtInteger((new $Uint64(0, f$5)), true, verb); /* */ $s = 42; case 42: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, $Int8, true)[1]) { */ case 22:
+ f$6 = _ref.$val;
+ $r = p.fmtInteger((new $Uint64(0, f$6)), true, verb); /* */ $s = 43; case 43: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, $Int16, true)[1]) { */ case 23:
+ f$7 = _ref.$val;
+ $r = p.fmtInteger((new $Uint64(0, f$7)), true, verb); /* */ $s = 44; case 44: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, $Int32, true)[1]) { */ case 24:
+ f$8 = _ref.$val;
+ $r = p.fmtInteger((new $Uint64(0, f$8)), true, verb); /* */ $s = 45; case 45: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, $Int64, true)[1]) { */ case 25:
+ f$9 = _ref.$val;
+ $r = p.fmtInteger((new $Uint64(f$9.$high, f$9.$low)), true, verb); /* */ $s = 46; case 46: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, $Uint, true)[1]) { */ case 26:
+ f$10 = _ref.$val;
+ $r = p.fmtInteger((new $Uint64(0, f$10)), false, verb); /* */ $s = 47; case 47: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, $Uint8, true)[1]) { */ case 27:
+ f$11 = _ref.$val;
+ $r = p.fmtInteger((new $Uint64(0, f$11)), false, verb); /* */ $s = 48; case 48: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, $Uint16, true)[1]) { */ case 28:
+ f$12 = _ref.$val;
+ $r = p.fmtInteger((new $Uint64(0, f$12)), false, verb); /* */ $s = 49; case 49: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, $Uint32, true)[1]) { */ case 29:
+ f$13 = _ref.$val;
+ $r = p.fmtInteger((new $Uint64(0, f$13)), false, verb); /* */ $s = 50; case 50: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, $Uint64, true)[1]) { */ case 30:
+ f$14 = _ref.$val;
+ $r = p.fmtInteger(f$14, false, verb); /* */ $s = 51; case 51: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, $Uintptr, true)[1]) { */ case 31:
+ f$15 = _ref.$val;
+ $r = p.fmtInteger((new $Uint64(0, f$15.constructor === Number ? f$15 : 1)), false, verb); /* */ $s = 52; case 52: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, $String, true)[1]) { */ case 32:
+ f$16 = _ref.$val;
+ $r = p.fmtString(f$16, verb); /* */ $s = 53; case 53: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, sliceType$2, true)[1]) { */ case 33:
+ f$17 = _ref.$val;
+ $r = p.fmtBytes(f$17, verb, "[]byte"); /* */ $s = 54; case 54: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else if ($assertType(_ref, reflect.Value, true)[1]) { */ case 34:
+ f$18 = _ref.$val;
+ /* */ if ($clone(f$18, reflect.Value).IsValid() && $clone(f$18, reflect.Value).CanInterface()) { $s = 55; continue; }
+ /* */ $s = 56; continue;
+ /* if ($clone(f$18, reflect.Value).IsValid() && $clone(f$18, reflect.Value).CanInterface()) { */ case 55:
+ _r$2 = $clone(f$18, reflect.Value).Interface(); /* */ $s = 57; case 57: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ p.arg = _r$2;
+ _r$3 = p.handleMethods(verb); /* */ $s = 60; case 60: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ /* */ if (_r$3) { $s = 58; continue; }
+ /* */ $s = 59; continue;
+ /* if (_r$3) { */ case 58:
+ $s = -1; return;
+ /* } */ case 59:
+ /* } */ case 56:
+ $r = p.printValue($clone(f$18, reflect.Value), verb, 0); /* */ $s = 61; case 61: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 36; continue;
+ /* } else { */ case 35:
+ f$19 = _ref;
+ _r$4 = p.handleMethods(verb); /* */ $s = 64; case 64: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ /* */ if (!_r$4) { $s = 62; continue; }
+ /* */ $s = 63; continue;
+ /* if (!_r$4) { */ case 62:
+ _r$5 = reflect.ValueOf(f$19); /* */ $s = 65; case 65: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $r = p.printValue($clone(_r$5, reflect.Value), verb, 0); /* */ $s = 66; case 66: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 63:
+ /* } */ case 36:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: pp.ptr.prototype.printArg }; } $f.$ptr = $ptr; $f._1 = _1; $f._2 = _2; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._ref = _ref; $f.arg = arg; $f.f = f; $f.f$1 = f$1; $f.f$10 = f$10; $f.f$11 = f$11; $f.f$12 = f$12; $f.f$13 = f$13; $f.f$14 = f$14; $f.f$15 = f$15; $f.f$16 = f$16; $f.f$17 = f$17; $f.f$18 = f$18; $f.f$19 = f$19; $f.f$2 = f$2; $f.f$3 = f$3; $f.f$4 = f$4; $f.f$5 = f$5; $f.f$6 = f$6; $f.f$7 = f$7; $f.f$8 = f$8; $f.f$9 = f$9; $f.p = p; $f.verb = verb; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ pp.prototype.printArg = function(arg, verb) { return this.$val.printArg(arg, verb); };
+ pp.ptr.prototype.printValue = function(value, verb, depth) {
+ var $ptr, _1, _2, _3, _4, _arg, _arg$1, _arg$2, _i, _i$1, _r, _r$1, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$19, _r$2, _r$20, _r$21, _r$22, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _ref, _ref$1, a, bytes, depth, f, i, i$1, i$2, i$3, i$4, key, keys, name, p, t, value, value$1, verb, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _2 = $f._2; _3 = $f._3; _4 = $f._4; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _i = $f._i; _i$1 = $f._i$1; _r = $f._r; _r$1 = $f._r$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$19 = $f._r$19; _r$2 = $f._r$2; _r$20 = $f._r$20; _r$21 = $f._r$21; _r$22 = $f._r$22; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _ref = $f._ref; _ref$1 = $f._ref$1; a = $f.a; bytes = $f.bytes; depth = $f.depth; f = $f.f; i = $f.i; i$1 = $f.i$1; i$2 = $f.i$2; i$3 = $f.i$3; i$4 = $f.i$4; key = $f.key; keys = $f.keys; name = $f.name; p = $f.p; t = $f.t; value = $f.value; value$1 = $f.value$1; verb = $f.verb; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ /* */ if (depth > 0 && $clone(value, reflect.Value).IsValid() && $clone(value, reflect.Value).CanInterface()) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (depth > 0 && $clone(value, reflect.Value).IsValid() && $clone(value, reflect.Value).CanInterface()) { */ case 1:
+ _r = $clone(value, reflect.Value).Interface(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ p.arg = _r;
+ _r$1 = p.handleMethods(verb); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ /* */ if (_r$1) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (_r$1) { */ case 4:
+ $s = -1; return;
+ /* } */ case 5:
+ /* } */ case 2:
+ p.arg = $ifaceNil;
+ p.value = value;
+ f = value;
+ _1 = $clone(value, reflect.Value).Kind();
+ /* */ if (_1 === (0)) { $s = 8; continue; }
+ /* */ if (_1 === (1)) { $s = 9; continue; }
+ /* */ if ((_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6))) { $s = 10; continue; }
+ /* */ if ((_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12))) { $s = 11; continue; }
+ /* */ if (_1 === (13)) { $s = 12; continue; }
+ /* */ if (_1 === (14)) { $s = 13; continue; }
+ /* */ if (_1 === (15)) { $s = 14; continue; }
+ /* */ if (_1 === (16)) { $s = 15; continue; }
+ /* */ if (_1 === (24)) { $s = 16; continue; }
+ /* */ if (_1 === (21)) { $s = 17; continue; }
+ /* */ if (_1 === (25)) { $s = 18; continue; }
+ /* */ if (_1 === (20)) { $s = 19; continue; }
+ /* */ if ((_1 === (17)) || (_1 === (23))) { $s = 20; continue; }
+ /* */ if (_1 === (22)) { $s = 21; continue; }
+ /* */ if ((_1 === (18)) || (_1 === (19)) || (_1 === (26))) { $s = 22; continue; }
+ /* */ $s = 23; continue;
+ /* if (_1 === (0)) { */ case 8:
+ /* */ if (depth === 0) { $s = 25; continue; }
+ /* */ $s = 26; continue;
+ /* if (depth === 0) { */ case 25:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("<invalid reflect.Value>");
+ $s = 27; continue;
+ /* } else { */ case 26:
+ _2 = verb;
+ /* */ if (_2 === (118)) { $s = 29; continue; }
+ /* */ $s = 30; continue;
+ /* if (_2 === (118)) { */ case 29:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("<nil>");
+ $s = 31; continue;
+ /* } else { */ case 30:
+ $r = p.badVerb(verb); /* */ $s = 32; case 32: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 31:
+ case 28:
+ /* } */ case 27:
+ $s = 24; continue;
+ /* } else if (_1 === (1)) { */ case 9:
+ $r = p.fmtBool($clone(f, reflect.Value).Bool(), verb); /* */ $s = 33; case 33: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 24; continue;
+ /* } else if ((_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6))) { */ case 10:
+ $r = p.fmtInteger(((x = $clone(f, reflect.Value).Int(), new $Uint64(x.$high, x.$low))), true, verb); /* */ $s = 34; case 34: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 24; continue;
+ /* } else if ((_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12))) { */ case 11:
+ $r = p.fmtInteger($clone(f, reflect.Value).Uint(), false, verb); /* */ $s = 35; case 35: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 24; continue;
+ /* } else if (_1 === (13)) { */ case 12:
+ $r = p.fmtFloat($clone(f, reflect.Value).Float(), 32, verb); /* */ $s = 36; case 36: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 24; continue;
+ /* } else if (_1 === (14)) { */ case 13:
+ $r = p.fmtFloat($clone(f, reflect.Value).Float(), 64, verb); /* */ $s = 37; case 37: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 24; continue;
+ /* } else if (_1 === (15)) { */ case 14:
+ $r = p.fmtComplex($clone(f, reflect.Value).Complex(), 64, verb); /* */ $s = 38; case 38: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 24; continue;
+ /* } else if (_1 === (16)) { */ case 15:
+ $r = p.fmtComplex($clone(f, reflect.Value).Complex(), 128, verb); /* */ $s = 39; case 39: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 24; continue;
+ /* } else if (_1 === (24)) { */ case 16:
+ _r$2 = $clone(f, reflect.Value).String(); /* */ $s = 40; case 40: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $r = p.fmtString(_r$2, verb); /* */ $s = 41; case 41: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 24; continue;
+ /* } else if (_1 === (21)) { */ case 17:
+ /* */ if (p.fmt.fmtFlags.sharpV) { $s = 42; continue; }
+ /* */ $s = 43; continue;
+ /* if (p.fmt.fmtFlags.sharpV) { */ case 42:
+ _r$3 = $clone(f, reflect.Value).Type().String(); /* */ $s = 45; case 45: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $r = (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(_r$3); /* */ $s = 46; case 46: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if ($clone(f, reflect.Value).IsNil()) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("(nil)");
+ $s = -1; return;
+ }
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(123);
+ $s = 44; continue;
+ /* } else { */ case 43:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("map[");
+ /* } */ case 44:
+ _r$4 = $clone(f, reflect.Value).MapKeys(); /* */ $s = 47; case 47: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ keys = _r$4;
+ _ref = keys;
+ _i = 0;
+ /* while (true) { */ case 48:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 49; continue; }
+ i = _i;
+ key = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (i > 0) {
+ if (p.fmt.fmtFlags.sharpV) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(", ");
+ } else {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(32);
+ }
+ }
+ $r = p.printValue($clone(key, reflect.Value), verb, depth + 1 >> 0); /* */ $s = 50; case 50: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(58);
+ _r$5 = $clone(f, reflect.Value).MapIndex($clone(key, reflect.Value)); /* */ $s = 51; case 51: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $r = p.printValue($clone(_r$5, reflect.Value), verb, depth + 1 >> 0); /* */ $s = 52; case 52: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _i++;
+ /* } */ $s = 48; continue; case 49:
+ if (p.fmt.fmtFlags.sharpV) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(125);
+ } else {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(93);
+ }
+ $s = 24; continue;
+ /* } else if (_1 === (25)) { */ case 18:
+ /* */ if (p.fmt.fmtFlags.sharpV) { $s = 53; continue; }
+ /* */ $s = 54; continue;
+ /* if (p.fmt.fmtFlags.sharpV) { */ case 53:
+ _r$6 = $clone(f, reflect.Value).Type().String(); /* */ $s = 55; case 55: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $r = (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(_r$6); /* */ $s = 56; case 56: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 54:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(123);
+ i$1 = 0;
+ /* while (true) { */ case 57:
+ /* if (!(i$1 < $clone(f, reflect.Value).NumField())) { break; } */ if(!(i$1 < $clone(f, reflect.Value).NumField())) { $s = 58; continue; }
+ if (i$1 > 0) {
+ if (p.fmt.fmtFlags.sharpV) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(", ");
+ } else {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(32);
+ }
+ }
+ /* */ if (p.fmt.fmtFlags.plusV || p.fmt.fmtFlags.sharpV) { $s = 59; continue; }
+ /* */ $s = 60; continue;
+ /* if (p.fmt.fmtFlags.plusV || p.fmt.fmtFlags.sharpV) { */ case 59:
+ _r$7 = $clone(f, reflect.Value).Type().Field(i$1); /* */ $s = 61; case 61: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ name = _r$7.Name;
+ if (!(name === "")) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(name);
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(58);
+ }
+ /* } */ case 60:
+ _r$8 = getField($clone(f, reflect.Value), i$1); /* */ $s = 62; case 62: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $r = p.printValue($clone(_r$8, reflect.Value), verb, depth + 1 >> 0); /* */ $s = 63; case 63: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i$1 = i$1 + (1) >> 0;
+ /* } */ $s = 57; continue; case 58:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(125);
+ $s = 24; continue;
+ /* } else if (_1 === (20)) { */ case 19:
+ _r$9 = $clone(f, reflect.Value).Elem(); /* */ $s = 64; case 64: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ value$1 = _r$9;
+ /* */ if (!$clone(value$1, reflect.Value).IsValid()) { $s = 65; continue; }
+ /* */ $s = 66; continue;
+ /* if (!$clone(value$1, reflect.Value).IsValid()) { */ case 65:
+ /* */ if (p.fmt.fmtFlags.sharpV) { $s = 68; continue; }
+ /* */ $s = 69; continue;
+ /* if (p.fmt.fmtFlags.sharpV) { */ case 68:
+ _r$10 = $clone(f, reflect.Value).Type().String(); /* */ $s = 71; case 71: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ $r = (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(_r$10); /* */ $s = 72; case 72: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("(nil)");
+ $s = 70; continue;
+ /* } else { */ case 69:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("<nil>");
+ /* } */ case 70:
+ $s = 67; continue;
+ /* } else { */ case 66:
+ $r = p.printValue($clone(value$1, reflect.Value), verb, depth + 1 >> 0); /* */ $s = 73; case 73: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 67:
+ $s = 24; continue;
+ /* } else if ((_1 === (17)) || (_1 === (23))) { */ case 20:
+ _3 = verb;
+ /* */ if ((_3 === (115)) || (_3 === (113)) || (_3 === (120)) || (_3 === (88))) { $s = 75; continue; }
+ /* */ $s = 76; continue;
+ /* if ((_3 === (115)) || (_3 === (113)) || (_3 === (120)) || (_3 === (88))) { */ case 75:
+ t = $clone(f, reflect.Value).Type();
+ _r$11 = t.Elem(); /* */ $s = 79; case 79: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _r$12 = _r$11.Kind(); /* */ $s = 80; case 80: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ /* */ if (_r$12 === 8) { $s = 77; continue; }
+ /* */ $s = 78; continue;
+ /* if (_r$12 === 8) { */ case 77:
+ bytes = sliceType$2.nil;
+ /* */ if ($clone(f, reflect.Value).Kind() === 23) { $s = 81; continue; }
+ /* */ if ($clone(f, reflect.Value).CanAddr()) { $s = 82; continue; }
+ /* */ $s = 83; continue;
+ /* if ($clone(f, reflect.Value).Kind() === 23) { */ case 81:
+ _r$13 = $clone(f, reflect.Value).Bytes(); /* */ $s = 85; case 85: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ bytes = _r$13;
+ $s = 84; continue;
+ /* } else if ($clone(f, reflect.Value).CanAddr()) { */ case 82:
+ _r$14 = $clone(f, reflect.Value).Slice(0, $clone(f, reflect.Value).Len()); /* */ $s = 86; case 86: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ _r$15 = $clone(_r$14, reflect.Value).Bytes(); /* */ $s = 87; case 87: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ bytes = _r$15;
+ $s = 84; continue;
+ /* } else { */ case 83:
+ bytes = $makeSlice(sliceType$2, $clone(f, reflect.Value).Len());
+ _ref$1 = bytes;
+ _i$1 = 0;
+ /* while (true) { */ case 88:
+ /* if (!(_i$1 < _ref$1.$length)) { break; } */ if(!(_i$1 < _ref$1.$length)) { $s = 89; continue; }
+ i$2 = _i$1;
+ _r$16 = $clone(f, reflect.Value).Index(i$2); /* */ $s = 90; case 90: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ _r$17 = $clone(_r$16, reflect.Value).Uint(); /* */ $s = 91; case 91: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ ((i$2 < 0 || i$2 >= bytes.$length) ? ($throwRuntimeError("index out of range"), undefined) : bytes.$array[bytes.$offset + i$2] = ((_r$17.$low << 24 >>> 24)));
+ _i$1++;
+ /* } */ $s = 88; continue; case 89:
+ /* } */ case 84:
+ _arg = bytes;
+ _arg$1 = verb;
+ _r$18 = t.String(); /* */ $s = 92; case 92: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ _arg$2 = _r$18;
+ $r = p.fmtBytes(_arg, _arg$1, _arg$2); /* */ $s = 93; case 93: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* } */ case 78:
+ /* } */ case 76:
+ case 74:
+ /* */ if (p.fmt.fmtFlags.sharpV) { $s = 94; continue; }
+ /* */ $s = 95; continue;
+ /* if (p.fmt.fmtFlags.sharpV) { */ case 94:
+ _r$19 = $clone(f, reflect.Value).Type().String(); /* */ $s = 97; case 97: if($c) { $c = false; _r$19 = _r$19.$blk(); } if (_r$19 && _r$19.$blk !== undefined) { break s; }
+ $r = (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(_r$19); /* */ $s = 98; case 98: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if (($clone(f, reflect.Value).Kind() === 23) && $clone(f, reflect.Value).IsNil()) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("(nil)");
+ $s = -1; return;
+ }
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(123);
+ i$3 = 0;
+ /* while (true) { */ case 99:
+ /* if (!(i$3 < $clone(f, reflect.Value).Len())) { break; } */ if(!(i$3 < $clone(f, reflect.Value).Len())) { $s = 100; continue; }
+ if (i$3 > 0) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(", ");
+ }
+ _r$20 = $clone(f, reflect.Value).Index(i$3); /* */ $s = 101; case 101: if($c) { $c = false; _r$20 = _r$20.$blk(); } if (_r$20 && _r$20.$blk !== undefined) { break s; }
+ $r = p.printValue($clone(_r$20, reflect.Value), verb, depth + 1 >> 0); /* */ $s = 102; case 102: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i$3 = i$3 + (1) >> 0;
+ /* } */ $s = 99; continue; case 100:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(125);
+ $s = 96; continue;
+ /* } else { */ case 95:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(91);
+ i$4 = 0;
+ /* while (true) { */ case 103:
+ /* if (!(i$4 < $clone(f, reflect.Value).Len())) { break; } */ if(!(i$4 < $clone(f, reflect.Value).Len())) { $s = 104; continue; }
+ if (i$4 > 0) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(32);
+ }
+ _r$21 = $clone(f, reflect.Value).Index(i$4); /* */ $s = 105; case 105: if($c) { $c = false; _r$21 = _r$21.$blk(); } if (_r$21 && _r$21.$blk !== undefined) { break s; }
+ $r = p.printValue($clone(_r$21, reflect.Value), verb, depth + 1 >> 0); /* */ $s = 106; case 106: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i$4 = i$4 + (1) >> 0;
+ /* } */ $s = 103; continue; case 104:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(93);
+ /* } */ case 96:
+ $s = 24; continue;
+ /* } else if (_1 === (22)) { */ case 21:
+ /* */ if ((depth === 0) && !(($clone(f, reflect.Value).Pointer() === 0))) { $s = 107; continue; }
+ /* */ $s = 108; continue;
+ /* if ((depth === 0) && !(($clone(f, reflect.Value).Pointer() === 0))) { */ case 107:
+ _r$22 = $clone(f, reflect.Value).Elem(); /* */ $s = 110; case 110: if($c) { $c = false; _r$22 = _r$22.$blk(); } if (_r$22 && _r$22.$blk !== undefined) { break s; }
+ a = _r$22;
+ _4 = $clone(a, reflect.Value).Kind();
+ /* */ if ((_4 === (17)) || (_4 === (23)) || (_4 === (25)) || (_4 === (21))) { $s = 111; continue; }
+ /* */ $s = 112; continue;
+ /* if ((_4 === (17)) || (_4 === (23)) || (_4 === (25)) || (_4 === (21))) { */ case 111:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(38);
+ $r = p.printValue($clone(a, reflect.Value), verb, depth + 1 >> 0); /* */ $s = 113; case 113: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* } */ case 112:
+ case 109:
+ /* } */ case 108:
+ $r = p.fmtPointer($clone(f, reflect.Value), verb); /* */ $s = 114; case 114: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 24; continue;
+ /* } else if ((_1 === (18)) || (_1 === (19)) || (_1 === (26))) { */ case 22:
+ $r = p.fmtPointer($clone(f, reflect.Value), verb); /* */ $s = 115; case 115: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 24; continue;
+ /* } else { */ case 23:
+ $r = p.unknownType($clone(f, reflect.Value)); /* */ $s = 116; case 116: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 24:
+ case 7:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: pp.ptr.prototype.printValue }; } $f.$ptr = $ptr; $f._1 = _1; $f._2 = _2; $f._3 = _3; $f._4 = _4; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._i = _i; $f._i$1 = _i$1; $f._r = _r; $f._r$1 = _r$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$19 = _r$19; $f._r$2 = _r$2; $f._r$20 = _r$20; $f._r$21 = _r$21; $f._r$22 = _r$22; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._ref = _ref; $f._ref$1 = _ref$1; $f.a = a; $f.bytes = bytes; $f.depth = depth; $f.f = f; $f.i = i; $f.i$1 = i$1; $f.i$2 = i$2; $f.i$3 = i$3; $f.i$4 = i$4; $f.key = key; $f.keys = keys; $f.name = name; $f.p = p; $f.t = t; $f.value = value; $f.value$1 = value$1; $f.verb = verb; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ pp.prototype.printValue = function(value, verb, depth) { return this.$val.printValue(value, verb, depth); };
+ intFromArg = function(a, argNum) {
+ var $ptr, _1, _r, _tuple, a, argNum, isInt, n, n$1, newArgNum, num, v, x, x$1, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; _tuple = $f._tuple; a = $f.a; argNum = $f.argNum; isInt = $f.isInt; n = $f.n; n$1 = $f.n$1; newArgNum = $f.newArgNum; num = $f.num; v = $f.v; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ num = 0;
+ isInt = false;
+ newArgNum = 0;
+ newArgNum = argNum;
+ /* */ if (argNum < a.$length) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (argNum < a.$length) { */ case 1:
+ _tuple = $assertType(((argNum < 0 || argNum >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + argNum]), $Int, true);
+ num = _tuple[0];
+ isInt = _tuple[1];
+ /* */ if (!isInt) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!isInt) { */ case 3:
+ _r = reflect.ValueOf(((argNum < 0 || argNum >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + argNum])); /* */ $s = 6; case 6: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ v = _r;
+ _1 = $clone(v, reflect.Value).Kind();
+ if ((_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6))) {
+ n = $clone(v, reflect.Value).Int();
+ if ((x = (new $Int64(0, (((n.$low + ((n.$high >> 31) * 4294967296)) >> 0)))), (x.$high === n.$high && x.$low === n.$low))) {
+ num = (((n.$low + ((n.$high >> 31) * 4294967296)) >> 0));
+ isInt = true;
+ }
+ } else if ((_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12))) {
+ n$1 = $clone(v, reflect.Value).Uint();
+ if ((x$1 = (new $Int64(n$1.$high, n$1.$low)), (x$1.$high > 0 || (x$1.$high === 0 && x$1.$low >= 0))) && (x$2 = (new $Uint64(0, ((n$1.$low >> 0)))), (x$2.$high === n$1.$high && x$2.$low === n$1.$low))) {
+ num = ((n$1.$low >> 0));
+ isInt = true;
+ }
+ }
+ case 5:
+ /* } */ case 4:
+ newArgNum = argNum + 1 >> 0;
+ if (tooLarge(num)) {
+ num = 0;
+ isInt = false;
+ }
+ /* } */ case 2:
+ $s = -1; return [num, isInt, newArgNum];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: intFromArg }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f._tuple = _tuple; $f.a = a; $f.argNum = argNum; $f.isInt = isInt; $f.n = n; $f.n$1 = n$1; $f.newArgNum = newArgNum; $f.num = num; $f.v = v; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parseArgNumber = function(format) {
+ var $ptr, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, format, i, index, newi, ok, ok$1, wid, width;
+ index = 0;
+ wid = 0;
+ ok = false;
+ if (format.length < 3) {
+ _tmp = 0;
+ _tmp$1 = 1;
+ _tmp$2 = false;
+ index = _tmp;
+ wid = _tmp$1;
+ ok = _tmp$2;
+ return [index, wid, ok];
+ }
+ i = 1;
+ while (true) {
+ if (!(i < format.length)) { break; }
+ if (format.charCodeAt(i) === 93) {
+ _tuple = parsenum(format, 1, i);
+ width = _tuple[0];
+ ok$1 = _tuple[1];
+ newi = _tuple[2];
+ if (!ok$1 || !((newi === i))) {
+ _tmp$3 = 0;
+ _tmp$4 = i + 1 >> 0;
+ _tmp$5 = false;
+ index = _tmp$3;
+ wid = _tmp$4;
+ ok = _tmp$5;
+ return [index, wid, ok];
+ }
+ _tmp$6 = width - 1 >> 0;
+ _tmp$7 = i + 1 >> 0;
+ _tmp$8 = true;
+ index = _tmp$6;
+ wid = _tmp$7;
+ ok = _tmp$8;
+ return [index, wid, ok];
+ }
+ i = i + (1) >> 0;
+ }
+ _tmp$9 = 0;
+ _tmp$10 = 1;
+ _tmp$11 = false;
+ index = _tmp$9;
+ wid = _tmp$10;
+ ok = _tmp$11;
+ return [index, wid, ok];
+ };
+ pp.ptr.prototype.argNumber = function(argNum, format, i, numArgs) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tuple, argNum, format, found, i, index, newArgNum, newi, numArgs, ok, p, wid;
+ newArgNum = 0;
+ newi = 0;
+ found = false;
+ p = this;
+ if (format.length <= i || !((format.charCodeAt(i) === 91))) {
+ _tmp = argNum;
+ _tmp$1 = i;
+ _tmp$2 = false;
+ newArgNum = _tmp;
+ newi = _tmp$1;
+ found = _tmp$2;
+ return [newArgNum, newi, found];
+ }
+ p.reordered = true;
+ _tuple = parseArgNumber($substring(format, i));
+ index = _tuple[0];
+ wid = _tuple[1];
+ ok = _tuple[2];
+ if (ok && 0 <= index && index < numArgs) {
+ _tmp$3 = index;
+ _tmp$4 = i + wid >> 0;
+ _tmp$5 = true;
+ newArgNum = _tmp$3;
+ newi = _tmp$4;
+ found = _tmp$5;
+ return [newArgNum, newi, found];
+ }
+ p.goodArgNum = false;
+ _tmp$6 = argNum;
+ _tmp$7 = i + wid >> 0;
+ _tmp$8 = ok;
+ newArgNum = _tmp$6;
+ newi = _tmp$7;
+ found = _tmp$8;
+ return [newArgNum, newi, found];
+ };
+ pp.prototype.argNumber = function(argNum, format, i, numArgs) { return this.$val.argNumber(argNum, format, i, numArgs); };
+ pp.ptr.prototype.badArgNum = function(verb) {
+ var $ptr, p, verb;
+ p = this;
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("%!");
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteRune(verb);
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("(BADINDEX)");
+ };
+ pp.prototype.badArgNum = function(verb) { return this.$val.badArgNum(verb); };
+ pp.ptr.prototype.missingArg = function(verb) {
+ var $ptr, p, verb;
+ p = this;
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("%!");
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteRune(verb);
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("(MISSING)");
+ };
+ pp.prototype.missingArg = function(verb) { return this.$val.missingArg(verb); };
+ pp.ptr.prototype.doPrintf = function(format, a) {
+ var $ptr, _1, _i, _r, _r$1, _r$2, _ref, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, _tuple$5, _tuple$6, _tuple$7, a, afterIndex, arg, argNum, c, end, format, i, i$1, lasti, p, verb, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _ref = $f._ref; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; _tuple$5 = $f._tuple$5; _tuple$6 = $f._tuple$6; _tuple$7 = $f._tuple$7; a = $f.a; afterIndex = $f.afterIndex; arg = $f.arg; argNum = $f.argNum; c = $f.c; end = $f.end; format = $f.format; i = $f.i; i$1 = $f.i$1; lasti = $f.lasti; p = $f.p; verb = $f.verb; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ end = format.length;
+ argNum = 0;
+ afterIndex = false;
+ p.reordered = false;
+ i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(i < end)) { break; } */ if(!(i < end)) { $s = 2; continue; }
+ p.goodArgNum = true;
+ lasti = i;
+ while (true) {
+ if (!(i < end && !((format.charCodeAt(i) === 37)))) { break; }
+ i = i + (1) >> 0;
+ }
+ if (i > lasti) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString($substring(format, lasti, i));
+ }
+ if (i >= end) {
+ /* break; */ $s = 2; continue;
+ }
+ i = i + (1) >> 0;
+ p.fmt.clearflags();
+ /* while (true) { */ case 3:
+ /* if (!(i < end)) { break; } */ if(!(i < end)) { $s = 4; continue; }
+ c = format.charCodeAt(i);
+ _1 = c;
+ /* */ if (_1 === (35)) { $s = 6; continue; }
+ /* */ if (_1 === (48)) { $s = 7; continue; }
+ /* */ if (_1 === (43)) { $s = 8; continue; }
+ /* */ if (_1 === (45)) { $s = 9; continue; }
+ /* */ if (_1 === (32)) { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if (_1 === (35)) { */ case 6:
+ p.fmt.fmtFlags.sharp = true;
+ $s = 12; continue;
+ /* } else if (_1 === (48)) { */ case 7:
+ p.fmt.fmtFlags.zero = !p.fmt.fmtFlags.minus;
+ $s = 12; continue;
+ /* } else if (_1 === (43)) { */ case 8:
+ p.fmt.fmtFlags.plus = true;
+ $s = 12; continue;
+ /* } else if (_1 === (45)) { */ case 9:
+ p.fmt.fmtFlags.minus = true;
+ p.fmt.fmtFlags.zero = false;
+ $s = 12; continue;
+ /* } else if (_1 === (32)) { */ case 10:
+ p.fmt.fmtFlags.space = true;
+ $s = 12; continue;
+ /* } else { */ case 11:
+ /* */ if (97 <= c && c <= 122 && argNum < a.$length) { $s = 13; continue; }
+ /* */ $s = 14; continue;
+ /* if (97 <= c && c <= 122 && argNum < a.$length) { */ case 13:
+ if (c === 118) {
+ p.fmt.fmtFlags.sharpV = p.fmt.fmtFlags.sharp;
+ p.fmt.fmtFlags.sharp = false;
+ p.fmt.fmtFlags.plusV = p.fmt.fmtFlags.plus;
+ p.fmt.fmtFlags.plus = false;
+ }
+ $r = p.printArg(((argNum < 0 || argNum >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + argNum]), ((c >> 0))); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ argNum = argNum + (1) >> 0;
+ i = i + (1) >> 0;
+ /* continue formatLoop; */ $s = 1; continue s;
+ /* } */ case 14:
+ /* break simpleFormat; */ $s = 4; continue s;
+ /* } */ case 12:
+ case 5:
+ i = i + (1) >> 0;
+ /* } */ $s = 3; continue; case 4:
+ _tuple = p.argNumber(argNum, format, i, a.$length);
+ argNum = _tuple[0];
+ i = _tuple[1];
+ afterIndex = _tuple[2];
+ /* */ if (i < end && (format.charCodeAt(i) === 42)) { $s = 16; continue; }
+ /* */ $s = 17; continue;
+ /* if (i < end && (format.charCodeAt(i) === 42)) { */ case 16:
+ i = i + (1) >> 0;
+ _r = intFromArg(a, argNum); /* */ $s = 19; case 19: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple$1 = _r;
+ p.fmt.wid = _tuple$1[0];
+ p.fmt.fmtFlags.widPresent = _tuple$1[1];
+ argNum = _tuple$1[2];
+ if (!p.fmt.fmtFlags.widPresent) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("%!(BADWIDTH)");
+ }
+ if (p.fmt.wid < 0) {
+ p.fmt.wid = -p.fmt.wid;
+ p.fmt.fmtFlags.minus = true;
+ p.fmt.fmtFlags.zero = false;
+ }
+ afterIndex = false;
+ $s = 18; continue;
+ /* } else { */ case 17:
+ _tuple$2 = parsenum(format, i, end);
+ p.fmt.wid = _tuple$2[0];
+ p.fmt.fmtFlags.widPresent = _tuple$2[1];
+ i = _tuple$2[2];
+ if (afterIndex && p.fmt.fmtFlags.widPresent) {
+ p.goodArgNum = false;
+ }
+ /* } */ case 18:
+ /* */ if ((i + 1 >> 0) < end && (format.charCodeAt(i) === 46)) { $s = 20; continue; }
+ /* */ $s = 21; continue;
+ /* if ((i + 1 >> 0) < end && (format.charCodeAt(i) === 46)) { */ case 20:
+ i = i + (1) >> 0;
+ if (afterIndex) {
+ p.goodArgNum = false;
+ }
+ _tuple$3 = p.argNumber(argNum, format, i, a.$length);
+ argNum = _tuple$3[0];
+ i = _tuple$3[1];
+ afterIndex = _tuple$3[2];
+ /* */ if (i < end && (format.charCodeAt(i) === 42)) { $s = 22; continue; }
+ /* */ $s = 23; continue;
+ /* if (i < end && (format.charCodeAt(i) === 42)) { */ case 22:
+ i = i + (1) >> 0;
+ _r$1 = intFromArg(a, argNum); /* */ $s = 25; case 25: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$4 = _r$1;
+ p.fmt.prec = _tuple$4[0];
+ p.fmt.fmtFlags.precPresent = _tuple$4[1];
+ argNum = _tuple$4[2];
+ if (p.fmt.prec < 0) {
+ p.fmt.prec = 0;
+ p.fmt.fmtFlags.precPresent = false;
+ }
+ if (!p.fmt.fmtFlags.precPresent) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("%!(BADPREC)");
+ }
+ afterIndex = false;
+ $s = 24; continue;
+ /* } else { */ case 23:
+ _tuple$5 = parsenum(format, i, end);
+ p.fmt.prec = _tuple$5[0];
+ p.fmt.fmtFlags.precPresent = _tuple$5[1];
+ i = _tuple$5[2];
+ if (!p.fmt.fmtFlags.precPresent) {
+ p.fmt.prec = 0;
+ p.fmt.fmtFlags.precPresent = true;
+ }
+ /* } */ case 24:
+ /* } */ case 21:
+ if (!afterIndex) {
+ _tuple$6 = p.argNumber(argNum, format, i, a.$length);
+ argNum = _tuple$6[0];
+ i = _tuple$6[1];
+ afterIndex = _tuple$6[2];
+ }
+ if (i >= end) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("%!(NOVERB)");
+ /* break; */ $s = 2; continue;
+ }
+ _tuple$7 = utf8.DecodeRuneInString($substring(format, i));
+ verb = _tuple$7[0];
+ w = _tuple$7[1];
+ i = i + (w) >> 0;
+ /* */ if ((verb === 37)) { $s = 27; continue; }
+ /* */ if (!p.goodArgNum) { $s = 28; continue; }
+ /* */ if (argNum >= a.$length) { $s = 29; continue; }
+ /* */ if ((verb === 118)) { $s = 30; continue; }
+ /* */ $s = 31; continue;
+ /* if ((verb === 37)) { */ case 27:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(37);
+ $s = 32; continue;
+ /* } else if (!p.goodArgNum) { */ case 28:
+ p.badArgNum(verb);
+ $s = 32; continue;
+ /* } else if (argNum >= a.$length) { */ case 29:
+ p.missingArg(verb);
+ $s = 32; continue;
+ /* } else if ((verb === 118)) { */ case 30:
+ p.fmt.fmtFlags.sharpV = p.fmt.fmtFlags.sharp;
+ p.fmt.fmtFlags.sharp = false;
+ p.fmt.fmtFlags.plusV = p.fmt.fmtFlags.plus;
+ p.fmt.fmtFlags.plus = false;
+ $r = p.printArg(((argNum < 0 || argNum >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + argNum]), verb); /* */ $s = 33; case 33: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ argNum = argNum + (1) >> 0;
+ $s = 32; continue;
+ /* } else { */ case 31:
+ $r = p.printArg(((argNum < 0 || argNum >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + argNum]), verb); /* */ $s = 34; case 34: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ argNum = argNum + (1) >> 0;
+ /* } */ case 32:
+ case 26:
+ /* } */ $s = 1; continue; case 2:
+ /* */ if (!p.reordered && argNum < a.$length) { $s = 35; continue; }
+ /* */ $s = 36; continue;
+ /* if (!p.reordered && argNum < a.$length) { */ case 35:
+ p.fmt.clearflags();
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("%!(EXTRA ");
+ _ref = $subslice(a, argNum);
+ _i = 0;
+ /* while (true) { */ case 37:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 38; continue; }
+ i$1 = _i;
+ arg = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (i$1 > 0) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(", ");
+ }
+ /* */ if ($interfaceIsEqual(arg, $ifaceNil)) { $s = 39; continue; }
+ /* */ $s = 40; continue;
+ /* if ($interfaceIsEqual(arg, $ifaceNil)) { */ case 39:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString("<nil>");
+ $s = 41; continue;
+ /* } else { */ case 40:
+ _r$2 = reflect.TypeOf(arg).String(); /* */ $s = 42; case 42: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $r = (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteString(_r$2); /* */ $s = 43; case 43: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(61);
+ $r = p.printArg(arg, 118); /* */ $s = 44; case 44: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 41:
+ _i++;
+ /* } */ $s = 37; continue; case 38:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(41);
+ /* } */ case 36:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: pp.ptr.prototype.doPrintf }; } $f.$ptr = $ptr; $f._1 = _1; $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._ref = _ref; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f._tuple$5 = _tuple$5; $f._tuple$6 = _tuple$6; $f._tuple$7 = _tuple$7; $f.a = a; $f.afterIndex = afterIndex; $f.arg = arg; $f.argNum = argNum; $f.c = c; $f.end = end; $f.format = format; $f.i = i; $f.i$1 = i$1; $f.lasti = lasti; $f.p = p; $f.verb = verb; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ pp.prototype.doPrintf = function(format, a) { return this.$val.doPrintf(format, a); };
+ pp.ptr.prototype.doPrint = function(a) {
+ var $ptr, _i, _r, _ref, _v, a, arg, argNum, isString, p, prevString, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _ref = $f._ref; _v = $f._v; a = $f.a; arg = $f.arg; argNum = $f.argNum; isString = $f.isString; p = $f.p; prevString = $f.prevString; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ prevString = false;
+ _ref = a;
+ _i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 2; continue; }
+ argNum = _i;
+ arg = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (!(!($interfaceIsEqual(arg, $ifaceNil)))) { _v = false; $s = 3; continue s; }
+ _r = reflect.TypeOf(arg).Kind(); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _v = _r === 24; case 3:
+ isString = _v;
+ if (argNum > 0 && !isString && !prevString) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(32);
+ }
+ $r = p.printArg(arg, 118); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ prevString = isString;
+ _i++;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: pp.ptr.prototype.doPrint }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._ref = _ref; $f._v = _v; $f.a = a; $f.arg = arg; $f.argNum = argNum; $f.isString = isString; $f.p = p; $f.prevString = prevString; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ pp.prototype.doPrint = function(a) { return this.$val.doPrint(a); };
+ pp.ptr.prototype.doPrintln = function(a) {
+ var $ptr, _i, _ref, a, arg, argNum, p, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _ref = $f._ref; a = $f.a; arg = $f.arg; argNum = $f.argNum; p = $f.p; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ _ref = a;
+ _i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 2; continue; }
+ argNum = _i;
+ arg = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (argNum > 0) {
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(32);
+ }
+ $r = p.printArg(arg, 118); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _i++;
+ /* } */ $s = 1; continue; case 2:
+ (p.$ptr_buf || (p.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, p))).WriteByte(10);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: pp.ptr.prototype.doPrintln }; } $f.$ptr = $ptr; $f._i = _i; $f._ref = _ref; $f.a = a; $f.arg = arg; $f.argNum = argNum; $f.p = p; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ pp.prototype.doPrintln = function(a) { return this.$val.doPrintln(a); };
+ ss.ptr.prototype.Read = function(buf) {
+ var $ptr, _tmp, _tmp$1, buf, err, n, s;
+ n = 0;
+ err = $ifaceNil;
+ s = this;
+ _tmp = 0;
+ _tmp$1 = errors.New("ScanState's Read should not be called. Use ReadRune");
+ n = _tmp;
+ err = _tmp$1;
+ return [n, err];
+ };
+ ss.prototype.Read = function(buf) { return this.$val.Read(buf); };
+ ss.ptr.prototype.ReadRune = function() {
+ var $ptr, _r, _tuple, err, r, s, size, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; err = $f.err; r = $f.r; s = $f.s; size = $f.size; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = 0;
+ size = 0;
+ err = $ifaceNil;
+ s = this;
+ if (s.atEOF || s.count >= s.ssave.argLimit) {
+ err = io.EOF;
+ $s = -1; return [r, size, err];
+ }
+ _r = s.rs.ReadRune(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ r = _tuple[0];
+ size = _tuple[1];
+ err = _tuple[2];
+ if ($interfaceIsEqual(err, $ifaceNil)) {
+ s.count = s.count + (1) >> 0;
+ if (s.ssave.nlIsEnd && (r === 10)) {
+ s.atEOF = true;
+ }
+ } else if ($interfaceIsEqual(err, io.EOF)) {
+ s.atEOF = true;
+ }
+ $s = -1; return [r, size, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ss.ptr.prototype.ReadRune }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.err = err; $f.r = r; $f.s = s; $f.size = size; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ss.prototype.ReadRune = function() { return this.$val.ReadRune(); };
+ ss.ptr.prototype.Width = function() {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, ok, s, wid;
+ wid = 0;
+ ok = false;
+ s = this;
+ if (s.ssave.maxWid === 1073741824) {
+ _tmp = 0;
+ _tmp$1 = false;
+ wid = _tmp;
+ ok = _tmp$1;
+ return [wid, ok];
+ }
+ _tmp$2 = s.ssave.maxWid;
+ _tmp$3 = true;
+ wid = _tmp$2;
+ ok = _tmp$3;
+ return [wid, ok];
+ };
+ ss.prototype.Width = function() { return this.$val.Width(); };
+ ss.ptr.prototype.getRune = function() {
+ var $ptr, _r, _tuple, err, r, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; err = $f.err; r = $f.r; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = 0;
+ s = this;
+ _r = s.ReadRune(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ r = _tuple[0];
+ err = _tuple[2];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ if ($interfaceIsEqual(err, io.EOF)) {
+ r = -1;
+ $s = -1; return r;
+ }
+ s.error(err);
+ }
+ $s = -1; return r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ss.ptr.prototype.getRune }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.err = err; $f.r = r; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ss.prototype.getRune = function() { return this.$val.getRune(); };
+ ss.ptr.prototype.UnreadRune = function() {
+ var $ptr, _r, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ s = this;
+ _r = s.rs.UnreadRune(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ s.atEOF = false;
+ s.count = s.count - (1) >> 0;
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ss.ptr.prototype.UnreadRune }; } $f.$ptr = $ptr; $f._r = _r; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ss.prototype.UnreadRune = function() { return this.$val.UnreadRune(); };
+ ss.ptr.prototype.error = function(err) {
+ var $ptr, err, s, x;
+ s = this;
+ $panic((x = new scanError.ptr(err), new x.constructor.elem(x)));
+ };
+ ss.prototype.error = function(err) { return this.$val.error(err); };
+ ss.ptr.prototype.errorString = function(err) {
+ var $ptr, err, s, x;
+ s = this;
+ $panic((x = new scanError.ptr(errors.New(err)), new x.constructor.elem(x)));
+ };
+ ss.prototype.errorString = function(err) { return this.$val.errorString(err); };
+ ss.ptr.prototype.Token = function(skipSpace, f) {
+ var $ptr, _r, err, f, s, skipSpace, tok, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; err = $f.err; f = $f.f; s = $f.s; skipSpace = $f.skipSpace; tok = $f.tok; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ err = [err];
+ tok = sliceType$2.nil;
+ err[0] = $ifaceNil;
+ s = this;
+ $deferred.push([(function(err) { return function() {
+ var $ptr, _tuple, e, ok, se;
+ e = $recover();
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ _tuple = $assertType(e, scanError, true);
+ se = $clone(_tuple[0], scanError);
+ ok = _tuple[1];
+ if (ok) {
+ err[0] = se.err;
+ } else {
+ $panic(e);
+ }
+ }
+ }; })(err), []]);
+ if (f === $throwNilPointerError) {
+ f = notSpace;
+ }
+ s.buf = $subslice(s.buf, 0, 0);
+ _r = s.token(skipSpace, f); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ tok = _r;
+ $s = -1; return [tok, err[0]];
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if (!$curGoroutine.asleep) { return [tok, err[0]]; } if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: ss.ptr.prototype.Token }; } $f.$ptr = $ptr; $f._r = _r; $f.err = err; $f.f = f; $f.s = s; $f.skipSpace = skipSpace; $f.tok = tok; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ ss.prototype.Token = function(skipSpace, f) { return this.$val.Token(skipSpace, f); };
+ isSpace = function(r) {
+ var $ptr, _i, _ref, r, rng, rx;
+ if (r >= 65536) {
+ return false;
+ }
+ rx = ((r << 16 >>> 16));
+ _ref = space;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ rng = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), arrayType$1);
+ if (rx < rng[0]) {
+ return false;
+ }
+ if (rx <= rng[1]) {
+ return true;
+ }
+ _i++;
+ }
+ return false;
+ };
+ notSpace = function(r) {
+ var $ptr, r;
+ return !isSpace(r);
+ };
+ ss.ptr.prototype.SkipSpace = function() {
+ var $ptr, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ s = this;
+ $r = s.skipSpace(false); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ss.ptr.prototype.SkipSpace }; } $f.$ptr = $ptr; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ss.prototype.SkipSpace = function() { return this.$val.SkipSpace(); };
+ ss.ptr.prototype.free = function(old) {
+ var $ptr, old, s;
+ s = this;
+ if (old.validSave) {
+ ssave.copy(s.ssave, old);
+ return;
+ }
+ if (s.buf.$capacity > 1024) {
+ return;
+ }
+ s.buf = $subslice(s.buf, 0, 0);
+ s.rs = $ifaceNil;
+ ssFree.Put(s);
+ };
+ ss.prototype.free = function(old) { return this.$val.free(old); };
+ ss.ptr.prototype.skipSpace = function(stopAtNewline) {
+ var $ptr, _r, _r$1, _r$2, _v, r, s, stopAtNewline, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _v = $f._v; r = $f.r; s = $f.s; stopAtNewline = $f.stopAtNewline; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ s = this;
+ /* while (true) { */ case 1:
+ _r = s.getRune(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ r = _r;
+ if (r === -1) {
+ $s = -1; return;
+ }
+ if (!(r === 13)) { _v = false; $s = 6; continue s; }
+ _r$1 = s.peek("\n"); /* */ $s = 7; case 7: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _v = _r$1; case 6:
+ /* */ if (_v) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (_v) { */ case 4:
+ /* continue; */ $s = 1; continue;
+ /* } */ case 5:
+ /* */ if (r === 10) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if (r === 10) { */ case 8:
+ if (stopAtNewline) {
+ /* break; */ $s = 2; continue;
+ }
+ if (s.ssave.nlIsSpace) {
+ /* continue; */ $s = 1; continue;
+ }
+ s.errorString("unexpected newline");
+ $s = -1; return;
+ /* } */ case 9:
+ /* */ if (!isSpace(r)) { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if (!isSpace(r)) { */ case 10:
+ _r$2 = s.UnreadRune(); /* */ $s = 12; case 12: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ /* break; */ $s = 2; continue;
+ /* } */ case 11:
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ss.ptr.prototype.skipSpace }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._v = _v; $f.r = r; $f.s = s; $f.stopAtNewline = stopAtNewline; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ss.prototype.skipSpace = function(stopAtNewline) { return this.$val.skipSpace(stopAtNewline); };
+ ss.ptr.prototype.token = function(skipSpace, f) {
+ var $ptr, _r, _r$1, _r$2, f, r, s, skipSpace, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; f = $f.f; r = $f.r; s = $f.s; skipSpace = $f.skipSpace; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ s = this;
+ /* */ if (skipSpace) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (skipSpace) { */ case 1:
+ $r = s.skipSpace(false); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 2:
+ /* while (true) { */ case 4:
+ _r = s.getRune(); /* */ $s = 6; case 6: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ r = _r;
+ if (r === -1) {
+ /* break; */ $s = 5; continue;
+ }
+ _r$1 = f(r); /* */ $s = 9; case 9: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ /* */ if (!_r$1) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (!_r$1) { */ case 7:
+ _r$2 = s.UnreadRune(); /* */ $s = 10; case 10: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ /* break; */ $s = 5; continue;
+ /* } */ case 8:
+ (s.$ptr_buf || (s.$ptr_buf = new ptrType$1(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, s))).WriteRune(r);
+ /* } */ $s = 4; continue; case 5:
+ $s = -1; return (x = s.buf, $subslice(new sliceType$2(x.$array), x.$offset, x.$offset + x.$length));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ss.ptr.prototype.token }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.f = f; $f.r = r; $f.s = s; $f.skipSpace = skipSpace; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ss.prototype.token = function(skipSpace, f) { return this.$val.token(skipSpace, f); };
+ indexRune = function(s, r) {
+ var $ptr, _i, _ref, _rune, c, i, r, s;
+ _ref = s;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.length)) { break; }
+ _rune = $decodeRune(_ref, _i);
+ i = _i;
+ c = _rune[0];
+ if (c === r) {
+ return i;
+ }
+ _i += _rune[1];
+ }
+ return -1;
+ };
+ ss.ptr.prototype.peek = function(ok) {
+ var $ptr, _r, _r$1, ok, r, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; ok = $f.ok; r = $f.r; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ s = this;
+ _r = s.getRune(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ r = _r;
+ /* */ if (!((r === -1))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!((r === -1))) { */ case 2:
+ _r$1 = s.UnreadRune(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ /* } */ case 3:
+ $s = -1; return indexRune(ok, r) >= 0;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ss.ptr.prototype.peek }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.ok = ok; $f.r = r; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ss.prototype.peek = function(ok) { return this.$val.peek(ok); };
+ ptrType$25.methods = [{prop: "clearflags", name: "clearflags", pkg: "fmt", typ: $funcType([], [], false)}, {prop: "init", name: "init", pkg: "fmt", typ: $funcType([ptrType$1], [], false)}, {prop: "writePadding", name: "writePadding", pkg: "fmt", typ: $funcType([$Int], [], false)}, {prop: "pad", name: "pad", pkg: "fmt", typ: $funcType([sliceType$2], [], false)}, {prop: "padString", name: "padString", pkg: "fmt", typ: $funcType([$String], [], false)}, {prop: "fmt_boolean", name: "fmt_boolean", pkg: "fmt", typ: $funcType([$Bool], [], false)}, {prop: "fmt_unicode", name: "fmt_unicode", pkg: "fmt", typ: $funcType([$Uint64], [], false)}, {prop: "fmt_integer", name: "fmt_integer", pkg: "fmt", typ: $funcType([$Uint64, $Int, $Bool, $String], [], false)}, {prop: "truncate", name: "truncate", pkg: "fmt", typ: $funcType([$String], [$String], false)}, {prop: "fmt_s", name: "fmt_s", pkg: "fmt", typ: $funcType([$String], [], false)}, {prop: "fmt_sbx", name: "fmt_sbx", pkg: "fmt", typ: $funcType([$String, sliceType$2, $String], [], false)}, {prop: "fmt_sx", name: "fmt_sx", pkg: "fmt", typ: $funcType([$String, $String], [], false)}, {prop: "fmt_bx", name: "fmt_bx", pkg: "fmt", typ: $funcType([sliceType$2, $String], [], false)}, {prop: "fmt_q", name: "fmt_q", pkg: "fmt", typ: $funcType([$String], [], false)}, {prop: "fmt_c", name: "fmt_c", pkg: "fmt", typ: $funcType([$Uint64], [], false)}, {prop: "fmt_qc", name: "fmt_qc", pkg: "fmt", typ: $funcType([$Uint64], [], false)}, {prop: "fmt_float", name: "fmt_float", pkg: "fmt", typ: $funcType([$Float64, $Int, $Int32, $Int], [], false)}];
+ ptrType$1.methods = [{prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$2], [], false)}, {prop: "WriteString", name: "WriteString", pkg: "", typ: $funcType([$String], [], false)}, {prop: "WriteByte", name: "WriteByte", pkg: "", typ: $funcType([$Uint8], [], false)}, {prop: "WriteRune", name: "WriteRune", pkg: "", typ: $funcType([$Int32], [], false)}];
+ ptrType$2.methods = [{prop: "free", name: "free", pkg: "fmt", typ: $funcType([], [], false)}, {prop: "Width", name: "Width", pkg: "", typ: $funcType([], [$Int, $Bool], false)}, {prop: "Precision", name: "Precision", pkg: "", typ: $funcType([], [$Int, $Bool], false)}, {prop: "Flag", name: "Flag", pkg: "", typ: $funcType([$Int], [$Bool], false)}, {prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "unknownType", name: "unknownType", pkg: "fmt", typ: $funcType([reflect.Value], [], false)}, {prop: "badVerb", name: "badVerb", pkg: "fmt", typ: $funcType([$Int32], [], false)}, {prop: "fmtBool", name: "fmtBool", pkg: "fmt", typ: $funcType([$Bool, $Int32], [], false)}, {prop: "fmt0x64", name: "fmt0x64", pkg: "fmt", typ: $funcType([$Uint64, $Bool], [], false)}, {prop: "fmtInteger", name: "fmtInteger", pkg: "fmt", typ: $funcType([$Uint64, $Bool, $Int32], [], false)}, {prop: "fmtFloat", name: "fmtFloat", pkg: "fmt", typ: $funcType([$Float64, $Int, $Int32], [], false)}, {prop: "fmtComplex", name: "fmtComplex", pkg: "fmt", typ: $funcType([$Complex128, $Int, $Int32], [], false)}, {prop: "fmtString", name: "fmtString", pkg: "fmt", typ: $funcType([$String, $Int32], [], false)}, {prop: "fmtBytes", name: "fmtBytes", pkg: "fmt", typ: $funcType([sliceType$2, $Int32, $String], [], false)}, {prop: "fmtPointer", name: "fmtPointer", pkg: "fmt", typ: $funcType([reflect.Value, $Int32], [], false)}, {prop: "catchPanic", name: "catchPanic", pkg: "fmt", typ: $funcType([$emptyInterface, $Int32], [], false)}, {prop: "handleMethods", name: "handleMethods", pkg: "fmt", typ: $funcType([$Int32], [$Bool], false)}, {prop: "printArg", name: "printArg", pkg: "fmt", typ: $funcType([$emptyInterface, $Int32], [], false)}, {prop: "printValue", name: "printValue", pkg: "fmt", typ: $funcType([reflect.Value, $Int32, $Int], [], false)}, {prop: "argNumber", name: "argNumber", pkg: "fmt", typ: $funcType([$Int, $String, $Int, $Int], [$Int, $Int, $Bool], false)}, {prop: "badArgNum", name: "badArgNum", pkg: "fmt", typ: $funcType([$Int32], [], false)}, {prop: "missingArg", name: "missingArg", pkg: "fmt", typ: $funcType([$Int32], [], false)}, {prop: "doPrintf", name: "doPrintf", pkg: "fmt", typ: $funcType([$String, sliceType], [], false)}, {prop: "doPrint", name: "doPrint", pkg: "fmt", typ: $funcType([sliceType], [], false)}, {prop: "doPrintln", name: "doPrintln", pkg: "fmt", typ: $funcType([sliceType], [], false)}];
+ ptrType$5.methods = [{prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "ReadRune", name: "ReadRune", pkg: "", typ: $funcType([], [$Int32, $Int, $error], false)}, {prop: "Width", name: "Width", pkg: "", typ: $funcType([], [$Int, $Bool], false)}, {prop: "getRune", name: "getRune", pkg: "fmt", typ: $funcType([], [$Int32], false)}, {prop: "mustReadRune", name: "mustReadRune", pkg: "fmt", typ: $funcType([], [$Int32], false)}, {prop: "UnreadRune", name: "UnreadRune", pkg: "", typ: $funcType([], [$error], false)}, {prop: "error", name: "error", pkg: "fmt", typ: $funcType([$error], [], false)}, {prop: "errorString", name: "errorString", pkg: "fmt", typ: $funcType([$String], [], false)}, {prop: "Token", name: "Token", pkg: "", typ: $funcType([$Bool, funcType], [sliceType$2, $error], false)}, {prop: "SkipSpace", name: "SkipSpace", pkg: "", typ: $funcType([], [], false)}, {prop: "free", name: "free", pkg: "fmt", typ: $funcType([ssave], [], false)}, {prop: "skipSpace", name: "skipSpace", pkg: "fmt", typ: $funcType([$Bool], [], false)}, {prop: "token", name: "token", pkg: "fmt", typ: $funcType([$Bool, funcType], [sliceType$2], false)}, {prop: "consume", name: "consume", pkg: "fmt", typ: $funcType([$String, $Bool], [$Bool], false)}, {prop: "peek", name: "peek", pkg: "fmt", typ: $funcType([$String], [$Bool], false)}, {prop: "notEOF", name: "notEOF", pkg: "fmt", typ: $funcType([], [], false)}, {prop: "accept", name: "accept", pkg: "fmt", typ: $funcType([$String], [$Bool], false)}, {prop: "okVerb", name: "okVerb", pkg: "fmt", typ: $funcType([$Int32, $String, $String], [$Bool], false)}, {prop: "scanBool", name: "scanBool", pkg: "fmt", typ: $funcType([$Int32], [$Bool], false)}, {prop: "getBase", name: "getBase", pkg: "fmt", typ: $funcType([$Int32], [$Int, $String], false)}, {prop: "scanNumber", name: "scanNumber", pkg: "fmt", typ: $funcType([$String, $Bool], [$String], false)}, {prop: "scanRune", name: "scanRune", pkg: "fmt", typ: $funcType([$Int], [$Int64], false)}, {prop: "scanBasePrefix", name: "scanBasePrefix", pkg: "fmt", typ: $funcType([], [$Int, $String, $Bool], false)}, {prop: "scanInt", name: "scanInt", pkg: "fmt", typ: $funcType([$Int32, $Int], [$Int64], false)}, {prop: "scanUint", name: "scanUint", pkg: "fmt", typ: $funcType([$Int32, $Int], [$Uint64], false)}, {prop: "floatToken", name: "floatToken", pkg: "fmt", typ: $funcType([], [$String], false)}, {prop: "complexTokens", name: "complexTokens", pkg: "fmt", typ: $funcType([], [$String, $String], false)}, {prop: "convertFloat", name: "convertFloat", pkg: "fmt", typ: $funcType([$String, $Int], [$Float64], false)}, {prop: "scanComplex", name: "scanComplex", pkg: "fmt", typ: $funcType([$Int32, $Int], [$Complex128], false)}, {prop: "convertString", name: "convertString", pkg: "fmt", typ: $funcType([$Int32], [$String], false)}, {prop: "quotedString", name: "quotedString", pkg: "fmt", typ: $funcType([], [$String], false)}, {prop: "hexByte", name: "hexByte", pkg: "fmt", typ: $funcType([], [$Uint8, $Bool], false)}, {prop: "hexString", name: "hexString", pkg: "fmt", typ: $funcType([], [$String], false)}, {prop: "scanOne", name: "scanOne", pkg: "fmt", typ: $funcType([$Int32, $emptyInterface], [], false)}, {prop: "doScan", name: "doScan", pkg: "fmt", typ: $funcType([sliceType], [$Int, $error], false)}, {prop: "advance", name: "advance", pkg: "fmt", typ: $funcType([$String], [$Int], false)}, {prop: "doScanf", name: "doScanf", pkg: "fmt", typ: $funcType([$String, sliceType], [$Int, $error], false)}];
+ fmtFlags.init("fmt", [{prop: "widPresent", name: "widPresent", exported: false, typ: $Bool, tag: ""}, {prop: "precPresent", name: "precPresent", exported: false, typ: $Bool, tag: ""}, {prop: "minus", name: "minus", exported: false, typ: $Bool, tag: ""}, {prop: "plus", name: "plus", exported: false, typ: $Bool, tag: ""}, {prop: "sharp", name: "sharp", exported: false, typ: $Bool, tag: ""}, {prop: "space", name: "space", exported: false, typ: $Bool, tag: ""}, {prop: "zero", name: "zero", exported: false, typ: $Bool, tag: ""}, {prop: "plusV", name: "plusV", exported: false, typ: $Bool, tag: ""}, {prop: "sharpV", name: "sharpV", exported: false, typ: $Bool, tag: ""}]);
+ fmt.init("fmt", [{prop: "buf", name: "buf", exported: false, typ: ptrType$1, tag: ""}, {prop: "fmtFlags", name: "", exported: false, typ: fmtFlags, tag: ""}, {prop: "wid", name: "wid", exported: false, typ: $Int, tag: ""}, {prop: "prec", name: "prec", exported: false, typ: $Int, tag: ""}, {prop: "intbuf", name: "intbuf", exported: false, typ: arrayType, tag: ""}]);
+ State.init([{prop: "Flag", name: "Flag", pkg: "", typ: $funcType([$Int], [$Bool], false)}, {prop: "Precision", name: "Precision", pkg: "", typ: $funcType([], [$Int, $Bool], false)}, {prop: "Width", name: "Width", pkg: "", typ: $funcType([], [$Int, $Bool], false)}, {prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}]);
+ Formatter.init([{prop: "Format", name: "Format", pkg: "", typ: $funcType([State, $Int32], [], false)}]);
+ Stringer.init([{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}]);
+ GoStringer.init([{prop: "GoString", name: "GoString", pkg: "", typ: $funcType([], [$String], false)}]);
+ buffer.init($Uint8);
+ pp.init("fmt", [{prop: "buf", name: "buf", exported: false, typ: buffer, tag: ""}, {prop: "arg", name: "arg", exported: false, typ: $emptyInterface, tag: ""}, {prop: "value", name: "value", exported: false, typ: reflect.Value, tag: ""}, {prop: "fmt", name: "fmt", exported: false, typ: fmt, tag: ""}, {prop: "reordered", name: "reordered", exported: false, typ: $Bool, tag: ""}, {prop: "goodArgNum", name: "goodArgNum", exported: false, typ: $Bool, tag: ""}, {prop: "panicking", name: "panicking", exported: false, typ: $Bool, tag: ""}, {prop: "erroring", name: "erroring", exported: false, typ: $Bool, tag: ""}]);
+ ScanState.init([{prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType$2], [$Int, $error], false)}, {prop: "ReadRune", name: "ReadRune", pkg: "", typ: $funcType([], [$Int32, $Int, $error], false)}, {prop: "SkipSpace", name: "SkipSpace", pkg: "", typ: $funcType([], [], false)}, {prop: "Token", name: "Token", pkg: "", typ: $funcType([$Bool, funcType], [sliceType$2, $error], false)}, {prop: "UnreadRune", name: "UnreadRune", pkg: "", typ: $funcType([], [$error], false)}, {prop: "Width", name: "Width", pkg: "", typ: $funcType([], [$Int, $Bool], false)}]);
+ scanError.init("fmt", [{prop: "err", name: "err", exported: false, typ: $error, tag: ""}]);
+ ss.init("fmt", [{prop: "rs", name: "rs", exported: false, typ: io.RuneScanner, tag: ""}, {prop: "buf", name: "buf", exported: false, typ: buffer, tag: ""}, {prop: "count", name: "count", exported: false, typ: $Int, tag: ""}, {prop: "atEOF", name: "atEOF", exported: false, typ: $Bool, tag: ""}, {prop: "ssave", name: "", exported: false, typ: ssave, tag: ""}]);
+ ssave.init("fmt", [{prop: "validSave", name: "validSave", exported: false, typ: $Bool, tag: ""}, {prop: "nlIsEnd", name: "nlIsEnd", exported: false, typ: $Bool, tag: ""}, {prop: "nlIsSpace", name: "nlIsSpace", exported: false, typ: $Bool, tag: ""}, {prop: "argLimit", name: "argLimit", exported: false, typ: $Int, tag: ""}, {prop: "limit", name: "limit", exported: false, typ: $Int, tag: ""}, {prop: "maxWid", name: "maxWid", exported: false, typ: $Int, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = errors.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = math.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = os.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = reflect.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = utf8.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ ppFree = new sync.Pool.ptr(0, 0, sliceType.nil, (function() {
+ var $ptr;
+ return new pp.ptr(buffer.nil, $ifaceNil, new reflect.Value.ptr(ptrType.nil, 0, 0), new fmt.ptr(ptrType$1.nil, new fmtFlags.ptr(false, false, false, false, false, false, false, false, false), 0, 0, arrayType.zero()), false, false, false, false);
+ }));
+ byteType = reflect.TypeOf(new $Uint8(0));
+ space = new sliceType$1([$toNativeArray($kindUint16, [9, 13]), $toNativeArray($kindUint16, [32, 32]), $toNativeArray($kindUint16, [133, 133]), $toNativeArray($kindUint16, [160, 160]), $toNativeArray($kindUint16, [5760, 5760]), $toNativeArray($kindUint16, [8192, 8202]), $toNativeArray($kindUint16, [8232, 8233]), $toNativeArray($kindUint16, [8239, 8239]), $toNativeArray($kindUint16, [8287, 8287]), $toNativeArray($kindUint16, [12288, 12288])]);
+ ssFree = new sync.Pool.ptr(0, 0, sliceType.nil, (function() {
+ var $ptr;
+ return new ss.ptr($ifaceNil, buffer.nil, 0, false, new ssave.ptr(false, false, false, 0, 0, 0));
+ }));
+ complexError = errors.New("syntax error scanning complex number");
+ boolError = errors.New("syntax error scanning boolean");
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["sort"] = (function() {
+ var $pkg = {}, $init, reflect, Interface, reverse, StringSlice, sliceType$2, Search, SearchStrings, insertionSort, siftDown, heapSort, medianOfThree, doPivot, quickSort, Sort, maxDepth, Reverse;
+ reflect = $packages["reflect"];
+ Interface = $pkg.Interface = $newType(8, $kindInterface, "sort.Interface", true, "sort", true, null);
+ reverse = $pkg.reverse = $newType(0, $kindStruct, "sort.reverse", true, "sort", false, function(Interface_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Interface = $ifaceNil;
+ return;
+ }
+ this.Interface = Interface_;
+ });
+ StringSlice = $pkg.StringSlice = $newType(12, $kindSlice, "sort.StringSlice", true, "sort", true, null);
+ sliceType$2 = $sliceType($String);
+ Search = function(n, f) {
+ var $ptr, _q, _r, _tmp, _tmp$1, f, h, i, j, n, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; f = $f.f; h = $f.h; i = $f.i; j = $f.j; n = $f.n; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _tmp = 0;
+ _tmp$1 = n;
+ i = _tmp;
+ j = _tmp$1;
+ /* while (true) { */ case 1:
+ /* if (!(i < j)) { break; } */ if(!(i < j)) { $s = 2; continue; }
+ h = i + (_q = ((j - i >> 0)) / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")) >> 0;
+ _r = f(h); /* */ $s = 6; case 6: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (!_r) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!_r) { */ case 3:
+ i = h + 1 >> 0;
+ $s = 5; continue;
+ /* } else { */ case 4:
+ j = h;
+ /* } */ case 5:
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Search }; } $f.$ptr = $ptr; $f._q = _q; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f.f = f; $f.h = h; $f.i = i; $f.j = j; $f.n = n; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Search = Search;
+ SearchStrings = function(a, x) {
+ var $ptr, _r, a, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ a = [a];
+ x = [x];
+ _r = Search(a[0].$length, (function(a, x) { return function(i) {
+ var $ptr, i;
+ return ((i < 0 || i >= a[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : a[0].$array[a[0].$offset + i]) >= x[0];
+ }; })(a, x)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: SearchStrings }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.SearchStrings = SearchStrings;
+ StringSlice.prototype.Search = function(x) {
+ var $ptr, _r, p, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; p = $f.p; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ _r = SearchStrings($subslice(new sliceType$2(p.$array), p.$offset, p.$offset + p.$length), x); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: StringSlice.prototype.Search }; } $f.$ptr = $ptr; $f._r = _r; $f.p = p; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(StringSlice).prototype.Search = function(x) { return this.$get().Search(x); };
+ insertionSort = function(data, a, b) {
+ var $ptr, _r, _v, a, b, data, i, j, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _v = $f._v; a = $f.a; b = $f.b; data = $f.data; i = $f.i; j = $f.j; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = a + 1 >> 0;
+ /* while (true) { */ case 1:
+ /* if (!(i < b)) { break; } */ if(!(i < b)) { $s = 2; continue; }
+ j = i;
+ /* while (true) { */ case 3:
+ if (!(j > a)) { _v = false; $s = 5; continue s; }
+ _r = data.Less(j, j - 1 >> 0); /* */ $s = 6; case 6: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _v = _r; case 5:
+ /* if (!(_v)) { break; } */ if(!(_v)) { $s = 4; continue; }
+ $r = data.Swap(j, j - 1 >> 0); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ j = j - (1) >> 0;
+ /* } */ $s = 3; continue; case 4:
+ i = i + (1) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: insertionSort }; } $f.$ptr = $ptr; $f._r = _r; $f._v = _v; $f.a = a; $f.b = b; $f.data = data; $f.i = i; $f.j = j; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ siftDown = function(data, lo, hi, first) {
+ var $ptr, _r, _r$1, _v, child, data, first, hi, lo, root, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _v = $f._v; child = $f.child; data = $f.data; first = $f.first; hi = $f.hi; lo = $f.lo; root = $f.root; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ root = lo;
+ /* while (true) { */ case 1:
+ child = ($imul(2, root)) + 1 >> 0;
+ if (child >= hi) {
+ /* break; */ $s = 2; continue;
+ }
+ if (!((child + 1 >> 0) < hi)) { _v = false; $s = 5; continue s; }
+ _r = data.Less(first + child >> 0, (first + child >> 0) + 1 >> 0); /* */ $s = 6; case 6: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _v = _r; case 5:
+ /* */ if (_v) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (_v) { */ case 3:
+ child = child + (1) >> 0;
+ /* } */ case 4:
+ _r$1 = data.Less(first + root >> 0, first + child >> 0); /* */ $s = 9; case 9: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ /* */ if (!_r$1) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (!_r$1) { */ case 7:
+ $s = -1; return;
+ /* } */ case 8:
+ $r = data.Swap(first + root >> 0, first + child >> 0); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ root = child;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: siftDown }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._v = _v; $f.child = child; $f.data = data; $f.first = first; $f.hi = hi; $f.lo = lo; $f.root = root; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ heapSort = function(data, a, b) {
+ var $ptr, _q, a, b, data, first, hi, i, i$1, lo, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; a = $f.a; b = $f.b; data = $f.data; first = $f.first; hi = $f.hi; i = $f.i; i$1 = $f.i$1; lo = $f.lo; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ first = a;
+ lo = 0;
+ hi = b - a >> 0;
+ i = (_q = ((hi - 1 >> 0)) / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ /* while (true) { */ case 1:
+ /* if (!(i >= 0)) { break; } */ if(!(i >= 0)) { $s = 2; continue; }
+ $r = siftDown(data, i, hi, first); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i = i - (1) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ i$1 = hi - 1 >> 0;
+ /* while (true) { */ case 4:
+ /* if (!(i$1 >= 0)) { break; } */ if(!(i$1 >= 0)) { $s = 5; continue; }
+ $r = data.Swap(first, first + i$1 >> 0); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = siftDown(data, lo, i$1, first); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i$1 = i$1 - (1) >> 0;
+ /* } */ $s = 4; continue; case 5:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: heapSort }; } $f.$ptr = $ptr; $f._q = _q; $f.a = a; $f.b = b; $f.data = data; $f.first = first; $f.hi = hi; $f.i = i; $f.i$1 = i$1; $f.lo = lo; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ medianOfThree = function(data, m1, m0, m2) {
+ var $ptr, _r, _r$1, _r$2, data, m0, m1, m2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; data = $f.data; m0 = $f.m0; m1 = $f.m1; m2 = $f.m2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = data.Less(m1, m0); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (_r) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (_r) { */ case 1:
+ $r = data.Swap(m1, m0); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 2:
+ _r$1 = data.Less(m2, m1); /* */ $s = 7; case 7: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ /* */ if (_r$1) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (_r$1) { */ case 5:
+ $r = data.Swap(m2, m1); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$2 = data.Less(m1, m0); /* */ $s = 11; case 11: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ /* */ if (_r$2) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (_r$2) { */ case 9:
+ $r = data.Swap(m1, m0); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 10:
+ /* } */ case 6:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: medianOfThree }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.data = data; $f.m0 = m0; $f.m1 = m1; $f.m2 = m2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ doPivot = function(data, lo, hi) {
+ var $ptr, _q, _q$1, _q$2, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _tmp, _tmp$1, _tmp$2, _tmp$3, _v, _v$1, _v$2, _v$3, _v$4, a, b, c, data, dups, hi, lo, m, midhi, midlo, pivot, protect, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; _q$1 = $f._q$1; _q$2 = $f._q$2; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _v = $f._v; _v$1 = $f._v$1; _v$2 = $f._v$2; _v$3 = $f._v$3; _v$4 = $f._v$4; a = $f.a; b = $f.b; c = $f.c; data = $f.data; dups = $f.dups; hi = $f.hi; lo = $f.lo; m = $f.m; midhi = $f.midhi; midlo = $f.midlo; pivot = $f.pivot; protect = $f.protect; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ midlo = 0;
+ midhi = 0;
+ m = lo + (_q = ((hi - lo >> 0)) / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")) >> 0;
+ /* */ if ((hi - lo >> 0) > 40) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ((hi - lo >> 0) > 40) { */ case 1:
+ s = (_q$1 = ((hi - lo >> 0)) / 8, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero"));
+ $r = medianOfThree(data, lo, lo + s >> 0, lo + ($imul(2, s)) >> 0); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = medianOfThree(data, m, m - s >> 0, m + s >> 0); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = medianOfThree(data, hi - 1 >> 0, (hi - 1 >> 0) - s >> 0, (hi - 1 >> 0) - ($imul(2, s)) >> 0); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 2:
+ $r = medianOfThree(data, lo, m, hi - 1 >> 0); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ pivot = lo;
+ _tmp = lo + 1 >> 0;
+ _tmp$1 = hi - 1 >> 0;
+ a = _tmp;
+ c = _tmp$1;
+ /* while (true) { */ case 7:
+ if (!(a < c)) { _v = false; $s = 9; continue s; }
+ _r = data.Less(a, pivot); /* */ $s = 10; case 10: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _v = _r; case 9:
+ /* if (!(_v)) { break; } */ if(!(_v)) { $s = 8; continue; }
+ a = a + (1) >> 0;
+ /* } */ $s = 7; continue; case 8:
+ b = a;
+ /* while (true) { */ case 11:
+ /* while (true) { */ case 13:
+ if (!(b < c)) { _v$1 = false; $s = 15; continue s; }
+ _r$1 = data.Less(pivot, b); /* */ $s = 16; case 16: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _v$1 = !_r$1; case 15:
+ /* if (!(_v$1)) { break; } */ if(!(_v$1)) { $s = 14; continue; }
+ b = b + (1) >> 0;
+ /* } */ $s = 13; continue; case 14:
+ /* while (true) { */ case 17:
+ if (!(b < c)) { _v$2 = false; $s = 19; continue s; }
+ _r$2 = data.Less(pivot, c - 1 >> 0); /* */ $s = 20; case 20: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _v$2 = _r$2; case 19:
+ /* if (!(_v$2)) { break; } */ if(!(_v$2)) { $s = 18; continue; }
+ c = c - (1) >> 0;
+ /* } */ $s = 17; continue; case 18:
+ if (b >= c) {
+ /* break; */ $s = 12; continue;
+ }
+ $r = data.Swap(b, c - 1 >> 0); /* */ $s = 21; case 21: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ b = b + (1) >> 0;
+ c = c - (1) >> 0;
+ /* } */ $s = 11; continue; case 12:
+ protect = (hi - c >> 0) < 5;
+ /* */ if (!protect && (hi - c >> 0) < (_q$2 = ((hi - lo >> 0)) / 4, (_q$2 === _q$2 && _q$2 !== 1/0 && _q$2 !== -1/0) ? _q$2 >> 0 : $throwRuntimeError("integer divide by zero"))) { $s = 22; continue; }
+ /* */ $s = 23; continue;
+ /* if (!protect && (hi - c >> 0) < (_q$2 = ((hi - lo >> 0)) / 4, (_q$2 === _q$2 && _q$2 !== 1/0 && _q$2 !== -1/0) ? _q$2 >> 0 : $throwRuntimeError("integer divide by zero"))) { */ case 22:
+ dups = 0;
+ _r$3 = data.Less(pivot, hi - 1 >> 0); /* */ $s = 26; case 26: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ /* */ if (!_r$3) { $s = 24; continue; }
+ /* */ $s = 25; continue;
+ /* if (!_r$3) { */ case 24:
+ $r = data.Swap(c, hi - 1 >> 0); /* */ $s = 27; case 27: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ c = c + (1) >> 0;
+ dups = dups + (1) >> 0;
+ /* } */ case 25:
+ _r$4 = data.Less(b - 1 >> 0, pivot); /* */ $s = 30; case 30: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ /* */ if (!_r$4) { $s = 28; continue; }
+ /* */ $s = 29; continue;
+ /* if (!_r$4) { */ case 28:
+ b = b - (1) >> 0;
+ dups = dups + (1) >> 0;
+ /* } */ case 29:
+ _r$5 = data.Less(m, pivot); /* */ $s = 33; case 33: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ /* */ if (!_r$5) { $s = 31; continue; }
+ /* */ $s = 32; continue;
+ /* if (!_r$5) { */ case 31:
+ $r = data.Swap(m, b - 1 >> 0); /* */ $s = 34; case 34: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ b = b - (1) >> 0;
+ dups = dups + (1) >> 0;
+ /* } */ case 32:
+ protect = dups > 1;
+ /* } */ case 23:
+ /* */ if (protect) { $s = 35; continue; }
+ /* */ $s = 36; continue;
+ /* if (protect) { */ case 35:
+ /* while (true) { */ case 37:
+ /* while (true) { */ case 39:
+ if (!(a < b)) { _v$3 = false; $s = 41; continue s; }
+ _r$6 = data.Less(b - 1 >> 0, pivot); /* */ $s = 42; case 42: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _v$3 = !_r$6; case 41:
+ /* if (!(_v$3)) { break; } */ if(!(_v$3)) { $s = 40; continue; }
+ b = b - (1) >> 0;
+ /* } */ $s = 39; continue; case 40:
+ /* while (true) { */ case 43:
+ if (!(a < b)) { _v$4 = false; $s = 45; continue s; }
+ _r$7 = data.Less(a, pivot); /* */ $s = 46; case 46: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _v$4 = _r$7; case 45:
+ /* if (!(_v$4)) { break; } */ if(!(_v$4)) { $s = 44; continue; }
+ a = a + (1) >> 0;
+ /* } */ $s = 43; continue; case 44:
+ if (a >= b) {
+ /* break; */ $s = 38; continue;
+ }
+ $r = data.Swap(a, b - 1 >> 0); /* */ $s = 47; case 47: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ a = a + (1) >> 0;
+ b = b - (1) >> 0;
+ /* } */ $s = 37; continue; case 38:
+ /* } */ case 36:
+ $r = data.Swap(pivot, b - 1 >> 0); /* */ $s = 48; case 48: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _tmp$2 = b - 1 >> 0;
+ _tmp$3 = c;
+ midlo = _tmp$2;
+ midhi = _tmp$3;
+ $s = -1; return [midlo, midhi];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: doPivot }; } $f.$ptr = $ptr; $f._q = _q; $f._q$1 = _q$1; $f._q$2 = _q$2; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._v = _v; $f._v$1 = _v$1; $f._v$2 = _v$2; $f._v$3 = _v$3; $f._v$4 = _v$4; $f.a = a; $f.b = b; $f.c = c; $f.data = data; $f.dups = dups; $f.hi = hi; $f.lo = lo; $f.m = m; $f.midhi = midhi; $f.midlo = midlo; $f.pivot = pivot; $f.protect = protect; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ quickSort = function(data, a, b, maxDepth$1) {
+ var $ptr, _r, _r$1, _tuple, a, b, data, i, maxDepth$1, mhi, mlo, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; a = $f.a; b = $f.b; data = $f.data; i = $f.i; maxDepth$1 = $f.maxDepth$1; mhi = $f.mhi; mlo = $f.mlo; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* while (true) { */ case 1:
+ /* if (!((b - a >> 0) > 12)) { break; } */ if(!((b - a >> 0) > 12)) { $s = 2; continue; }
+ /* */ if (maxDepth$1 === 0) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (maxDepth$1 === 0) { */ case 3:
+ $r = heapSort(data, a, b); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* } */ case 4:
+ maxDepth$1 = maxDepth$1 - (1) >> 0;
+ _r = doPivot(data, a, b); /* */ $s = 6; case 6: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ mlo = _tuple[0];
+ mhi = _tuple[1];
+ /* */ if ((mlo - a >> 0) < (b - mhi >> 0)) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if ((mlo - a >> 0) < (b - mhi >> 0)) { */ case 7:
+ $r = quickSort(data, a, mlo, maxDepth$1); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ a = mhi;
+ $s = 9; continue;
+ /* } else { */ case 8:
+ $r = quickSort(data, mhi, b, maxDepth$1); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ b = mlo;
+ /* } */ case 9:
+ /* } */ $s = 1; continue; case 2:
+ /* */ if ((b - a >> 0) > 1) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if ((b - a >> 0) > 1) { */ case 12:
+ i = a + 6 >> 0;
+ /* while (true) { */ case 14:
+ /* if (!(i < b)) { break; } */ if(!(i < b)) { $s = 15; continue; }
+ _r$1 = data.Less(i, i - 6 >> 0); /* */ $s = 18; case 18: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ /* */ if (_r$1) { $s = 16; continue; }
+ /* */ $s = 17; continue;
+ /* if (_r$1) { */ case 16:
+ $r = data.Swap(i, i - 6 >> 0); /* */ $s = 19; case 19: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 17:
+ i = i + (1) >> 0;
+ /* } */ $s = 14; continue; case 15:
+ $r = insertionSort(data, a, b); /* */ $s = 20; case 20: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 13:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: quickSort }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.a = a; $f.b = b; $f.data = data; $f.i = i; $f.maxDepth$1 = maxDepth$1; $f.mhi = mhi; $f.mlo = mlo; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Sort = function(data) {
+ var $ptr, _r, data, n, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; data = $f.data; n = $f.n; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = data.Len(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ n = _r;
+ $r = quickSort(data, 0, n, maxDepth(n)); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Sort }; } $f.$ptr = $ptr; $f._r = _r; $f.data = data; $f.n = n; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Sort = Sort;
+ maxDepth = function(n) {
+ var $ptr, depth, i, n;
+ depth = 0;
+ i = n;
+ while (true) {
+ if (!(i > 0)) { break; }
+ depth = depth + (1) >> 0;
+ i = (i >> $min((1), 31)) >> 0;
+ }
+ return $imul(depth, 2);
+ };
+ reverse.ptr.prototype.Less = function(i, j) {
+ var $ptr, _r, i, j, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; i = $f.i; j = $f.j; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ _r = r.Interface.Less(j, i); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: reverse.ptr.prototype.Less }; } $f.$ptr = $ptr; $f._r = _r; $f.i = i; $f.j = j; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ reverse.prototype.Less = function(i, j) { return this.$val.Less(i, j); };
+ Reverse = function(data) {
+ var $ptr, data;
+ return new reverse.ptr(data);
+ };
+ $pkg.Reverse = Reverse;
+ StringSlice.prototype.Len = function() {
+ var $ptr, p;
+ p = this;
+ return p.$length;
+ };
+ $ptrType(StringSlice).prototype.Len = function() { return this.$get().Len(); };
+ StringSlice.prototype.Less = function(i, j) {
+ var $ptr, i, j, p;
+ p = this;
+ return ((i < 0 || i >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + i]) < ((j < 0 || j >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + j]);
+ };
+ $ptrType(StringSlice).prototype.Less = function(i, j) { return this.$get().Less(i, j); };
+ StringSlice.prototype.Swap = function(i, j) {
+ var $ptr, _tmp, _tmp$1, i, j, p;
+ p = this;
+ _tmp = ((j < 0 || j >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + j]);
+ _tmp$1 = ((i < 0 || i >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + i]);
+ ((i < 0 || i >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + i] = _tmp);
+ ((j < 0 || j >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + j] = _tmp$1);
+ };
+ $ptrType(StringSlice).prototype.Swap = function(i, j) { return this.$get().Swap(i, j); };
+ StringSlice.prototype.Sort = function() {
+ var $ptr, p, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; p = $f.p; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ $r = Sort(p); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: StringSlice.prototype.Sort }; } $f.$ptr = $ptr; $f.p = p; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(StringSlice).prototype.Sort = function() { return this.$get().Sort(); };
+ reverse.methods = [{prop: "Less", name: "Less", pkg: "", typ: $funcType([$Int, $Int], [$Bool], false)}];
+ StringSlice.methods = [{prop: "Search", name: "Search", pkg: "", typ: $funcType([$String], [$Int], false)}, {prop: "Len", name: "Len", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Less", name: "Less", pkg: "", typ: $funcType([$Int, $Int], [$Bool], false)}, {prop: "Swap", name: "Swap", pkg: "", typ: $funcType([$Int, $Int], [], false)}, {prop: "Sort", name: "Sort", pkg: "", typ: $funcType([], [], false)}];
+ Interface.init([{prop: "Len", name: "Len", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Less", name: "Less", pkg: "", typ: $funcType([$Int, $Int], [$Bool], false)}, {prop: "Swap", name: "Swap", pkg: "", typ: $funcType([$Int, $Int], [], false)}]);
+ reverse.init("", [{prop: "Interface", name: "", exported: true, typ: Interface, tag: ""}]);
+ StringSlice.init($String);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = reflect.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["strings"] = (function() {
+ var $pkg = {}, $init, errors, js, io, unicode, utf8, Reader, asciiSet, sliceType, sliceType$3, ptrType$5, arrayType$3, ptrType$6, IndexByte, Index, LastIndex, Count, NewReader, explode, Contains, ContainsAny, ContainsRune, IndexRune, IndexAny, genSplit, Split, Join, HasPrefix, Map, ToLower, TrimLeftFunc, TrimRightFunc, TrimFunc, IndexFunc, indexFunc, lastIndexFunc, makeASCIISet, makeCutsetFunc, TrimRight, TrimSpace, EqualFold;
+ errors = $packages["errors"];
+ js = $packages["github.com/gopherjs/gopherjs/js"];
+ io = $packages["io"];
+ unicode = $packages["unicode"];
+ utf8 = $packages["unicode/utf8"];
+ Reader = $pkg.Reader = $newType(0, $kindStruct, "strings.Reader", true, "strings", true, function(s_, i_, prevRune_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.s = "";
+ this.i = new $Int64(0, 0);
+ this.prevRune = 0;
+ return;
+ }
+ this.s = s_;
+ this.i = i_;
+ this.prevRune = prevRune_;
+ });
+ asciiSet = $pkg.asciiSet = $newType(32, $kindArray, "strings.asciiSet", true, "strings", false, null);
+ sliceType = $sliceType($Uint8);
+ sliceType$3 = $sliceType($String);
+ ptrType$5 = $ptrType(asciiSet);
+ arrayType$3 = $arrayType($Uint32, 8);
+ ptrType$6 = $ptrType(Reader);
+ IndexByte = function(s, c) {
+ var $ptr, c, s;
+ return $parseInt(s.indexOf($global.String.fromCharCode(c))) >> 0;
+ };
+ $pkg.IndexByte = IndexByte;
+ Index = function(s, sep) {
+ var $ptr, s, sep;
+ return $parseInt(s.indexOf(sep)) >> 0;
+ };
+ $pkg.Index = Index;
+ LastIndex = function(s, sep) {
+ var $ptr, s, sep;
+ return $parseInt(s.lastIndexOf(sep)) >> 0;
+ };
+ $pkg.LastIndex = LastIndex;
+ Count = function(s, sep) {
+ var $ptr, n, pos, s, sep;
+ n = 0;
+ if ((sep.length === 0)) {
+ return utf8.RuneCountInString(s) + 1 >> 0;
+ } else if (sep.length > s.length) {
+ return 0;
+ } else if ((sep.length === s.length)) {
+ if (sep === s) {
+ return 1;
+ }
+ return 0;
+ }
+ while (true) {
+ pos = Index(s, sep);
+ if (pos === -1) {
+ break;
+ }
+ n = n + (1) >> 0;
+ s = $substring(s, (pos + sep.length >> 0));
+ }
+ return n;
+ };
+ $pkg.Count = Count;
+ Reader.ptr.prototype.Len = function() {
+ var $ptr, r, x, x$1, x$2, x$3, x$4;
+ r = this;
+ if ((x = r.i, x$1 = (new $Int64(0, r.s.length)), (x.$high > x$1.$high || (x.$high === x$1.$high && x.$low >= x$1.$low)))) {
+ return 0;
+ }
+ return (((x$2 = (x$3 = (new $Int64(0, r.s.length)), x$4 = r.i, new $Int64(x$3.$high - x$4.$high, x$3.$low - x$4.$low)), x$2.$low + ((x$2.$high >> 31) * 4294967296)) >> 0));
+ };
+ Reader.prototype.Len = function() { return this.$val.Len(); };
+ Reader.ptr.prototype.Size = function() {
+ var $ptr, r;
+ r = this;
+ return (new $Int64(0, r.s.length));
+ };
+ Reader.prototype.Size = function() { return this.$val.Size(); };
+ Reader.ptr.prototype.Read = function(b) {
+ var $ptr, _tmp, _tmp$1, b, err, n, r, x, x$1, x$2, x$3;
+ n = 0;
+ err = $ifaceNil;
+ r = this;
+ if ((x = r.i, x$1 = (new $Int64(0, r.s.length)), (x.$high > x$1.$high || (x.$high === x$1.$high && x.$low >= x$1.$low)))) {
+ _tmp = 0;
+ _tmp$1 = io.EOF;
+ n = _tmp;
+ err = _tmp$1;
+ return [n, err];
+ }
+ r.prevRune = -1;
+ n = $copyString(b, $substring(r.s, $flatten64(r.i)));
+ r.i = (x$2 = r.i, x$3 = (new $Int64(0, n)), new $Int64(x$2.$high + x$3.$high, x$2.$low + x$3.$low));
+ return [n, err];
+ };
+ Reader.prototype.Read = function(b) { return this.$val.Read(b); };
+ Reader.ptr.prototype.ReadAt = function(b, off) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, b, err, n, off, r, x;
+ n = 0;
+ err = $ifaceNil;
+ r = this;
+ if ((off.$high < 0 || (off.$high === 0 && off.$low < 0))) {
+ _tmp = 0;
+ _tmp$1 = errors.New("strings.Reader.ReadAt: negative offset");
+ n = _tmp;
+ err = _tmp$1;
+ return [n, err];
+ }
+ if ((x = (new $Int64(0, r.s.length)), (off.$high > x.$high || (off.$high === x.$high && off.$low >= x.$low)))) {
+ _tmp$2 = 0;
+ _tmp$3 = io.EOF;
+ n = _tmp$2;
+ err = _tmp$3;
+ return [n, err];
+ }
+ n = $copyString(b, $substring(r.s, $flatten64(off)));
+ if (n < b.$length) {
+ err = io.EOF;
+ }
+ return [n, err];
+ };
+ Reader.prototype.ReadAt = function(b, off) { return this.$val.ReadAt(b, off); };
+ Reader.ptr.prototype.ReadByte = function() {
+ var $ptr, b, r, x, x$1, x$2, x$3;
+ r = this;
+ r.prevRune = -1;
+ if ((x = r.i, x$1 = (new $Int64(0, r.s.length)), (x.$high > x$1.$high || (x.$high === x$1.$high && x.$low >= x$1.$low)))) {
+ return [0, io.EOF];
+ }
+ b = r.s.charCodeAt($flatten64(r.i));
+ r.i = (x$2 = r.i, x$3 = new $Int64(0, 1), new $Int64(x$2.$high + x$3.$high, x$2.$low + x$3.$low));
+ return [b, $ifaceNil];
+ };
+ Reader.prototype.ReadByte = function() { return this.$val.ReadByte(); };
+ Reader.ptr.prototype.UnreadByte = function() {
+ var $ptr, r, x, x$1, x$2;
+ r = this;
+ r.prevRune = -1;
+ if ((x = r.i, (x.$high < 0 || (x.$high === 0 && x.$low <= 0)))) {
+ return errors.New("strings.Reader.UnreadByte: at beginning of string");
+ }
+ r.i = (x$1 = r.i, x$2 = new $Int64(0, 1), new $Int64(x$1.$high - x$2.$high, x$1.$low - x$2.$low));
+ return $ifaceNil;
+ };
+ Reader.prototype.UnreadByte = function() { return this.$val.UnreadByte(); };
+ Reader.ptr.prototype.ReadRune = function() {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tuple, c, ch, err, r, size, x, x$1, x$2, x$3, x$4, x$5, x$6;
+ ch = 0;
+ size = 0;
+ err = $ifaceNil;
+ r = this;
+ if ((x = r.i, x$1 = (new $Int64(0, r.s.length)), (x.$high > x$1.$high || (x.$high === x$1.$high && x.$low >= x$1.$low)))) {
+ r.prevRune = -1;
+ _tmp = 0;
+ _tmp$1 = 0;
+ _tmp$2 = io.EOF;
+ ch = _tmp;
+ size = _tmp$1;
+ err = _tmp$2;
+ return [ch, size, err];
+ }
+ r.prevRune = (((x$2 = r.i, x$2.$low + ((x$2.$high >> 31) * 4294967296)) >> 0));
+ c = r.s.charCodeAt($flatten64(r.i));
+ if (c < 128) {
+ r.i = (x$3 = r.i, x$4 = new $Int64(0, 1), new $Int64(x$3.$high + x$4.$high, x$3.$low + x$4.$low));
+ _tmp$3 = ((c >> 0));
+ _tmp$4 = 1;
+ _tmp$5 = $ifaceNil;
+ ch = _tmp$3;
+ size = _tmp$4;
+ err = _tmp$5;
+ return [ch, size, err];
+ }
+ _tuple = utf8.DecodeRuneInString($substring(r.s, $flatten64(r.i)));
+ ch = _tuple[0];
+ size = _tuple[1];
+ r.i = (x$5 = r.i, x$6 = (new $Int64(0, size)), new $Int64(x$5.$high + x$6.$high, x$5.$low + x$6.$low));
+ return [ch, size, err];
+ };
+ Reader.prototype.ReadRune = function() { return this.$val.ReadRune(); };
+ Reader.ptr.prototype.UnreadRune = function() {
+ var $ptr, r;
+ r = this;
+ if (r.prevRune < 0) {
+ return errors.New("strings.Reader.UnreadRune: previous operation was not ReadRune");
+ }
+ r.i = (new $Int64(0, r.prevRune));
+ r.prevRune = -1;
+ return $ifaceNil;
+ };
+ Reader.prototype.UnreadRune = function() { return this.$val.UnreadRune(); };
+ Reader.ptr.prototype.Seek = function(offset, whence) {
+ var $ptr, _1, abs, offset, r, whence, x, x$1;
+ r = this;
+ r.prevRune = -1;
+ abs = new $Int64(0, 0);
+ _1 = whence;
+ if (_1 === (0)) {
+ abs = offset;
+ } else if (_1 === (1)) {
+ abs = (x = r.i, new $Int64(x.$high + offset.$high, x.$low + offset.$low));
+ } else if (_1 === (2)) {
+ abs = (x$1 = (new $Int64(0, r.s.length)), new $Int64(x$1.$high + offset.$high, x$1.$low + offset.$low));
+ } else {
+ return [new $Int64(0, 0), errors.New("strings.Reader.Seek: invalid whence")];
+ }
+ if ((abs.$high < 0 || (abs.$high === 0 && abs.$low < 0))) {
+ return [new $Int64(0, 0), errors.New("strings.Reader.Seek: negative position")];
+ }
+ r.i = abs;
+ return [abs, $ifaceNil];
+ };
+ Reader.prototype.Seek = function(offset, whence) { return this.$val.Seek(offset, whence); };
+ Reader.ptr.prototype.WriteTo = function(w) {
+ var $ptr, _r, _tmp, _tmp$1, _tuple, err, m, n, r, s, w, x, x$1, x$2, x$3, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tuple = $f._tuple; err = $f.err; m = $f.m; n = $f.n; r = $f.r; s = $f.s; w = $f.w; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = new $Int64(0, 0);
+ err = $ifaceNil;
+ r = this;
+ r.prevRune = -1;
+ if ((x = r.i, x$1 = (new $Int64(0, r.s.length)), (x.$high > x$1.$high || (x.$high === x$1.$high && x.$low >= x$1.$low)))) {
+ _tmp = new $Int64(0, 0);
+ _tmp$1 = $ifaceNil;
+ n = _tmp;
+ err = _tmp$1;
+ $s = -1; return [n, err];
+ }
+ s = $substring(r.s, $flatten64(r.i));
+ _r = io.WriteString(w, s); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ m = _tuple[0];
+ err = _tuple[1];
+ if (m > s.length) {
+ $panic(new $String("strings.Reader.WriteTo: invalid WriteString count"));
+ }
+ r.i = (x$2 = r.i, x$3 = (new $Int64(0, m)), new $Int64(x$2.$high + x$3.$high, x$2.$low + x$3.$low));
+ n = (new $Int64(0, m));
+ if (!((m === s.length)) && $interfaceIsEqual(err, $ifaceNil)) {
+ err = io.ErrShortWrite;
+ }
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Reader.ptr.prototype.WriteTo }; } $f.$ptr = $ptr; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tuple = _tuple; $f.err = err; $f.m = m; $f.n = n; $f.r = r; $f.s = s; $f.w = w; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Reader.prototype.WriteTo = function(w) { return this.$val.WriteTo(w); };
+ Reader.ptr.prototype.Reset = function(s) {
+ var $ptr, r, s;
+ r = this;
+ Reader.copy(r, new Reader.ptr(s, new $Int64(0, 0), -1));
+ };
+ Reader.prototype.Reset = function(s) { return this.$val.Reset(s); };
+ NewReader = function(s) {
+ var $ptr, s;
+ return new Reader.ptr(s, new $Int64(0, 0), -1);
+ };
+ $pkg.NewReader = NewReader;
+ explode = function(s, n) {
+ var $ptr, _tuple, a, ch, i, l, n, s, size, x;
+ l = utf8.RuneCountInString(s);
+ if (n < 0 || n > l) {
+ n = l;
+ }
+ a = $makeSlice(sliceType$3, n);
+ i = 0;
+ while (true) {
+ if (!(i < (n - 1 >> 0))) { break; }
+ _tuple = utf8.DecodeRuneInString(s);
+ ch = _tuple[0];
+ size = _tuple[1];
+ ((i < 0 || i >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + i] = $substring(s, 0, size));
+ s = $substring(s, size);
+ if (ch === 65533) {
+ ((i < 0 || i >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + i] = "\xEF\xBF\xBD");
+ }
+ i = i + (1) >> 0;
+ }
+ if (n > 0) {
+ (x = n - 1 >> 0, ((x < 0 || x >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + x] = s));
+ }
+ return a;
+ };
+ Contains = function(s, substr) {
+ var $ptr, s, substr;
+ return Index(s, substr) >= 0;
+ };
+ $pkg.Contains = Contains;
+ ContainsAny = function(s, chars) {
+ var $ptr, chars, s;
+ return IndexAny(s, chars) >= 0;
+ };
+ $pkg.ContainsAny = ContainsAny;
+ ContainsRune = function(s, r) {
+ var $ptr, r, s;
+ return IndexRune(s, r) >= 0;
+ };
+ $pkg.ContainsRune = ContainsRune;
+ IndexRune = function(s, r) {
+ var $ptr, _i, _ref, _rune, i, r, r$1, s;
+ if (0 <= r && r < 128) {
+ return IndexByte(s, ((r << 24 >>> 24)));
+ } else if ((r === 65533)) {
+ _ref = s;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.length)) { break; }
+ _rune = $decodeRune(_ref, _i);
+ i = _i;
+ r$1 = _rune[0];
+ if (r$1 === 65533) {
+ return i;
+ }
+ _i += _rune[1];
+ }
+ return -1;
+ } else if (!utf8.ValidRune(r)) {
+ return -1;
+ } else {
+ return Index(s, ($encodeRune(r)));
+ }
+ };
+ $pkg.IndexRune = IndexRune;
+ IndexAny = function(s, chars) {
+ var $ptr, _i, _i$1, _ref, _ref$1, _rune, _rune$1, _tuple, as, c, chars, i, i$1, isASCII, m, s;
+ if (chars.length > 0) {
+ if (s.length > 8) {
+ _tuple = makeASCIISet(chars);
+ as = $clone(_tuple[0], asciiSet);
+ isASCII = _tuple[1];
+ if (isASCII) {
+ i = 0;
+ while (true) {
+ if (!(i < s.length)) { break; }
+ if (new ptrType$5(as).contains(s.charCodeAt(i))) {
+ return i;
+ }
+ i = i + (1) >> 0;
+ }
+ return -1;
+ }
+ }
+ _ref = s;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.length)) { break; }
+ _rune = $decodeRune(_ref, _i);
+ i$1 = _i;
+ c = _rune[0];
+ _ref$1 = chars;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.length)) { break; }
+ _rune$1 = $decodeRune(_ref$1, _i$1);
+ m = _rune$1[0];
+ if (c === m) {
+ return i$1;
+ }
+ _i$1 += _rune$1[1];
+ }
+ _i += _rune[1];
+ }
+ }
+ return -1;
+ };
+ $pkg.IndexAny = IndexAny;
+ genSplit = function(s, sep, sepSave, n) {
+ var $ptr, a, c, i, n, na, s, sep, sepSave, start;
+ if (n === 0) {
+ return sliceType$3.nil;
+ }
+ if (sep === "") {
+ return explode(s, n);
+ }
+ if (n < 0) {
+ n = Count(s, sep) + 1 >> 0;
+ }
+ c = sep.charCodeAt(0);
+ start = 0;
+ a = $makeSlice(sliceType$3, n);
+ na = 0;
+ i = 0;
+ while (true) {
+ if (!((i + sep.length >> 0) <= s.length && (na + 1 >> 0) < n)) { break; }
+ if ((s.charCodeAt(i) === c) && ((sep.length === 1) || $substring(s, i, (i + sep.length >> 0)) === sep)) {
+ ((na < 0 || na >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + na] = $substring(s, start, (i + sepSave >> 0)));
+ na = na + (1) >> 0;
+ start = i + sep.length >> 0;
+ i = i + ((sep.length - 1 >> 0)) >> 0;
+ }
+ i = i + (1) >> 0;
+ }
+ ((na < 0 || na >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + na] = $substring(s, start));
+ return $subslice(a, 0, (na + 1 >> 0));
+ };
+ Split = function(s, sep) {
+ var $ptr, s, sep;
+ return genSplit(s, sep, 0, -1);
+ };
+ $pkg.Split = Split;
+ Join = function(a, sep) {
+ var $ptr, _1, _i, _ref, a, b, bp, i, n, s, sep;
+ _1 = a.$length;
+ if (_1 === (0)) {
+ return "";
+ } else if (_1 === (1)) {
+ return (0 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 0]);
+ } else if (_1 === (2)) {
+ return (0 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 0]) + sep + (1 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 1]);
+ } else if (_1 === (3)) {
+ return (0 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 0]) + sep + (1 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 1]) + sep + (2 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 2]);
+ }
+ n = $imul(sep.length, ((a.$length - 1 >> 0)));
+ i = 0;
+ while (true) {
+ if (!(i < a.$length)) { break; }
+ n = n + (((i < 0 || i >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + i]).length) >> 0;
+ i = i + (1) >> 0;
+ }
+ b = $makeSlice(sliceType, n);
+ bp = $copyString(b, (0 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 0]));
+ _ref = $subslice(a, 1);
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ s = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ bp = bp + ($copyString($subslice(b, bp), sep)) >> 0;
+ bp = bp + ($copyString($subslice(b, bp), s)) >> 0;
+ _i++;
+ }
+ return ($bytesToString(b));
+ };
+ $pkg.Join = Join;
+ HasPrefix = function(s, prefix) {
+ var $ptr, prefix, s;
+ return s.length >= prefix.length && $substring(s, 0, prefix.length) === prefix;
+ };
+ $pkg.HasPrefix = HasPrefix;
+ Map = function(mapping, s) {
+ var $ptr, _i, _r, _ref, _rune, b, c, i, mapping, maxbytes, nb, nbytes, r, s, wid, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _ref = $f._ref; _rune = $f._rune; b = $f.b; c = $f.c; i = $f.i; mapping = $f.mapping; maxbytes = $f.maxbytes; nb = $f.nb; nbytes = $f.nbytes; r = $f.r; s = $f.s; wid = $f.wid; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ maxbytes = s.length;
+ nbytes = 0;
+ b = sliceType.nil;
+ _ref = s;
+ _i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(_i < _ref.length)) { break; } */ if(!(_i < _ref.length)) { $s = 2; continue; }
+ _rune = $decodeRune(_ref, _i);
+ i = _i;
+ c = _rune[0];
+ _r = mapping(c); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ r = _r;
+ if (b === sliceType.nil) {
+ if (r === c) {
+ _i += _rune[1];
+ /* continue; */ $s = 1; continue;
+ }
+ b = $makeSlice(sliceType, maxbytes);
+ nbytes = $copyString(b, $substring(s, 0, i));
+ }
+ if (r >= 0) {
+ wid = 1;
+ if (r >= 128) {
+ wid = utf8.RuneLen(r);
+ }
+ if ((nbytes + wid >> 0) > maxbytes) {
+ maxbytes = ($imul(maxbytes, 2)) + 4 >> 0;
+ nb = $makeSlice(sliceType, maxbytes);
+ $copySlice(nb, $subslice(b, 0, nbytes));
+ b = nb;
+ }
+ nbytes = nbytes + (utf8.EncodeRune($subslice(b, nbytes, maxbytes), r)) >> 0;
+ }
+ _i += _rune[1];
+ /* } */ $s = 1; continue; case 2:
+ if (b === sliceType.nil) {
+ $s = -1; return s;
+ }
+ $s = -1; return ($bytesToString($subslice(b, 0, nbytes)));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Map }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._ref = _ref; $f._rune = _rune; $f.b = b; $f.c = c; $f.i = i; $f.mapping = mapping; $f.maxbytes = maxbytes; $f.nb = nb; $f.nbytes = nbytes; $f.r = r; $f.s = s; $f.wid = wid; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Map = Map;
+ ToLower = function(s) {
+ var $ptr, _r, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = Map(unicode.ToLower, s); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ToLower }; } $f.$ptr = $ptr; $f._r = _r; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.ToLower = ToLower;
+ TrimLeftFunc = function(s, f) {
+ var $ptr, _r, f, i, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; f = $f.f; i = $f.i; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = indexFunc(s, f, false); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ i = _r;
+ if (i === -1) {
+ $s = -1; return "";
+ }
+ $s = -1; return $substring(s, i);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: TrimLeftFunc }; } $f.$ptr = $ptr; $f._r = _r; $f.f = f; $f.i = i; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.TrimLeftFunc = TrimLeftFunc;
+ TrimRightFunc = function(s, f) {
+ var $ptr, _r, _tuple, f, i, s, wid, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; f = $f.f; i = $f.i; s = $f.s; wid = $f.wid; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = lastIndexFunc(s, f, false); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ i = _r;
+ if (i >= 0 && s.charCodeAt(i) >= 128) {
+ _tuple = utf8.DecodeRuneInString($substring(s, i));
+ wid = _tuple[1];
+ i = i + (wid) >> 0;
+ } else {
+ i = i + (1) >> 0;
+ }
+ $s = -1; return $substring(s, 0, i);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: TrimRightFunc }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.f = f; $f.i = i; $f.s = s; $f.wid = wid; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.TrimRightFunc = TrimRightFunc;
+ TrimFunc = function(s, f) {
+ var $ptr, _r, _r$1, f, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; f = $f.f; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = TrimLeftFunc(s, f); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = TrimRightFunc(_r, f); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: TrimFunc }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.f = f; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.TrimFunc = TrimFunc;
+ IndexFunc = function(s, f) {
+ var $ptr, _r, f, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; f = $f.f; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = indexFunc(s, f, true); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: IndexFunc }; } $f.$ptr = $ptr; $f._r = _r; $f.f = f; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.IndexFunc = IndexFunc;
+ indexFunc = function(s, f, truth) {
+ var $ptr, _r, _tuple, f, r, s, start, truth, wid, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; f = $f.f; r = $f.r; s = $f.s; start = $f.start; truth = $f.truth; wid = $f.wid; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ start = 0;
+ /* while (true) { */ case 1:
+ /* if (!(start < s.length)) { break; } */ if(!(start < s.length)) { $s = 2; continue; }
+ wid = 1;
+ r = ((s.charCodeAt(start) >> 0));
+ if (r >= 128) {
+ _tuple = utf8.DecodeRuneInString($substring(s, start));
+ r = _tuple[0];
+ wid = _tuple[1];
+ }
+ _r = f(r); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (_r === truth) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (_r === truth) { */ case 3:
+ $s = -1; return start;
+ /* } */ case 4:
+ start = start + (wid) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return -1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: indexFunc }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.f = f; $f.r = r; $f.s = s; $f.start = start; $f.truth = truth; $f.wid = wid; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ lastIndexFunc = function(s, f, truth) {
+ var $ptr, _r, _tuple, f, i, r, s, size, truth, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; f = $f.f; i = $f.i; r = $f.r; s = $f.s; size = $f.size; truth = $f.truth; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = s.length;
+ /* while (true) { */ case 1:
+ /* if (!(i > 0)) { break; } */ if(!(i > 0)) { $s = 2; continue; }
+ _tuple = utf8.DecodeLastRuneInString($substring(s, 0, i));
+ r = _tuple[0];
+ size = _tuple[1];
+ i = i - (size) >> 0;
+ _r = f(r); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (_r === truth) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (_r === truth) { */ case 3:
+ $s = -1; return i;
+ /* } */ case 4:
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return -1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: lastIndexFunc }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.f = f; $f.i = i; $f.r = r; $f.s = s; $f.size = size; $f.truth = truth; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ makeASCIISet = function(chars) {
+ var $ptr, _index, _tmp, _tmp$1, _tmp$2, _tmp$3, as, c, chars, i, ok, y;
+ as = arrayType$3.zero();
+ ok = false;
+ i = 0;
+ while (true) {
+ if (!(i < chars.length)) { break; }
+ c = chars.charCodeAt(i);
+ if (c >= 128) {
+ _tmp = $clone(as, asciiSet);
+ _tmp$1 = false;
+ asciiSet.copy(as, _tmp);
+ ok = _tmp$1;
+ return [as, ok];
+ }
+ _index = c >>> 5 << 24 >>> 24;
+ ((_index < 0 || _index >= as.length) ? ($throwRuntimeError("index out of range"), undefined) : as[_index] = ((((_index < 0 || _index >= as.length) ? ($throwRuntimeError("index out of range"), undefined) : as[_index]) | (((y = ((((c & 31) >>> 0) >>> 0)), y < 32 ? (1 << y) : 0) >>> 0))) >>> 0));
+ i = i + (1) >> 0;
+ }
+ _tmp$2 = $clone(as, asciiSet);
+ _tmp$3 = true;
+ asciiSet.copy(as, _tmp$2);
+ ok = _tmp$3;
+ return [as, ok];
+ };
+ asciiSet.prototype.contains = function(c) {
+ var $ptr, as, c, x, y;
+ as = this.$val;
+ return !((((((x = c >>> 5 << 24 >>> 24, (as.nilCheck, ((x < 0 || x >= as.length) ? ($throwRuntimeError("index out of range"), undefined) : as[x]))) & (((y = ((((c & 31) >>> 0) >>> 0)), y < 32 ? (1 << y) : 0) >>> 0))) >>> 0)) === 0));
+ };
+ $ptrType(asciiSet).prototype.contains = function(c) { return (new asciiSet(this.$get())).contains(c); };
+ makeCutsetFunc = function(cutset) {
+ var $ptr, _tuple, as, cutset, isASCII;
+ if ((cutset.length === 1) && cutset.charCodeAt(0) < 128) {
+ return (function(r) {
+ var $ptr, r;
+ return r === ((cutset.charCodeAt(0) >> 0));
+ });
+ }
+ _tuple = makeASCIISet(cutset);
+ as = $clone(_tuple[0], asciiSet);
+ isASCII = _tuple[1];
+ if (isASCII) {
+ return (function(r) {
+ var $ptr, r;
+ return r < 128 && new ptrType$5(as).contains(((r << 24 >>> 24)));
+ });
+ }
+ return (function(r) {
+ var $ptr, r;
+ return IndexRune(cutset, r) >= 0;
+ });
+ };
+ TrimRight = function(s, cutset) {
+ var $ptr, _r, cutset, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; cutset = $f.cutset; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ if (s === "" || cutset === "") {
+ $s = -1; return s;
+ }
+ _r = TrimRightFunc(s, makeCutsetFunc(cutset)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: TrimRight }; } $f.$ptr = $ptr; $f._r = _r; $f.cutset = cutset; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.TrimRight = TrimRight;
+ TrimSpace = function(s) {
+ var $ptr, _r, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = TrimFunc(s, unicode.IsSpace); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: TrimSpace }; } $f.$ptr = $ptr; $f._r = _r; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.TrimSpace = TrimSpace;
+ EqualFold = function(s, t) {
+ var $ptr, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, r, r$1, r$2, s, size, size$1, sr, t, tr;
+ while (true) {
+ if (!(!(s === "") && !(t === ""))) { break; }
+ _tmp = 0;
+ _tmp$1 = 0;
+ sr = _tmp;
+ tr = _tmp$1;
+ if (s.charCodeAt(0) < 128) {
+ _tmp$2 = ((s.charCodeAt(0) >> 0));
+ _tmp$3 = $substring(s, 1);
+ sr = _tmp$2;
+ s = _tmp$3;
+ } else {
+ _tuple = utf8.DecodeRuneInString(s);
+ r = _tuple[0];
+ size = _tuple[1];
+ _tmp$4 = r;
+ _tmp$5 = $substring(s, size);
+ sr = _tmp$4;
+ s = _tmp$5;
+ }
+ if (t.charCodeAt(0) < 128) {
+ _tmp$6 = ((t.charCodeAt(0) >> 0));
+ _tmp$7 = $substring(t, 1);
+ tr = _tmp$6;
+ t = _tmp$7;
+ } else {
+ _tuple$1 = utf8.DecodeRuneInString(t);
+ r$1 = _tuple$1[0];
+ size$1 = _tuple$1[1];
+ _tmp$8 = r$1;
+ _tmp$9 = $substring(t, size$1);
+ tr = _tmp$8;
+ t = _tmp$9;
+ }
+ if (tr === sr) {
+ continue;
+ }
+ if (tr < sr) {
+ _tmp$10 = sr;
+ _tmp$11 = tr;
+ tr = _tmp$10;
+ sr = _tmp$11;
+ }
+ if (tr < 128 && 65 <= sr && sr <= 90) {
+ if (tr === ((sr + 97 >> 0) - 65 >> 0)) {
+ continue;
+ }
+ return false;
+ }
+ r$2 = unicode.SimpleFold(sr);
+ while (true) {
+ if (!(!((r$2 === sr)) && r$2 < tr)) { break; }
+ r$2 = unicode.SimpleFold(r$2);
+ }
+ if (r$2 === tr) {
+ continue;
+ }
+ return false;
+ }
+ return s === t;
+ };
+ $pkg.EqualFold = EqualFold;
+ ptrType$6.methods = [{prop: "Len", name: "Len", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Size", name: "Size", pkg: "", typ: $funcType([], [$Int64], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}, {prop: "ReadAt", name: "ReadAt", pkg: "", typ: $funcType([sliceType, $Int64], [$Int, $error], false)}, {prop: "ReadByte", name: "ReadByte", pkg: "", typ: $funcType([], [$Uint8, $error], false)}, {prop: "UnreadByte", name: "UnreadByte", pkg: "", typ: $funcType([], [$error], false)}, {prop: "ReadRune", name: "ReadRune", pkg: "", typ: $funcType([], [$Int32, $Int, $error], false)}, {prop: "UnreadRune", name: "UnreadRune", pkg: "", typ: $funcType([], [$error], false)}, {prop: "Seek", name: "Seek", pkg: "", typ: $funcType([$Int64, $Int], [$Int64, $error], false)}, {prop: "WriteTo", name: "WriteTo", pkg: "", typ: $funcType([io.Writer], [$Int64, $error], false)}, {prop: "Reset", name: "Reset", pkg: "", typ: $funcType([$String], [], false)}];
+ ptrType$5.methods = [{prop: "contains", name: "contains", pkg: "strings", typ: $funcType([$Uint8], [$Bool], false)}];
+ Reader.init("strings", [{prop: "s", name: "s", exported: false, typ: $String, tag: ""}, {prop: "i", name: "i", exported: false, typ: $Int64, tag: ""}, {prop: "prevRune", name: "prevRune", exported: false, typ: $Int, tag: ""}]);
+ asciiSet.init($Uint32, 8);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = errors.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = js.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = unicode.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = utf8.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["unicode/utf16"] = (function() {
+ var $pkg = {}, $init;
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["encoding/json"] = (function() {
+ var $pkg = {}, $init, bytes, encoding, base64, errors, fmt, nosync, io, math, reflect, runtime, sort, strconv, strings, atomic, unicode, utf16, utf8, Number, Marshaler, sliceType$1, ptrType, ptrType$1, ptrType$2, errPhase, textUnmarshalerType, numberType, marshalerType, textMarshalerType, _r, _r$1, _r$2;
+ bytes = $packages["bytes"];
+ encoding = $packages["encoding"];
+ base64 = $packages["encoding/base64"];
+ errors = $packages["errors"];
+ fmt = $packages["fmt"];
+ nosync = $packages["github.com/gopherjs/gopherjs/nosync"];
+ io = $packages["io"];
+ math = $packages["math"];
+ reflect = $packages["reflect"];
+ runtime = $packages["runtime"];
+ sort = $packages["sort"];
+ strconv = $packages["strconv"];
+ strings = $packages["strings"];
+ atomic = $packages["sync/atomic"];
+ unicode = $packages["unicode"];
+ utf16 = $packages["unicode/utf16"];
+ utf8 = $packages["unicode/utf8"];
+ Number = $pkg.Number = $newType(8, $kindString, "json.Number", true, "encoding/json", true, null);
+ Marshaler = $pkg.Marshaler = $newType(8, $kindInterface, "json.Marshaler", true, "encoding/json", true, null);
+ sliceType$1 = $sliceType($Uint8);
+ ptrType = $ptrType(encoding.TextUnmarshaler);
+ ptrType$1 = $ptrType(Marshaler);
+ ptrType$2 = $ptrType(encoding.TextMarshaler);
+ Number.prototype.String = function() {
+ var $ptr, n;
+ n = this.$val;
+ return (n);
+ };
+ $ptrType(Number).prototype.String = function() { return new Number(this.$get()).String(); };
+ Number.prototype.Float64 = function() {
+ var $ptr, n;
+ n = this.$val;
+ return strconv.ParseFloat((n), 64);
+ };
+ $ptrType(Number).prototype.Float64 = function() { return new Number(this.$get()).Float64(); };
+ Number.prototype.Int64 = function() {
+ var $ptr, n;
+ n = this.$val;
+ return strconv.ParseInt((n), 10, 64);
+ };
+ $ptrType(Number).prototype.Int64 = function() { return new Number(this.$get()).Int64(); };
+ Number.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Float64", name: "Float64", pkg: "", typ: $funcType([], [$Float64, $error], false)}, {prop: "Int64", name: "Int64", pkg: "", typ: $funcType([], [$Int64, $error], false)}];
+ Marshaler.init([{prop: "MarshalJSON", name: "MarshalJSON", pkg: "", typ: $funcType([], [sliceType$1, $error], false)}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = encoding.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = base64.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = nosync.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = math.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = reflect.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sort.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = atomic.$init(); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = unicode.$init(); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = utf16.$init(); /* */ $s = 16; case 16: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = utf8.$init(); /* */ $s = 17; case 17: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ errPhase = errors.New("JSON decoder out of sync - data changing underfoot?");
+ _r = reflect.TypeOf($newDataPointer($ifaceNil, ptrType)).Elem(); /* */ $s = 18; case 18: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ textUnmarshalerType = _r;
+ numberType = reflect.TypeOf(new Number(""));
+ _r$1 = reflect.TypeOf($newDataPointer($ifaceNil, ptrType$1)).Elem(); /* */ $s = 19; case 19: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ marshalerType = _r$1;
+ _r$2 = reflect.TypeOf($newDataPointer($ifaceNil, ptrType$2)).Elem(); /* */ $s = 20; case 20: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ textMarshalerType = _r$2;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["bufio"] = (function() {
+ var $pkg = {}, $init, bytes, errors, io, utf8, Reader, Writer, sliceType, ptrType, sliceType$1, ptrType$1, errNegativeRead, errNegativeWrite, NewReaderSize, NewReader;
+ bytes = $packages["bytes"];
+ errors = $packages["errors"];
+ io = $packages["io"];
+ utf8 = $packages["unicode/utf8"];
+ Reader = $pkg.Reader = $newType(0, $kindStruct, "bufio.Reader", true, "bufio", true, function(buf_, rd_, r_, w_, err_, lastByte_, lastRuneSize_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.buf = sliceType.nil;
+ this.rd = $ifaceNil;
+ this.r = 0;
+ this.w = 0;
+ this.err = $ifaceNil;
+ this.lastByte = 0;
+ this.lastRuneSize = 0;
+ return;
+ }
+ this.buf = buf_;
+ this.rd = rd_;
+ this.r = r_;
+ this.w = w_;
+ this.err = err_;
+ this.lastByte = lastByte_;
+ this.lastRuneSize = lastRuneSize_;
+ });
+ Writer = $pkg.Writer = $newType(0, $kindStruct, "bufio.Writer", true, "bufio", true, function(err_, buf_, n_, wr_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.err = $ifaceNil;
+ this.buf = sliceType.nil;
+ this.n = 0;
+ this.wr = $ifaceNil;
+ return;
+ }
+ this.err = err_;
+ this.buf = buf_;
+ this.n = n_;
+ this.wr = wr_;
+ });
+ sliceType = $sliceType($Uint8);
+ ptrType = $ptrType(Reader);
+ sliceType$1 = $sliceType(sliceType);
+ ptrType$1 = $ptrType(Writer);
+ NewReaderSize = function(rd, size) {
+ var $ptr, _tuple, b, ok, r, rd, size;
+ _tuple = $assertType(rd, ptrType, true);
+ b = _tuple[0];
+ ok = _tuple[1];
+ if (ok && b.buf.$length >= size) {
+ return b;
+ }
+ if (size < 16) {
+ size = 16;
+ }
+ r = new Reader.ptr(sliceType.nil, $ifaceNil, 0, 0, $ifaceNil, 0, 0);
+ r.reset($makeSlice(sliceType, size), rd);
+ return r;
+ };
+ $pkg.NewReaderSize = NewReaderSize;
+ NewReader = function(rd) {
+ var $ptr, rd;
+ return NewReaderSize(rd, 4096);
+ };
+ $pkg.NewReader = NewReader;
+ Reader.ptr.prototype.Reset = function(r) {
+ var $ptr, b, r;
+ b = this;
+ b.reset(b.buf, r);
+ };
+ Reader.prototype.Reset = function(r) { return this.$val.Reset(r); };
+ Reader.ptr.prototype.reset = function(buf, r) {
+ var $ptr, b, buf, r;
+ b = this;
+ Reader.copy(b, new Reader.ptr(buf, r, 0, 0, $ifaceNil, -1, -1));
+ };
+ Reader.prototype.reset = function(buf, r) { return this.$val.reset(buf, r); };
+ Reader.ptr.prototype.fill = function() {
+ var $ptr, _r, _tuple, b, err, i, n, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; b = $f.b; err = $f.err; i = $f.i; n = $f.n; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = this;
+ if (b.r > 0) {
+ $copySlice(b.buf, $subslice(b.buf, b.r, b.w));
+ b.w = b.w - (b.r) >> 0;
+ b.r = 0;
+ }
+ if (b.w >= b.buf.$length) {
+ $panic(new $String("bufio: tried to fill full buffer"));
+ }
+ i = 100;
+ /* while (true) { */ case 1:
+ /* if (!(i > 0)) { break; } */ if(!(i > 0)) { $s = 2; continue; }
+ _r = b.rd.Read($subslice(b.buf, b.w)); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ n = _tuple[0];
+ err = _tuple[1];
+ if (n < 0) {
+ $panic(errNegativeRead);
+ }
+ b.w = b.w + (n) >> 0;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ b.err = err;
+ $s = -1; return;
+ }
+ if (n > 0) {
+ $s = -1; return;
+ }
+ i = i - (1) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ b.err = io.ErrNoProgress;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Reader.ptr.prototype.fill }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.b = b; $f.err = err; $f.i = i; $f.n = n; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Reader.prototype.fill = function() { return this.$val.fill(); };
+ Reader.ptr.prototype.readErr = function() {
+ var $ptr, b, err;
+ b = this;
+ err = b.err;
+ b.err = $ifaceNil;
+ return err;
+ };
+ Reader.prototype.readErr = function() { return this.$val.readErr(); };
+ Reader.ptr.prototype.Peek = function(n) {
+ var $ptr, avail, b, err, n, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; avail = $f.avail; b = $f.b; err = $f.err; n = $f.n; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = this;
+ if (n < 0) {
+ $s = -1; return [sliceType.nil, $pkg.ErrNegativeCount];
+ }
+ /* while (true) { */ case 1:
+ /* if (!((b.w - b.r >> 0) < n && (b.w - b.r >> 0) < b.buf.$length && $interfaceIsEqual(b.err, $ifaceNil))) { break; } */ if(!((b.w - b.r >> 0) < n && (b.w - b.r >> 0) < b.buf.$length && $interfaceIsEqual(b.err, $ifaceNil))) { $s = 2; continue; }
+ $r = b.fill(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ $s = 1; continue; case 2:
+ if (n > b.buf.$length) {
+ $s = -1; return [$subslice(b.buf, b.r, b.w), $pkg.ErrBufferFull];
+ }
+ err = $ifaceNil;
+ avail = b.w - b.r >> 0;
+ if (avail < n) {
+ n = avail;
+ err = b.readErr();
+ if ($interfaceIsEqual(err, $ifaceNil)) {
+ err = $pkg.ErrBufferFull;
+ }
+ }
+ $s = -1; return [$subslice(b.buf, b.r, (b.r + n >> 0)), err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Reader.ptr.prototype.Peek }; } $f.$ptr = $ptr; $f.avail = avail; $f.b = b; $f.err = err; $f.n = n; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Reader.prototype.Peek = function(n) { return this.$val.Peek(n); };
+ Reader.ptr.prototype.Discard = function(n) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, b, discarded, err, n, remain, skip, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; b = $f.b; discarded = $f.discarded; err = $f.err; n = $f.n; remain = $f.remain; skip = $f.skip; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ discarded = 0;
+ err = $ifaceNil;
+ b = this;
+ if (n < 0) {
+ _tmp = 0;
+ _tmp$1 = $pkg.ErrNegativeCount;
+ discarded = _tmp;
+ err = _tmp$1;
+ $s = -1; return [discarded, err];
+ }
+ if (n === 0) {
+ $s = -1; return [discarded, err];
+ }
+ remain = n;
+ /* while (true) { */ case 1:
+ skip = b.Buffered();
+ /* */ if (skip === 0) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (skip === 0) { */ case 3:
+ $r = b.fill(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ skip = b.Buffered();
+ /* } */ case 4:
+ if (skip > remain) {
+ skip = remain;
+ }
+ b.r = b.r + (skip) >> 0;
+ remain = remain - (skip) >> 0;
+ if (remain === 0) {
+ _tmp$2 = n;
+ _tmp$3 = $ifaceNil;
+ discarded = _tmp$2;
+ err = _tmp$3;
+ $s = -1; return [discarded, err];
+ }
+ if (!($interfaceIsEqual(b.err, $ifaceNil))) {
+ _tmp$4 = n - remain >> 0;
+ _tmp$5 = b.readErr();
+ discarded = _tmp$4;
+ err = _tmp$5;
+ $s = -1; return [discarded, err];
+ }
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return [discarded, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Reader.ptr.prototype.Discard }; } $f.$ptr = $ptr; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f.b = b; $f.discarded = discarded; $f.err = err; $f.n = n; $f.remain = remain; $f.skip = skip; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Reader.prototype.Discard = function(n) { return this.$val.Discard(n); };
+ Reader.ptr.prototype.Read = function(p) {
+ var $ptr, _r, _r$1, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, b, err, n, p, x, x$1, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tmp$7 = $f._tmp$7; _tmp$8 = $f._tmp$8; _tmp$9 = $f._tmp$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; b = $f.b; err = $f.err; n = $f.n; p = $f.p; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ b = this;
+ n = p.$length;
+ if (n === 0) {
+ _tmp = 0;
+ _tmp$1 = b.readErr();
+ n = _tmp;
+ err = _tmp$1;
+ $s = -1; return [n, err];
+ }
+ /* */ if (b.r === b.w) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (b.r === b.w) { */ case 1:
+ if (!($interfaceIsEqual(b.err, $ifaceNil))) {
+ _tmp$2 = 0;
+ _tmp$3 = b.readErr();
+ n = _tmp$2;
+ err = _tmp$3;
+ $s = -1; return [n, err];
+ }
+ /* */ if (p.$length >= b.buf.$length) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (p.$length >= b.buf.$length) { */ case 3:
+ _r = b.rd.Read(p); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ n = _tuple[0];
+ b.err = _tuple[1];
+ if (n < 0) {
+ $panic(errNegativeRead);
+ }
+ if (n > 0) {
+ b.lastByte = (((x = n - 1 >> 0, ((x < 0 || x >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x])) >> 0));
+ b.lastRuneSize = -1;
+ }
+ _tmp$4 = n;
+ _tmp$5 = b.readErr();
+ n = _tmp$4;
+ err = _tmp$5;
+ $s = -1; return [n, err];
+ /* } */ case 4:
+ b.r = 0;
+ b.w = 0;
+ _r$1 = b.rd.Read(b.buf); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ n = _tuple$1[0];
+ b.err = _tuple$1[1];
+ if (n < 0) {
+ $panic(errNegativeRead);
+ }
+ if (n === 0) {
+ _tmp$6 = 0;
+ _tmp$7 = b.readErr();
+ n = _tmp$6;
+ err = _tmp$7;
+ $s = -1; return [n, err];
+ }
+ b.w = b.w + (n) >> 0;
+ /* } */ case 2:
+ n = $copySlice(p, $subslice(b.buf, b.r, b.w));
+ b.r = b.r + (n) >> 0;
+ b.lastByte = (((x$1 = b.buf, x$2 = b.r - 1 >> 0, ((x$2 < 0 || x$2 >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + x$2])) >> 0));
+ b.lastRuneSize = -1;
+ _tmp$8 = n;
+ _tmp$9 = $ifaceNil;
+ n = _tmp$8;
+ err = _tmp$9;
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Reader.ptr.prototype.Read }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tmp$7 = _tmp$7; $f._tmp$8 = _tmp$8; $f._tmp$9 = _tmp$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.b = b; $f.err = err; $f.n = n; $f.p = p; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Reader.prototype.Read = function(p) { return this.$val.Read(p); };
+ Reader.ptr.prototype.ReadByte = function() {
+ var $ptr, b, c, x, x$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; b = $f.b; c = $f.c; x = $f.x; x$1 = $f.x$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = this;
+ b.lastRuneSize = -1;
+ /* while (true) { */ case 1:
+ /* if (!(b.r === b.w)) { break; } */ if(!(b.r === b.w)) { $s = 2; continue; }
+ if (!($interfaceIsEqual(b.err, $ifaceNil))) {
+ $s = -1; return [0, b.readErr()];
+ }
+ $r = b.fill(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ $s = 1; continue; case 2:
+ c = (x = b.buf, x$1 = b.r, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ b.r = b.r + (1) >> 0;
+ b.lastByte = ((c >> 0));
+ $s = -1; return [c, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Reader.ptr.prototype.ReadByte }; } $f.$ptr = $ptr; $f.b = b; $f.c = c; $f.x = x; $f.x$1 = x$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Reader.prototype.ReadByte = function() { return this.$val.ReadByte(); };
+ Reader.ptr.prototype.UnreadByte = function() {
+ var $ptr, b, x, x$1;
+ b = this;
+ if (b.lastByte < 0 || (b.r === 0) && b.w > 0) {
+ return $pkg.ErrInvalidUnreadByte;
+ }
+ if (b.r > 0) {
+ b.r = b.r - (1) >> 0;
+ } else {
+ b.w = 1;
+ }
+ (x = b.buf, x$1 = b.r, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1] = ((b.lastByte << 24 >>> 24))));
+ b.lastByte = -1;
+ b.lastRuneSize = -1;
+ return $ifaceNil;
+ };
+ Reader.prototype.UnreadByte = function() { return this.$val.UnreadByte(); };
+ Reader.ptr.prototype.ReadRune = function() {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tuple, b, err, r, size, x, x$1, x$2, x$3, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tmp$7 = $f._tmp$7; _tuple = $f._tuple; b = $f.b; err = $f.err; r = $f.r; size = $f.size; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = 0;
+ size = 0;
+ err = $ifaceNil;
+ b = this;
+ /* while (true) { */ case 1:
+ /* if (!((b.r + 4 >> 0) > b.w && !utf8.FullRune($subslice(b.buf, b.r, b.w)) && $interfaceIsEqual(b.err, $ifaceNil) && (b.w - b.r >> 0) < b.buf.$length)) { break; } */ if(!((b.r + 4 >> 0) > b.w && !utf8.FullRune($subslice(b.buf, b.r, b.w)) && $interfaceIsEqual(b.err, $ifaceNil) && (b.w - b.r >> 0) < b.buf.$length)) { $s = 2; continue; }
+ $r = b.fill(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ $s = 1; continue; case 2:
+ b.lastRuneSize = -1;
+ if (b.r === b.w) {
+ _tmp = 0;
+ _tmp$1 = 0;
+ _tmp$2 = b.readErr();
+ r = _tmp;
+ size = _tmp$1;
+ err = _tmp$2;
+ $s = -1; return [r, size, err];
+ }
+ _tmp$3 = (((x = b.buf, x$1 = b.r, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1])) >> 0));
+ _tmp$4 = 1;
+ r = _tmp$3;
+ size = _tmp$4;
+ if (r >= 128) {
+ _tuple = utf8.DecodeRune($subslice(b.buf, b.r, b.w));
+ r = _tuple[0];
+ size = _tuple[1];
+ }
+ b.r = b.r + (size) >> 0;
+ b.lastByte = (((x$2 = b.buf, x$3 = b.r - 1 >> 0, ((x$3 < 0 || x$3 >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + x$3])) >> 0));
+ b.lastRuneSize = size;
+ _tmp$5 = r;
+ _tmp$6 = size;
+ _tmp$7 = $ifaceNil;
+ r = _tmp$5;
+ size = _tmp$6;
+ err = _tmp$7;
+ $s = -1; return [r, size, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Reader.ptr.prototype.ReadRune }; } $f.$ptr = $ptr; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tmp$7 = _tmp$7; $f._tuple = _tuple; $f.b = b; $f.err = err; $f.r = r; $f.size = size; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Reader.prototype.ReadRune = function() { return this.$val.ReadRune(); };
+ Reader.ptr.prototype.UnreadRune = function() {
+ var $ptr, b;
+ b = this;
+ if (b.lastRuneSize < 0 || b.r < b.lastRuneSize) {
+ return $pkg.ErrInvalidUnreadRune;
+ }
+ b.r = b.r - (b.lastRuneSize) >> 0;
+ b.lastByte = -1;
+ b.lastRuneSize = -1;
+ return $ifaceNil;
+ };
+ Reader.prototype.UnreadRune = function() { return this.$val.UnreadRune(); };
+ Reader.ptr.prototype.Buffered = function() {
+ var $ptr, b;
+ b = this;
+ return b.w - b.r >> 0;
+ };
+ Reader.prototype.Buffered = function() { return this.$val.Buffered(); };
+ Reader.ptr.prototype.ReadSlice = function(delim) {
+ var $ptr, b, delim, err, i, i$1, line, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; b = $f.b; delim = $f.delim; err = $f.err; i = $f.i; i$1 = $f.i$1; line = $f.line; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ line = sliceType.nil;
+ err = $ifaceNil;
+ b = this;
+ /* while (true) { */ case 1:
+ i = bytes.IndexByte($subslice(b.buf, b.r, b.w), delim);
+ if (i >= 0) {
+ line = $subslice(b.buf, b.r, ((b.r + i >> 0) + 1 >> 0));
+ b.r = b.r + ((i + 1 >> 0)) >> 0;
+ /* break; */ $s = 2; continue;
+ }
+ if (!($interfaceIsEqual(b.err, $ifaceNil))) {
+ line = $subslice(b.buf, b.r, b.w);
+ b.r = b.w;
+ err = b.readErr();
+ /* break; */ $s = 2; continue;
+ }
+ if (b.Buffered() >= b.buf.$length) {
+ b.r = b.w;
+ line = b.buf;
+ err = $pkg.ErrBufferFull;
+ /* break; */ $s = 2; continue;
+ }
+ $r = b.fill(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ $s = 1; continue; case 2:
+ i$1 = line.$length - 1 >> 0;
+ if (i$1 >= 0) {
+ b.lastByte = ((((i$1 < 0 || i$1 >= line.$length) ? ($throwRuntimeError("index out of range"), undefined) : line.$array[line.$offset + i$1]) >> 0));
+ b.lastRuneSize = -1;
+ }
+ $s = -1; return [line, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Reader.ptr.prototype.ReadSlice }; } $f.$ptr = $ptr; $f.b = b; $f.delim = delim; $f.err = err; $f.i = i; $f.i$1 = i$1; $f.line = line; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Reader.prototype.ReadSlice = function(delim) { return this.$val.ReadSlice(delim); };
+ Reader.ptr.prototype.ReadLine = function() {
+ var $ptr, _r, _tmp, _tmp$1, _tmp$2, _tuple, b, drop, err, isPrefix, line, x, x$1, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tuple = $f._tuple; b = $f.b; drop = $f.drop; err = $f.err; isPrefix = $f.isPrefix; line = $f.line; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ line = sliceType.nil;
+ isPrefix = false;
+ err = $ifaceNil;
+ b = this;
+ _r = b.ReadSlice(10); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ line = _tuple[0];
+ err = _tuple[1];
+ if ($interfaceIsEqual(err, $pkg.ErrBufferFull)) {
+ if (line.$length > 0 && ((x = line.$length - 1 >> 0, ((x < 0 || x >= line.$length) ? ($throwRuntimeError("index out of range"), undefined) : line.$array[line.$offset + x])) === 13)) {
+ if (b.r === 0) {
+ $panic(new $String("bufio: tried to rewind past start of buffer"));
+ }
+ b.r = b.r - (1) >> 0;
+ line = $subslice(line, 0, (line.$length - 1 >> 0));
+ }
+ _tmp = line;
+ _tmp$1 = true;
+ _tmp$2 = $ifaceNil;
+ line = _tmp;
+ isPrefix = _tmp$1;
+ err = _tmp$2;
+ $s = -1; return [line, isPrefix, err];
+ }
+ if (line.$length === 0) {
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ line = sliceType.nil;
+ }
+ $s = -1; return [line, isPrefix, err];
+ }
+ err = $ifaceNil;
+ if ((x$1 = line.$length - 1 >> 0, ((x$1 < 0 || x$1 >= line.$length) ? ($throwRuntimeError("index out of range"), undefined) : line.$array[line.$offset + x$1])) === 10) {
+ drop = 1;
+ if (line.$length > 1 && ((x$2 = line.$length - 2 >> 0, ((x$2 < 0 || x$2 >= line.$length) ? ($throwRuntimeError("index out of range"), undefined) : line.$array[line.$offset + x$2])) === 13)) {
+ drop = 2;
+ }
+ line = $subslice(line, 0, (line.$length - drop >> 0));
+ }
+ $s = -1; return [line, isPrefix, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Reader.ptr.prototype.ReadLine }; } $f.$ptr = $ptr; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tuple = _tuple; $f.b = b; $f.drop = drop; $f.err = err; $f.isPrefix = isPrefix; $f.line = line; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Reader.prototype.ReadLine = function() { return this.$val.ReadLine(); };
+ Reader.ptr.prototype.ReadBytes = function(delim) {
+ var $ptr, _i, _i$1, _r, _ref, _ref$1, _tuple, b, buf, buf$1, delim, e, err, frag, full, i, i$1, n, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _i$1 = $f._i$1; _r = $f._r; _ref = $f._ref; _ref$1 = $f._ref$1; _tuple = $f._tuple; b = $f.b; buf = $f.buf; buf$1 = $f.buf$1; delim = $f.delim; e = $f.e; err = $f.err; frag = $f.frag; full = $f.full; i = $f.i; i$1 = $f.i$1; n = $f.n; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = this;
+ frag = sliceType.nil;
+ full = sliceType$1.nil;
+ err = $ifaceNil;
+ /* while (true) { */ case 1:
+ e = $ifaceNil;
+ _r = b.ReadSlice(delim); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ frag = _tuple[0];
+ e = _tuple[1];
+ if ($interfaceIsEqual(e, $ifaceNil)) {
+ /* break; */ $s = 2; continue;
+ }
+ if (!($interfaceIsEqual(e, $pkg.ErrBufferFull))) {
+ err = e;
+ /* break; */ $s = 2; continue;
+ }
+ buf = $makeSlice(sliceType, frag.$length);
+ $copySlice(buf, frag);
+ full = $append(full, buf);
+ /* } */ $s = 1; continue; case 2:
+ n = 0;
+ _ref = full;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ n = n + (((i < 0 || i >= full.$length) ? ($throwRuntimeError("index out of range"), undefined) : full.$array[full.$offset + i]).$length) >> 0;
+ _i++;
+ }
+ n = n + (frag.$length) >> 0;
+ buf$1 = $makeSlice(sliceType, n);
+ n = 0;
+ _ref$1 = full;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ i$1 = _i$1;
+ n = n + ($copySlice($subslice(buf$1, n), ((i$1 < 0 || i$1 >= full.$length) ? ($throwRuntimeError("index out of range"), undefined) : full.$array[full.$offset + i$1]))) >> 0;
+ _i$1++;
+ }
+ $copySlice($subslice(buf$1, n), frag);
+ $s = -1; return [buf$1, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Reader.ptr.prototype.ReadBytes }; } $f.$ptr = $ptr; $f._i = _i; $f._i$1 = _i$1; $f._r = _r; $f._ref = _ref; $f._ref$1 = _ref$1; $f._tuple = _tuple; $f.b = b; $f.buf = buf; $f.buf$1 = buf$1; $f.delim = delim; $f.e = e; $f.err = err; $f.frag = frag; $f.full = full; $f.i = i; $f.i$1 = i$1; $f.n = n; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Reader.prototype.ReadBytes = function(delim) { return this.$val.ReadBytes(delim); };
+ Reader.ptr.prototype.ReadString = function(delim) {
+ var $ptr, _r, _tuple, b, bytes$1, delim, err, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; b = $f.b; bytes$1 = $f.bytes$1; delim = $f.delim; err = $f.err; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = this;
+ _r = b.ReadBytes(delim); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ bytes$1 = _tuple[0];
+ err = _tuple[1];
+ $s = -1; return [($bytesToString(bytes$1)), err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Reader.ptr.prototype.ReadString }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.b = b; $f.bytes$1 = bytes$1; $f.delim = delim; $f.err = err; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Reader.prototype.ReadString = function(delim) { return this.$val.ReadString(delim); };
+ Reader.ptr.prototype.WriteTo = function(w) {
+ var $ptr, _r, _r$1, _r$2, _r$3, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, _tuple$5, b, err, err$1, err$2, err$3, m, m$1, m$2, n, ok, ok$1, r, w, w$1, x, x$1, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tmp$7 = $f._tmp$7; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; _tuple$5 = $f._tuple$5; b = $f.b; err = $f.err; err$1 = $f.err$1; err$2 = $f.err$2; err$3 = $f.err$3; m = $f.m; m$1 = $f.m$1; m$2 = $f.m$2; n = $f.n; ok = $f.ok; ok$1 = $f.ok$1; r = $f.r; w = $f.w; w$1 = $f.w$1; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = new $Int64(0, 0);
+ err = $ifaceNil;
+ b = this;
+ _r = b.writeBuf(w); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ n = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [n, err];
+ }
+ _tuple$1 = $assertType(b.rd, io.WriterTo, true);
+ r = _tuple$1[0];
+ ok = _tuple$1[1];
+ /* */ if (ok) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (ok) { */ case 2:
+ _r$1 = r.WriteTo(w); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$2 = _r$1;
+ m = _tuple$2[0];
+ err$1 = _tuple$2[1];
+ n = (x = m, new $Int64(n.$high + x.$high, n.$low + x.$low));
+ _tmp = n;
+ _tmp$1 = err$1;
+ n = _tmp;
+ err = _tmp$1;
+ $s = -1; return [n, err];
+ /* } */ case 3:
+ _tuple$3 = $assertType(w, io.ReaderFrom, true);
+ w$1 = _tuple$3[0];
+ ok$1 = _tuple$3[1];
+ /* */ if (ok$1) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (ok$1) { */ case 5:
+ _r$2 = w$1.ReadFrom(b.rd); /* */ $s = 7; case 7: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$4 = _r$2;
+ m$1 = _tuple$4[0];
+ err$2 = _tuple$4[1];
+ n = (x$1 = m$1, new $Int64(n.$high + x$1.$high, n.$low + x$1.$low));
+ _tmp$2 = n;
+ _tmp$3 = err$2;
+ n = _tmp$2;
+ err = _tmp$3;
+ $s = -1; return [n, err];
+ /* } */ case 6:
+ /* */ if ((b.w - b.r >> 0) < b.buf.$length) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if ((b.w - b.r >> 0) < b.buf.$length) { */ case 8:
+ $r = b.fill(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 9:
+ /* while (true) { */ case 11:
+ /* if (!(b.r < b.w)) { break; } */ if(!(b.r < b.w)) { $s = 12; continue; }
+ _r$3 = b.writeBuf(w); /* */ $s = 13; case 13: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _tuple$5 = _r$3;
+ m$2 = _tuple$5[0];
+ err$3 = _tuple$5[1];
+ n = (x$2 = m$2, new $Int64(n.$high + x$2.$high, n.$low + x$2.$low));
+ if (!($interfaceIsEqual(err$3, $ifaceNil))) {
+ _tmp$4 = n;
+ _tmp$5 = err$3;
+ n = _tmp$4;
+ err = _tmp$5;
+ $s = -1; return [n, err];
+ }
+ $r = b.fill(); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ $s = 11; continue; case 12:
+ if ($interfaceIsEqual(b.err, io.EOF)) {
+ b.err = $ifaceNil;
+ }
+ _tmp$6 = n;
+ _tmp$7 = b.readErr();
+ n = _tmp$6;
+ err = _tmp$7;
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Reader.ptr.prototype.WriteTo }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tmp$7 = _tmp$7; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f._tuple$5 = _tuple$5; $f.b = b; $f.err = err; $f.err$1 = err$1; $f.err$2 = err$2; $f.err$3 = err$3; $f.m = m; $f.m$1 = m$1; $f.m$2 = m$2; $f.n = n; $f.ok = ok; $f.ok$1 = ok$1; $f.r = r; $f.w = w; $f.w$1 = w$1; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Reader.prototype.WriteTo = function(w) { return this.$val.WriteTo(w); };
+ Reader.ptr.prototype.writeBuf = function(w) {
+ var $ptr, _r, _tuple, b, err, n, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; b = $f.b; err = $f.err; n = $f.n; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = this;
+ _r = w.Write($subslice(b.buf, b.r, b.w)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ n = _tuple[0];
+ err = _tuple[1];
+ if (n < 0) {
+ $panic(errNegativeWrite);
+ }
+ b.r = b.r + (n) >> 0;
+ $s = -1; return [(new $Int64(0, n)), err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Reader.ptr.prototype.writeBuf }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.b = b; $f.err = err; $f.n = n; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Reader.prototype.writeBuf = function(w) { return this.$val.writeBuf(w); };
+ Writer.ptr.prototype.Reset = function(w) {
+ var $ptr, b, w;
+ b = this;
+ b.err = $ifaceNil;
+ b.n = 0;
+ b.wr = w;
+ };
+ Writer.prototype.Reset = function(w) { return this.$val.Reset(w); };
+ Writer.ptr.prototype.Flush = function() {
+ var $ptr, _r, _tuple, b, err, n, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; b = $f.b; err = $f.err; n = $f.n; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = this;
+ if (!($interfaceIsEqual(b.err, $ifaceNil))) {
+ $s = -1; return b.err;
+ }
+ if (b.n === 0) {
+ $s = -1; return $ifaceNil;
+ }
+ _r = b.wr.Write($subslice(b.buf, 0, b.n)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ n = _tuple[0];
+ err = _tuple[1];
+ if (n < b.n && $interfaceIsEqual(err, $ifaceNil)) {
+ err = io.ErrShortWrite;
+ }
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ if (n > 0 && n < b.n) {
+ $copySlice($subslice(b.buf, 0, (b.n - n >> 0)), $subslice(b.buf, n, b.n));
+ }
+ b.n = b.n - (n) >> 0;
+ b.err = err;
+ $s = -1; return err;
+ }
+ b.n = 0;
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Writer.ptr.prototype.Flush }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.b = b; $f.err = err; $f.n = n; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Writer.prototype.Flush = function() { return this.$val.Flush(); };
+ Writer.ptr.prototype.Available = function() {
+ var $ptr, b;
+ b = this;
+ return b.buf.$length - b.n >> 0;
+ };
+ Writer.prototype.Available = function() { return this.$val.Available(); };
+ Writer.ptr.prototype.Buffered = function() {
+ var $ptr, b;
+ b = this;
+ return b.n;
+ };
+ Writer.prototype.Buffered = function() { return this.$val.Buffered(); };
+ Writer.ptr.prototype.Write = function(p) {
+ var $ptr, _r, _r$1, _tmp, _tmp$1, _tmp$2, _tmp$3, _tuple, b, err, n, n$1, nn, p, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tuple = $f._tuple; b = $f.b; err = $f.err; n = $f.n; n$1 = $f.n$1; nn = $f.nn; p = $f.p; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ nn = 0;
+ err = $ifaceNil;
+ b = this;
+ /* while (true) { */ case 1:
+ /* if (!(p.$length > b.Available() && $interfaceIsEqual(b.err, $ifaceNil))) { break; } */ if(!(p.$length > b.Available() && $interfaceIsEqual(b.err, $ifaceNil))) { $s = 2; continue; }
+ n = 0;
+ /* */ if (b.Buffered() === 0) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (b.Buffered() === 0) { */ case 3:
+ _r = b.wr.Write(p); /* */ $s = 6; case 6: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ n = _tuple[0];
+ b.err = _tuple[1];
+ $s = 5; continue;
+ /* } else { */ case 4:
+ n = $copySlice($subslice(b.buf, b.n), p);
+ b.n = b.n + (n) >> 0;
+ _r$1 = b.Flush(); /* */ $s = 7; case 7: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ /* } */ case 5:
+ nn = nn + (n) >> 0;
+ p = $subslice(p, n);
+ /* } */ $s = 1; continue; case 2:
+ if (!($interfaceIsEqual(b.err, $ifaceNil))) {
+ _tmp = nn;
+ _tmp$1 = b.err;
+ nn = _tmp;
+ err = _tmp$1;
+ $s = -1; return [nn, err];
+ }
+ n$1 = $copySlice($subslice(b.buf, b.n), p);
+ b.n = b.n + (n$1) >> 0;
+ nn = nn + (n$1) >> 0;
+ _tmp$2 = nn;
+ _tmp$3 = $ifaceNil;
+ nn = _tmp$2;
+ err = _tmp$3;
+ $s = -1; return [nn, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Writer.ptr.prototype.Write }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tuple = _tuple; $f.b = b; $f.err = err; $f.n = n; $f.n$1 = n$1; $f.nn = nn; $f.p = p; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Writer.prototype.Write = function(p) { return this.$val.Write(p); };
+ Writer.ptr.prototype.WriteByte = function(c) {
+ var $ptr, _r, _v, b, c, x, x$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _v = $f._v; b = $f.b; c = $f.c; x = $f.x; x$1 = $f.x$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = this;
+ if (!($interfaceIsEqual(b.err, $ifaceNil))) {
+ $s = -1; return b.err;
+ }
+ if (!(b.Available() <= 0)) { _v = false; $s = 3; continue s; }
+ _r = b.Flush(); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _v = !($interfaceIsEqual(_r, $ifaceNil)); case 3:
+ /* */ if (_v) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (_v) { */ case 1:
+ $s = -1; return b.err;
+ /* } */ case 2:
+ (x = b.buf, x$1 = b.n, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1] = c));
+ b.n = b.n + (1) >> 0;
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Writer.ptr.prototype.WriteByte }; } $f.$ptr = $ptr; $f._r = _r; $f._v = _v; $f.b = b; $f.c = c; $f.x = x; $f.x$1 = x$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Writer.prototype.WriteByte = function(c) { return this.$val.WriteByte(c); };
+ Writer.ptr.prototype.WriteRune = function(r) {
+ var $ptr, _r, _r$1, _r$2, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, b, err, n, r, size, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tmp$7 = $f._tmp$7; _tmp$8 = $f._tmp$8; _tmp$9 = $f._tmp$9; _tuple = $f._tuple; b = $f.b; err = $f.err; n = $f.n; r = $f.r; size = $f.size; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ size = 0;
+ err = $ifaceNil;
+ b = this;
+ /* */ if (r < 128) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (r < 128) { */ case 1:
+ _r = b.WriteByte(((r << 24 >>> 24))); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ err = _r;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ _tmp = 0;
+ _tmp$1 = err;
+ size = _tmp;
+ err = _tmp$1;
+ $s = -1; return [size, err];
+ }
+ _tmp$2 = 1;
+ _tmp$3 = $ifaceNil;
+ size = _tmp$2;
+ err = _tmp$3;
+ $s = -1; return [size, err];
+ /* } */ case 2:
+ if (!($interfaceIsEqual(b.err, $ifaceNil))) {
+ _tmp$4 = 0;
+ _tmp$5 = b.err;
+ size = _tmp$4;
+ err = _tmp$5;
+ $s = -1; return [size, err];
+ }
+ n = b.Available();
+ /* */ if (n < 4) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (n < 4) { */ case 4:
+ _r$1 = b.Flush(); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ if (!($interfaceIsEqual(b.err, $ifaceNil))) {
+ _tmp$6 = 0;
+ _tmp$7 = b.err;
+ size = _tmp$6;
+ err = _tmp$7;
+ $s = -1; return [size, err];
+ }
+ n = b.Available();
+ /* */ if (n < 4) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (n < 4) { */ case 7:
+ _r$2 = b.WriteString(($encodeRune(r))); /* */ $s = 9; case 9: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple = _r$2;
+ size = _tuple[0];
+ err = _tuple[1];
+ $s = -1; return [size, err];
+ /* } */ case 8:
+ /* } */ case 5:
+ size = utf8.EncodeRune($subslice(b.buf, b.n), r);
+ b.n = b.n + (size) >> 0;
+ _tmp$8 = size;
+ _tmp$9 = $ifaceNil;
+ size = _tmp$8;
+ err = _tmp$9;
+ $s = -1; return [size, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Writer.ptr.prototype.WriteRune }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tmp$7 = _tmp$7; $f._tmp$8 = _tmp$8; $f._tmp$9 = _tmp$9; $f._tuple = _tuple; $f.b = b; $f.err = err; $f.n = n; $f.r = r; $f.size = size; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Writer.prototype.WriteRune = function(r) { return this.$val.WriteRune(r); };
+ Writer.ptr.prototype.WriteString = function(s) {
+ var $ptr, _r, b, n, n$1, nn, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; b = $f.b; n = $f.n; n$1 = $f.n$1; nn = $f.nn; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = this;
+ nn = 0;
+ /* while (true) { */ case 1:
+ /* if (!(s.length > b.Available() && $interfaceIsEqual(b.err, $ifaceNil))) { break; } */ if(!(s.length > b.Available() && $interfaceIsEqual(b.err, $ifaceNil))) { $s = 2; continue; }
+ n = $copyString($subslice(b.buf, b.n), s);
+ b.n = b.n + (n) >> 0;
+ nn = nn + (n) >> 0;
+ s = $substring(s, n);
+ _r = b.Flush(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ /* } */ $s = 1; continue; case 2:
+ if (!($interfaceIsEqual(b.err, $ifaceNil))) {
+ $s = -1; return [nn, b.err];
+ }
+ n$1 = $copyString($subslice(b.buf, b.n), s);
+ b.n = b.n + (n$1) >> 0;
+ nn = nn + (n$1) >> 0;
+ $s = -1; return [nn, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Writer.ptr.prototype.WriteString }; } $f.$ptr = $ptr; $f._r = _r; $f.b = b; $f.n = n; $f.n$1 = n$1; $f.nn = nn; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Writer.prototype.WriteString = function(s) { return this.$val.WriteString(s); };
+ Writer.ptr.prototype.ReadFrom = function(r) {
+ var $ptr, _r, _r$1, _r$2, _r$3, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tuple, _tuple$1, _tuple$2, b, err, err1, m, n, nr, ok, r, w, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; b = $f.b; err = $f.err; err1 = $f.err1; m = $f.m; n = $f.n; nr = $f.nr; ok = $f.ok; r = $f.r; w = $f.w; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = new $Int64(0, 0);
+ err = $ifaceNil;
+ b = this;
+ /* */ if (b.Buffered() === 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (b.Buffered() === 0) { */ case 1:
+ _tuple = $assertType(b.wr, io.ReaderFrom, true);
+ w = _tuple[0];
+ ok = _tuple[1];
+ /* */ if (ok) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (ok) { */ case 3:
+ _r = w.ReadFrom(r); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple$1 = _r;
+ n = _tuple$1[0];
+ err = _tuple$1[1];
+ $s = -1; return [n, err];
+ /* } */ case 4:
+ /* } */ case 2:
+ m = 0;
+ /* while (true) { */ case 6:
+ /* */ if (b.Available() === 0) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if (b.Available() === 0) { */ case 8:
+ _r$1 = b.Flush(); /* */ $s = 10; case 10: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ err1 = _r$1;
+ if (!($interfaceIsEqual(err1, $ifaceNil))) {
+ _tmp = n;
+ _tmp$1 = err1;
+ n = _tmp;
+ err = _tmp$1;
+ $s = -1; return [n, err];
+ }
+ /* } */ case 9:
+ nr = 0;
+ /* while (true) { */ case 11:
+ /* if (!(nr < 100)) { break; } */ if(!(nr < 100)) { $s = 12; continue; }
+ _r$2 = r.Read($subslice(b.buf, b.n)); /* */ $s = 13; case 13: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$2 = _r$2;
+ m = _tuple$2[0];
+ err = _tuple$2[1];
+ if (!((m === 0)) || !($interfaceIsEqual(err, $ifaceNil))) {
+ /* break; */ $s = 12; continue;
+ }
+ nr = nr + (1) >> 0;
+ /* } */ $s = 11; continue; case 12:
+ if (nr === 100) {
+ _tmp$2 = n;
+ _tmp$3 = io.ErrNoProgress;
+ n = _tmp$2;
+ err = _tmp$3;
+ $s = -1; return [n, err];
+ }
+ b.n = b.n + (m) >> 0;
+ n = (x = (new $Int64(0, m)), new $Int64(n.$high + x.$high, n.$low + x.$low));
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ /* break; */ $s = 7; continue;
+ }
+ /* } */ $s = 6; continue; case 7:
+ /* */ if ($interfaceIsEqual(err, io.EOF)) { $s = 14; continue; }
+ /* */ $s = 15; continue;
+ /* if ($interfaceIsEqual(err, io.EOF)) { */ case 14:
+ /* */ if (b.Available() === 0) { $s = 16; continue; }
+ /* */ $s = 17; continue;
+ /* if (b.Available() === 0) { */ case 16:
+ _r$3 = b.Flush(); /* */ $s = 19; case 19: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ err = _r$3;
+ $s = 18; continue;
+ /* } else { */ case 17:
+ err = $ifaceNil;
+ /* } */ case 18:
+ /* } */ case 15:
+ _tmp$4 = n;
+ _tmp$5 = err;
+ n = _tmp$4;
+ err = _tmp$5;
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Writer.ptr.prototype.ReadFrom }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f.b = b; $f.err = err; $f.err1 = err1; $f.m = m; $f.n = n; $f.nr = nr; $f.ok = ok; $f.r = r; $f.w = w; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Writer.prototype.ReadFrom = function(r) { return this.$val.ReadFrom(r); };
+ ptrType.methods = [{prop: "Reset", name: "Reset", pkg: "", typ: $funcType([io.Reader], [], false)}, {prop: "reset", name: "reset", pkg: "bufio", typ: $funcType([sliceType, io.Reader], [], false)}, {prop: "fill", name: "fill", pkg: "bufio", typ: $funcType([], [], false)}, {prop: "readErr", name: "readErr", pkg: "bufio", typ: $funcType([], [$error], false)}, {prop: "Peek", name: "Peek", pkg: "", typ: $funcType([$Int], [sliceType, $error], false)}, {prop: "Discard", name: "Discard", pkg: "", typ: $funcType([$Int], [$Int, $error], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}, {prop: "ReadByte", name: "ReadByte", pkg: "", typ: $funcType([], [$Uint8, $error], false)}, {prop: "UnreadByte", name: "UnreadByte", pkg: "", typ: $funcType([], [$error], false)}, {prop: "ReadRune", name: "ReadRune", pkg: "", typ: $funcType([], [$Int32, $Int, $error], false)}, {prop: "UnreadRune", name: "UnreadRune", pkg: "", typ: $funcType([], [$error], false)}, {prop: "Buffered", name: "Buffered", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "ReadSlice", name: "ReadSlice", pkg: "", typ: $funcType([$Uint8], [sliceType, $error], false)}, {prop: "ReadLine", name: "ReadLine", pkg: "", typ: $funcType([], [sliceType, $Bool, $error], false)}, {prop: "ReadBytes", name: "ReadBytes", pkg: "", typ: $funcType([$Uint8], [sliceType, $error], false)}, {prop: "ReadString", name: "ReadString", pkg: "", typ: $funcType([$Uint8], [$String, $error], false)}, {prop: "WriteTo", name: "WriteTo", pkg: "", typ: $funcType([io.Writer], [$Int64, $error], false)}, {prop: "writeBuf", name: "writeBuf", pkg: "bufio", typ: $funcType([io.Writer], [$Int64, $error], false)}];
+ ptrType$1.methods = [{prop: "Reset", name: "Reset", pkg: "", typ: $funcType([io.Writer], [], false)}, {prop: "Flush", name: "Flush", pkg: "", typ: $funcType([], [$error], false)}, {prop: "Available", name: "Available", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Buffered", name: "Buffered", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}, {prop: "WriteByte", name: "WriteByte", pkg: "", typ: $funcType([$Uint8], [$error], false)}, {prop: "WriteRune", name: "WriteRune", pkg: "", typ: $funcType([$Int32], [$Int, $error], false)}, {prop: "WriteString", name: "WriteString", pkg: "", typ: $funcType([$String], [$Int, $error], false)}, {prop: "ReadFrom", name: "ReadFrom", pkg: "", typ: $funcType([io.Reader], [$Int64, $error], false)}];
+ Reader.init("bufio", [{prop: "buf", name: "buf", exported: false, typ: sliceType, tag: ""}, {prop: "rd", name: "rd", exported: false, typ: io.Reader, tag: ""}, {prop: "r", name: "r", exported: false, typ: $Int, tag: ""}, {prop: "w", name: "w", exported: false, typ: $Int, tag: ""}, {prop: "err", name: "err", exported: false, typ: $error, tag: ""}, {prop: "lastByte", name: "lastByte", exported: false, typ: $Int, tag: ""}, {prop: "lastRuneSize", name: "lastRuneSize", exported: false, typ: $Int, tag: ""}]);
+ Writer.init("bufio", [{prop: "err", name: "err", exported: false, typ: $error, tag: ""}, {prop: "buf", name: "buf", exported: false, typ: sliceType, tag: ""}, {prop: "n", name: "n", exported: false, typ: $Int, tag: ""}, {prop: "wr", name: "wr", exported: false, typ: io.Writer, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = utf8.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $pkg.ErrInvalidUnreadByte = errors.New("bufio: invalid use of UnreadByte");
+ $pkg.ErrInvalidUnreadRune = errors.New("bufio: invalid use of UnreadRune");
+ $pkg.ErrBufferFull = errors.New("bufio: buffer full");
+ $pkg.ErrNegativeCount = errors.New("bufio: negative count");
+ errNegativeRead = errors.New("bufio: reader returned negative count from Read");
+ errNegativeWrite = errors.New("bufio: writer returned negative count from Write");
+ $pkg.ErrTooLong = errors.New("bufio.Scanner: token too long");
+ $pkg.ErrNegativeAdvance = errors.New("bufio.Scanner: SplitFunc returns negative advance count");
+ $pkg.ErrAdvanceTooFar = errors.New("bufio.Scanner: SplitFunc returns advance count beyond input");
+ $pkg.ErrFinalToken = errors.New("final token");
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["encoding/xml"] = (function() {
+ var $pkg = {}, $init, bufio, bytes, encoding, errors, fmt, io, reflect, strconv, strings, sync, unicode, utf8, Marshaler, MarshalerAttr, Encoder, printer, parentStack, UnsupportedTypeError, UnmarshalError, Unmarshaler, UnmarshalerAttr, typeInfo, fieldInfo, fieldFlags, TagPathError, SyntaxError, Name, Attr, Token, StartElement, EndElement, CharData, Comment, ProcInst, Directive, Decoder, stack, sliceType, ptrType, ptrType$1, ptrType$2, ptrType$3, ptrType$4, ptrType$5, sliceType$1, sliceType$2, sliceType$3, arrayType, ptrType$6, ptrType$7, sliceType$4, ptrType$8, ptrType$9, sliceType$5, sliceType$6, ptrType$10, sliceType$7, ptrType$11, ptrType$12, ptrType$13, sliceType$8, sliceType$9, ptrType$14, mapType, ptrType$15, ptrType$16, ptrType$17, ptrType$18, ptrType$19, ptrType$20, ptrType$21, funcType, begComment, endComment, endProcInst, marshalerType, marshalerAttrType, textMarshalerType, ddBytes, attrType, unmarshalerType, unmarshalerAttrType, textUnmarshalerType, tinfoMap, tinfoLock, nameType, errRawToken, entity, first, second, esc_quot, esc_apos, esc_amp, esc_lt, esc_gt, esc_tab, esc_nl, esc_cr, esc_fffd, cdataStart, cdataEnd, cdataEscape, _r, _r$1, _r$2, x, _r$3, _r$4, _r$5, x$1, isValidDirective, defaultStart, indirect, isEmptyValue, receiverType, copyValue, getTypeInfo, structFieldInfo, lookupXMLName, min, addFieldInfo, makeCopy, isInCharacterRange, isNameByte, isName, isNameString, EscapeText, escapeText, emitCDATA, procInst;
+ bufio = $packages["bufio"];
+ bytes = $packages["bytes"];
+ encoding = $packages["encoding"];
+ errors = $packages["errors"];
+ fmt = $packages["fmt"];
+ io = $packages["io"];
+ reflect = $packages["reflect"];
+ strconv = $packages["strconv"];
+ strings = $packages["strings"];
+ sync = $packages["sync"];
+ unicode = $packages["unicode"];
+ utf8 = $packages["unicode/utf8"];
+ Marshaler = $pkg.Marshaler = $newType(8, $kindInterface, "xml.Marshaler", true, "encoding/xml", true, null);
+ MarshalerAttr = $pkg.MarshalerAttr = $newType(8, $kindInterface, "xml.MarshalerAttr", true, "encoding/xml", true, null);
+ Encoder = $pkg.Encoder = $newType(0, $kindStruct, "xml.Encoder", true, "encoding/xml", true, function(p_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.p = new printer.ptr(ptrType$6.nil, ptrType$7.nil, 0, "", "", 0, false, false, false, false, sliceType$3.nil, sliceType$4.nil);
+ return;
+ }
+ this.p = p_;
+ });
+ printer = $pkg.printer = $newType(0, $kindStruct, "xml.printer", true, "encoding/xml", false, function(Writer_, encoder_, seq_, indent_, prefix_, depth_, indentedIn_, putNewline_, attrNS_, attrPrefix_, prefixes_, tags_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Writer = ptrType$6.nil;
+ this.encoder = ptrType$7.nil;
+ this.seq = 0;
+ this.indent = "";
+ this.prefix = "";
+ this.depth = 0;
+ this.indentedIn = false;
+ this.putNewline = false;
+ this.attrNS = false;
+ this.attrPrefix = false;
+ this.prefixes = sliceType$3.nil;
+ this.tags = sliceType$4.nil;
+ return;
+ }
+ this.Writer = Writer_;
+ this.encoder = encoder_;
+ this.seq = seq_;
+ this.indent = indent_;
+ this.prefix = prefix_;
+ this.depth = depth_;
+ this.indentedIn = indentedIn_;
+ this.putNewline = putNewline_;
+ this.attrNS = attrNS_;
+ this.attrPrefix = attrPrefix_;
+ this.prefixes = prefixes_;
+ this.tags = tags_;
+ });
+ parentStack = $pkg.parentStack = $newType(0, $kindStruct, "xml.parentStack", true, "encoding/xml", false, function(p_, stack_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.p = ptrType$10.nil;
+ this.stack = sliceType$3.nil;
+ return;
+ }
+ this.p = p_;
+ this.stack = stack_;
+ });
+ UnsupportedTypeError = $pkg.UnsupportedTypeError = $newType(0, $kindStruct, "xml.UnsupportedTypeError", true, "encoding/xml", true, function(Type_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Type = $ifaceNil;
+ return;
+ }
+ this.Type = Type_;
+ });
+ UnmarshalError = $pkg.UnmarshalError = $newType(8, $kindString, "xml.UnmarshalError", true, "encoding/xml", true, null);
+ Unmarshaler = $pkg.Unmarshaler = $newType(8, $kindInterface, "xml.Unmarshaler", true, "encoding/xml", true, null);
+ UnmarshalerAttr = $pkg.UnmarshalerAttr = $newType(8, $kindInterface, "xml.UnmarshalerAttr", true, "encoding/xml", true, null);
+ typeInfo = $pkg.typeInfo = $newType(0, $kindStruct, "xml.typeInfo", true, "encoding/xml", false, function(xmlname_, fields_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.xmlname = ptrType$8.nil;
+ this.fields = sliceType$8.nil;
+ return;
+ }
+ this.xmlname = xmlname_;
+ this.fields = fields_;
+ });
+ fieldInfo = $pkg.fieldInfo = $newType(0, $kindStruct, "xml.fieldInfo", true, "encoding/xml", false, function(idx_, name_, xmlns_, flags_, parents_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.idx = sliceType$9.nil;
+ this.name = "";
+ this.xmlns = "";
+ this.flags = 0;
+ this.parents = sliceType$3.nil;
+ return;
+ }
+ this.idx = idx_;
+ this.name = name_;
+ this.xmlns = xmlns_;
+ this.flags = flags_;
+ this.parents = parents_;
+ });
+ fieldFlags = $pkg.fieldFlags = $newType(4, $kindInt, "xml.fieldFlags", true, "encoding/xml", false, null);
+ TagPathError = $pkg.TagPathError = $newType(0, $kindStruct, "xml.TagPathError", true, "encoding/xml", true, function(Struct_, Field1_, Tag1_, Field2_, Tag2_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Struct = $ifaceNil;
+ this.Field1 = "";
+ this.Tag1 = "";
+ this.Field2 = "";
+ this.Tag2 = "";
+ return;
+ }
+ this.Struct = Struct_;
+ this.Field1 = Field1_;
+ this.Tag1 = Tag1_;
+ this.Field2 = Field2_;
+ this.Tag2 = Tag2_;
+ });
+ SyntaxError = $pkg.SyntaxError = $newType(0, $kindStruct, "xml.SyntaxError", true, "encoding/xml", true, function(Msg_, Line_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Msg = "";
+ this.Line = 0;
+ return;
+ }
+ this.Msg = Msg_;
+ this.Line = Line_;
+ });
+ Name = $pkg.Name = $newType(0, $kindStruct, "xml.Name", true, "encoding/xml", true, function(Space_, Local_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Space = "";
+ this.Local = "";
+ return;
+ }
+ this.Space = Space_;
+ this.Local = Local_;
+ });
+ Attr = $pkg.Attr = $newType(0, $kindStruct, "xml.Attr", true, "encoding/xml", true, function(Name_, Value_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Name = new Name.ptr("", "");
+ this.Value = "";
+ return;
+ }
+ this.Name = Name_;
+ this.Value = Value_;
+ });
+ Token = $pkg.Token = $newType(8, $kindInterface, "xml.Token", true, "encoding/xml", true, null);
+ StartElement = $pkg.StartElement = $newType(0, $kindStruct, "xml.StartElement", true, "encoding/xml", true, function(Name_, Attr_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Name = new Name.ptr("", "");
+ this.Attr = sliceType$6.nil;
+ return;
+ }
+ this.Name = Name_;
+ this.Attr = Attr_;
+ });
+ EndElement = $pkg.EndElement = $newType(0, $kindStruct, "xml.EndElement", true, "encoding/xml", true, function(Name_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Name = new Name.ptr("", "");
+ return;
+ }
+ this.Name = Name_;
+ });
+ CharData = $pkg.CharData = $newType(12, $kindSlice, "xml.CharData", true, "encoding/xml", true, null);
+ Comment = $pkg.Comment = $newType(12, $kindSlice, "xml.Comment", true, "encoding/xml", true, null);
+ ProcInst = $pkg.ProcInst = $newType(0, $kindStruct, "xml.ProcInst", true, "encoding/xml", true, function(Target_, Inst_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Target = "";
+ this.Inst = sliceType.nil;
+ return;
+ }
+ this.Target = Target_;
+ this.Inst = Inst_;
+ });
+ Directive = $pkg.Directive = $newType(12, $kindSlice, "xml.Directive", true, "encoding/xml", true, null);
+ Decoder = $pkg.Decoder = $newType(0, $kindStruct, "xml.Decoder", true, "encoding/xml", true, function(Strict_, AutoClose_, Entity_, CharsetReader_, DefaultSpace_, r_, buf_, saved_, stk_, free_, needClose_, toClose_, nextToken_, nextByte_, ns_, err_, line_, offset_, unmarshalDepth_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Strict = false;
+ this.AutoClose = sliceType$3.nil;
+ this.Entity = false;
+ this.CharsetReader = $throwNilPointerError;
+ this.DefaultSpace = "";
+ this.r = $ifaceNil;
+ this.buf = new bytes.Buffer.ptr(sliceType.nil, 0, arrayType.zero(), 0);
+ this.saved = ptrType$13.nil;
+ this.stk = ptrType$14.nil;
+ this.free = ptrType$14.nil;
+ this.needClose = false;
+ this.toClose = new Name.ptr("", "");
+ this.nextToken = $ifaceNil;
+ this.nextByte = 0;
+ this.ns = false;
+ this.err = $ifaceNil;
+ this.line = 0;
+ this.offset = new $Int64(0, 0);
+ this.unmarshalDepth = 0;
+ return;
+ }
+ this.Strict = Strict_;
+ this.AutoClose = AutoClose_;
+ this.Entity = Entity_;
+ this.CharsetReader = CharsetReader_;
+ this.DefaultSpace = DefaultSpace_;
+ this.r = r_;
+ this.buf = buf_;
+ this.saved = saved_;
+ this.stk = stk_;
+ this.free = free_;
+ this.needClose = needClose_;
+ this.toClose = toClose_;
+ this.nextToken = nextToken_;
+ this.nextByte = nextByte_;
+ this.ns = ns_;
+ this.err = err_;
+ this.line = line_;
+ this.offset = offset_;
+ this.unmarshalDepth = unmarshalDepth_;
+ });
+ stack = $pkg.stack = $newType(0, $kindStruct, "xml.stack", true, "encoding/xml", false, function(next_, kind_, name_, ok_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.next = ptrType$14.nil;
+ this.kind = 0;
+ this.name = new Name.ptr("", "");
+ this.ok = false;
+ return;
+ }
+ this.next = next_;
+ this.kind = kind_;
+ this.name = name_;
+ this.ok = ok_;
+ });
+ sliceType = $sliceType($Uint8);
+ ptrType = $ptrType(Marshaler);
+ ptrType$1 = $ptrType(MarshalerAttr);
+ ptrType$2 = $ptrType(encoding.TextMarshaler);
+ ptrType$3 = $ptrType(Unmarshaler);
+ ptrType$4 = $ptrType(UnmarshalerAttr);
+ ptrType$5 = $ptrType(encoding.TextUnmarshaler);
+ sliceType$1 = $sliceType(unicode.Range16);
+ sliceType$2 = $sliceType(unicode.Range32);
+ sliceType$3 = $sliceType($String);
+ arrayType = $arrayType($Uint8, 64);
+ ptrType$6 = $ptrType(bufio.Writer);
+ ptrType$7 = $ptrType(Encoder);
+ sliceType$4 = $sliceType(Name);
+ ptrType$8 = $ptrType(fieldInfo);
+ ptrType$9 = $ptrType(StartElement);
+ sliceType$5 = $sliceType($emptyInterface);
+ sliceType$6 = $sliceType(Attr);
+ ptrType$10 = $ptrType(printer);
+ sliceType$7 = $sliceType(reflect.Value);
+ ptrType$11 = $ptrType(reflect.rtype);
+ ptrType$12 = $ptrType(typeInfo);
+ ptrType$13 = $ptrType(bytes.Buffer);
+ sliceType$8 = $sliceType(fieldInfo);
+ sliceType$9 = $sliceType($Int);
+ ptrType$14 = $ptrType(stack);
+ mapType = $mapType($String, $String);
+ ptrType$15 = $ptrType(parentStack);
+ ptrType$16 = $ptrType(UnsupportedTypeError);
+ ptrType$17 = $ptrType(Decoder);
+ ptrType$18 = $ptrType(TagPathError);
+ ptrType$19 = $ptrType(SyntaxError);
+ ptrType$20 = $ptrType(Name);
+ ptrType$21 = $ptrType(EndElement);
+ funcType = $funcType([$String, io.Reader], [io.Reader, $error], false);
+ Encoder.ptr.prototype.Indent = function(prefix, indent) {
+ var $ptr, enc, indent, prefix;
+ enc = this;
+ enc.p.prefix = prefix;
+ enc.p.indent = indent;
+ };
+ Encoder.prototype.Indent = function(prefix, indent) { return this.$val.Indent(prefix, indent); };
+ Encoder.ptr.prototype.Encode = function(v) {
+ var $ptr, _r$6, _r$7, _r$8, enc, err, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; enc = $f.enc; err = $f.err; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ enc = this;
+ _r$6 = reflect.ValueOf(v); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$7 = enc.p.marshalValue($clone(_r$6, reflect.Value), ptrType$8.nil, ptrType$9.nil); /* */ $s = 2; case 2: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ err = _r$7;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ _r$8 = enc.p.Writer.Flush(); /* */ $s = 3; case 3: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $s = -1; return _r$8;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Encoder.ptr.prototype.Encode }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f.enc = enc; $f.err = err; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Encoder.prototype.Encode = function(v) { return this.$val.Encode(v); };
+ Encoder.ptr.prototype.EncodeElement = function(v, start) {
+ var $ptr, _r$6, _r$7, _r$8, enc, err, start, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; enc = $f.enc; err = $f.err; start = $f.start; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ start = [start];
+ enc = this;
+ _r$6 = reflect.ValueOf(v); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$7 = enc.p.marshalValue($clone(_r$6, reflect.Value), ptrType$8.nil, start[0]); /* */ $s = 2; case 2: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ err = _r$7;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ _r$8 = enc.p.Writer.Flush(); /* */ $s = 3; case 3: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $s = -1; return _r$8;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Encoder.ptr.prototype.EncodeElement }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f.enc = enc; $f.err = err; $f.start = start; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Encoder.prototype.EncodeElement = function(v, start) { return this.$val.EncodeElement(v, start); };
+ Encoder.ptr.prototype.EncodeToken = function(t) {
+ var $ptr, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$19, _r$20, _r$21, _r$22, _r$23, _r$24, _r$25, _r$26, _r$27, _r$6, _r$7, _r$8, _r$9, _ref, enc, err, err$1, p, t, t$1, t$2, t$3, t$4, t$5, t$6, t$7, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$19 = $f._r$19; _r$20 = $f._r$20; _r$21 = $f._r$21; _r$22 = $f._r$22; _r$23 = $f._r$23; _r$24 = $f._r$24; _r$25 = $f._r$25; _r$26 = $f._r$26; _r$27 = $f._r$27; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _ref = $f._ref; enc = $f.enc; err = $f.err; err$1 = $f.err$1; p = $f.p; t = $f.t; t$1 = $f.t$1; t$2 = $f.t$2; t$3 = $f.t$3; t$4 = $f.t$4; t$5 = $f.t$5; t$6 = $f.t$6; t$7 = $f.t$7; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t$1 = [t$1];
+ enc = this;
+ p = enc.p;
+ _ref = t;
+ /* */ if ($assertType(_ref, StartElement, true)[1]) { $s = 1; continue; }
+ /* */ if ($assertType(_ref, EndElement, true)[1]) { $s = 2; continue; }
+ /* */ if ($assertType(_ref, CharData, true)[1]) { $s = 3; continue; }
+ /* */ if ($assertType(_ref, Comment, true)[1]) { $s = 4; continue; }
+ /* */ if ($assertType(_ref, ProcInst, true)[1]) { $s = 5; continue; }
+ /* */ if ($assertType(_ref, Directive, true)[1]) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if ($assertType(_ref, StartElement, true)[1]) { */ case 1:
+ t$1[0] = $clone(_ref.$val, StartElement);
+ _r$6 = p.writeStart(t$1[0]); /* */ $s = 9; case 9: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ err = _r$6;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ $s = 8; continue;
+ /* } else if ($assertType(_ref, EndElement, true)[1]) { */ case 2:
+ t$2 = $clone(_ref.$val, EndElement);
+ _r$7 = p.writeEnd($clone(t$2.Name, Name)); /* */ $s = 10; case 10: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ err$1 = _r$7;
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ $s = 8; continue;
+ /* } else if ($assertType(_ref, CharData, true)[1]) { */ case 3:
+ t$3 = _ref.$val;
+ _r$8 = escapeText(p, $subslice(new sliceType(t$3.$array), t$3.$offset, t$3.$offset + t$3.$length), false); /* */ $s = 11; case 11: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _r$8;
+ $s = 8; continue;
+ /* } else if ($assertType(_ref, Comment, true)[1]) { */ case 4:
+ t$4 = _ref.$val;
+ /* */ if (bytes.Contains($subslice(new sliceType(t$4.$array), t$4.$offset, t$4.$offset + t$4.$length), endComment)) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if (bytes.Contains($subslice(new sliceType(t$4.$array), t$4.$offset, t$4.$offset + t$4.$length), endComment)) { */ case 12:
+ _r$9 = fmt.Errorf("xml: EncodeToken of Comment containing --> marker", new sliceType$5([])); /* */ $s = 14; case 14: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ $s = -1; return _r$9;
+ /* } */ case 13:
+ _r$10 = p.Writer.WriteString("<!--"); /* */ $s = 15; case 15: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _r$10;
+ _r$11 = p.Writer.Write($subslice(new sliceType(t$4.$array), t$4.$offset, t$4.$offset + t$4.$length)); /* */ $s = 16; case 16: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _r$11;
+ _r$12 = p.Writer.WriteString("-->"); /* */ $s = 17; case 17: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _r$12;
+ _r$13 = p.cachedWriteError(); /* */ $s = 18; case 18: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ $s = -1; return _r$13;
+ /* } else if ($assertType(_ref, ProcInst, true)[1]) { */ case 5:
+ t$5 = $clone(_ref.$val, ProcInst);
+ /* */ if (t$5.Target === "xml" && !((p.Writer.Buffered() === 0))) { $s = 19; continue; }
+ /* */ $s = 20; continue;
+ /* if (t$5.Target === "xml" && !((p.Writer.Buffered() === 0))) { */ case 19:
+ _r$14 = fmt.Errorf("xml: EncodeToken of ProcInst xml target only valid for xml declaration, first token encoded", new sliceType$5([])); /* */ $s = 21; case 21: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ $s = -1; return _r$14;
+ /* } */ case 20:
+ /* */ if (!isNameString(t$5.Target)) { $s = 22; continue; }
+ /* */ $s = 23; continue;
+ /* if (!isNameString(t$5.Target)) { */ case 22:
+ _r$15 = fmt.Errorf("xml: EncodeToken of ProcInst with invalid Target", new sliceType$5([])); /* */ $s = 24; case 24: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ $s = -1; return _r$15;
+ /* } */ case 23:
+ /* */ if (bytes.Contains(t$5.Inst, endProcInst)) { $s = 25; continue; }
+ /* */ $s = 26; continue;
+ /* if (bytes.Contains(t$5.Inst, endProcInst)) { */ case 25:
+ _r$16 = fmt.Errorf("xml: EncodeToken of ProcInst containing ?> marker", new sliceType$5([])); /* */ $s = 27; case 27: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ $s = -1; return _r$16;
+ /* } */ case 26:
+ _r$17 = p.Writer.WriteString("<?"); /* */ $s = 28; case 28: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ _r$17;
+ _r$18 = p.Writer.WriteString(t$5.Target); /* */ $s = 29; case 29: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ _r$18;
+ /* */ if (t$5.Inst.$length > 0) { $s = 30; continue; }
+ /* */ $s = 31; continue;
+ /* if (t$5.Inst.$length > 0) { */ case 30:
+ _r$19 = p.Writer.WriteByte(32); /* */ $s = 32; case 32: if($c) { $c = false; _r$19 = _r$19.$blk(); } if (_r$19 && _r$19.$blk !== undefined) { break s; }
+ _r$19;
+ _r$20 = p.Writer.Write(t$5.Inst); /* */ $s = 33; case 33: if($c) { $c = false; _r$20 = _r$20.$blk(); } if (_r$20 && _r$20.$blk !== undefined) { break s; }
+ _r$20;
+ /* } */ case 31:
+ _r$21 = p.Writer.WriteString("?>"); /* */ $s = 34; case 34: if($c) { $c = false; _r$21 = _r$21.$blk(); } if (_r$21 && _r$21.$blk !== undefined) { break s; }
+ _r$21;
+ $s = 8; continue;
+ /* } else if ($assertType(_ref, Directive, true)[1]) { */ case 6:
+ t$6 = _ref.$val;
+ /* */ if (!isValidDirective(t$6)) { $s = 35; continue; }
+ /* */ $s = 36; continue;
+ /* if (!isValidDirective(t$6)) { */ case 35:
+ _r$22 = fmt.Errorf("xml: EncodeToken of Directive containing wrong < or > markers", new sliceType$5([])); /* */ $s = 37; case 37: if($c) { $c = false; _r$22 = _r$22.$blk(); } if (_r$22 && _r$22.$blk !== undefined) { break s; }
+ $s = -1; return _r$22;
+ /* } */ case 36:
+ _r$23 = p.Writer.WriteString("<!"); /* */ $s = 38; case 38: if($c) { $c = false; _r$23 = _r$23.$blk(); } if (_r$23 && _r$23.$blk !== undefined) { break s; }
+ _r$23;
+ _r$24 = p.Writer.Write($subslice(new sliceType(t$6.$array), t$6.$offset, t$6.$offset + t$6.$length)); /* */ $s = 39; case 39: if($c) { $c = false; _r$24 = _r$24.$blk(); } if (_r$24 && _r$24.$blk !== undefined) { break s; }
+ _r$24;
+ _r$25 = p.Writer.WriteString(">"); /* */ $s = 40; case 40: if($c) { $c = false; _r$25 = _r$25.$blk(); } if (_r$25 && _r$25.$blk !== undefined) { break s; }
+ _r$25;
+ $s = 8; continue;
+ /* } else { */ case 7:
+ t$7 = _ref;
+ _r$26 = fmt.Errorf("xml: EncodeToken of invalid token type", new sliceType$5([])); /* */ $s = 41; case 41: if($c) { $c = false; _r$26 = _r$26.$blk(); } if (_r$26 && _r$26.$blk !== undefined) { break s; }
+ $s = -1; return _r$26;
+ /* } */ case 8:
+ _r$27 = p.cachedWriteError(); /* */ $s = 42; case 42: if($c) { $c = false; _r$27 = _r$27.$blk(); } if (_r$27 && _r$27.$blk !== undefined) { break s; }
+ $s = -1; return _r$27;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Encoder.ptr.prototype.EncodeToken }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$19 = _r$19; $f._r$20 = _r$20; $f._r$21 = _r$21; $f._r$22 = _r$22; $f._r$23 = _r$23; $f._r$24 = _r$24; $f._r$25 = _r$25; $f._r$26 = _r$26; $f._r$27 = _r$27; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._ref = _ref; $f.enc = enc; $f.err = err; $f.err$1 = err$1; $f.p = p; $f.t = t; $f.t$1 = t$1; $f.t$2 = t$2; $f.t$3 = t$3; $f.t$4 = t$4; $f.t$5 = t$5; $f.t$6 = t$6; $f.t$7 = t$7; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Encoder.prototype.EncodeToken = function(t) { return this.$val.EncodeToken(t); };
+ isValidDirective = function(dir) {
+ var $ptr, _i, _ref, c, depth, dir, i, incomment, inquote, n, x$2, x$3;
+ depth = 0;
+ inquote = 0;
+ incomment = false;
+ _ref = dir;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ c = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (incomment) {
+ if (c === 62) {
+ n = (1 + i >> 0) - endComment.$length >> 0;
+ if (n >= 0 && bytes.Equal((x$2 = $subslice(dir, n, (i + 1 >> 0)), $subslice(new sliceType(x$2.$array), x$2.$offset, x$2.$offset + x$2.$length)), endComment)) {
+ incomment = false;
+ }
+ }
+ } else if (!((inquote === 0))) {
+ if (c === inquote) {
+ inquote = 0;
+ }
+ } else if ((c === 39) || (c === 34)) {
+ inquote = c;
+ } else if ((c === 60)) {
+ if ((i + begComment.$length >> 0) < dir.$length && bytes.Equal((x$3 = $subslice(dir, i, (i + begComment.$length >> 0)), $subslice(new sliceType(x$3.$array), x$3.$offset, x$3.$offset + x$3.$length)), begComment)) {
+ incomment = true;
+ } else {
+ depth = depth + (1) >> 0;
+ }
+ } else if ((c === 62)) {
+ if (depth === 0) {
+ return false;
+ }
+ depth = depth - (1) >> 0;
+ }
+ _i++;
+ }
+ return (depth === 0) && (inquote === 0) && !incomment;
+ };
+ Encoder.ptr.prototype.Flush = function() {
+ var $ptr, _r$6, enc, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; enc = $f.enc; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ enc = this;
+ _r$6 = enc.p.Writer.Flush(); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return _r$6;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Encoder.ptr.prototype.Flush }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f.enc = enc; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Encoder.prototype.Flush = function() { return this.$val.Flush(); };
+ printer.ptr.prototype.createAttrPrefix = function(url) {
+ var $ptr, _entry, _entry$1, _entry$2, _key, _key$1, _r$10, _r$11, _r$6, _r$7, _r$8, _r$9, i, id, p, prefix, prefix$1, url, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _entry$1 = $f._entry$1; _entry$2 = $f._entry$2; _key = $f._key; _key$1 = $f._key$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; i = $f.i; id = $f.id; p = $f.p; prefix = $f.prefix; prefix$1 = $f.prefix$1; url = $f.url; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ prefix = (_entry = p.attrPrefix[$String.keyFor(url)], _entry !== undefined ? _entry.v : "");
+ if (!(prefix === "")) {
+ $s = -1; return prefix;
+ }
+ if (url === "http://www.w3.org/XML/1998/namespace") {
+ $s = -1; return "xml";
+ }
+ if (p.attrPrefix === false) {
+ p.attrPrefix = {};
+ p.attrNS = {};
+ }
+ _r$6 = strings.TrimRight(url, "/"); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ prefix$1 = _r$6;
+ i = strings.LastIndex(prefix$1, "/");
+ if (i >= 0) {
+ prefix$1 = $substring(prefix$1, (i + 1 >> 0));
+ }
+ if (prefix$1 === "" || !isName((new sliceType($stringToBytes(prefix$1)))) || strings.Contains(prefix$1, ":")) {
+ prefix$1 = "_";
+ }
+ if (strings.HasPrefix(prefix$1, "xml")) {
+ prefix$1 = "_" + prefix$1;
+ }
+ if (!((_entry$1 = p.attrNS[$String.keyFor(prefix$1)], _entry$1 !== undefined ? _entry$1.v : "") === "")) {
+ p.seq = p.seq + (1) >> 0;
+ while (true) {
+ id = prefix$1 + "_" + strconv.Itoa(p.seq);
+ if ((_entry$2 = p.attrNS[$String.keyFor(id)], _entry$2 !== undefined ? _entry$2.v : "") === "") {
+ prefix$1 = id;
+ break;
+ }
+ p.seq = p.seq + (1) >> 0;
+ }
+ }
+ _key = url; (p.attrPrefix || $throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(_key)] = { k: _key, v: prefix$1 };
+ _key$1 = prefix$1; (p.attrNS || $throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(_key$1)] = { k: _key$1, v: url };
+ _r$7 = p.Writer.WriteString("xmlns:"); /* */ $s = 2; case 2: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _r$7;
+ _r$8 = p.Writer.WriteString(prefix$1); /* */ $s = 3; case 3: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _r$8;
+ _r$9 = p.Writer.WriteString("=\""); /* */ $s = 4; case 4: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _r$9;
+ _r$10 = EscapeText(p, (new sliceType($stringToBytes(url)))); /* */ $s = 5; case 5: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _r$10;
+ _r$11 = p.Writer.WriteString("\" "); /* */ $s = 6; case 6: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _r$11;
+ p.prefixes = $append(p.prefixes, prefix$1);
+ $s = -1; return prefix$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: printer.ptr.prototype.createAttrPrefix }; } $f.$ptr = $ptr; $f._entry = _entry; $f._entry$1 = _entry$1; $f._entry$2 = _entry$2; $f._key = _key; $f._key$1 = _key$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f.i = i; $f.id = id; $f.p = p; $f.prefix = prefix; $f.prefix$1 = prefix$1; $f.url = url; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ printer.prototype.createAttrPrefix = function(url) { return this.$val.createAttrPrefix(url); };
+ printer.ptr.prototype.deleteAttrPrefix = function(prefix) {
+ var $ptr, _entry, p, prefix;
+ p = this;
+ delete p.attrPrefix[$String.keyFor((_entry = p.attrNS[$String.keyFor(prefix)], _entry !== undefined ? _entry.v : ""))];
+ delete p.attrNS[$String.keyFor(prefix)];
+ };
+ printer.prototype.deleteAttrPrefix = function(prefix) { return this.$val.deleteAttrPrefix(prefix); };
+ printer.ptr.prototype.markPrefix = function() {
+ var $ptr, p;
+ p = this;
+ p.prefixes = $append(p.prefixes, "");
+ };
+ printer.prototype.markPrefix = function() { return this.$val.markPrefix(); };
+ printer.ptr.prototype.popPrefix = function() {
+ var $ptr, p, prefix, x$2, x$3;
+ p = this;
+ while (true) {
+ if (!(p.prefixes.$length > 0)) { break; }
+ prefix = (x$2 = p.prefixes, x$3 = p.prefixes.$length - 1 >> 0, ((x$3 < 0 || x$3 >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + x$3]));
+ p.prefixes = $subslice(p.prefixes, 0, (p.prefixes.$length - 1 >> 0));
+ if (prefix === "") {
+ break;
+ }
+ p.deleteAttrPrefix(prefix);
+ }
+ };
+ printer.prototype.popPrefix = function() { return this.$val.popPrefix(); };
+ printer.ptr.prototype.marshalValue = function(val, finfo, startTemplate) {
+ var $ptr, _arg, _arg$1, _arg$2, _arg$3, _arg$4, _arg$5, _arg$6, _arg$7, _i, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$19, _r$20, _r$21, _r$22, _r$23, _r$24, _r$25, _r$26, _r$27, _r$28, _r$29, _r$30, _r$31, _r$32, _r$33, _r$34, _r$35, _r$36, _r$37, _r$38, _r$39, _r$6, _r$7, _r$8, _r$9, _ref, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tuple, _tuple$1, _tuple$2, _v, _v$1, _v$2, _v$3, _v$4, b, err, err$1, err$2, err$3, err$4, err1, finfo, finfo$1, fv, i, i$1, kind, n, name, name$1, ok, p, pv, pv$1, s, start, startTemplate, tinfo, typ, v, val, x$2, xmlname, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _arg$3 = $f._arg$3; _arg$4 = $f._arg$4; _arg$5 = $f._arg$5; _arg$6 = $f._arg$6; _arg$7 = $f._arg$7; _i = $f._i; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$19 = $f._r$19; _r$20 = $f._r$20; _r$21 = $f._r$21; _r$22 = $f._r$22; _r$23 = $f._r$23; _r$24 = $f._r$24; _r$25 = $f._r$25; _r$26 = $f._r$26; _r$27 = $f._r$27; _r$28 = $f._r$28; _r$29 = $f._r$29; _r$30 = $f._r$30; _r$31 = $f._r$31; _r$32 = $f._r$32; _r$33 = $f._r$33; _r$34 = $f._r$34; _r$35 = $f._r$35; _r$36 = $f._r$36; _r$37 = $f._r$37; _r$38 = $f._r$38; _r$39 = $f._r$39; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _ref = $f._ref; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _v = $f._v; _v$1 = $f._v$1; _v$2 = $f._v$2; _v$3 = $f._v$3; _v$4 = $f._v$4; b = $f.b; err = $f.err; err$1 = $f.err$1; err$2 = $f.err$2; err$3 = $f.err$3; err$4 = $f.err$4; err1 = $f.err1; finfo = $f.finfo; finfo$1 = $f.finfo$1; fv = $f.fv; i = $f.i; i$1 = $f.i$1; kind = $f.kind; n = $f.n; name = $f.name; name$1 = $f.name$1; ok = $f.ok; p = $f.p; pv = $f.pv; pv$1 = $f.pv$1; s = $f.s; start = $f.start; startTemplate = $f.startTemplate; tinfo = $f.tinfo; typ = $f.typ; v = $f.v; val = $f.val; x$2 = $f.x$2; xmlname = $f.xmlname; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ start = [start];
+ p = this;
+ /* */ if (!(startTemplate === ptrType$9.nil) && startTemplate.Name.Local === "") { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!(startTemplate === ptrType$9.nil) && startTemplate.Name.Local === "") { */ case 1:
+ _r$6 = fmt.Errorf("xml: EncodeElement of StartElement with missing name", new sliceType$5([])); /* */ $s = 3; case 3: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return _r$6;
+ /* } */ case 2:
+ if (!$clone(val, reflect.Value).IsValid()) {
+ $s = -1; return $ifaceNil;
+ }
+ if (!(finfo === ptrType$8.nil) && !(((finfo.flags & 128) === 0)) && isEmptyValue($clone(val, reflect.Value))) {
+ $s = -1; return $ifaceNil;
+ }
+ /* while (true) { */ case 4:
+ /* if (!(($clone(val, reflect.Value).Kind() === 20) || ($clone(val, reflect.Value).Kind() === 22))) { break; } */ if(!(($clone(val, reflect.Value).Kind() === 20) || ($clone(val, reflect.Value).Kind() === 22))) { $s = 5; continue; }
+ if ($clone(val, reflect.Value).IsNil()) {
+ $s = -1; return $ifaceNil;
+ }
+ _r$7 = $clone(val, reflect.Value).Elem(); /* */ $s = 6; case 6: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ val = _r$7;
+ /* } */ $s = 4; continue; case 5:
+ kind = $clone(val, reflect.Value).Kind();
+ typ = $clone(val, reflect.Value).Type();
+ if (!($clone(val, reflect.Value).CanInterface())) { _v = false; $s = 9; continue s; }
+ _r$8 = typ.Implements(marshalerType); /* */ $s = 10; case 10: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _v = _r$8; case 9:
+ /* */ if (_v) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (_v) { */ case 7:
+ _r$9 = $clone(val, reflect.Value).Interface(); /* */ $s = 11; case 11: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _arg = $assertType(_r$9, Marshaler);
+ _r$10 = defaultStart(typ, finfo, startTemplate); /* */ $s = 12; case 12: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _arg$1 = $clone(_r$10, StartElement);
+ _r$11 = p.marshalInterface(_arg, _arg$1); /* */ $s = 13; case 13: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ $s = -1; return _r$11;
+ /* } */ case 8:
+ /* */ if ($clone(val, reflect.Value).CanAddr()) { $s = 14; continue; }
+ /* */ $s = 15; continue;
+ /* if ($clone(val, reflect.Value).CanAddr()) { */ case 14:
+ pv = $clone(val, reflect.Value).Addr();
+ if (!($clone(pv, reflect.Value).CanInterface())) { _v$1 = false; $s = 18; continue s; }
+ _r$12 = $clone(pv, reflect.Value).Type().Implements(marshalerType); /* */ $s = 19; case 19: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _v$1 = _r$12; case 18:
+ /* */ if (_v$1) { $s = 16; continue; }
+ /* */ $s = 17; continue;
+ /* if (_v$1) { */ case 16:
+ _r$13 = $clone(pv, reflect.Value).Interface(); /* */ $s = 20; case 20: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _arg$2 = $assertType(_r$13, Marshaler);
+ _r$14 = defaultStart($clone(pv, reflect.Value).Type(), finfo, startTemplate); /* */ $s = 21; case 21: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ _arg$3 = $clone(_r$14, StartElement);
+ _r$15 = p.marshalInterface(_arg$2, _arg$3); /* */ $s = 22; case 22: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ $s = -1; return _r$15;
+ /* } */ case 17:
+ /* } */ case 15:
+ if (!($clone(val, reflect.Value).CanInterface())) { _v$2 = false; $s = 25; continue s; }
+ _r$16 = typ.Implements(textMarshalerType); /* */ $s = 26; case 26: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ _v$2 = _r$16; case 25:
+ /* */ if (_v$2) { $s = 23; continue; }
+ /* */ $s = 24; continue;
+ /* if (_v$2) { */ case 23:
+ _r$17 = $clone(val, reflect.Value).Interface(); /* */ $s = 27; case 27: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ _arg$4 = $assertType(_r$17, encoding.TextMarshaler);
+ _r$18 = defaultStart(typ, finfo, startTemplate); /* */ $s = 28; case 28: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ _arg$5 = $clone(_r$18, StartElement);
+ _r$19 = p.marshalTextInterface(_arg$4, _arg$5); /* */ $s = 29; case 29: if($c) { $c = false; _r$19 = _r$19.$blk(); } if (_r$19 && _r$19.$blk !== undefined) { break s; }
+ $s = -1; return _r$19;
+ /* } */ case 24:
+ /* */ if ($clone(val, reflect.Value).CanAddr()) { $s = 30; continue; }
+ /* */ $s = 31; continue;
+ /* if ($clone(val, reflect.Value).CanAddr()) { */ case 30:
+ pv$1 = $clone(val, reflect.Value).Addr();
+ if (!($clone(pv$1, reflect.Value).CanInterface())) { _v$3 = false; $s = 34; continue s; }
+ _r$20 = $clone(pv$1, reflect.Value).Type().Implements(textMarshalerType); /* */ $s = 35; case 35: if($c) { $c = false; _r$20 = _r$20.$blk(); } if (_r$20 && _r$20.$blk !== undefined) { break s; }
+ _v$3 = _r$20; case 34:
+ /* */ if (_v$3) { $s = 32; continue; }
+ /* */ $s = 33; continue;
+ /* if (_v$3) { */ case 32:
+ _r$21 = $clone(pv$1, reflect.Value).Interface(); /* */ $s = 36; case 36: if($c) { $c = false; _r$21 = _r$21.$blk(); } if (_r$21 && _r$21.$blk !== undefined) { break s; }
+ _arg$6 = $assertType(_r$21, encoding.TextMarshaler);
+ _r$22 = defaultStart($clone(pv$1, reflect.Value).Type(), finfo, startTemplate); /* */ $s = 37; case 37: if($c) { $c = false; _r$22 = _r$22.$blk(); } if (_r$22 && _r$22.$blk !== undefined) { break s; }
+ _arg$7 = $clone(_r$22, StartElement);
+ _r$23 = p.marshalTextInterface(_arg$6, _arg$7); /* */ $s = 38; case 38: if($c) { $c = false; _r$23 = _r$23.$blk(); } if (_r$23 && _r$23.$blk !== undefined) { break s; }
+ $s = -1; return _r$23;
+ /* } */ case 33:
+ /* } */ case 31:
+ if (!((kind === 23) || (kind === 17))) { _v$4 = false; $s = 41; continue s; }
+ _r$24 = typ.Elem(); /* */ $s = 42; case 42: if($c) { $c = false; _r$24 = _r$24.$blk(); } if (_r$24 && _r$24.$blk !== undefined) { break s; }
+ _r$25 = _r$24.Kind(); /* */ $s = 43; case 43: if($c) { $c = false; _r$25 = _r$25.$blk(); } if (_r$25 && _r$25.$blk !== undefined) { break s; }
+ _v$4 = !((_r$25 === 8)); case 41:
+ /* */ if (_v$4) { $s = 39; continue; }
+ /* */ $s = 40; continue;
+ /* if (_v$4) { */ case 39:
+ _tmp = 0;
+ _tmp$1 = $clone(val, reflect.Value).Len();
+ i = _tmp;
+ n = _tmp$1;
+ /* while (true) { */ case 44:
+ /* if (!(i < n)) { break; } */ if(!(i < n)) { $s = 45; continue; }
+ _r$26 = $clone(val, reflect.Value).Index(i); /* */ $s = 46; case 46: if($c) { $c = false; _r$26 = _r$26.$blk(); } if (_r$26 && _r$26.$blk !== undefined) { break s; }
+ _r$27 = p.marshalValue($clone(_r$26, reflect.Value), finfo, startTemplate); /* */ $s = 47; case 47: if($c) { $c = false; _r$27 = _r$27.$blk(); } if (_r$27 && _r$27.$blk !== undefined) { break s; }
+ err = _r$27;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ i = i + (1) >> 0;
+ /* } */ $s = 44; continue; case 45:
+ $s = -1; return $ifaceNil;
+ /* } */ case 40:
+ _r$28 = getTypeInfo(typ); /* */ $s = 48; case 48: if($c) { $c = false; _r$28 = _r$28.$blk(); } if (_r$28 && _r$28.$blk !== undefined) { break s; }
+ _tuple = _r$28;
+ tinfo = _tuple[0];
+ err$1 = _tuple[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ start[0] = new StartElement.ptr(new Name.ptr("", ""), sliceType$6.nil);
+ /* */ if (!(startTemplate === ptrType$9.nil)) { $s = 49; continue; }
+ /* */ if (!(tinfo.xmlname === ptrType$8.nil)) { $s = 50; continue; }
+ /* */ $s = 51; continue;
+ /* if (!(startTemplate === ptrType$9.nil)) { */ case 49:
+ Name.copy(start[0].Name, startTemplate.Name);
+ start[0].Attr = $appendSlice(start[0].Attr, startTemplate.Attr);
+ $s = 51; continue;
+ /* } else if (!(tinfo.xmlname === ptrType$8.nil)) { */ case 50:
+ xmlname = tinfo.xmlname;
+ /* */ if (!(xmlname.name === "")) { $s = 52; continue; }
+ /* */ $s = 53; continue;
+ /* if (!(xmlname.name === "")) { */ case 52:
+ _tmp$2 = xmlname.xmlns;
+ _tmp$3 = xmlname.name;
+ start[0].Name.Space = _tmp$2;
+ start[0].Name.Local = _tmp$3;
+ $s = 54; continue;
+ /* } else { */ case 53:
+ _r$29 = xmlname.value($clone(val, reflect.Value)); /* */ $s = 55; case 55: if($c) { $c = false; _r$29 = _r$29.$blk(); } if (_r$29 && _r$29.$blk !== undefined) { break s; }
+ _r$30 = $clone(_r$29, reflect.Value).Interface(); /* */ $s = 56; case 56: if($c) { $c = false; _r$30 = _r$30.$blk(); } if (_r$30 && _r$30.$blk !== undefined) { break s; }
+ _tuple$1 = $assertType(_r$30, Name, true);
+ v = $clone(_tuple$1[0], Name);
+ ok = _tuple$1[1];
+ if (ok && !(v.Local === "")) {
+ Name.copy(start[0].Name, v);
+ }
+ /* } */ case 54:
+ /* } */ case 51:
+ if (start[0].Name.Local === "" && !(finfo === ptrType$8.nil)) {
+ _tmp$4 = finfo.xmlns;
+ _tmp$5 = finfo.name;
+ start[0].Name.Space = _tmp$4;
+ start[0].Name.Local = _tmp$5;
+ }
+ /* */ if (start[0].Name.Local === "") { $s = 57; continue; }
+ /* */ $s = 58; continue;
+ /* if (start[0].Name.Local === "") { */ case 57:
+ _r$31 = typ.Name(); /* */ $s = 59; case 59: if($c) { $c = false; _r$31 = _r$31.$blk(); } if (_r$31 && _r$31.$blk !== undefined) { break s; }
+ name = _r$31;
+ if (name === "") {
+ $s = -1; return new UnsupportedTypeError.ptr(typ);
+ }
+ start[0].Name.Local = name;
+ /* } */ case 58:
+ _ref = tinfo.fields;
+ _i = 0;
+ /* while (true) { */ case 60:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 61; continue; }
+ i$1 = _i;
+ finfo$1 = (x$2 = tinfo.fields, ((i$1 < 0 || i$1 >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + i$1]));
+ /* */ if ((finfo$1.flags & 2) === 0) { $s = 62; continue; }
+ /* */ $s = 63; continue;
+ /* if ((finfo$1.flags & 2) === 0) { */ case 62:
+ _i++;
+ /* continue; */ $s = 60; continue;
+ /* } */ case 63:
+ _r$32 = finfo$1.value($clone(val, reflect.Value)); /* */ $s = 64; case 64: if($c) { $c = false; _r$32 = _r$32.$blk(); } if (_r$32 && _r$32.$blk !== undefined) { break s; }
+ fv = _r$32;
+ /* */ if (!(((finfo$1.flags & 128) === 0)) && isEmptyValue($clone(fv, reflect.Value))) { $s = 65; continue; }
+ /* */ $s = 66; continue;
+ /* if (!(((finfo$1.flags & 128) === 0)) && isEmptyValue($clone(fv, reflect.Value))) { */ case 65:
+ _i++;
+ /* continue; */ $s = 60; continue;
+ /* } */ case 66:
+ /* */ if (($clone(fv, reflect.Value).Kind() === 20) && $clone(fv, reflect.Value).IsNil()) { $s = 67; continue; }
+ /* */ $s = 68; continue;
+ /* if (($clone(fv, reflect.Value).Kind() === 20) && $clone(fv, reflect.Value).IsNil()) { */ case 67:
+ _i++;
+ /* continue; */ $s = 60; continue;
+ /* } */ case 68:
+ name$1 = new Name.ptr(finfo$1.xmlns, finfo$1.name);
+ _r$33 = p.marshalAttr(start[0], $clone(name$1, Name), $clone(fv, reflect.Value)); /* */ $s = 69; case 69: if($c) { $c = false; _r$33 = _r$33.$blk(); } if (_r$33 && _r$33.$blk !== undefined) { break s; }
+ err$2 = _r$33;
+ if (!($interfaceIsEqual(err$2, $ifaceNil))) {
+ $s = -1; return err$2;
+ }
+ _i++;
+ /* } */ $s = 60; continue; case 61:
+ _r$34 = p.writeStart(start[0]); /* */ $s = 70; case 70: if($c) { $c = false; _r$34 = _r$34.$blk(); } if (_r$34 && _r$34.$blk !== undefined) { break s; }
+ err$3 = _r$34;
+ if (!($interfaceIsEqual(err$3, $ifaceNil))) {
+ $s = -1; return err$3;
+ }
+ /* */ if ($clone(val, reflect.Value).Kind() === 25) { $s = 71; continue; }
+ /* */ $s = 72; continue;
+ /* if ($clone(val, reflect.Value).Kind() === 25) { */ case 71:
+ _r$35 = p.marshalStruct(tinfo, $clone(val, reflect.Value)); /* */ $s = 74; case 74: if($c) { $c = false; _r$35 = _r$35.$blk(); } if (_r$35 && _r$35.$blk !== undefined) { break s; }
+ err$1 = _r$35;
+ $s = 73; continue;
+ /* } else { */ case 72:
+ _r$36 = p.marshalSimple(typ, $clone(val, reflect.Value)); /* */ $s = 75; case 75: if($c) { $c = false; _r$36 = _r$36.$blk(); } if (_r$36 && _r$36.$blk !== undefined) { break s; }
+ _tuple$2 = _r$36;
+ s = _tuple$2[0];
+ b = _tuple$2[1];
+ err1 = _tuple$2[2];
+ /* */ if (!($interfaceIsEqual(err1, $ifaceNil))) { $s = 76; continue; }
+ /* */ if (!(b === sliceType.nil)) { $s = 77; continue; }
+ /* */ $s = 78; continue;
+ /* if (!($interfaceIsEqual(err1, $ifaceNil))) { */ case 76:
+ err$1 = err1;
+ $s = 79; continue;
+ /* } else if (!(b === sliceType.nil)) { */ case 77:
+ _r$37 = EscapeText(p, b); /* */ $s = 80; case 80: if($c) { $c = false; _r$37 = _r$37.$blk(); } if (_r$37 && _r$37.$blk !== undefined) { break s; }
+ _r$37;
+ $s = 79; continue;
+ /* } else { */ case 78:
+ $r = p.EscapeString(s); /* */ $s = 81; case 81: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 79:
+ /* } */ case 73:
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ _r$38 = p.writeEnd($clone(start[0].Name, Name)); /* */ $s = 82; case 82: if($c) { $c = false; _r$38 = _r$38.$blk(); } if (_r$38 && _r$38.$blk !== undefined) { break s; }
+ err$4 = _r$38;
+ if (!($interfaceIsEqual(err$4, $ifaceNil))) {
+ $s = -1; return err$4;
+ }
+ _r$39 = p.cachedWriteError(); /* */ $s = 83; case 83: if($c) { $c = false; _r$39 = _r$39.$blk(); } if (_r$39 && _r$39.$blk !== undefined) { break s; }
+ $s = -1; return _r$39;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: printer.ptr.prototype.marshalValue }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._arg$3 = _arg$3; $f._arg$4 = _arg$4; $f._arg$5 = _arg$5; $f._arg$6 = _arg$6; $f._arg$7 = _arg$7; $f._i = _i; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$19 = _r$19; $f._r$20 = _r$20; $f._r$21 = _r$21; $f._r$22 = _r$22; $f._r$23 = _r$23; $f._r$24 = _r$24; $f._r$25 = _r$25; $f._r$26 = _r$26; $f._r$27 = _r$27; $f._r$28 = _r$28; $f._r$29 = _r$29; $f._r$30 = _r$30; $f._r$31 = _r$31; $f._r$32 = _r$32; $f._r$33 = _r$33; $f._r$34 = _r$34; $f._r$35 = _r$35; $f._r$36 = _r$36; $f._r$37 = _r$37; $f._r$38 = _r$38; $f._r$39 = _r$39; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._ref = _ref; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._v = _v; $f._v$1 = _v$1; $f._v$2 = _v$2; $f._v$3 = _v$3; $f._v$4 = _v$4; $f.b = b; $f.err = err; $f.err$1 = err$1; $f.err$2 = err$2; $f.err$3 = err$3; $f.err$4 = err$4; $f.err1 = err1; $f.finfo = finfo; $f.finfo$1 = finfo$1; $f.fv = fv; $f.i = i; $f.i$1 = i$1; $f.kind = kind; $f.n = n; $f.name = name; $f.name$1 = name$1; $f.ok = ok; $f.p = p; $f.pv = pv; $f.pv$1 = pv$1; $f.s = s; $f.start = start; $f.startTemplate = startTemplate; $f.tinfo = tinfo; $f.typ = typ; $f.v = v; $f.val = val; $f.x$2 = x$2; $f.xmlname = xmlname; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ printer.prototype.marshalValue = function(val, finfo, startTemplate) { return this.$val.marshalValue(val, finfo, startTemplate); };
+ printer.ptr.prototype.marshalAttr = function(start, name, val) {
+ var $ptr, _1, _arg, _arg$1, _arg$2, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$19, _r$20, _r$21, _r$22, _r$23, _r$24, _r$6, _r$7, _r$8, _r$9, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, _v, _v$1, _v$2, _v$3, _v$4, attr, attr$1, b, err, err$1, err$2, err$3, err$4, err$5, i, n, name, p, pv, pv$1, s, start, text, text$1, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$19 = $f._r$19; _r$20 = $f._r$20; _r$21 = $f._r$21; _r$22 = $f._r$22; _r$23 = $f._r$23; _r$24 = $f._r$24; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; _v = $f._v; _v$1 = $f._v$1; _v$2 = $f._v$2; _v$3 = $f._v$3; _v$4 = $f._v$4; attr = $f.attr; attr$1 = $f.attr$1; b = $f.b; err = $f.err; err$1 = $f.err$1; err$2 = $f.err$2; err$3 = $f.err$3; err$4 = $f.err$4; err$5 = $f.err$5; i = $f.i; n = $f.n; name = $f.name; p = $f.p; pv = $f.pv; pv$1 = $f.pv$1; s = $f.s; start = $f.start; text = $f.text; text$1 = $f.text$1; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ if (!($clone(val, reflect.Value).CanInterface())) { _v = false; $s = 3; continue s; }
+ _r$6 = $clone(val, reflect.Value).Type().Implements(marshalerAttrType); /* */ $s = 4; case 4: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _v = _r$6; case 3:
+ /* */ if (_v) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (_v) { */ case 1:
+ _r$7 = $clone(val, reflect.Value).Interface(); /* */ $s = 5; case 5: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _r$8 = $assertType(_r$7, MarshalerAttr).MarshalXMLAttr($clone(name, Name)); /* */ $s = 6; case 6: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _tuple = _r$8;
+ attr = $clone(_tuple[0], Attr);
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ if (!(attr.Name.Local === "")) {
+ start.Attr = $append(start.Attr, attr);
+ }
+ $s = -1; return $ifaceNil;
+ /* } */ case 2:
+ /* */ if ($clone(val, reflect.Value).CanAddr()) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if ($clone(val, reflect.Value).CanAddr()) { */ case 7:
+ pv = $clone(val, reflect.Value).Addr();
+ if (!($clone(pv, reflect.Value).CanInterface())) { _v$1 = false; $s = 11; continue s; }
+ _r$9 = $clone(pv, reflect.Value).Type().Implements(marshalerAttrType); /* */ $s = 12; case 12: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _v$1 = _r$9; case 11:
+ /* */ if (_v$1) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (_v$1) { */ case 9:
+ _r$10 = $clone(pv, reflect.Value).Interface(); /* */ $s = 13; case 13: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _r$11 = $assertType(_r$10, MarshalerAttr).MarshalXMLAttr($clone(name, Name)); /* */ $s = 14; case 14: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _tuple$1 = _r$11;
+ attr$1 = $clone(_tuple$1[0], Attr);
+ err$1 = _tuple$1[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ if (!(attr$1.Name.Local === "")) {
+ start.Attr = $append(start.Attr, attr$1);
+ }
+ $s = -1; return $ifaceNil;
+ /* } */ case 10:
+ /* } */ case 8:
+ if (!($clone(val, reflect.Value).CanInterface())) { _v$2 = false; $s = 17; continue s; }
+ _r$12 = $clone(val, reflect.Value).Type().Implements(textMarshalerType); /* */ $s = 18; case 18: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _v$2 = _r$12; case 17:
+ /* */ if (_v$2) { $s = 15; continue; }
+ /* */ $s = 16; continue;
+ /* if (_v$2) { */ case 15:
+ _r$13 = $clone(val, reflect.Value).Interface(); /* */ $s = 19; case 19: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _r$14 = $assertType(_r$13, encoding.TextMarshaler).MarshalText(); /* */ $s = 20; case 20: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ _tuple$2 = _r$14;
+ text = _tuple$2[0];
+ err$2 = _tuple$2[1];
+ if (!($interfaceIsEqual(err$2, $ifaceNil))) {
+ $s = -1; return err$2;
+ }
+ start.Attr = $append(start.Attr, new Attr.ptr($clone(name, Name), ($bytesToString(text))));
+ $s = -1; return $ifaceNil;
+ /* } */ case 16:
+ /* */ if ($clone(val, reflect.Value).CanAddr()) { $s = 21; continue; }
+ /* */ $s = 22; continue;
+ /* if ($clone(val, reflect.Value).CanAddr()) { */ case 21:
+ pv$1 = $clone(val, reflect.Value).Addr();
+ if (!($clone(pv$1, reflect.Value).CanInterface())) { _v$3 = false; $s = 25; continue s; }
+ _r$15 = $clone(pv$1, reflect.Value).Type().Implements(textMarshalerType); /* */ $s = 26; case 26: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ _v$3 = _r$15; case 25:
+ /* */ if (_v$3) { $s = 23; continue; }
+ /* */ $s = 24; continue;
+ /* if (_v$3) { */ case 23:
+ _r$16 = $clone(pv$1, reflect.Value).Interface(); /* */ $s = 27; case 27: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ _r$17 = $assertType(_r$16, encoding.TextMarshaler).MarshalText(); /* */ $s = 28; case 28: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ _tuple$3 = _r$17;
+ text$1 = _tuple$3[0];
+ err$3 = _tuple$3[1];
+ if (!($interfaceIsEqual(err$3, $ifaceNil))) {
+ $s = -1; return err$3;
+ }
+ start.Attr = $append(start.Attr, new Attr.ptr($clone(name, Name), ($bytesToString(text$1))));
+ $s = -1; return $ifaceNil;
+ /* } */ case 24:
+ /* } */ case 22:
+ _1 = $clone(val, reflect.Value).Kind();
+ /* */ if ((_1 === (22)) || (_1 === (20))) { $s = 30; continue; }
+ /* */ $s = 31; continue;
+ /* if ((_1 === (22)) || (_1 === (20))) { */ case 30:
+ if ($clone(val, reflect.Value).IsNil()) {
+ $s = -1; return $ifaceNil;
+ }
+ _r$18 = $clone(val, reflect.Value).Elem(); /* */ $s = 32; case 32: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ val = _r$18;
+ /* } */ case 31:
+ case 29:
+ if (!($clone(val, reflect.Value).Kind() === 23)) { _v$4 = false; $s = 35; continue s; }
+ _r$19 = $clone(val, reflect.Value).Type().Elem(); /* */ $s = 36; case 36: if($c) { $c = false; _r$19 = _r$19.$blk(); } if (_r$19 && _r$19.$blk !== undefined) { break s; }
+ _r$20 = _r$19.Kind(); /* */ $s = 37; case 37: if($c) { $c = false; _r$20 = _r$20.$blk(); } if (_r$20 && _r$20.$blk !== undefined) { break s; }
+ _v$4 = !((_r$20 === 8)); case 35:
+ /* */ if (_v$4) { $s = 33; continue; }
+ /* */ $s = 34; continue;
+ /* if (_v$4) { */ case 33:
+ n = $clone(val, reflect.Value).Len();
+ i = 0;
+ /* while (true) { */ case 38:
+ /* if (!(i < n)) { break; } */ if(!(i < n)) { $s = 39; continue; }
+ _arg = start;
+ _arg$1 = $clone(name, Name);
+ _r$21 = $clone(val, reflect.Value).Index(i); /* */ $s = 40; case 40: if($c) { $c = false; _r$21 = _r$21.$blk(); } if (_r$21 && _r$21.$blk !== undefined) { break s; }
+ _arg$2 = $clone(_r$21, reflect.Value);
+ _r$22 = p.marshalAttr(_arg, _arg$1, _arg$2); /* */ $s = 41; case 41: if($c) { $c = false; _r$22 = _r$22.$blk(); } if (_r$22 && _r$22.$blk !== undefined) { break s; }
+ err$4 = _r$22;
+ if (!($interfaceIsEqual(err$4, $ifaceNil))) {
+ $s = -1; return err$4;
+ }
+ i = i + (1) >> 0;
+ /* } */ $s = 38; continue; case 39:
+ $s = -1; return $ifaceNil;
+ /* } */ case 34:
+ /* */ if ($interfaceIsEqual($clone(val, reflect.Value).Type(), attrType)) { $s = 42; continue; }
+ /* */ $s = 43; continue;
+ /* if ($interfaceIsEqual($clone(val, reflect.Value).Type(), attrType)) { */ case 42:
+ _r$23 = $clone(val, reflect.Value).Interface(); /* */ $s = 44; case 44: if($c) { $c = false; _r$23 = _r$23.$blk(); } if (_r$23 && _r$23.$blk !== undefined) { break s; }
+ start.Attr = $append(start.Attr, $assertType(_r$23, Attr));
+ $s = -1; return $ifaceNil;
+ /* } */ case 43:
+ _r$24 = p.marshalSimple($clone(val, reflect.Value).Type(), $clone(val, reflect.Value)); /* */ $s = 45; case 45: if($c) { $c = false; _r$24 = _r$24.$blk(); } if (_r$24 && _r$24.$blk !== undefined) { break s; }
+ _tuple$4 = _r$24;
+ s = _tuple$4[0];
+ b = _tuple$4[1];
+ err$5 = _tuple$4[2];
+ if (!($interfaceIsEqual(err$5, $ifaceNil))) {
+ $s = -1; return err$5;
+ }
+ if (!(b === sliceType.nil)) {
+ s = ($bytesToString(b));
+ }
+ start.Attr = $append(start.Attr, new Attr.ptr($clone(name, Name), s));
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: printer.ptr.prototype.marshalAttr }; } $f.$ptr = $ptr; $f._1 = _1; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$19 = _r$19; $f._r$20 = _r$20; $f._r$21 = _r$21; $f._r$22 = _r$22; $f._r$23 = _r$23; $f._r$24 = _r$24; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f._v = _v; $f._v$1 = _v$1; $f._v$2 = _v$2; $f._v$3 = _v$3; $f._v$4 = _v$4; $f.attr = attr; $f.attr$1 = attr$1; $f.b = b; $f.err = err; $f.err$1 = err$1; $f.err$2 = err$2; $f.err$3 = err$3; $f.err$4 = err$4; $f.err$5 = err$5; $f.i = i; $f.n = n; $f.name = name; $f.p = p; $f.pv = pv; $f.pv$1 = pv$1; $f.s = s; $f.start = start; $f.text = text; $f.text$1 = text$1; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ printer.prototype.marshalAttr = function(start, name, val) { return this.$val.marshalAttr(start, name, val); };
+ defaultStart = function(typ, finfo, startTemplate) {
+ var $ptr, _r$6, _r$7, _r$8, _r$9, finfo, start, startTemplate, typ, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; finfo = $f.finfo; start = $f.start; startTemplate = $f.startTemplate; typ = $f.typ; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ start = new StartElement.ptr(new Name.ptr("", ""), sliceType$6.nil);
+ /* */ if (!(startTemplate === ptrType$9.nil)) { $s = 1; continue; }
+ /* */ if (!(finfo === ptrType$8.nil) && !(finfo.name === "")) { $s = 2; continue; }
+ _r$6 = typ.Name(); /* */ $s = 6; case 6: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ /* */ if (!(_r$6 === "")) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!(startTemplate === ptrType$9.nil)) { */ case 1:
+ Name.copy(start.Name, startTemplate.Name);
+ start.Attr = $appendSlice(start.Attr, startTemplate.Attr);
+ $s = 5; continue;
+ /* } else if (!(finfo === ptrType$8.nil) && !(finfo.name === "")) { */ case 2:
+ start.Name.Local = finfo.name;
+ start.Name.Space = finfo.xmlns;
+ $s = 5; continue;
+ /* } else if (!(_r$6 === "")) { */ case 3:
+ _r$7 = typ.Name(); /* */ $s = 7; case 7: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ start.Name.Local = _r$7;
+ $s = 5; continue;
+ /* } else { */ case 4:
+ _r$8 = typ.Elem(); /* */ $s = 8; case 8: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _r$9 = _r$8.Name(); /* */ $s = 9; case 9: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ start.Name.Local = _r$9;
+ /* } */ case 5:
+ $s = -1; return start;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: defaultStart }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f.finfo = finfo; $f.start = start; $f.startTemplate = startTemplate; $f.typ = typ; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ printer.ptr.prototype.marshalInterface = function(val, start) {
+ var $ptr, _arg, _arg$1, _r$6, _r$7, _r$8, err, n, p, start, val, x$2, x$3, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; err = $f.err; n = $f.n; p = $f.p; start = $f.start; val = $f.val; x$2 = $f.x$2; x$3 = $f.x$3; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ p.tags = $append(p.tags, new Name.ptr("", ""));
+ n = p.tags.$length;
+ _r$6 = val.MarshalXML(p.encoder, $clone(start, StartElement)); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ err = _r$6;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ /* */ if (p.tags.$length > n) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (p.tags.$length > n) { */ case 2:
+ _r$7 = receiverType(val); /* */ $s = 4; case 4: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _arg = new $String(_r$7);
+ _arg$1 = new $String((x$2 = p.tags, x$3 = p.tags.$length - 1 >> 0, ((x$3 < 0 || x$3 >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + x$3])).Local);
+ _r$8 = fmt.Errorf("xml: %s.MarshalXML wrote invalid XML: <%s> not closed", new sliceType$5([_arg, _arg$1])); /* */ $s = 5; case 5: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $s = -1; return _r$8;
+ /* } */ case 3:
+ p.tags = $subslice(p.tags, 0, (n - 1 >> 0));
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: printer.ptr.prototype.marshalInterface }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f.err = err; $f.n = n; $f.p = p; $f.start = start; $f.val = val; $f.x$2 = x$2; $f.x$3 = x$3; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ printer.prototype.marshalInterface = function(val, start) { return this.$val.marshalInterface(val, start); };
+ printer.ptr.prototype.marshalTextInterface = function(val, start) {
+ var $ptr, _r$6, _r$7, _r$8, _r$9, _tuple, err, err$1, p, start, text, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tuple = $f._tuple; err = $f.err; err$1 = $f.err$1; p = $f.p; start = $f.start; text = $f.text; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ start = [start];
+ p = this;
+ _r$6 = p.writeStart(start[0]); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ err = _r$6;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ _r$7 = val.MarshalText(); /* */ $s = 2; case 2: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _tuple = _r$7;
+ text = _tuple[0];
+ err$1 = _tuple[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ _r$8 = EscapeText(p, text); /* */ $s = 3; case 3: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _r$8;
+ _r$9 = p.writeEnd($clone(start[0].Name, Name)); /* */ $s = 4; case 4: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ $s = -1; return _r$9;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: printer.ptr.prototype.marshalTextInterface }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tuple = _tuple; $f.err = err; $f.err$1 = err$1; $f.p = p; $f.start = start; $f.text = text; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ printer.prototype.marshalTextInterface = function(val, start) { return this.$val.marshalTextInterface(val, start); };
+ printer.ptr.prototype.writeStart = function(start) {
+ var $ptr, _i, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$6, _r$7, _r$8, _r$9, _ref, attr, name, p, start, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _ref = $f._ref; attr = $f.attr; name = $f.name; p = $f.p; start = $f.start; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ /* */ if (start.Name.Local === "") { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (start.Name.Local === "") { */ case 1:
+ _r$6 = fmt.Errorf("xml: start tag with no name", new sliceType$5([])); /* */ $s = 3; case 3: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return _r$6;
+ /* } */ case 2:
+ p.tags = $append(p.tags, start.Name);
+ p.markPrefix();
+ $r = p.writeIndent(1); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$7 = p.Writer.WriteByte(60); /* */ $s = 5; case 5: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _r$7;
+ _r$8 = p.Writer.WriteString(start.Name.Local); /* */ $s = 6; case 6: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _r$8;
+ /* */ if (!(start.Name.Space === "")) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (!(start.Name.Space === "")) { */ case 7:
+ _r$9 = p.Writer.WriteString(" xmlns=\""); /* */ $s = 9; case 9: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _r$9;
+ $r = p.EscapeString(start.Name.Space); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$10 = p.Writer.WriteByte(34); /* */ $s = 11; case 11: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _r$10;
+ /* } */ case 8:
+ _ref = start.Attr;
+ _i = 0;
+ /* while (true) { */ case 12:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 13; continue; }
+ attr = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), Attr);
+ name = $clone(attr.Name, Name);
+ /* */ if (name.Local === "") { $s = 14; continue; }
+ /* */ $s = 15; continue;
+ /* if (name.Local === "") { */ case 14:
+ _i++;
+ /* continue; */ $s = 12; continue;
+ /* } */ case 15:
+ _r$11 = p.Writer.WriteByte(32); /* */ $s = 16; case 16: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _r$11;
+ /* */ if (!(name.Space === "")) { $s = 17; continue; }
+ /* */ $s = 18; continue;
+ /* if (!(name.Space === "")) { */ case 17:
+ _r$12 = p.createAttrPrefix(name.Space); /* */ $s = 19; case 19: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _r$13 = p.Writer.WriteString(_r$12); /* */ $s = 20; case 20: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _r$13;
+ _r$14 = p.Writer.WriteByte(58); /* */ $s = 21; case 21: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ _r$14;
+ /* } */ case 18:
+ _r$15 = p.Writer.WriteString(name.Local); /* */ $s = 22; case 22: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ _r$15;
+ _r$16 = p.Writer.WriteString("=\""); /* */ $s = 23; case 23: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ _r$16;
+ $r = p.EscapeString(attr.Value); /* */ $s = 24; case 24: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$17 = p.Writer.WriteByte(34); /* */ $s = 25; case 25: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ _r$17;
+ _i++;
+ /* } */ $s = 12; continue; case 13:
+ _r$18 = p.Writer.WriteByte(62); /* */ $s = 26; case 26: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ _r$18;
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: printer.ptr.prototype.writeStart }; } $f.$ptr = $ptr; $f._i = _i; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._ref = _ref; $f.attr = attr; $f.name = name; $f.p = p; $f.start = start; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ printer.prototype.writeStart = function(start) { return this.$val.writeStart(start); };
+ printer.ptr.prototype.writeEnd = function(name) {
+ var $ptr, _r$10, _r$11, _r$12, _r$13, _r$6, _r$7, _r$8, _r$9, name, p, top, x$2, x$3, x$4, x$5, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; name = $f.name; p = $f.p; top = $f.top; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ /* */ if (name.Local === "") { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (name.Local === "") { */ case 1:
+ _r$6 = fmt.Errorf("xml: end tag with no name", new sliceType$5([])); /* */ $s = 3; case 3: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return _r$6;
+ /* } */ case 2:
+ /* */ if ((p.tags.$length === 0) || (x$2 = p.tags, x$3 = p.tags.$length - 1 >> 0, ((x$3 < 0 || x$3 >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + x$3])).Local === "") { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if ((p.tags.$length === 0) || (x$2 = p.tags, x$3 = p.tags.$length - 1 >> 0, ((x$3 < 0 || x$3 >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + x$3])).Local === "") { */ case 4:
+ _r$7 = fmt.Errorf("xml: end tag </%s> without start tag", new sliceType$5([new $String(name.Local)])); /* */ $s = 6; case 6: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $s = -1; return _r$7;
+ /* } */ case 5:
+ top = $clone((x$4 = p.tags, x$5 = p.tags.$length - 1 >> 0, ((x$5 < 0 || x$5 >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + x$5])), Name);
+ /* */ if (!($equal(top, name, Name))) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (!($equal(top, name, Name))) { */ case 7:
+ /* */ if (!(top.Local === name.Local)) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (!(top.Local === name.Local)) { */ case 9:
+ _r$8 = fmt.Errorf("xml: end tag </%s> does not match start tag <%s>", new sliceType$5([new $String(name.Local), new $String(top.Local)])); /* */ $s = 11; case 11: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $s = -1; return _r$8;
+ /* } */ case 10:
+ _r$9 = fmt.Errorf("xml: end tag </%s> in namespace %s does not match start tag <%s> in namespace %s", new sliceType$5([new $String(name.Local), new $String(name.Space), new $String(top.Local), new $String(top.Space)])); /* */ $s = 12; case 12: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ $s = -1; return _r$9;
+ /* } */ case 8:
+ p.tags = $subslice(p.tags, 0, (p.tags.$length - 1 >> 0));
+ $r = p.writeIndent(-1); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$10 = p.Writer.WriteByte(60); /* */ $s = 14; case 14: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _r$10;
+ _r$11 = p.Writer.WriteByte(47); /* */ $s = 15; case 15: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _r$11;
+ _r$12 = p.Writer.WriteString(name.Local); /* */ $s = 16; case 16: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _r$12;
+ _r$13 = p.Writer.WriteByte(62); /* */ $s = 17; case 17: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _r$13;
+ p.popPrefix();
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: printer.ptr.prototype.writeEnd }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f.name = name; $f.p = p; $f.top = top; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ printer.prototype.writeEnd = function(name) { return this.$val.writeEnd(name); };
+ printer.ptr.prototype.marshalSimple = function(typ, val) {
+ var $ptr, _1, _arg, _arg$1, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$6, _r$7, _r$8, _r$9, bytes$1, p, typ, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _arg = $f._arg; _arg$1 = $f._arg$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; bytes$1 = $f.bytes$1; p = $f.p; typ = $f.typ; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ _1 = $clone(val, reflect.Value).Kind();
+ /* */ if ((_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6))) { $s = 2; continue; }
+ /* */ if ((_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12))) { $s = 3; continue; }
+ /* */ if ((_1 === (13)) || (_1 === (14))) { $s = 4; continue; }
+ /* */ if (_1 === (24)) { $s = 5; continue; }
+ /* */ if (_1 === (1)) { $s = 6; continue; }
+ /* */ if (_1 === (17)) { $s = 7; continue; }
+ /* */ if (_1 === (23)) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if ((_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6))) { */ case 2:
+ $s = -1; return [strconv.FormatInt($clone(val, reflect.Value).Int(), 10), sliceType.nil, $ifaceNil];
+ /* } else if ((_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12))) { */ case 3:
+ $s = -1; return [strconv.FormatUint($clone(val, reflect.Value).Uint(), 10), sliceType.nil, $ifaceNil];
+ /* } else if ((_1 === (13)) || (_1 === (14))) { */ case 4:
+ _arg = $clone(val, reflect.Value).Float();
+ _r$6 = $clone(val, reflect.Value).Type().Bits(); /* */ $s = 10; case 10: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _arg$1 = _r$6;
+ _r$7 = strconv.FormatFloat(_arg, 103, -1, _arg$1); /* */ $s = 11; case 11: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $s = -1; return [_r$7, sliceType.nil, $ifaceNil];
+ /* } else if (_1 === (24)) { */ case 5:
+ _r$8 = $clone(val, reflect.Value).String(); /* */ $s = 12; case 12: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $s = -1; return [_r$8, sliceType.nil, $ifaceNil];
+ /* } else if (_1 === (1)) { */ case 6:
+ $s = -1; return [strconv.FormatBool($clone(val, reflect.Value).Bool()), sliceType.nil, $ifaceNil];
+ /* } else if (_1 === (17)) { */ case 7:
+ _r$9 = typ.Elem(); /* */ $s = 15; case 15: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _r$10 = _r$9.Kind(); /* */ $s = 16; case 16: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ /* */ if (!((_r$10 === 8))) { $s = 13; continue; }
+ /* */ $s = 14; continue;
+ /* if (!((_r$10 === 8))) { */ case 13:
+ /* break; */ $s = 1; continue;
+ /* } */ case 14:
+ bytes$1 = sliceType.nil;
+ /* */ if ($clone(val, reflect.Value).CanAddr()) { $s = 17; continue; }
+ /* */ $s = 18; continue;
+ /* if ($clone(val, reflect.Value).CanAddr()) { */ case 17:
+ _r$11 = $clone(val, reflect.Value).Slice(0, $clone(val, reflect.Value).Len()); /* */ $s = 20; case 20: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _r$12 = $clone(_r$11, reflect.Value).Bytes(); /* */ $s = 21; case 21: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ bytes$1 = _r$12;
+ $s = 19; continue;
+ /* } else { */ case 18:
+ bytes$1 = $makeSlice(sliceType, $clone(val, reflect.Value).Len());
+ _r$13 = reflect.ValueOf(bytes$1); /* */ $s = 22; case 22: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _r$14 = reflect.Copy($clone(_r$13, reflect.Value), $clone(val, reflect.Value)); /* */ $s = 23; case 23: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ _r$14;
+ /* } */ case 19:
+ $s = -1; return ["", bytes$1, $ifaceNil];
+ /* } else if (_1 === (23)) { */ case 8:
+ _r$15 = typ.Elem(); /* */ $s = 26; case 26: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ _r$16 = _r$15.Kind(); /* */ $s = 27; case 27: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ /* */ if (!((_r$16 === 8))) { $s = 24; continue; }
+ /* */ $s = 25; continue;
+ /* if (!((_r$16 === 8))) { */ case 24:
+ /* break; */ $s = 1; continue;
+ /* } */ case 25:
+ _r$17 = $clone(val, reflect.Value).Bytes(); /* */ $s = 28; case 28: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ $s = -1; return ["", _r$17, $ifaceNil];
+ /* } */ case 9:
+ case 1:
+ $s = -1; return ["", sliceType.nil, new UnsupportedTypeError.ptr(typ)];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: printer.ptr.prototype.marshalSimple }; } $f.$ptr = $ptr; $f._1 = _1; $f._arg = _arg; $f._arg$1 = _arg$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f.bytes$1 = bytes$1; $f.p = p; $f.typ = typ; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ printer.prototype.marshalSimple = function(typ, val) { return this.$val.marshalSimple(typ, val); };
+ indirect = function(vf) {
+ var $ptr, _r$6, vf, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; vf = $f.vf; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* while (true) { */ case 1:
+ /* if (!(($clone(vf, reflect.Value).Kind() === 20) || ($clone(vf, reflect.Value).Kind() === 22))) { break; } */ if(!(($clone(vf, reflect.Value).Kind() === 20) || ($clone(vf, reflect.Value).Kind() === 22))) { $s = 2; continue; }
+ if ($clone(vf, reflect.Value).IsNil()) {
+ $s = -1; return vf;
+ }
+ _r$6 = $clone(vf, reflect.Value).Elem(); /* */ $s = 3; case 3: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ vf = _r$6;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return vf;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: indirect }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f.vf = vf; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ printer.ptr.prototype.marshalStruct = function(tinfo, val) {
+ var $ptr, _1, _2, _3, _arg, _arg$1, _arg$2, _arg$3, _arg$4, _arg$5, _arg$6, _i, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$19, _r$20, _r$21, _r$22, _r$23, _r$24, _r$25, _r$26, _r$27, _r$28, _r$29, _r$30, _r$31, _r$32, _r$33, _r$34, _r$35, _r$36, _r$37, _r$38, _r$39, _r$40, _r$41, _r$42, _r$43, _r$44, _r$45, _r$46, _r$47, _r$48, _r$6, _r$7, _r$8, _r$9, _ref, _ref$1, _tuple, _tuple$1, _tuple$2, _v, _v$1, _v$2, _v$3, b, dashDash, dashLast, data, data$1, elem, emit, err, err$1, err$10, err$11, err$12, err$13, err$14, err$2, err$3, err$4, err$5, err$6, err$7, err$8, err$9, finfo, i, iface, k, ok, p, pv, raw, raw$1, s, s$1, scratch, tinfo, val, vf, x$2, x$3, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _2 = $f._2; _3 = $f._3; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _arg$3 = $f._arg$3; _arg$4 = $f._arg$4; _arg$5 = $f._arg$5; _arg$6 = $f._arg$6; _i = $f._i; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$19 = $f._r$19; _r$20 = $f._r$20; _r$21 = $f._r$21; _r$22 = $f._r$22; _r$23 = $f._r$23; _r$24 = $f._r$24; _r$25 = $f._r$25; _r$26 = $f._r$26; _r$27 = $f._r$27; _r$28 = $f._r$28; _r$29 = $f._r$29; _r$30 = $f._r$30; _r$31 = $f._r$31; _r$32 = $f._r$32; _r$33 = $f._r$33; _r$34 = $f._r$34; _r$35 = $f._r$35; _r$36 = $f._r$36; _r$37 = $f._r$37; _r$38 = $f._r$38; _r$39 = $f._r$39; _r$40 = $f._r$40; _r$41 = $f._r$41; _r$42 = $f._r$42; _r$43 = $f._r$43; _r$44 = $f._r$44; _r$45 = $f._r$45; _r$46 = $f._r$46; _r$47 = $f._r$47; _r$48 = $f._r$48; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _ref = $f._ref; _ref$1 = $f._ref$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _v = $f._v; _v$1 = $f._v$1; _v$2 = $f._v$2; _v$3 = $f._v$3; b = $f.b; dashDash = $f.dashDash; dashLast = $f.dashLast; data = $f.data; data$1 = $f.data$1; elem = $f.elem; emit = $f.emit; err = $f.err; err$1 = $f.err$1; err$10 = $f.err$10; err$11 = $f.err$11; err$12 = $f.err$12; err$13 = $f.err$13; err$14 = $f.err$14; err$2 = $f.err$2; err$3 = $f.err$3; err$4 = $f.err$4; err$5 = $f.err$5; err$6 = $f.err$6; err$7 = $f.err$7; err$8 = $f.err$8; err$9 = $f.err$9; finfo = $f.finfo; i = $f.i; iface = $f.iface; k = $f.k; ok = $f.ok; p = $f.p; pv = $f.pv; raw = $f.raw; raw$1 = $f.raw$1; s = $f.s; s$1 = $f.s$1; scratch = $f.scratch; tinfo = $f.tinfo; val = $f.val; vf = $f.vf; x$2 = $f.x$2; x$3 = $f.x$3; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ s = new parentStack.ptr(p, sliceType$3.nil);
+ _ref = tinfo.fields;
+ _i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 2; continue; }
+ i = _i;
+ finfo = (x$2 = tinfo.fields, ((i < 0 || i >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + i]));
+ /* */ if (!(((finfo.flags & 2) === 0))) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!(((finfo.flags & 2) === 0))) { */ case 3:
+ _i++;
+ /* continue; */ $s = 1; continue;
+ /* } */ case 4:
+ _r$6 = finfo.value($clone(val, reflect.Value)); /* */ $s = 5; case 5: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ vf = _r$6;
+ _1 = finfo.flags & 127;
+ /* */ if ((_1 === (4)) || (_1 === (8))) { $s = 7; continue; }
+ /* */ if (_1 === (32)) { $s = 8; continue; }
+ /* */ if (_1 === (16)) { $s = 9; continue; }
+ /* */ if ((_1 === (1)) || (_1 === (65))) { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if ((_1 === (4)) || (_1 === (8))) { */ case 7:
+ emit = EscapeText;
+ if ((finfo.flags & 127) === 4) {
+ emit = emitCDATA;
+ }
+ _r$7 = s.trim(finfo.parents); /* */ $s = 12; case 12: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ err = _r$7;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ if (!($clone(vf, reflect.Value).CanInterface())) { _v = false; $s = 15; continue s; }
+ _r$8 = $clone(vf, reflect.Value).Type().Implements(textMarshalerType); /* */ $s = 16; case 16: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _v = _r$8; case 15:
+ /* */ if (_v) { $s = 13; continue; }
+ /* */ $s = 14; continue;
+ /* if (_v) { */ case 13:
+ _r$9 = $clone(vf, reflect.Value).Interface(); /* */ $s = 17; case 17: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _r$10 = $assertType(_r$9, encoding.TextMarshaler).MarshalText(); /* */ $s = 18; case 18: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _tuple = _r$10;
+ data = _tuple[0];
+ err$1 = _tuple[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ _r$11 = emit(p, data); /* */ $s = 19; case 19: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ err$2 = _r$11;
+ if (!($interfaceIsEqual(err$2, $ifaceNil))) {
+ $s = -1; return err$2;
+ }
+ _i++;
+ /* continue; */ $s = 1; continue;
+ /* } */ case 14:
+ /* */ if ($clone(vf, reflect.Value).CanAddr()) { $s = 20; continue; }
+ /* */ $s = 21; continue;
+ /* if ($clone(vf, reflect.Value).CanAddr()) { */ case 20:
+ pv = $clone(vf, reflect.Value).Addr();
+ if (!($clone(pv, reflect.Value).CanInterface())) { _v$1 = false; $s = 24; continue s; }
+ _r$12 = $clone(pv, reflect.Value).Type().Implements(textMarshalerType); /* */ $s = 25; case 25: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _v$1 = _r$12; case 24:
+ /* */ if (_v$1) { $s = 22; continue; }
+ /* */ $s = 23; continue;
+ /* if (_v$1) { */ case 22:
+ _r$13 = $clone(pv, reflect.Value).Interface(); /* */ $s = 26; case 26: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _r$14 = $assertType(_r$13, encoding.TextMarshaler).MarshalText(); /* */ $s = 27; case 27: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ _tuple$1 = _r$14;
+ data$1 = _tuple$1[0];
+ err$3 = _tuple$1[1];
+ if (!($interfaceIsEqual(err$3, $ifaceNil))) {
+ $s = -1; return err$3;
+ }
+ _r$15 = emit(p, data$1); /* */ $s = 28; case 28: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ err$4 = _r$15;
+ if (!($interfaceIsEqual(err$4, $ifaceNil))) {
+ $s = -1; return err$4;
+ }
+ _i++;
+ /* continue; */ $s = 1; continue;
+ /* } */ case 23:
+ /* } */ case 21:
+ scratch = arrayType.zero();
+ _r$16 = indirect($clone(vf, reflect.Value)); /* */ $s = 29; case 29: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ vf = _r$16;
+ _2 = $clone(vf, reflect.Value).Kind();
+ /* */ if ((_2 === (2)) || (_2 === (3)) || (_2 === (4)) || (_2 === (5)) || (_2 === (6))) { $s = 31; continue; }
+ /* */ if ((_2 === (7)) || (_2 === (8)) || (_2 === (9)) || (_2 === (10)) || (_2 === (11)) || (_2 === (12))) { $s = 32; continue; }
+ /* */ if ((_2 === (13)) || (_2 === (14))) { $s = 33; continue; }
+ /* */ if (_2 === (1)) { $s = 34; continue; }
+ /* */ if (_2 === (24)) { $s = 35; continue; }
+ /* */ if (_2 === (23)) { $s = 36; continue; }
+ /* */ $s = 37; continue;
+ /* if ((_2 === (2)) || (_2 === (3)) || (_2 === (4)) || (_2 === (5)) || (_2 === (6))) { */ case 31:
+ _r$17 = emit(p, strconv.AppendInt($subslice(new sliceType(scratch), 0, 0), $clone(vf, reflect.Value).Int(), 10)); /* */ $s = 38; case 38: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ err$5 = _r$17;
+ if (!($interfaceIsEqual(err$5, $ifaceNil))) {
+ $s = -1; return err$5;
+ }
+ $s = 37; continue;
+ /* } else if ((_2 === (7)) || (_2 === (8)) || (_2 === (9)) || (_2 === (10)) || (_2 === (11)) || (_2 === (12))) { */ case 32:
+ _r$18 = emit(p, strconv.AppendUint($subslice(new sliceType(scratch), 0, 0), $clone(vf, reflect.Value).Uint(), 10)); /* */ $s = 39; case 39: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ err$6 = _r$18;
+ if (!($interfaceIsEqual(err$6, $ifaceNil))) {
+ $s = -1; return err$6;
+ }
+ $s = 37; continue;
+ /* } else if ((_2 === (13)) || (_2 === (14))) { */ case 33:
+ _arg = p;
+ _arg$1 = $subslice(new sliceType(scratch), 0, 0);
+ _arg$2 = $clone(vf, reflect.Value).Float();
+ _r$19 = $clone(vf, reflect.Value).Type().Bits(); /* */ $s = 40; case 40: if($c) { $c = false; _r$19 = _r$19.$blk(); } if (_r$19 && _r$19.$blk !== undefined) { break s; }
+ _arg$3 = _r$19;
+ _r$20 = strconv.AppendFloat(_arg$1, _arg$2, 103, -1, _arg$3); /* */ $s = 41; case 41: if($c) { $c = false; _r$20 = _r$20.$blk(); } if (_r$20 && _r$20.$blk !== undefined) { break s; }
+ _arg$4 = _r$20;
+ _r$21 = emit(_arg, _arg$4); /* */ $s = 42; case 42: if($c) { $c = false; _r$21 = _r$21.$blk(); } if (_r$21 && _r$21.$blk !== undefined) { break s; }
+ err$7 = _r$21;
+ if (!($interfaceIsEqual(err$7, $ifaceNil))) {
+ $s = -1; return err$7;
+ }
+ $s = 37; continue;
+ /* } else if (_2 === (1)) { */ case 34:
+ _r$22 = emit(p, strconv.AppendBool($subslice(new sliceType(scratch), 0, 0), $clone(vf, reflect.Value).Bool())); /* */ $s = 43; case 43: if($c) { $c = false; _r$22 = _r$22.$blk(); } if (_r$22 && _r$22.$blk !== undefined) { break s; }
+ err$8 = _r$22;
+ if (!($interfaceIsEqual(err$8, $ifaceNil))) {
+ $s = -1; return err$8;
+ }
+ $s = 37; continue;
+ /* } else if (_2 === (24)) { */ case 35:
+ _arg$5 = p;
+ _r$23 = $clone(vf, reflect.Value).String(); /* */ $s = 44; case 44: if($c) { $c = false; _r$23 = _r$23.$blk(); } if (_r$23 && _r$23.$blk !== undefined) { break s; }
+ _arg$6 = (new sliceType($stringToBytes(_r$23)));
+ _r$24 = emit(_arg$5, _arg$6); /* */ $s = 45; case 45: if($c) { $c = false; _r$24 = _r$24.$blk(); } if (_r$24 && _r$24.$blk !== undefined) { break s; }
+ err$9 = _r$24;
+ if (!($interfaceIsEqual(err$9, $ifaceNil))) {
+ $s = -1; return err$9;
+ }
+ $s = 37; continue;
+ /* } else if (_2 === (23)) { */ case 36:
+ _r$25 = $clone(vf, reflect.Value).Interface(); /* */ $s = 46; case 46: if($c) { $c = false; _r$25 = _r$25.$blk(); } if (_r$25 && _r$25.$blk !== undefined) { break s; }
+ _tuple$2 = $assertType(_r$25, sliceType, true);
+ elem = _tuple$2[0];
+ ok = _tuple$2[1];
+ /* */ if (ok) { $s = 47; continue; }
+ /* */ $s = 48; continue;
+ /* if (ok) { */ case 47:
+ _r$26 = emit(p, elem); /* */ $s = 49; case 49: if($c) { $c = false; _r$26 = _r$26.$blk(); } if (_r$26 && _r$26.$blk !== undefined) { break s; }
+ err$10 = _r$26;
+ if (!($interfaceIsEqual(err$10, $ifaceNil))) {
+ $s = -1; return err$10;
+ }
+ /* } */ case 48:
+ /* } */ case 37:
+ case 30:
+ _i++;
+ /* continue; */ $s = 1; continue;
+ $s = 11; continue;
+ /* } else if (_1 === (32)) { */ case 8:
+ _r$27 = s.trim(finfo.parents); /* */ $s = 50; case 50: if($c) { $c = false; _r$27 = _r$27.$blk(); } if (_r$27 && _r$27.$blk !== undefined) { break s; }
+ err$11 = _r$27;
+ if (!($interfaceIsEqual(err$11, $ifaceNil))) {
+ $s = -1; return err$11;
+ }
+ _r$28 = indirect($clone(vf, reflect.Value)); /* */ $s = 51; case 51: if($c) { $c = false; _r$28 = _r$28.$blk(); } if (_r$28 && _r$28.$blk !== undefined) { break s; }
+ vf = _r$28;
+ k = $clone(vf, reflect.Value).Kind();
+ if (k === 24) { _v$2 = true; $s = 54; continue s; }
+ if (!(k === 23)) { _v$3 = false; $s = 55; continue s; }
+ _r$29 = $clone(vf, reflect.Value).Type().Elem(); /* */ $s = 56; case 56: if($c) { $c = false; _r$29 = _r$29.$blk(); } if (_r$29 && _r$29.$blk !== undefined) { break s; }
+ _r$30 = _r$29.Kind(); /* */ $s = 57; case 57: if($c) { $c = false; _r$30 = _r$30.$blk(); } if (_r$30 && _r$30.$blk !== undefined) { break s; }
+ _v$3 = _r$30 === 8; case 55:
+ _v$2 = _v$3; case 54:
+ /* */ if (!(_v$2)) { $s = 52; continue; }
+ /* */ $s = 53; continue;
+ /* if (!(_v$2)) { */ case 52:
+ _r$31 = fmt.Errorf("xml: bad type for comment field of %s", new sliceType$5([$clone(val, reflect.Value).Type()])); /* */ $s = 58; case 58: if($c) { $c = false; _r$31 = _r$31.$blk(); } if (_r$31 && _r$31.$blk !== undefined) { break s; }
+ $s = -1; return _r$31;
+ /* } */ case 53:
+ /* */ if ($clone(vf, reflect.Value).Len() === 0) { $s = 59; continue; }
+ /* */ $s = 60; continue;
+ /* if ($clone(vf, reflect.Value).Len() === 0) { */ case 59:
+ _i++;
+ /* continue; */ $s = 1; continue;
+ /* } */ case 60:
+ $r = p.writeIndent(0); /* */ $s = 61; case 61: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$32 = p.Writer.WriteString("<!--"); /* */ $s = 62; case 62: if($c) { $c = false; _r$32 = _r$32.$blk(); } if (_r$32 && _r$32.$blk !== undefined) { break s; }
+ _r$32;
+ dashDash = false;
+ dashLast = false;
+ _3 = k;
+ /* */ if (_3 === (24)) { $s = 64; continue; }
+ /* */ if (_3 === (23)) { $s = 65; continue; }
+ /* */ $s = 66; continue;
+ /* if (_3 === (24)) { */ case 64:
+ _r$33 = $clone(vf, reflect.Value).String(); /* */ $s = 68; case 68: if($c) { $c = false; _r$33 = _r$33.$blk(); } if (_r$33 && _r$33.$blk !== undefined) { break s; }
+ s$1 = _r$33;
+ dashDash = strings.Contains(s$1, "--");
+ dashLast = s$1.charCodeAt((s$1.length - 1 >> 0)) === 45;
+ /* */ if (!dashDash) { $s = 69; continue; }
+ /* */ $s = 70; continue;
+ /* if (!dashDash) { */ case 69:
+ _r$34 = p.Writer.WriteString(s$1); /* */ $s = 71; case 71: if($c) { $c = false; _r$34 = _r$34.$blk(); } if (_r$34 && _r$34.$blk !== undefined) { break s; }
+ _r$34;
+ /* } */ case 70:
+ $s = 67; continue;
+ /* } else if (_3 === (23)) { */ case 65:
+ _r$35 = $clone(vf, reflect.Value).Bytes(); /* */ $s = 72; case 72: if($c) { $c = false; _r$35 = _r$35.$blk(); } if (_r$35 && _r$35.$blk !== undefined) { break s; }
+ b = _r$35;
+ dashDash = bytes.Contains(b, ddBytes);
+ dashLast = (x$3 = b.$length - 1 >> 0, ((x$3 < 0 || x$3 >= b.$length) ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + x$3])) === 45;
+ /* */ if (!dashDash) { $s = 73; continue; }
+ /* */ $s = 74; continue;
+ /* if (!dashDash) { */ case 73:
+ _r$36 = p.Writer.Write(b); /* */ $s = 75; case 75: if($c) { $c = false; _r$36 = _r$36.$blk(); } if (_r$36 && _r$36.$blk !== undefined) { break s; }
+ _r$36;
+ /* } */ case 74:
+ $s = 67; continue;
+ /* } else { */ case 66:
+ $panic(new $String("can't happen"));
+ /* } */ case 67:
+ case 63:
+ /* */ if (dashDash) { $s = 76; continue; }
+ /* */ $s = 77; continue;
+ /* if (dashDash) { */ case 76:
+ _r$37 = fmt.Errorf("xml: comments must not contain \"--\"", new sliceType$5([])); /* */ $s = 78; case 78: if($c) { $c = false; _r$37 = _r$37.$blk(); } if (_r$37 && _r$37.$blk !== undefined) { break s; }
+ $s = -1; return _r$37;
+ /* } */ case 77:
+ /* */ if (dashLast) { $s = 79; continue; }
+ /* */ $s = 80; continue;
+ /* if (dashLast) { */ case 79:
+ _r$38 = p.Writer.WriteByte(32); /* */ $s = 81; case 81: if($c) { $c = false; _r$38 = _r$38.$blk(); } if (_r$38 && _r$38.$blk !== undefined) { break s; }
+ _r$38;
+ /* } */ case 80:
+ _r$39 = p.Writer.WriteString("-->"); /* */ $s = 82; case 82: if($c) { $c = false; _r$39 = _r$39.$blk(); } if (_r$39 && _r$39.$blk !== undefined) { break s; }
+ _r$39;
+ _i++;
+ /* continue; */ $s = 1; continue;
+ $s = 11; continue;
+ /* } else if (_1 === (16)) { */ case 9:
+ _r$40 = indirect($clone(vf, reflect.Value)); /* */ $s = 83; case 83: if($c) { $c = false; _r$40 = _r$40.$blk(); } if (_r$40 && _r$40.$blk !== undefined) { break s; }
+ vf = _r$40;
+ _r$41 = $clone(vf, reflect.Value).Interface(); /* */ $s = 84; case 84: if($c) { $c = false; _r$41 = _r$41.$blk(); } if (_r$41 && _r$41.$blk !== undefined) { break s; }
+ iface = _r$41;
+ _ref$1 = iface;
+ /* */ if ($assertType(_ref$1, sliceType, true)[1]) { $s = 85; continue; }
+ /* */ if ($assertType(_ref$1, $String, true)[1]) { $s = 86; continue; }
+ /* */ $s = 87; continue;
+ /* if ($assertType(_ref$1, sliceType, true)[1]) { */ case 85:
+ raw = _ref$1.$val;
+ _r$42 = p.Writer.Write(raw); /* */ $s = 88; case 88: if($c) { $c = false; _r$42 = _r$42.$blk(); } if (_r$42 && _r$42.$blk !== undefined) { break s; }
+ _r$42;
+ _i++;
+ /* continue; */ $s = 1; continue;
+ $s = 87; continue;
+ /* } else if ($assertType(_ref$1, $String, true)[1]) { */ case 86:
+ raw$1 = _ref$1.$val;
+ _r$43 = p.Writer.WriteString(raw$1); /* */ $s = 89; case 89: if($c) { $c = false; _r$43 = _r$43.$blk(); } if (_r$43 && _r$43.$blk !== undefined) { break s; }
+ _r$43;
+ _i++;
+ /* continue; */ $s = 1; continue;
+ /* } */ case 87:
+ $s = 11; continue;
+ /* } else if ((_1 === (1)) || (_1 === (65))) { */ case 10:
+ _r$44 = s.trim(finfo.parents); /* */ $s = 90; case 90: if($c) { $c = false; _r$44 = _r$44.$blk(); } if (_r$44 && _r$44.$blk !== undefined) { break s; }
+ err$12 = _r$44;
+ if (!($interfaceIsEqual(err$12, $ifaceNil))) {
+ $s = -1; return err$12;
+ }
+ /* */ if (finfo.parents.$length > s.stack.$length) { $s = 91; continue; }
+ /* */ $s = 92; continue;
+ /* if (finfo.parents.$length > s.stack.$length) { */ case 91:
+ /* */ if (!(($clone(vf, reflect.Value).Kind() === 22)) && !(($clone(vf, reflect.Value).Kind() === 20)) || !$clone(vf, reflect.Value).IsNil()) { $s = 93; continue; }
+ /* */ $s = 94; continue;
+ /* if (!(($clone(vf, reflect.Value).Kind() === 22)) && !(($clone(vf, reflect.Value).Kind() === 20)) || !$clone(vf, reflect.Value).IsNil()) { */ case 93:
+ _r$45 = s.push($subslice(finfo.parents, s.stack.$length)); /* */ $s = 95; case 95: if($c) { $c = false; _r$45 = _r$45.$blk(); } if (_r$45 && _r$45.$blk !== undefined) { break s; }
+ err$13 = _r$45;
+ if (!($interfaceIsEqual(err$13, $ifaceNil))) {
+ $s = -1; return err$13;
+ }
+ /* } */ case 94:
+ /* } */ case 92:
+ /* } */ case 11:
+ case 6:
+ _r$46 = p.marshalValue($clone(vf, reflect.Value), finfo, ptrType$9.nil); /* */ $s = 96; case 96: if($c) { $c = false; _r$46 = _r$46.$blk(); } if (_r$46 && _r$46.$blk !== undefined) { break s; }
+ err$14 = _r$46;
+ if (!($interfaceIsEqual(err$14, $ifaceNil))) {
+ $s = -1; return err$14;
+ }
+ _i++;
+ /* } */ $s = 1; continue; case 2:
+ _r$47 = s.trim(sliceType$3.nil); /* */ $s = 97; case 97: if($c) { $c = false; _r$47 = _r$47.$blk(); } if (_r$47 && _r$47.$blk !== undefined) { break s; }
+ _r$47;
+ _r$48 = p.cachedWriteError(); /* */ $s = 98; case 98: if($c) { $c = false; _r$48 = _r$48.$blk(); } if (_r$48 && _r$48.$blk !== undefined) { break s; }
+ $s = -1; return _r$48;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: printer.ptr.prototype.marshalStruct }; } $f.$ptr = $ptr; $f._1 = _1; $f._2 = _2; $f._3 = _3; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._arg$3 = _arg$3; $f._arg$4 = _arg$4; $f._arg$5 = _arg$5; $f._arg$6 = _arg$6; $f._i = _i; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$19 = _r$19; $f._r$20 = _r$20; $f._r$21 = _r$21; $f._r$22 = _r$22; $f._r$23 = _r$23; $f._r$24 = _r$24; $f._r$25 = _r$25; $f._r$26 = _r$26; $f._r$27 = _r$27; $f._r$28 = _r$28; $f._r$29 = _r$29; $f._r$30 = _r$30; $f._r$31 = _r$31; $f._r$32 = _r$32; $f._r$33 = _r$33; $f._r$34 = _r$34; $f._r$35 = _r$35; $f._r$36 = _r$36; $f._r$37 = _r$37; $f._r$38 = _r$38; $f._r$39 = _r$39; $f._r$40 = _r$40; $f._r$41 = _r$41; $f._r$42 = _r$42; $f._r$43 = _r$43; $f._r$44 = _r$44; $f._r$45 = _r$45; $f._r$46 = _r$46; $f._r$47 = _r$47; $f._r$48 = _r$48; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._ref = _ref; $f._ref$1 = _ref$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._v = _v; $f._v$1 = _v$1; $f._v$2 = _v$2; $f._v$3 = _v$3; $f.b = b; $f.dashDash = dashDash; $f.dashLast = dashLast; $f.data = data; $f.data$1 = data$1; $f.elem = elem; $f.emit = emit; $f.err = err; $f.err$1 = err$1; $f.err$10 = err$10; $f.err$11 = err$11; $f.err$12 = err$12; $f.err$13 = err$13; $f.err$14 = err$14; $f.err$2 = err$2; $f.err$3 = err$3; $f.err$4 = err$4; $f.err$5 = err$5; $f.err$6 = err$6; $f.err$7 = err$7; $f.err$8 = err$8; $f.err$9 = err$9; $f.finfo = finfo; $f.i = i; $f.iface = iface; $f.k = k; $f.ok = ok; $f.p = p; $f.pv = pv; $f.raw = raw; $f.raw$1 = raw$1; $f.s = s; $f.s$1 = s$1; $f.scratch = scratch; $f.tinfo = tinfo; $f.val = val; $f.vf = vf; $f.x$2 = x$2; $f.x$3 = x$3; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ printer.prototype.marshalStruct = function(tinfo, val) { return this.$val.marshalStruct(tinfo, val); };
+ printer.ptr.prototype.cachedWriteError = function() {
+ var $ptr, _r$6, _tuple, err, p, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; _tuple = $f._tuple; err = $f.err; p = $f.p; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ _r$6 = p.Writer.Write(sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple = _r$6;
+ err = _tuple[1];
+ $s = -1; return err;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: printer.ptr.prototype.cachedWriteError }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f._tuple = _tuple; $f.err = err; $f.p = p; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ printer.prototype.cachedWriteError = function() { return this.$val.cachedWriteError(); };
+ printer.ptr.prototype.writeIndent = function(depthDelta) {
+ var $ptr, _r$6, _r$7, _r$8, depthDelta, i, p, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; depthDelta = $f.depthDelta; i = $f.i; p = $f.p; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ if ((p.prefix.length === 0) && (p.indent.length === 0)) {
+ $s = -1; return;
+ }
+ if (depthDelta < 0) {
+ p.depth = p.depth - (1) >> 0;
+ if (p.indentedIn) {
+ p.indentedIn = false;
+ $s = -1; return;
+ }
+ p.indentedIn = false;
+ }
+ /* */ if (p.putNewline) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (p.putNewline) { */ case 1:
+ _r$6 = p.Writer.WriteByte(10); /* */ $s = 4; case 4: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$6;
+ $s = 3; continue;
+ /* } else { */ case 2:
+ p.putNewline = true;
+ /* } */ case 3:
+ /* */ if (p.prefix.length > 0) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (p.prefix.length > 0) { */ case 5:
+ _r$7 = p.Writer.WriteString(p.prefix); /* */ $s = 7; case 7: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _r$7;
+ /* } */ case 6:
+ /* */ if (p.indent.length > 0) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if (p.indent.length > 0) { */ case 8:
+ i = 0;
+ /* while (true) { */ case 10:
+ /* if (!(i < p.depth)) { break; } */ if(!(i < p.depth)) { $s = 11; continue; }
+ _r$8 = p.Writer.WriteString(p.indent); /* */ $s = 12; case 12: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _r$8;
+ i = i + (1) >> 0;
+ /* } */ $s = 10; continue; case 11:
+ /* } */ case 9:
+ if (depthDelta > 0) {
+ p.depth = p.depth + (1) >> 0;
+ p.indentedIn = true;
+ }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: printer.ptr.prototype.writeIndent }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f.depthDelta = depthDelta; $f.i = i; $f.p = p; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ printer.prototype.writeIndent = function(depthDelta) { return this.$val.writeIndent(depthDelta); };
+ parentStack.ptr.prototype.trim = function(parents) {
+ var $ptr, _r$6, err, i, parents, s, split, x$2, x$3, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; err = $f.err; i = $f.i; parents = $f.parents; s = $f.s; split = $f.split; x$2 = $f.x$2; x$3 = $f.x$3; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ s = this;
+ split = 0;
+ while (true) {
+ if (!(split < parents.$length && split < s.stack.$length)) { break; }
+ if (!(((split < 0 || split >= parents.$length) ? ($throwRuntimeError("index out of range"), undefined) : parents.$array[parents.$offset + split]) === (x$2 = s.stack, ((split < 0 || split >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + split])))) {
+ break;
+ }
+ split = split + (1) >> 0;
+ }
+ i = s.stack.$length - 1 >> 0;
+ /* while (true) { */ case 1:
+ /* if (!(i >= split)) { break; } */ if(!(i >= split)) { $s = 2; continue; }
+ _r$6 = s.p.writeEnd(new Name.ptr("", (x$3 = s.stack, ((i < 0 || i >= x$3.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + i])))); /* */ $s = 3; case 3: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ err = _r$6;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ i = i - (1) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ s.stack = $subslice(s.stack, 0, split);
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: parentStack.ptr.prototype.trim }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f.err = err; $f.i = i; $f.parents = parents; $f.s = s; $f.split = split; $f.x$2 = x$2; $f.x$3 = x$3; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parentStack.prototype.trim = function(parents) { return this.$val.trim(parents); };
+ parentStack.ptr.prototype.push = function(parents) {
+ var $ptr, _r$6, err, i, parents, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; err = $f.err; i = $f.i; parents = $f.parents; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ s = this;
+ i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(i < parents.$length)) { break; } */ if(!(i < parents.$length)) { $s = 2; continue; }
+ _r$6 = s.p.writeStart(new StartElement.ptr(new Name.ptr("", ((i < 0 || i >= parents.$length) ? ($throwRuntimeError("index out of range"), undefined) : parents.$array[parents.$offset + i])), sliceType$6.nil)); /* */ $s = 3; case 3: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ err = _r$6;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ i = i + (1) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ s.stack = $appendSlice(s.stack, parents);
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: parentStack.ptr.prototype.push }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f.err = err; $f.i = i; $f.parents = parents; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parentStack.prototype.push = function(parents) { return this.$val.push(parents); };
+ UnsupportedTypeError.ptr.prototype.Error = function() {
+ var $ptr, _r$6, e, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; e = $f.e; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ _r$6 = e.Type.String(); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return "xml: unsupported type: " + _r$6;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: UnsupportedTypeError.ptr.prototype.Error }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f.e = e; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ UnsupportedTypeError.prototype.Error = function() { return this.$val.Error(); };
+ isEmptyValue = function(v) {
+ var $ptr, _1, v, x$2, x$3;
+ _1 = $clone(v, reflect.Value).Kind();
+ if ((_1 === (17)) || (_1 === (21)) || (_1 === (23)) || (_1 === (24))) {
+ return $clone(v, reflect.Value).Len() === 0;
+ } else if (_1 === (1)) {
+ return !$clone(v, reflect.Value).Bool();
+ } else if ((_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6))) {
+ return (x$2 = $clone(v, reflect.Value).Int(), (x$2.$high === 0 && x$2.$low === 0));
+ } else if ((_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12))) {
+ return (x$3 = $clone(v, reflect.Value).Uint(), (x$3.$high === 0 && x$3.$low === 0));
+ } else if ((_1 === (13)) || (_1 === (14))) {
+ return $clone(v, reflect.Value).Float() === 0;
+ } else if ((_1 === (20)) || (_1 === (22))) {
+ return $clone(v, reflect.Value).IsNil();
+ }
+ return false;
+ };
+ Decoder.ptr.prototype.Decode = function(v) {
+ var $ptr, _r$6, d, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; d = $f.d; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ _r$6 = d.DecodeElement(v, ptrType$9.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return _r$6;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.Decode }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f.d = d; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.Decode = function(v) { return this.$val.Decode(v); };
+ Decoder.ptr.prototype.DecodeElement = function(v, start) {
+ var $ptr, _r$6, _r$7, _r$8, d, start, v, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; d = $f.d; start = $f.start; v = $f.v; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ _r$6 = reflect.ValueOf(v); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ val = _r$6;
+ if (!(($clone(val, reflect.Value).Kind() === 22))) {
+ $s = -1; return errors.New("non-pointer passed to Unmarshal");
+ }
+ _r$7 = $clone(val, reflect.Value).Elem(); /* */ $s = 2; case 2: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _r$8 = d.unmarshal($clone(_r$7, reflect.Value), start); /* */ $s = 3; case 3: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $s = -1; return _r$8;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.DecodeElement }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f.d = d; $f.start = start; $f.v = v; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.DecodeElement = function(v, start) { return this.$val.DecodeElement(v, start); };
+ UnmarshalError.prototype.Error = function() {
+ var $ptr, e;
+ e = this.$val;
+ return (e);
+ };
+ $ptrType(UnmarshalError).prototype.Error = function() { return new UnmarshalError(this.$get()).Error(); };
+ receiverType = function(val) {
+ var $ptr, _r$6, _r$7, _r$8, t, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; t = $f.t; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t = reflect.TypeOf(val);
+ _r$6 = t.Name(); /* */ $s = 3; case 3: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ /* */ if (!(_r$6 === "")) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!(_r$6 === "")) { */ case 1:
+ _r$7 = t.String(); /* */ $s = 4; case 4: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $s = -1; return _r$7;
+ /* } */ case 2:
+ _r$8 = t.String(); /* */ $s = 5; case 5: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $s = -1; return "(" + _r$8 + ")";
+ /* */ } return; } if ($f === undefined) { $f = { $blk: receiverType }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f.t = t; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.ptr.prototype.unmarshalInterface = function(val, start) {
+ var $ptr, _arg, _arg$1, _r$6, _r$7, _r$8, err, p, start, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; err = $f.err; p = $f.p; start = $f.start; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ p.pushEOF();
+ p.unmarshalDepth = p.unmarshalDepth + (1) >> 0;
+ _r$6 = val.UnmarshalXML(p, $clone(start, StartElement)); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ err = _r$6;
+ p.unmarshalDepth = p.unmarshalDepth - (1) >> 0;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ p.popEOF();
+ $s = -1; return err;
+ }
+ /* */ if (!p.popEOF()) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!p.popEOF()) { */ case 2:
+ _r$7 = receiverType(val); /* */ $s = 4; case 4: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _arg = new $String(_r$7);
+ _arg$1 = new $String(start.Name.Local);
+ _r$8 = fmt.Errorf("xml: %s.UnmarshalXML did not consume entire <%s> element", new sliceType$5([_arg, _arg$1])); /* */ $s = 5; case 5: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $s = -1; return _r$8;
+ /* } */ case 3:
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.unmarshalInterface }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f.err = err; $f.p = p; $f.start = start; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.unmarshalInterface = function(val, start) { return this.$val.unmarshalInterface(val, start); };
+ Decoder.ptr.prototype.unmarshalTextInterface = function(val, start) {
+ var $ptr, _r$6, _r$7, _ref, _tuple, buf, depth, err, p, start, t, t$1, t$2, t$3, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; _r$7 = $f._r$7; _ref = $f._ref; _tuple = $f._tuple; buf = $f.buf; depth = $f.depth; err = $f.err; p = $f.p; start = $f.start; t = $f.t; t$1 = $f.t$1; t$2 = $f.t$2; t$3 = $f.t$3; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ buf = sliceType.nil;
+ depth = 1;
+ /* while (true) { */ case 1:
+ /* if (!(depth > 0)) { break; } */ if(!(depth > 0)) { $s = 2; continue; }
+ _r$6 = p.Token(); /* */ $s = 3; case 3: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple = _r$6;
+ t = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ _ref = t;
+ if ($assertType(_ref, CharData, true)[1]) {
+ t$1 = _ref.$val;
+ if (depth === 1) {
+ buf = $appendSlice(buf, $subslice(new sliceType(t$1.$array), t$1.$offset, t$1.$offset + t$1.$length));
+ }
+ } else if ($assertType(_ref, StartElement, true)[1]) {
+ t$2 = $clone(_ref.$val, StartElement);
+ depth = depth + (1) >> 0;
+ } else if ($assertType(_ref, EndElement, true)[1]) {
+ t$3 = $clone(_ref.$val, EndElement);
+ depth = depth - (1) >> 0;
+ }
+ /* } */ $s = 1; continue; case 2:
+ _r$7 = val.UnmarshalText(buf); /* */ $s = 4; case 4: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $s = -1; return _r$7;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.unmarshalTextInterface }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._ref = _ref; $f._tuple = _tuple; $f.buf = buf; $f.depth = depth; $f.err = err; $f.p = p; $f.start = start; $f.t = t; $f.t$1 = t$1; $f.t$2 = t$2; $f.t$3 = t$3; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.unmarshalTextInterface = function(val, start) { return this.$val.unmarshalTextInterface(val, start); };
+ Decoder.ptr.prototype.unmarshalAttr = function(val, attr) {
+ var $ptr, _arg, _arg$1, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$19, _r$20, _r$21, _r$22, _r$23, _r$24, _r$25, _r$26, _r$27, _r$28, _r$29, _r$30, _r$6, _r$7, _r$8, _r$9, _v, _v$1, _v$2, _v$3, _v$4, attr, err, n, p, pv, pv$1, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$19 = $f._r$19; _r$20 = $f._r$20; _r$21 = $f._r$21; _r$22 = $f._r$22; _r$23 = $f._r$23; _r$24 = $f._r$24; _r$25 = $f._r$25; _r$26 = $f._r$26; _r$27 = $f._r$27; _r$28 = $f._r$28; _r$29 = $f._r$29; _r$30 = $f._r$30; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _v = $f._v; _v$1 = $f._v$1; _v$2 = $f._v$2; _v$3 = $f._v$3; _v$4 = $f._v$4; attr = $f.attr; err = $f.err; n = $f.n; p = $f.p; pv = $f.pv; pv$1 = $f.pv$1; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ /* */ if ($clone(val, reflect.Value).Kind() === 22) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ($clone(val, reflect.Value).Kind() === 22) { */ case 1:
+ /* */ if ($clone(val, reflect.Value).IsNil()) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if ($clone(val, reflect.Value).IsNil()) { */ case 3:
+ _r$6 = $clone(val, reflect.Value).Type().Elem(); /* */ $s = 5; case 5: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$7 = reflect.New(_r$6); /* */ $s = 6; case 6: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $r = $clone(val, reflect.Value).Set($clone(_r$7, reflect.Value)); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 4:
+ _r$8 = $clone(val, reflect.Value).Elem(); /* */ $s = 8; case 8: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ val = _r$8;
+ /* } */ case 2:
+ if (!($clone(val, reflect.Value).CanInterface())) { _v = false; $s = 11; continue s; }
+ _r$9 = $clone(val, reflect.Value).Type().Implements(unmarshalerAttrType); /* */ $s = 12; case 12: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _v = _r$9; case 11:
+ /* */ if (_v) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (_v) { */ case 9:
+ _r$10 = $clone(val, reflect.Value).Interface(); /* */ $s = 13; case 13: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _r$11 = $assertType(_r$10, UnmarshalerAttr).UnmarshalXMLAttr($clone(attr, Attr)); /* */ $s = 14; case 14: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ $s = -1; return _r$11;
+ /* } */ case 10:
+ /* */ if ($clone(val, reflect.Value).CanAddr()) { $s = 15; continue; }
+ /* */ $s = 16; continue;
+ /* if ($clone(val, reflect.Value).CanAddr()) { */ case 15:
+ pv = $clone(val, reflect.Value).Addr();
+ if (!($clone(pv, reflect.Value).CanInterface())) { _v$1 = false; $s = 19; continue s; }
+ _r$12 = $clone(pv, reflect.Value).Type().Implements(unmarshalerAttrType); /* */ $s = 20; case 20: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _v$1 = _r$12; case 19:
+ /* */ if (_v$1) { $s = 17; continue; }
+ /* */ $s = 18; continue;
+ /* if (_v$1) { */ case 17:
+ _r$13 = $clone(pv, reflect.Value).Interface(); /* */ $s = 21; case 21: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _r$14 = $assertType(_r$13, UnmarshalerAttr).UnmarshalXMLAttr($clone(attr, Attr)); /* */ $s = 22; case 22: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ $s = -1; return _r$14;
+ /* } */ case 18:
+ /* } */ case 16:
+ if (!($clone(val, reflect.Value).CanInterface())) { _v$2 = false; $s = 25; continue s; }
+ _r$15 = $clone(val, reflect.Value).Type().Implements(textUnmarshalerType); /* */ $s = 26; case 26: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ _v$2 = _r$15; case 25:
+ /* */ if (_v$2) { $s = 23; continue; }
+ /* */ $s = 24; continue;
+ /* if (_v$2) { */ case 23:
+ _r$16 = $clone(val, reflect.Value).Interface(); /* */ $s = 27; case 27: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ _r$17 = $assertType(_r$16, encoding.TextUnmarshaler).UnmarshalText((new sliceType($stringToBytes(attr.Value)))); /* */ $s = 28; case 28: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ $s = -1; return _r$17;
+ /* } */ case 24:
+ /* */ if ($clone(val, reflect.Value).CanAddr()) { $s = 29; continue; }
+ /* */ $s = 30; continue;
+ /* if ($clone(val, reflect.Value).CanAddr()) { */ case 29:
+ pv$1 = $clone(val, reflect.Value).Addr();
+ if (!($clone(pv$1, reflect.Value).CanInterface())) { _v$3 = false; $s = 33; continue s; }
+ _r$18 = $clone(pv$1, reflect.Value).Type().Implements(textUnmarshalerType); /* */ $s = 34; case 34: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ _v$3 = _r$18; case 33:
+ /* */ if (_v$3) { $s = 31; continue; }
+ /* */ $s = 32; continue;
+ /* if (_v$3) { */ case 31:
+ _r$19 = $clone(pv$1, reflect.Value).Interface(); /* */ $s = 35; case 35: if($c) { $c = false; _r$19 = _r$19.$blk(); } if (_r$19 && _r$19.$blk !== undefined) { break s; }
+ _r$20 = $assertType(_r$19, encoding.TextUnmarshaler).UnmarshalText((new sliceType($stringToBytes(attr.Value)))); /* */ $s = 36; case 36: if($c) { $c = false; _r$20 = _r$20.$blk(); } if (_r$20 && _r$20.$blk !== undefined) { break s; }
+ $s = -1; return _r$20;
+ /* } */ case 32:
+ /* } */ case 30:
+ _r$21 = $clone(val, reflect.Value).Type().Kind(); /* */ $s = 40; case 40: if($c) { $c = false; _r$21 = _r$21.$blk(); } if (_r$21 && _r$21.$blk !== undefined) { break s; }
+ if (!(_r$21 === 23)) { _v$4 = false; $s = 39; continue s; }
+ _r$22 = $clone(val, reflect.Value).Type().Elem(); /* */ $s = 41; case 41: if($c) { $c = false; _r$22 = _r$22.$blk(); } if (_r$22 && _r$22.$blk !== undefined) { break s; }
+ _r$23 = _r$22.Kind(); /* */ $s = 42; case 42: if($c) { $c = false; _r$23 = _r$23.$blk(); } if (_r$23 && _r$23.$blk !== undefined) { break s; }
+ _v$4 = !((_r$23 === 8)); case 39:
+ /* */ if (_v$4) { $s = 37; continue; }
+ /* */ $s = 38; continue;
+ /* if (_v$4) { */ case 37:
+ n = $clone(val, reflect.Value).Len();
+ _arg = $clone(val, reflect.Value);
+ _r$24 = $clone(val, reflect.Value).Type().Elem(); /* */ $s = 43; case 43: if($c) { $c = false; _r$24 = _r$24.$blk(); } if (_r$24 && _r$24.$blk !== undefined) { break s; }
+ _r$25 = reflect.Zero(_r$24); /* */ $s = 44; case 44: if($c) { $c = false; _r$25 = _r$25.$blk(); } if (_r$25 && _r$25.$blk !== undefined) { break s; }
+ _arg$1 = $clone(_r$25, reflect.Value);
+ _r$26 = reflect.Append(_arg, new sliceType$7([_arg$1])); /* */ $s = 45; case 45: if($c) { $c = false; _r$26 = _r$26.$blk(); } if (_r$26 && _r$26.$blk !== undefined) { break s; }
+ $r = $clone(val, reflect.Value).Set($clone(_r$26, reflect.Value)); /* */ $s = 46; case 46: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$27 = $clone(val, reflect.Value).Index(n); /* */ $s = 47; case 47: if($c) { $c = false; _r$27 = _r$27.$blk(); } if (_r$27 && _r$27.$blk !== undefined) { break s; }
+ _r$28 = p.unmarshalAttr($clone(_r$27, reflect.Value), $clone(attr, Attr)); /* */ $s = 48; case 48: if($c) { $c = false; _r$28 = _r$28.$blk(); } if (_r$28 && _r$28.$blk !== undefined) { break s; }
+ err = _r$28;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $clone(val, reflect.Value).SetLen(n);
+ $s = -1; return err;
+ }
+ $s = -1; return $ifaceNil;
+ /* } */ case 38:
+ /* */ if ($interfaceIsEqual($clone(val, reflect.Value).Type(), attrType)) { $s = 49; continue; }
+ /* */ $s = 50; continue;
+ /* if ($interfaceIsEqual($clone(val, reflect.Value).Type(), attrType)) { */ case 49:
+ _r$29 = reflect.ValueOf(new attr.constructor.elem(attr)); /* */ $s = 51; case 51: if($c) { $c = false; _r$29 = _r$29.$blk(); } if (_r$29 && _r$29.$blk !== undefined) { break s; }
+ $r = $clone(val, reflect.Value).Set($clone(_r$29, reflect.Value)); /* */ $s = 52; case 52: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return $ifaceNil;
+ /* } */ case 50:
+ _r$30 = copyValue($clone(val, reflect.Value), (new sliceType($stringToBytes(attr.Value)))); /* */ $s = 53; case 53: if($c) { $c = false; _r$30 = _r$30.$blk(); } if (_r$30 && _r$30.$blk !== undefined) { break s; }
+ _r$30;
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.unmarshalAttr }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$19 = _r$19; $f._r$20 = _r$20; $f._r$21 = _r$21; $f._r$22 = _r$22; $f._r$23 = _r$23; $f._r$24 = _r$24; $f._r$25 = _r$25; $f._r$26 = _r$26; $f._r$27 = _r$27; $f._r$28 = _r$28; $f._r$29 = _r$29; $f._r$30 = _r$30; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._v = _v; $f._v$1 = _v$1; $f._v$2 = _v$2; $f._v$3 = _v$3; $f._v$4 = _v$4; $f.attr = attr; $f.err = err; $f.n = n; $f.p = p; $f.pv = pv; $f.pv$1 = pv$1; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.unmarshalAttr = function(val, attr) { return this.$val.unmarshalAttr(val, attr); };
+ Decoder.ptr.prototype.unmarshal = function(val, start) {
+ var $ptr, _1, _2, _3, _4, _5, _arg, _arg$1, _i, _i$1, _i$2, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$19, _r$20, _r$21, _r$22, _r$23, _r$24, _r$25, _r$26, _r$27, _r$28, _r$29, _r$30, _r$31, _r$32, _r$33, _r$34, _r$35, _r$36, _r$37, _r$38, _r$39, _r$40, _r$41, _r$42, _r$43, _r$44, _r$45, _r$46, _r$47, _r$48, _r$49, _r$50, _r$51, _r$52, _r$53, _r$54, _r$55, _r$56, _r$57, _r$58, _r$59, _r$6, _r$60, _r$7, _r$8, _r$9, _ref, _ref$1, _ref$2, _ref$3, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, _tuple$5, _v, _v$1, _v$2, _v$3, _v$4, _v$5, a, any, comment, consumed, data, e, e$1, err, err$1, err$10, err$2, err$3, err$4, err$5, err$6, err$7, err$8, err$9, finfo, finfo$1, finfo$2, finfo$3, fv, handled, i, i$1, n, ok, ok$1, p, pv, pv$1, pv$2, saveAny, saveComment, saveData, saveXML, saveXMLData, saveXMLIndex, savedOffset, start, strv, strv$1, sv, t, t$1, t$2, t$3, t$4, t$5, t$6, tinfo, tok, tok$1, typ, typ$1, v, val, x$2, x$3, x$4, x$5, x$6, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _2 = $f._2; _3 = $f._3; _4 = $f._4; _5 = $f._5; _arg = $f._arg; _arg$1 = $f._arg$1; _i = $f._i; _i$1 = $f._i$1; _i$2 = $f._i$2; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$19 = $f._r$19; _r$20 = $f._r$20; _r$21 = $f._r$21; _r$22 = $f._r$22; _r$23 = $f._r$23; _r$24 = $f._r$24; _r$25 = $f._r$25; _r$26 = $f._r$26; _r$27 = $f._r$27; _r$28 = $f._r$28; _r$29 = $f._r$29; _r$30 = $f._r$30; _r$31 = $f._r$31; _r$32 = $f._r$32; _r$33 = $f._r$33; _r$34 = $f._r$34; _r$35 = $f._r$35; _r$36 = $f._r$36; _r$37 = $f._r$37; _r$38 = $f._r$38; _r$39 = $f._r$39; _r$40 = $f._r$40; _r$41 = $f._r$41; _r$42 = $f._r$42; _r$43 = $f._r$43; _r$44 = $f._r$44; _r$45 = $f._r$45; _r$46 = $f._r$46; _r$47 = $f._r$47; _r$48 = $f._r$48; _r$49 = $f._r$49; _r$50 = $f._r$50; _r$51 = $f._r$51; _r$52 = $f._r$52; _r$53 = $f._r$53; _r$54 = $f._r$54; _r$55 = $f._r$55; _r$56 = $f._r$56; _r$57 = $f._r$57; _r$58 = $f._r$58; _r$59 = $f._r$59; _r$6 = $f._r$6; _r$60 = $f._r$60; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _ref = $f._ref; _ref$1 = $f._ref$1; _ref$2 = $f._ref$2; _ref$3 = $f._ref$3; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; _tuple$5 = $f._tuple$5; _v = $f._v; _v$1 = $f._v$1; _v$2 = $f._v$2; _v$3 = $f._v$3; _v$4 = $f._v$4; _v$5 = $f._v$5; a = $f.a; any = $f.any; comment = $f.comment; consumed = $f.consumed; data = $f.data; e = $f.e; e$1 = $f.e$1; err = $f.err; err$1 = $f.err$1; err$10 = $f.err$10; err$2 = $f.err$2; err$3 = $f.err$3; err$4 = $f.err$4; err$5 = $f.err$5; err$6 = $f.err$6; err$7 = $f.err$7; err$8 = $f.err$8; err$9 = $f.err$9; finfo = $f.finfo; finfo$1 = $f.finfo$1; finfo$2 = $f.finfo$2; finfo$3 = $f.finfo$3; fv = $f.fv; handled = $f.handled; i = $f.i; i$1 = $f.i$1; n = $f.n; ok = $f.ok; ok$1 = $f.ok$1; p = $f.p; pv = $f.pv; pv$1 = $f.pv$1; pv$2 = $f.pv$2; saveAny = $f.saveAny; saveComment = $f.saveComment; saveData = $f.saveData; saveXML = $f.saveXML; saveXMLData = $f.saveXMLData; saveXMLIndex = $f.saveXMLIndex; savedOffset = $f.savedOffset; start = $f.start; strv = $f.strv; strv$1 = $f.strv$1; sv = $f.sv; t = $f.t; t$1 = $f.t$1; t$2 = $f.t$2; t$3 = $f.t$3; t$4 = $f.t$4; t$5 = $f.t$5; t$6 = $f.t$6; tinfo = $f.tinfo; tok = $f.tok; tok$1 = $f.tok$1; typ = $f.typ; typ$1 = $f.typ$1; v = $f.v; val = $f.val; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ /* */ if (start === ptrType$9.nil) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (start === ptrType$9.nil) { */ case 1:
+ /* while (true) { */ case 3:
+ t = [t];
+ _r$6 = p.Token(); /* */ $s = 5; case 5: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple = _r$6;
+ tok = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ _tuple$1 = $assertType(tok, StartElement, true);
+ t[0] = $clone(_tuple$1[0], StartElement);
+ ok = _tuple$1[1];
+ if (ok) {
+ start = t[0];
+ /* break; */ $s = 4; continue;
+ }
+ /* } */ $s = 3; continue; case 4:
+ /* } */ case 2:
+ /* */ if (($clone(val, reflect.Value).Kind() === 20) && !$clone(val, reflect.Value).IsNil()) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (($clone(val, reflect.Value).Kind() === 20) && !$clone(val, reflect.Value).IsNil()) { */ case 6:
+ _r$7 = $clone(val, reflect.Value).Elem(); /* */ $s = 8; case 8: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ e = _r$7;
+ if (($clone(e, reflect.Value).Kind() === 22) && !$clone(e, reflect.Value).IsNil()) {
+ val = e;
+ }
+ /* } */ case 7:
+ /* */ if ($clone(val, reflect.Value).Kind() === 22) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if ($clone(val, reflect.Value).Kind() === 22) { */ case 9:
+ /* */ if ($clone(val, reflect.Value).IsNil()) { $s = 11; continue; }
+ /* */ $s = 12; continue;
+ /* if ($clone(val, reflect.Value).IsNil()) { */ case 11:
+ _r$8 = $clone(val, reflect.Value).Type().Elem(); /* */ $s = 13; case 13: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _r$9 = reflect.New(_r$8); /* */ $s = 14; case 14: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ $r = $clone(val, reflect.Value).Set($clone(_r$9, reflect.Value)); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 12:
+ _r$10 = $clone(val, reflect.Value).Elem(); /* */ $s = 16; case 16: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ val = _r$10;
+ /* } */ case 10:
+ if (!($clone(val, reflect.Value).CanInterface())) { _v = false; $s = 19; continue s; }
+ _r$11 = $clone(val, reflect.Value).Type().Implements(unmarshalerType); /* */ $s = 20; case 20: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _v = _r$11; case 19:
+ /* */ if (_v) { $s = 17; continue; }
+ /* */ $s = 18; continue;
+ /* if (_v) { */ case 17:
+ _r$12 = $clone(val, reflect.Value).Interface(); /* */ $s = 21; case 21: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _r$13 = p.unmarshalInterface($assertType(_r$12, Unmarshaler), start); /* */ $s = 22; case 22: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ $s = -1; return _r$13;
+ /* } */ case 18:
+ /* */ if ($clone(val, reflect.Value).CanAddr()) { $s = 23; continue; }
+ /* */ $s = 24; continue;
+ /* if ($clone(val, reflect.Value).CanAddr()) { */ case 23:
+ pv = $clone(val, reflect.Value).Addr();
+ if (!($clone(pv, reflect.Value).CanInterface())) { _v$1 = false; $s = 27; continue s; }
+ _r$14 = $clone(pv, reflect.Value).Type().Implements(unmarshalerType); /* */ $s = 28; case 28: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ _v$1 = _r$14; case 27:
+ /* */ if (_v$1) { $s = 25; continue; }
+ /* */ $s = 26; continue;
+ /* if (_v$1) { */ case 25:
+ _r$15 = $clone(pv, reflect.Value).Interface(); /* */ $s = 29; case 29: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ _r$16 = p.unmarshalInterface($assertType(_r$15, Unmarshaler), start); /* */ $s = 30; case 30: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ $s = -1; return _r$16;
+ /* } */ case 26:
+ /* } */ case 24:
+ if (!($clone(val, reflect.Value).CanInterface())) { _v$2 = false; $s = 33; continue s; }
+ _r$17 = $clone(val, reflect.Value).Type().Implements(textUnmarshalerType); /* */ $s = 34; case 34: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ _v$2 = _r$17; case 33:
+ /* */ if (_v$2) { $s = 31; continue; }
+ /* */ $s = 32; continue;
+ /* if (_v$2) { */ case 31:
+ _r$18 = $clone(val, reflect.Value).Interface(); /* */ $s = 35; case 35: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ _r$19 = p.unmarshalTextInterface($assertType(_r$18, encoding.TextUnmarshaler), start); /* */ $s = 36; case 36: if($c) { $c = false; _r$19 = _r$19.$blk(); } if (_r$19 && _r$19.$blk !== undefined) { break s; }
+ $s = -1; return _r$19;
+ /* } */ case 32:
+ /* */ if ($clone(val, reflect.Value).CanAddr()) { $s = 37; continue; }
+ /* */ $s = 38; continue;
+ /* if ($clone(val, reflect.Value).CanAddr()) { */ case 37:
+ pv$1 = $clone(val, reflect.Value).Addr();
+ if (!($clone(pv$1, reflect.Value).CanInterface())) { _v$3 = false; $s = 41; continue s; }
+ _r$20 = $clone(pv$1, reflect.Value).Type().Implements(textUnmarshalerType); /* */ $s = 42; case 42: if($c) { $c = false; _r$20 = _r$20.$blk(); } if (_r$20 && _r$20.$blk !== undefined) { break s; }
+ _v$3 = _r$20; case 41:
+ /* */ if (_v$3) { $s = 39; continue; }
+ /* */ $s = 40; continue;
+ /* if (_v$3) { */ case 39:
+ _r$21 = $clone(pv$1, reflect.Value).Interface(); /* */ $s = 43; case 43: if($c) { $c = false; _r$21 = _r$21.$blk(); } if (_r$21 && _r$21.$blk !== undefined) { break s; }
+ _r$22 = p.unmarshalTextInterface($assertType(_r$21, encoding.TextUnmarshaler), start); /* */ $s = 44; case 44: if($c) { $c = false; _r$22 = _r$22.$blk(); } if (_r$22 && _r$22.$blk !== undefined) { break s; }
+ $s = -1; return _r$22;
+ /* } */ case 40:
+ /* } */ case 38:
+ data = sliceType.nil;
+ saveData = new reflect.Value.ptr(ptrType$11.nil, 0, 0);
+ comment = sliceType.nil;
+ saveComment = new reflect.Value.ptr(ptrType$11.nil, 0, 0);
+ saveXML = new reflect.Value.ptr(ptrType$11.nil, 0, 0);
+ saveXMLIndex = 0;
+ saveXMLData = sliceType.nil;
+ saveAny = new reflect.Value.ptr(ptrType$11.nil, 0, 0);
+ sv = new reflect.Value.ptr(ptrType$11.nil, 0, 0);
+ tinfo = ptrType$12.nil;
+ err$1 = $ifaceNil;
+ v = val;
+ _1 = $clone(v, reflect.Value).Kind();
+ /* */ if (_1 === (20)) { $s = 46; continue; }
+ /* */ if (_1 === (23)) { $s = 47; continue; }
+ /* */ if ((_1 === (1)) || (_1 === (13)) || (_1 === (14)) || (_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6)) || (_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12)) || (_1 === (24))) { $s = 48; continue; }
+ /* */ if (_1 === (25)) { $s = 49; continue; }
+ /* */ $s = 50; continue;
+ /* if (_1 === (20)) { */ case 46:
+ _r$23 = p.Skip(); /* */ $s = 52; case 52: if($c) { $c = false; _r$23 = _r$23.$blk(); } if (_r$23 && _r$23.$blk !== undefined) { break s; }
+ $s = -1; return _r$23;
+ /* } else if (_1 === (23)) { */ case 47:
+ typ = $clone(v, reflect.Value).Type();
+ _r$24 = typ.Elem(); /* */ $s = 55; case 55: if($c) { $c = false; _r$24 = _r$24.$blk(); } if (_r$24 && _r$24.$blk !== undefined) { break s; }
+ _r$25 = _r$24.Kind(); /* */ $s = 56; case 56: if($c) { $c = false; _r$25 = _r$25.$blk(); } if (_r$25 && _r$25.$blk !== undefined) { break s; }
+ /* */ if (_r$25 === 8) { $s = 53; continue; }
+ /* */ $s = 54; continue;
+ /* if (_r$25 === 8) { */ case 53:
+ saveData = v;
+ /* break; */ $s = 45; continue;
+ /* } */ case 54:
+ n = $clone(v, reflect.Value).Len();
+ _arg = $clone(val, reflect.Value);
+ _r$26 = $clone(v, reflect.Value).Type().Elem(); /* */ $s = 57; case 57: if($c) { $c = false; _r$26 = _r$26.$blk(); } if (_r$26 && _r$26.$blk !== undefined) { break s; }
+ _r$27 = reflect.Zero(_r$26); /* */ $s = 58; case 58: if($c) { $c = false; _r$27 = _r$27.$blk(); } if (_r$27 && _r$27.$blk !== undefined) { break s; }
+ _arg$1 = $clone(_r$27, reflect.Value);
+ _r$28 = reflect.Append(_arg, new sliceType$7([_arg$1])); /* */ $s = 59; case 59: if($c) { $c = false; _r$28 = _r$28.$blk(); } if (_r$28 && _r$28.$blk !== undefined) { break s; }
+ $r = $clone(v, reflect.Value).Set($clone(_r$28, reflect.Value)); /* */ $s = 60; case 60: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$29 = $clone(v, reflect.Value).Index(n); /* */ $s = 61; case 61: if($c) { $c = false; _r$29 = _r$29.$blk(); } if (_r$29 && _r$29.$blk !== undefined) { break s; }
+ _r$30 = p.unmarshal($clone(_r$29, reflect.Value), start); /* */ $s = 62; case 62: if($c) { $c = false; _r$30 = _r$30.$blk(); } if (_r$30 && _r$30.$blk !== undefined) { break s; }
+ err$2 = _r$30;
+ if (!($interfaceIsEqual(err$2, $ifaceNil))) {
+ $clone(v, reflect.Value).SetLen(n);
+ $s = -1; return err$2;
+ }
+ $s = -1; return $ifaceNil;
+ /* } else if ((_1 === (1)) || (_1 === (13)) || (_1 === (14)) || (_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6)) || (_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12)) || (_1 === (24))) { */ case 48:
+ saveData = v;
+ $s = 51; continue;
+ /* } else if (_1 === (25)) { */ case 49:
+ typ$1 = $clone(v, reflect.Value).Type();
+ /* */ if ($interfaceIsEqual(typ$1, nameType)) { $s = 63; continue; }
+ /* */ $s = 64; continue;
+ /* if ($interfaceIsEqual(typ$1, nameType)) { */ case 63:
+ _r$31 = reflect.ValueOf((x$2 = start.Name, new x$2.constructor.elem(x$2))); /* */ $s = 65; case 65: if($c) { $c = false; _r$31 = _r$31.$blk(); } if (_r$31 && _r$31.$blk !== undefined) { break s; }
+ $r = $clone(v, reflect.Value).Set($clone(_r$31, reflect.Value)); /* */ $s = 66; case 66: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* break; */ $s = 45; continue;
+ /* } */ case 64:
+ sv = v;
+ _r$32 = getTypeInfo(typ$1); /* */ $s = 67; case 67: if($c) { $c = false; _r$32 = _r$32.$blk(); } if (_r$32 && _r$32.$blk !== undefined) { break s; }
+ _tuple$2 = _r$32;
+ tinfo = _tuple$2[0];
+ err$1 = _tuple$2[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ /* */ if (!(tinfo.xmlname === ptrType$8.nil)) { $s = 68; continue; }
+ /* */ $s = 69; continue;
+ /* if (!(tinfo.xmlname === ptrType$8.nil)) { */ case 68:
+ finfo = tinfo.xmlname;
+ if (!(finfo.name === "") && !(finfo.name === start.Name.Local)) {
+ $s = -1; return new UnmarshalError(("expected element type <" + finfo.name + "> but have <" + start.Name.Local + ">"));
+ }
+ if (!(finfo.xmlns === "") && !(finfo.xmlns === start.Name.Space)) {
+ e$1 = "expected element <" + finfo.name + "> in name space " + finfo.xmlns + " but have ";
+ if (start.Name.Space === "") {
+ e$1 = e$1 + ("no name space");
+ } else {
+ e$1 = e$1 + (start.Name.Space);
+ }
+ $s = -1; return new UnmarshalError((e$1));
+ }
+ _r$33 = finfo.value($clone(sv, reflect.Value)); /* */ $s = 70; case 70: if($c) { $c = false; _r$33 = _r$33.$blk(); } if (_r$33 && _r$33.$blk !== undefined) { break s; }
+ fv = _r$33;
+ _r$34 = $clone(fv, reflect.Value).Interface(); /* */ $s = 71; case 71: if($c) { $c = false; _r$34 = _r$34.$blk(); } if (_r$34 && _r$34.$blk !== undefined) { break s; }
+ _tuple$3 = $assertType(_r$34, Name, true);
+ ok$1 = _tuple$3[1];
+ /* */ if (ok$1) { $s = 72; continue; }
+ /* */ $s = 73; continue;
+ /* if (ok$1) { */ case 72:
+ _r$35 = reflect.ValueOf((x$3 = start.Name, new x$3.constructor.elem(x$3))); /* */ $s = 74; case 74: if($c) { $c = false; _r$35 = _r$35.$blk(); } if (_r$35 && _r$35.$blk !== undefined) { break s; }
+ $r = $clone(fv, reflect.Value).Set($clone(_r$35, reflect.Value)); /* */ $s = 75; case 75: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 73:
+ /* } */ case 69:
+ _ref = start.Attr;
+ _i = 0;
+ /* while (true) { */ case 76:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 77; continue; }
+ a = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), Attr);
+ handled = false;
+ any = -1;
+ _ref$1 = tinfo.fields;
+ _i$1 = 0;
+ /* while (true) { */ case 78:
+ /* if (!(_i$1 < _ref$1.$length)) { break; } */ if(!(_i$1 < _ref$1.$length)) { $s = 79; continue; }
+ i = _i$1;
+ finfo$1 = (x$4 = tinfo.fields, ((i < 0 || i >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + i]));
+ _2 = finfo$1.flags & 127;
+ /* */ if (_2 === (2)) { $s = 81; continue; }
+ /* */ if (_2 === (66)) { $s = 82; continue; }
+ /* */ $s = 83; continue;
+ /* if (_2 === (2)) { */ case 81:
+ _r$36 = finfo$1.value($clone(sv, reflect.Value)); /* */ $s = 84; case 84: if($c) { $c = false; _r$36 = _r$36.$blk(); } if (_r$36 && _r$36.$blk !== undefined) { break s; }
+ strv = _r$36;
+ /* */ if (a.Name.Local === finfo$1.name && (finfo$1.xmlns === "" || finfo$1.xmlns === a.Name.Space)) { $s = 85; continue; }
+ /* */ $s = 86; continue;
+ /* if (a.Name.Local === finfo$1.name && (finfo$1.xmlns === "" || finfo$1.xmlns === a.Name.Space)) { */ case 85:
+ _r$37 = p.unmarshalAttr($clone(strv, reflect.Value), $clone(a, Attr)); /* */ $s = 87; case 87: if($c) { $c = false; _r$37 = _r$37.$blk(); } if (_r$37 && _r$37.$blk !== undefined) { break s; }
+ err$3 = _r$37;
+ if (!($interfaceIsEqual(err$3, $ifaceNil))) {
+ $s = -1; return err$3;
+ }
+ handled = true;
+ /* } */ case 86:
+ $s = 83; continue;
+ /* } else if (_2 === (66)) { */ case 82:
+ if (any === -1) {
+ any = i;
+ }
+ /* } */ case 83:
+ case 80:
+ _i$1++;
+ /* } */ $s = 78; continue; case 79:
+ /* */ if (!handled && any >= 0) { $s = 88; continue; }
+ /* */ $s = 89; continue;
+ /* if (!handled && any >= 0) { */ case 88:
+ finfo$2 = (x$5 = tinfo.fields, ((any < 0 || any >= x$5.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$5.$array[x$5.$offset + any]));
+ _r$38 = finfo$2.value($clone(sv, reflect.Value)); /* */ $s = 90; case 90: if($c) { $c = false; _r$38 = _r$38.$blk(); } if (_r$38 && _r$38.$blk !== undefined) { break s; }
+ strv$1 = _r$38;
+ _r$39 = p.unmarshalAttr($clone(strv$1, reflect.Value), $clone(a, Attr)); /* */ $s = 91; case 91: if($c) { $c = false; _r$39 = _r$39.$blk(); } if (_r$39 && _r$39.$blk !== undefined) { break s; }
+ err$4 = _r$39;
+ if (!($interfaceIsEqual(err$4, $ifaceNil))) {
+ $s = -1; return err$4;
+ }
+ /* } */ case 89:
+ _i++;
+ /* } */ $s = 76; continue; case 77:
+ _ref$2 = tinfo.fields;
+ _i$2 = 0;
+ /* while (true) { */ case 92:
+ /* if (!(_i$2 < _ref$2.$length)) { break; } */ if(!(_i$2 < _ref$2.$length)) { $s = 93; continue; }
+ i$1 = _i$2;
+ finfo$3 = (x$6 = tinfo.fields, ((i$1 < 0 || i$1 >= x$6.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$6.$array[x$6.$offset + i$1]));
+ _3 = finfo$3.flags & 127;
+ /* */ if ((_3 === (4)) || (_3 === (8))) { $s = 95; continue; }
+ /* */ if (_3 === (32)) { $s = 96; continue; }
+ /* */ if ((_3 === (64)) || (_3 === (65))) { $s = 97; continue; }
+ /* */ if (_3 === (16)) { $s = 98; continue; }
+ /* */ $s = 99; continue;
+ /* if ((_3 === (4)) || (_3 === (8))) { */ case 95:
+ /* */ if (!$clone(saveData, reflect.Value).IsValid()) { $s = 100; continue; }
+ /* */ $s = 101; continue;
+ /* if (!$clone(saveData, reflect.Value).IsValid()) { */ case 100:
+ _r$40 = finfo$3.value($clone(sv, reflect.Value)); /* */ $s = 102; case 102: if($c) { $c = false; _r$40 = _r$40.$blk(); } if (_r$40 && _r$40.$blk !== undefined) { break s; }
+ saveData = _r$40;
+ /* } */ case 101:
+ $s = 99; continue;
+ /* } else if (_3 === (32)) { */ case 96:
+ /* */ if (!$clone(saveComment, reflect.Value).IsValid()) { $s = 103; continue; }
+ /* */ $s = 104; continue;
+ /* if (!$clone(saveComment, reflect.Value).IsValid()) { */ case 103:
+ _r$41 = finfo$3.value($clone(sv, reflect.Value)); /* */ $s = 105; case 105: if($c) { $c = false; _r$41 = _r$41.$blk(); } if (_r$41 && _r$41.$blk !== undefined) { break s; }
+ saveComment = _r$41;
+ /* } */ case 104:
+ $s = 99; continue;
+ /* } else if ((_3 === (64)) || (_3 === (65))) { */ case 97:
+ /* */ if (!$clone(saveAny, reflect.Value).IsValid()) { $s = 106; continue; }
+ /* */ $s = 107; continue;
+ /* if (!$clone(saveAny, reflect.Value).IsValid()) { */ case 106:
+ _r$42 = finfo$3.value($clone(sv, reflect.Value)); /* */ $s = 108; case 108: if($c) { $c = false; _r$42 = _r$42.$blk(); } if (_r$42 && _r$42.$blk !== undefined) { break s; }
+ saveAny = _r$42;
+ /* } */ case 107:
+ $s = 99; continue;
+ /* } else if (_3 === (16)) { */ case 98:
+ /* */ if (!$clone(saveXML, reflect.Value).IsValid()) { $s = 109; continue; }
+ /* */ $s = 110; continue;
+ /* if (!$clone(saveXML, reflect.Value).IsValid()) { */ case 109:
+ _r$43 = finfo$3.value($clone(sv, reflect.Value)); /* */ $s = 111; case 111: if($c) { $c = false; _r$43 = _r$43.$blk(); } if (_r$43 && _r$43.$blk !== undefined) { break s; }
+ saveXML = _r$43;
+ if (p.saved === ptrType$13.nil) {
+ saveXMLIndex = 0;
+ p.saved = new bytes.Buffer.ptr(sliceType.nil, 0, arrayType.zero(), 0);
+ } else {
+ saveXMLIndex = p.savedOffset();
+ }
+ /* } */ case 110:
+ /* } */ case 99:
+ case 94:
+ _i$2++;
+ /* } */ $s = 92; continue; case 93:
+ $s = 51; continue;
+ /* } else { */ case 50:
+ _r$44 = $clone(v, reflect.Value).Type().String(); /* */ $s = 112; case 112: if($c) { $c = false; _r$44 = _r$44.$blk(); } if (_r$44 && _r$44.$blk !== undefined) { break s; }
+ _r$45 = errors.New("unknown type " + _r$44); /* */ $s = 113; case 113: if($c) { $c = false; _r$45 = _r$45.$blk(); } if (_r$45 && _r$45.$blk !== undefined) { break s; }
+ $s = -1; return _r$45;
+ /* } */ case 51:
+ case 45:
+ /* while (true) { */ case 114:
+ t$1 = [t$1];
+ savedOffset = 0;
+ if ($clone(saveXML, reflect.Value).IsValid()) {
+ savedOffset = p.savedOffset();
+ }
+ _r$46 = p.Token(); /* */ $s = 116; case 116: if($c) { $c = false; _r$46 = _r$46.$blk(); } if (_r$46 && _r$46.$blk !== undefined) { break s; }
+ _tuple$4 = _r$46;
+ tok$1 = _tuple$4[0];
+ err$5 = _tuple$4[1];
+ if (!($interfaceIsEqual(err$5, $ifaceNil))) {
+ $s = -1; return err$5;
+ }
+ _ref$3 = tok$1;
+ /* */ if ($assertType(_ref$3, StartElement, true)[1]) { $s = 117; continue; }
+ /* */ if ($assertType(_ref$3, EndElement, true)[1]) { $s = 118; continue; }
+ /* */ if ($assertType(_ref$3, CharData, true)[1]) { $s = 119; continue; }
+ /* */ if ($assertType(_ref$3, Comment, true)[1]) { $s = 120; continue; }
+ /* */ $s = 121; continue;
+ /* if ($assertType(_ref$3, StartElement, true)[1]) { */ case 117:
+ t$1[0] = $clone(_ref$3.$val, StartElement);
+ consumed = false;
+ /* */ if ($clone(sv, reflect.Value).IsValid()) { $s = 122; continue; }
+ /* */ $s = 123; continue;
+ /* if ($clone(sv, reflect.Value).IsValid()) { */ case 122:
+ _r$47 = p.unmarshalPath(tinfo, $clone(sv, reflect.Value), sliceType$3.nil, t$1[0]); /* */ $s = 124; case 124: if($c) { $c = false; _r$47 = _r$47.$blk(); } if (_r$47 && _r$47.$blk !== undefined) { break s; }
+ _tuple$5 = _r$47;
+ consumed = _tuple$5[0];
+ err$5 = _tuple$5[1];
+ if (!($interfaceIsEqual(err$5, $ifaceNil))) {
+ $s = -1; return err$5;
+ }
+ /* */ if (!consumed && $clone(saveAny, reflect.Value).IsValid()) { $s = 125; continue; }
+ /* */ $s = 126; continue;
+ /* if (!consumed && $clone(saveAny, reflect.Value).IsValid()) { */ case 125:
+ consumed = true;
+ _r$48 = p.unmarshal($clone(saveAny, reflect.Value), t$1[0]); /* */ $s = 127; case 127: if($c) { $c = false; _r$48 = _r$48.$blk(); } if (_r$48 && _r$48.$blk !== undefined) { break s; }
+ err$6 = _r$48;
+ if (!($interfaceIsEqual(err$6, $ifaceNil))) {
+ $s = -1; return err$6;
+ }
+ /* } */ case 126:
+ /* } */ case 123:
+ /* */ if (!consumed) { $s = 128; continue; }
+ /* */ $s = 129; continue;
+ /* if (!consumed) { */ case 128:
+ _r$49 = p.Skip(); /* */ $s = 130; case 130: if($c) { $c = false; _r$49 = _r$49.$blk(); } if (_r$49 && _r$49.$blk !== undefined) { break s; }
+ err$7 = _r$49;
+ if (!($interfaceIsEqual(err$7, $ifaceNil))) {
+ $s = -1; return err$7;
+ }
+ /* } */ case 129:
+ $s = 121; continue;
+ /* } else if ($assertType(_ref$3, EndElement, true)[1]) { */ case 118:
+ t$2 = $clone(_ref$3.$val, EndElement);
+ if ($clone(saveXML, reflect.Value).IsValid()) {
+ saveXMLData = $subslice(p.saved.Bytes(), saveXMLIndex, savedOffset);
+ if (saveXMLIndex === 0) {
+ p.saved = ptrType$13.nil;
+ }
+ }
+ /* break Loop; */ $s = 115; continue s;
+ $s = 121; continue;
+ /* } else if ($assertType(_ref$3, CharData, true)[1]) { */ case 119:
+ t$3 = _ref$3.$val;
+ if ($clone(saveData, reflect.Value).IsValid()) {
+ data = $appendSlice(data, $subslice(new sliceType(t$3.$array), t$3.$offset, t$3.$offset + t$3.$length));
+ }
+ $s = 121; continue;
+ /* } else if ($assertType(_ref$3, Comment, true)[1]) { */ case 120:
+ t$4 = _ref$3.$val;
+ if ($clone(saveComment, reflect.Value).IsValid()) {
+ comment = $appendSlice(comment, $subslice(new sliceType(t$4.$array), t$4.$offset, t$4.$offset + t$4.$length));
+ }
+ /* } */ case 121:
+ /* } */ $s = 114; continue; case 115:
+ if (!($clone(saveData, reflect.Value).IsValid() && $clone(saveData, reflect.Value).CanInterface())) { _v$4 = false; $s = 133; continue s; }
+ _r$50 = $clone(saveData, reflect.Value).Type().Implements(textUnmarshalerType); /* */ $s = 134; case 134: if($c) { $c = false; _r$50 = _r$50.$blk(); } if (_r$50 && _r$50.$blk !== undefined) { break s; }
+ _v$4 = _r$50; case 133:
+ /* */ if (_v$4) { $s = 131; continue; }
+ /* */ $s = 132; continue;
+ /* if (_v$4) { */ case 131:
+ _r$51 = $clone(saveData, reflect.Value).Interface(); /* */ $s = 135; case 135: if($c) { $c = false; _r$51 = _r$51.$blk(); } if (_r$51 && _r$51.$blk !== undefined) { break s; }
+ _r$52 = $assertType(_r$51, encoding.TextUnmarshaler).UnmarshalText(data); /* */ $s = 136; case 136: if($c) { $c = false; _r$52 = _r$52.$blk(); } if (_r$52 && _r$52.$blk !== undefined) { break s; }
+ err$8 = _r$52;
+ if (!($interfaceIsEqual(err$8, $ifaceNil))) {
+ $s = -1; return err$8;
+ }
+ saveData = new reflect.Value.ptr(ptrType$11.nil, 0, 0);
+ /* } */ case 132:
+ /* */ if ($clone(saveData, reflect.Value).IsValid() && $clone(saveData, reflect.Value).CanAddr()) { $s = 137; continue; }
+ /* */ $s = 138; continue;
+ /* if ($clone(saveData, reflect.Value).IsValid() && $clone(saveData, reflect.Value).CanAddr()) { */ case 137:
+ pv$2 = $clone(saveData, reflect.Value).Addr();
+ if (!($clone(pv$2, reflect.Value).CanInterface())) { _v$5 = false; $s = 141; continue s; }
+ _r$53 = $clone(pv$2, reflect.Value).Type().Implements(textUnmarshalerType); /* */ $s = 142; case 142: if($c) { $c = false; _r$53 = _r$53.$blk(); } if (_r$53 && _r$53.$blk !== undefined) { break s; }
+ _v$5 = _r$53; case 141:
+ /* */ if (_v$5) { $s = 139; continue; }
+ /* */ $s = 140; continue;
+ /* if (_v$5) { */ case 139:
+ _r$54 = $clone(pv$2, reflect.Value).Interface(); /* */ $s = 143; case 143: if($c) { $c = false; _r$54 = _r$54.$blk(); } if (_r$54 && _r$54.$blk !== undefined) { break s; }
+ _r$55 = $assertType(_r$54, encoding.TextUnmarshaler).UnmarshalText(data); /* */ $s = 144; case 144: if($c) { $c = false; _r$55 = _r$55.$blk(); } if (_r$55 && _r$55.$blk !== undefined) { break s; }
+ err$9 = _r$55;
+ if (!($interfaceIsEqual(err$9, $ifaceNil))) {
+ $s = -1; return err$9;
+ }
+ saveData = new reflect.Value.ptr(ptrType$11.nil, 0, 0);
+ /* } */ case 140:
+ /* } */ case 138:
+ _r$56 = copyValue($clone(saveData, reflect.Value), data); /* */ $s = 145; case 145: if($c) { $c = false; _r$56 = _r$56.$blk(); } if (_r$56 && _r$56.$blk !== undefined) { break s; }
+ err$10 = _r$56;
+ if (!($interfaceIsEqual(err$10, $ifaceNil))) {
+ $s = -1; return err$10;
+ }
+ t$5 = saveComment;
+ _4 = $clone(t$5, reflect.Value).Kind();
+ /* */ if (_4 === (24)) { $s = 147; continue; }
+ /* */ if (_4 === (23)) { $s = 148; continue; }
+ /* */ $s = 149; continue;
+ /* if (_4 === (24)) { */ case 147:
+ $clone(t$5, reflect.Value).SetString(($bytesToString(comment)));
+ $s = 149; continue;
+ /* } else if (_4 === (23)) { */ case 148:
+ _r$57 = reflect.ValueOf(comment); /* */ $s = 150; case 150: if($c) { $c = false; _r$57 = _r$57.$blk(); } if (_r$57 && _r$57.$blk !== undefined) { break s; }
+ $r = $clone(t$5, reflect.Value).Set($clone(_r$57, reflect.Value)); /* */ $s = 151; case 151: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 149:
+ case 146:
+ t$6 = saveXML;
+ _5 = $clone(t$6, reflect.Value).Kind();
+ /* */ if (_5 === (24)) { $s = 153; continue; }
+ /* */ if (_5 === (23)) { $s = 154; continue; }
+ /* */ $s = 155; continue;
+ /* if (_5 === (24)) { */ case 153:
+ $clone(t$6, reflect.Value).SetString(($bytesToString(saveXMLData)));
+ $s = 155; continue;
+ /* } else if (_5 === (23)) { */ case 154:
+ _r$58 = $clone(t$6, reflect.Value).Type().Elem(); /* */ $s = 158; case 158: if($c) { $c = false; _r$58 = _r$58.$blk(); } if (_r$58 && _r$58.$blk !== undefined) { break s; }
+ _r$59 = _r$58.Kind(); /* */ $s = 159; case 159: if($c) { $c = false; _r$59 = _r$59.$blk(); } if (_r$59 && _r$59.$blk !== undefined) { break s; }
+ /* */ if (_r$59 === 8) { $s = 156; continue; }
+ /* */ $s = 157; continue;
+ /* if (_r$59 === 8) { */ case 156:
+ _r$60 = reflect.ValueOf(saveXMLData); /* */ $s = 160; case 160: if($c) { $c = false; _r$60 = _r$60.$blk(); } if (_r$60 && _r$60.$blk !== undefined) { break s; }
+ $r = $clone(t$6, reflect.Value).Set($clone(_r$60, reflect.Value)); /* */ $s = 161; case 161: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 157:
+ /* } */ case 155:
+ case 152:
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.unmarshal }; } $f.$ptr = $ptr; $f._1 = _1; $f._2 = _2; $f._3 = _3; $f._4 = _4; $f._5 = _5; $f._arg = _arg; $f._arg$1 = _arg$1; $f._i = _i; $f._i$1 = _i$1; $f._i$2 = _i$2; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$19 = _r$19; $f._r$20 = _r$20; $f._r$21 = _r$21; $f._r$22 = _r$22; $f._r$23 = _r$23; $f._r$24 = _r$24; $f._r$25 = _r$25; $f._r$26 = _r$26; $f._r$27 = _r$27; $f._r$28 = _r$28; $f._r$29 = _r$29; $f._r$30 = _r$30; $f._r$31 = _r$31; $f._r$32 = _r$32; $f._r$33 = _r$33; $f._r$34 = _r$34; $f._r$35 = _r$35; $f._r$36 = _r$36; $f._r$37 = _r$37; $f._r$38 = _r$38; $f._r$39 = _r$39; $f._r$40 = _r$40; $f._r$41 = _r$41; $f._r$42 = _r$42; $f._r$43 = _r$43; $f._r$44 = _r$44; $f._r$45 = _r$45; $f._r$46 = _r$46; $f._r$47 = _r$47; $f._r$48 = _r$48; $f._r$49 = _r$49; $f._r$50 = _r$50; $f._r$51 = _r$51; $f._r$52 = _r$52; $f._r$53 = _r$53; $f._r$54 = _r$54; $f._r$55 = _r$55; $f._r$56 = _r$56; $f._r$57 = _r$57; $f._r$58 = _r$58; $f._r$59 = _r$59; $f._r$6 = _r$6; $f._r$60 = _r$60; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._ref = _ref; $f._ref$1 = _ref$1; $f._ref$2 = _ref$2; $f._ref$3 = _ref$3; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f._tuple$5 = _tuple$5; $f._v = _v; $f._v$1 = _v$1; $f._v$2 = _v$2; $f._v$3 = _v$3; $f._v$4 = _v$4; $f._v$5 = _v$5; $f.a = a; $f.any = any; $f.comment = comment; $f.consumed = consumed; $f.data = data; $f.e = e; $f.e$1 = e$1; $f.err = err; $f.err$1 = err$1; $f.err$10 = err$10; $f.err$2 = err$2; $f.err$3 = err$3; $f.err$4 = err$4; $f.err$5 = err$5; $f.err$6 = err$6; $f.err$7 = err$7; $f.err$8 = err$8; $f.err$9 = err$9; $f.finfo = finfo; $f.finfo$1 = finfo$1; $f.finfo$2 = finfo$2; $f.finfo$3 = finfo$3; $f.fv = fv; $f.handled = handled; $f.i = i; $f.i$1 = i$1; $f.n = n; $f.ok = ok; $f.ok$1 = ok$1; $f.p = p; $f.pv = pv; $f.pv$1 = pv$1; $f.pv$2 = pv$2; $f.saveAny = saveAny; $f.saveComment = saveComment; $f.saveData = saveData; $f.saveXML = saveXML; $f.saveXMLData = saveXMLData; $f.saveXMLIndex = saveXMLIndex; $f.savedOffset = savedOffset; $f.start = start; $f.strv = strv; $f.strv$1 = strv$1; $f.sv = sv; $f.t = t; $f.t$1 = t$1; $f.t$2 = t$2; $f.t$3 = t$3; $f.t$4 = t$4; $f.t$5 = t$5; $f.t$6 = t$6; $f.tinfo = tinfo; $f.tok = tok; $f.tok$1 = tok$1; $f.typ = typ; $f.typ$1 = typ$1; $f.v = v; $f.val = val; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.unmarshal = function(val, start) { return this.$val.unmarshal(val, start); };
+ copyValue = function(dst, src) {
+ var $ptr, _1, _arg, _arg$1, _arg$2, _arg$3, _arg$4, _arg$5, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$6, _r$7, _r$8, _r$9, _tuple, _tuple$1, _tuple$2, _tuple$3, dst, dst0, err, err$1, err$2, err$3, err$4, ftmp, itmp, src, utmp, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _arg$3 = $f._arg$3; _arg$4 = $f._arg$4; _arg$5 = $f._arg$5; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; dst = $f.dst; dst0 = $f.dst0; err = $f.err; err$1 = $f.err$1; err$2 = $f.err$2; err$3 = $f.err$3; err$4 = $f.err$4; ftmp = $f.ftmp; itmp = $f.itmp; src = $f.src; utmp = $f.utmp; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ err = $ifaceNil;
+ dst0 = dst;
+ /* */ if ($clone(dst, reflect.Value).Kind() === 22) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ($clone(dst, reflect.Value).Kind() === 22) { */ case 1:
+ /* */ if ($clone(dst, reflect.Value).IsNil()) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if ($clone(dst, reflect.Value).IsNil()) { */ case 3:
+ _r$6 = $clone(dst, reflect.Value).Type().Elem(); /* */ $s = 5; case 5: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$7 = reflect.New(_r$6); /* */ $s = 6; case 6: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $r = $clone(dst, reflect.Value).Set($clone(_r$7, reflect.Value)); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 4:
+ _r$8 = $clone(dst, reflect.Value).Elem(); /* */ $s = 8; case 8: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ dst = _r$8;
+ /* } */ case 2:
+ _1 = $clone(dst, reflect.Value).Kind();
+ /* */ if (_1 === (0)) { $s = 10; continue; }
+ /* */ if ((_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6))) { $s = 11; continue; }
+ /* */ if ((_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12))) { $s = 12; continue; }
+ /* */ if ((_1 === (13)) || (_1 === (14))) { $s = 13; continue; }
+ /* */ if (_1 === (1)) { $s = 14; continue; }
+ /* */ if (_1 === (24)) { $s = 15; continue; }
+ /* */ if (_1 === (23)) { $s = 16; continue; }
+ /* */ $s = 17; continue;
+ /* if (_1 === (0)) { */ case 10:
+ $s = 18; continue;
+ /* } else if ((_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6))) { */ case 11:
+ _arg = ($bytesToString(src));
+ _r$9 = $clone(dst, reflect.Value).Type().Bits(); /* */ $s = 19; case 19: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _arg$1 = _r$9;
+ _r$10 = strconv.ParseInt(_arg, 10, _arg$1); /* */ $s = 20; case 20: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _tuple = _r$10;
+ itmp = _tuple[0];
+ err$1 = _tuple[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ err = err$1;
+ $s = -1; return err;
+ }
+ $clone(dst, reflect.Value).SetInt(itmp);
+ $s = 18; continue;
+ /* } else if ((_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12))) { */ case 12:
+ _arg$2 = ($bytesToString(src));
+ _r$11 = $clone(dst, reflect.Value).Type().Bits(); /* */ $s = 21; case 21: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _arg$3 = _r$11;
+ _r$12 = strconv.ParseUint(_arg$2, 10, _arg$3); /* */ $s = 22; case 22: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _tuple$1 = _r$12;
+ utmp = _tuple$1[0];
+ err$2 = _tuple$1[1];
+ if (!($interfaceIsEqual(err$2, $ifaceNil))) {
+ err = err$2;
+ $s = -1; return err;
+ }
+ $clone(dst, reflect.Value).SetUint(utmp);
+ $s = 18; continue;
+ /* } else if ((_1 === (13)) || (_1 === (14))) { */ case 13:
+ _arg$4 = ($bytesToString(src));
+ _r$13 = $clone(dst, reflect.Value).Type().Bits(); /* */ $s = 23; case 23: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _arg$5 = _r$13;
+ _r$14 = strconv.ParseFloat(_arg$4, _arg$5); /* */ $s = 24; case 24: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ _tuple$2 = _r$14;
+ ftmp = _tuple$2[0];
+ err$3 = _tuple$2[1];
+ if (!($interfaceIsEqual(err$3, $ifaceNil))) {
+ err = err$3;
+ $s = -1; return err;
+ }
+ $clone(dst, reflect.Value).SetFloat(ftmp);
+ $s = 18; continue;
+ /* } else if (_1 === (1)) { */ case 14:
+ _r$15 = strings.TrimSpace(($bytesToString(src))); /* */ $s = 25; case 25: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ _r$16 = strconv.ParseBool(_r$15); /* */ $s = 26; case 26: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ _tuple$3 = _r$16;
+ value = _tuple$3[0];
+ err$4 = _tuple$3[1];
+ if (!($interfaceIsEqual(err$4, $ifaceNil))) {
+ err = err$4;
+ $s = -1; return err;
+ }
+ $clone(dst, reflect.Value).SetBool(value);
+ $s = 18; continue;
+ /* } else if (_1 === (24)) { */ case 15:
+ $clone(dst, reflect.Value).SetString(($bytesToString(src)));
+ $s = 18; continue;
+ /* } else if (_1 === (23)) { */ case 16:
+ if (src.$length === 0) {
+ src = new sliceType([]);
+ }
+ $r = $clone(dst, reflect.Value).SetBytes(src); /* */ $s = 27; case 27: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 18; continue;
+ /* } else { */ case 17:
+ _r$17 = $clone(dst0, reflect.Value).Type().String(); /* */ $s = 28; case 28: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ _r$18 = errors.New("cannot unmarshal into " + _r$17); /* */ $s = 29; case 29: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ err = _r$18;
+ $s = -1; return err;
+ /* } */ case 18:
+ case 9:
+ err = $ifaceNil;
+ $s = -1; return err;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: copyValue }; } $f.$ptr = $ptr; $f._1 = _1; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._arg$3 = _arg$3; $f._arg$4 = _arg$4; $f._arg$5 = _arg$5; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f.dst = dst; $f.dst0 = dst0; $f.err = err; $f.err$1 = err$1; $f.err$2 = err$2; $f.err$3 = err$3; $f.err$4 = err$4; $f.ftmp = ftmp; $f.itmp = itmp; $f.src = src; $f.utmp = utmp; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.ptr.prototype.unmarshalPath = function(tinfo, sv, parents, start) {
+ var $ptr, _i, _i$1, _r$10, _r$6, _r$7, _r$8, _r$9, _ref, _ref$1, _ref$2, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, consumed, consumed2, err, err$1, err$2, finfo, i, j, p, parents, recurse, start, sv, t, t$1, tinfo, tok, x$2, x$3, x$4, x$5, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _i$1 = $f._i$1; _r$10 = $f._r$10; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _ref = $f._ref; _ref$1 = $f._ref$1; _ref$2 = $f._ref$2; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$10 = $f._tmp$10; _tmp$11 = $f._tmp$11; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tmp$7 = $f._tmp$7; _tmp$8 = $f._tmp$8; _tmp$9 = $f._tmp$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; consumed = $f.consumed; consumed2 = $f.consumed2; err = $f.err; err$1 = $f.err$1; err$2 = $f.err$2; finfo = $f.finfo; i = $f.i; j = $f.j; p = $f.p; parents = $f.parents; recurse = $f.recurse; start = $f.start; sv = $f.sv; t = $f.t; t$1 = $f.t$1; tinfo = $f.tinfo; tok = $f.tok; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ consumed = false;
+ err = $ifaceNil;
+ p = this;
+ recurse = false;
+ _ref = tinfo.fields;
+ _i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 2; continue; }
+ i = _i;
+ finfo = (x$2 = tinfo.fields, ((i < 0 || i >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + i]));
+ /* */ if (((finfo.flags & 1) === 0) || finfo.parents.$length < parents.$length || !(finfo.xmlns === "") && !(finfo.xmlns === start.Name.Space)) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (((finfo.flags & 1) === 0) || finfo.parents.$length < parents.$length || !(finfo.xmlns === "") && !(finfo.xmlns === start.Name.Space)) { */ case 3:
+ _i++;
+ /* continue; */ $s = 1; continue;
+ /* } */ case 4:
+ _ref$1 = parents;
+ _i$1 = 0;
+ /* while (true) { */ case 5:
+ /* if (!(_i$1 < _ref$1.$length)) { break; } */ if(!(_i$1 < _ref$1.$length)) { $s = 6; continue; }
+ j = _i$1;
+ if (!(((j < 0 || j >= parents.$length) ? ($throwRuntimeError("index out of range"), undefined) : parents.$array[parents.$offset + j]) === (x$3 = finfo.parents, ((j < 0 || j >= x$3.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + j])))) {
+ _i++;
+ /* continue Loop; */ $s = 1; continue s;
+ }
+ _i$1++;
+ /* } */ $s = 5; continue; case 6:
+ /* */ if ((finfo.parents.$length === parents.$length) && finfo.name === start.Name.Local) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if ((finfo.parents.$length === parents.$length) && finfo.name === start.Name.Local) { */ case 7:
+ _tmp = true;
+ _r$6 = finfo.value($clone(sv, reflect.Value)); /* */ $s = 9; case 9: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$7 = p.unmarshal($clone(_r$6, reflect.Value), start); /* */ $s = 10; case 10: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _tmp$1 = _r$7;
+ consumed = _tmp;
+ err = _tmp$1;
+ $s = -1; return [consumed, err];
+ /* } */ case 8:
+ if (finfo.parents.$length > parents.$length && (x$4 = finfo.parents, x$5 = parents.$length, ((x$5 < 0 || x$5 >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + x$5])) === start.Name.Local) {
+ recurse = true;
+ parents = $subslice(finfo.parents, 0, (parents.$length + 1 >> 0));
+ /* break; */ $s = 2; continue;
+ }
+ _i++;
+ /* } */ $s = 1; continue; case 2:
+ if (!recurse) {
+ _tmp$2 = false;
+ _tmp$3 = $ifaceNil;
+ consumed = _tmp$2;
+ err = _tmp$3;
+ $s = -1; return [consumed, err];
+ }
+ /* while (true) { */ case 11:
+ t = [t];
+ tok = $ifaceNil;
+ _r$8 = p.Token(); /* */ $s = 13; case 13: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _tuple = _r$8;
+ tok = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ _tmp$4 = true;
+ _tmp$5 = err;
+ consumed = _tmp$4;
+ err = _tmp$5;
+ $s = -1; return [consumed, err];
+ }
+ _ref$2 = tok;
+ /* */ if ($assertType(_ref$2, StartElement, true)[1]) { $s = 14; continue; }
+ /* */ if ($assertType(_ref$2, EndElement, true)[1]) { $s = 15; continue; }
+ /* */ $s = 16; continue;
+ /* if ($assertType(_ref$2, StartElement, true)[1]) { */ case 14:
+ t[0] = $clone(_ref$2.$val, StartElement);
+ _r$9 = p.unmarshalPath(tinfo, $clone(sv, reflect.Value), parents, t[0]); /* */ $s = 17; case 17: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _tuple$1 = _r$9;
+ consumed2 = _tuple$1[0];
+ err$1 = _tuple$1[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ _tmp$6 = true;
+ _tmp$7 = err$1;
+ consumed = _tmp$6;
+ err = _tmp$7;
+ $s = -1; return [consumed, err];
+ }
+ /* */ if (!consumed2) { $s = 18; continue; }
+ /* */ $s = 19; continue;
+ /* if (!consumed2) { */ case 18:
+ _r$10 = p.Skip(); /* */ $s = 20; case 20: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ err$2 = _r$10;
+ if (!($interfaceIsEqual(err$2, $ifaceNil))) {
+ _tmp$8 = true;
+ _tmp$9 = err$2;
+ consumed = _tmp$8;
+ err = _tmp$9;
+ $s = -1; return [consumed, err];
+ }
+ /* } */ case 19:
+ $s = 16; continue;
+ /* } else if ($assertType(_ref$2, EndElement, true)[1]) { */ case 15:
+ t$1 = $clone(_ref$2.$val, EndElement);
+ _tmp$10 = true;
+ _tmp$11 = $ifaceNil;
+ consumed = _tmp$10;
+ err = _tmp$11;
+ $s = -1; return [consumed, err];
+ /* } */ case 16:
+ /* } */ $s = 11; continue; case 12:
+ $s = -1; return [consumed, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.unmarshalPath }; } $f.$ptr = $ptr; $f._i = _i; $f._i$1 = _i$1; $f._r$10 = _r$10; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._ref = _ref; $f._ref$1 = _ref$1; $f._ref$2 = _ref$2; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$10 = _tmp$10; $f._tmp$11 = _tmp$11; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tmp$7 = _tmp$7; $f._tmp$8 = _tmp$8; $f._tmp$9 = _tmp$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.consumed = consumed; $f.consumed2 = consumed2; $f.err = err; $f.err$1 = err$1; $f.err$2 = err$2; $f.finfo = finfo; $f.i = i; $f.j = j; $f.p = p; $f.parents = parents; $f.recurse = recurse; $f.start = start; $f.sv = sv; $f.t = t; $f.t$1 = t$1; $f.tinfo = tinfo; $f.tok = tok; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.unmarshalPath = function(tinfo, sv, parents, start) { return this.$val.unmarshalPath(tinfo, sv, parents, start); };
+ Decoder.ptr.prototype.Skip = function() {
+ var $ptr, _r$6, _r$7, _ref, _tuple, d, err, err$1, tok, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; _r$7 = $f._r$7; _ref = $f._ref; _tuple = $f._tuple; d = $f.d; err = $f.err; err$1 = $f.err$1; tok = $f.tok; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ /* while (true) { */ case 1:
+ _r$6 = d.Token(); /* */ $s = 3; case 3: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple = _r$6;
+ tok = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ _ref = tok;
+ /* */ if ($assertType(_ref, StartElement, true)[1]) { $s = 4; continue; }
+ /* */ if ($assertType(_ref, EndElement, true)[1]) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if ($assertType(_ref, StartElement, true)[1]) { */ case 4:
+ _r$7 = d.Skip(); /* */ $s = 7; case 7: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ err$1 = _r$7;
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ $s = 6; continue;
+ /* } else if ($assertType(_ref, EndElement, true)[1]) { */ case 5:
+ $s = -1; return $ifaceNil;
+ /* } */ case 6:
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.Skip }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._ref = _ref; $f._tuple = _tuple; $f.d = d; $f.err = err; $f.err$1 = err$1; $f.tok = tok; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.Skip = function() { return this.$val.Skip(); };
+ getTypeInfo = function(typ) {
+ var $ptr, _entry, _i, _key, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$6, _r$7, _r$8, _r$9, _ref, _tuple, _tuple$1, _tuple$2, err, err$1, err$2, err$3, f, finfo, finfo$1, i, inner, n, ok, t, tinfo, typ, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _i = $f._i; _key = $f._key; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _ref = $f._ref; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; err = $f.err; err$1 = $f.err$1; err$2 = $f.err$2; err$3 = $f.err$3; f = $f.f; finfo = $f.finfo; finfo$1 = $f.finfo$1; i = $f.i; inner = $f.inner; n = $f.n; ok = $f.ok; t = $f.t; tinfo = $f.tinfo; typ = $f.typ; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = tinfoLock.RLock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _tuple = (_entry = tinfoMap[reflect.Type.keyFor(typ)], _entry !== undefined ? [_entry.v, true] : [ptrType$12.nil, false]);
+ tinfo = _tuple[0];
+ ok = _tuple[1];
+ $r = tinfoLock.RUnlock(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if (ok) {
+ $s = -1; return [tinfo, $ifaceNil];
+ }
+ tinfo = new typeInfo.ptr(ptrType$8.nil, sliceType$8.nil);
+ _r$6 = typ.Kind(); /* */ $s = 5; case 5: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ /* */ if ((_r$6 === 25) && !($interfaceIsEqual(typ, nameType))) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if ((_r$6 === 25) && !($interfaceIsEqual(typ, nameType))) { */ case 3:
+ _r$7 = typ.NumField(); /* */ $s = 6; case 6: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ n = _r$7;
+ i = 0;
+ /* while (true) { */ case 7:
+ /* if (!(i < n)) { break; } */ if(!(i < n)) { $s = 8; continue; }
+ f = [f];
+ finfo = [finfo];
+ _r$8 = typ.Field(i); /* */ $s = 9; case 9: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ f[0] = $clone(_r$8, reflect.StructField);
+ /* */ if ((!(f[0].PkgPath === "") && !f[0].Anonymous) || new reflect.StructTag(f[0].Tag).Get("xml") === "-") { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if ((!(f[0].PkgPath === "") && !f[0].Anonymous) || new reflect.StructTag(f[0].Tag).Get("xml") === "-") { */ case 10:
+ i = i + (1) >> 0;
+ /* continue; */ $s = 7; continue;
+ /* } */ case 11:
+ /* */ if (f[0].Anonymous) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if (f[0].Anonymous) { */ case 12:
+ t = f[0].Type;
+ _r$9 = t.Kind(); /* */ $s = 16; case 16: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ /* */ if (_r$9 === 22) { $s = 14; continue; }
+ /* */ $s = 15; continue;
+ /* if (_r$9 === 22) { */ case 14:
+ _r$10 = t.Elem(); /* */ $s = 17; case 17: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ t = _r$10;
+ /* } */ case 15:
+ _r$11 = t.Kind(); /* */ $s = 20; case 20: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ /* */ if (_r$11 === 25) { $s = 18; continue; }
+ /* */ $s = 19; continue;
+ /* if (_r$11 === 25) { */ case 18:
+ _r$12 = getTypeInfo(t); /* */ $s = 21; case 21: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _tuple$1 = _r$12;
+ inner = _tuple$1[0];
+ err = _tuple$1[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [ptrType$12.nil, err];
+ }
+ if (tinfo.xmlname === ptrType$8.nil) {
+ tinfo.xmlname = inner.xmlname;
+ }
+ _ref = inner.fields;
+ _i = 0;
+ /* while (true) { */ case 22:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 23; continue; }
+ finfo[0] = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), fieldInfo);
+ finfo[0].idx = $appendSlice(new sliceType$9([i]), finfo[0].idx);
+ _r$13 = addFieldInfo(typ, tinfo, finfo[0]); /* */ $s = 24; case 24: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ err$1 = _r$13;
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return [ptrType$12.nil, err$1];
+ }
+ _i++;
+ /* } */ $s = 22; continue; case 23:
+ i = i + (1) >> 0;
+ /* continue; */ $s = 7; continue;
+ /* } */ case 19:
+ /* } */ case 13:
+ _r$14 = structFieldInfo(typ, f[0]); /* */ $s = 25; case 25: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ _tuple$2 = _r$14;
+ finfo$1 = _tuple$2[0];
+ err$2 = _tuple$2[1];
+ if (!($interfaceIsEqual(err$2, $ifaceNil))) {
+ $s = -1; return [ptrType$12.nil, err$2];
+ }
+ /* */ if (f[0].Name === "XMLName") { $s = 26; continue; }
+ /* */ $s = 27; continue;
+ /* if (f[0].Name === "XMLName") { */ case 26:
+ tinfo.xmlname = finfo$1;
+ i = i + (1) >> 0;
+ /* continue; */ $s = 7; continue;
+ /* } */ case 27:
+ _r$15 = addFieldInfo(typ, tinfo, finfo$1); /* */ $s = 28; case 28: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ err$3 = _r$15;
+ if (!($interfaceIsEqual(err$3, $ifaceNil))) {
+ $s = -1; return [ptrType$12.nil, err$3];
+ }
+ i = i + (1) >> 0;
+ /* } */ $s = 7; continue; case 8:
+ /* } */ case 4:
+ $r = tinfoLock.Lock(); /* */ $s = 29; case 29: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _key = typ; (tinfoMap || $throwRuntimeError("assignment to entry in nil map"))[reflect.Type.keyFor(_key)] = { k: _key, v: tinfo };
+ $r = tinfoLock.Unlock(); /* */ $s = 30; case 30: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return [tinfo, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: getTypeInfo }; } $f.$ptr = $ptr; $f._entry = _entry; $f._i = _i; $f._key = _key; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._ref = _ref; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f.err = err; $f.err$1 = err$1; $f.err$2 = err$2; $f.err$3 = err$3; $f.f = f; $f.finfo = finfo; $f.finfo$1 = finfo$1; $f.i = i; $f.inner = inner; $f.n = n; $f.ok = ok; $f.t = t; $f.tinfo = tinfo; $f.typ = typ; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ structFieldInfo = function(typ, f) {
+ var $ptr, _1, _2, _i, _r$10, _r$11, _r$12, _r$6, _r$7, _r$8, _r$9, _ref, _tmp, _tmp$1, _tmp$2, _tmp$3, f, finfo, flag, ftyp, i, mode, parents, tag, tokens, typ, valid, x$2, x$3, xmlname, xmlname$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _2 = $f._2; _i = $f._i; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _ref = $f._ref; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; f = $f.f; finfo = $f.finfo; flag = $f.flag; ftyp = $f.ftyp; i = $f.i; mode = $f.mode; parents = $f.parents; tag = $f.tag; tokens = $f.tokens; typ = $f.typ; valid = $f.valid; x$2 = $f.x$2; x$3 = $f.x$3; xmlname = $f.xmlname; xmlname$1 = $f.xmlname$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ finfo = new fieldInfo.ptr(f.Index, "", "", 0, sliceType$3.nil);
+ tag = new reflect.StructTag(f.Tag).Get("xml");
+ i = strings.Index(tag, " ");
+ if (i >= 0) {
+ _tmp = $substring(tag, 0, i);
+ _tmp$1 = $substring(tag, (i + 1 >> 0));
+ finfo.xmlns = _tmp;
+ tag = _tmp$1;
+ }
+ tokens = strings.Split(tag, ",");
+ /* */ if (tokens.$length === 1) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (tokens.$length === 1) { */ case 1:
+ finfo.flags = 1;
+ $s = 3; continue;
+ /* } else { */ case 2:
+ tag = (0 >= tokens.$length ? ($throwRuntimeError("index out of range"), undefined) : tokens.$array[tokens.$offset + 0]);
+ _ref = $subslice(tokens, 1);
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ flag = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ _1 = flag;
+ if (_1 === ("attr")) {
+ finfo.flags = finfo.flags | (2);
+ } else if (_1 === ("cdata")) {
+ finfo.flags = finfo.flags | (4);
+ } else if (_1 === ("chardata")) {
+ finfo.flags = finfo.flags | (8);
+ } else if (_1 === ("innerxml")) {
+ finfo.flags = finfo.flags | (16);
+ } else if (_1 === ("comment")) {
+ finfo.flags = finfo.flags | (32);
+ } else if (_1 === ("any")) {
+ finfo.flags = finfo.flags | (64);
+ } else if (_1 === ("omitempty")) {
+ finfo.flags = finfo.flags | (128);
+ }
+ _i++;
+ }
+ valid = true;
+ mode = finfo.flags & 127;
+ _2 = mode;
+ if (_2 === (0)) {
+ finfo.flags = finfo.flags | (1);
+ } else if ((_2 === (2)) || (_2 === (4)) || (_2 === (8)) || (_2 === (16)) || (_2 === (32)) || (_2 === (64)) || (_2 === (66))) {
+ if (f.Name === "XMLName" || !(tag === "") && !((mode === 2))) {
+ valid = false;
+ }
+ } else {
+ valid = false;
+ }
+ if ((finfo.flags & 127) === 64) {
+ finfo.flags = finfo.flags | (1);
+ }
+ if (!(((finfo.flags & 128) === 0)) && ((finfo.flags & 3) === 0)) {
+ valid = false;
+ }
+ /* */ if (!valid) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (!valid) { */ case 4:
+ _r$6 = fmt.Errorf("xml: invalid tag in field %s of type %s: %q", new sliceType$5([new $String(f.Name), typ, new $String(new reflect.StructTag(f.Tag).Get("xml"))])); /* */ $s = 6; case 6: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return [ptrType$8.nil, _r$6];
+ /* } */ case 5:
+ /* } */ case 3:
+ /* */ if (!(finfo.xmlns === "") && tag === "") { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (!(finfo.xmlns === "") && tag === "") { */ case 7:
+ _r$7 = fmt.Errorf("xml: namespace without name in field %s of type %s: %q", new sliceType$5([new $String(f.Name), typ, new $String(new reflect.StructTag(f.Tag).Get("xml"))])); /* */ $s = 9; case 9: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $s = -1; return [ptrType$8.nil, _r$7];
+ /* } */ case 8:
+ if (f.Name === "XMLName") {
+ finfo.name = tag;
+ $s = -1; return [finfo, $ifaceNil];
+ }
+ /* */ if (tag === "") { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if (tag === "") { */ case 10:
+ _r$8 = lookupXMLName(f.Type); /* */ $s = 12; case 12: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ xmlname = _r$8;
+ if (!(xmlname === ptrType$8.nil)) {
+ _tmp$2 = xmlname.xmlns;
+ _tmp$3 = xmlname.name;
+ finfo.xmlns = _tmp$2;
+ finfo.name = _tmp$3;
+ } else {
+ finfo.name = f.Name;
+ }
+ $s = -1; return [finfo, $ifaceNil];
+ /* } */ case 11:
+ parents = strings.Split(tag, ">");
+ if ((0 >= parents.$length ? ($throwRuntimeError("index out of range"), undefined) : parents.$array[parents.$offset + 0]) === "") {
+ (0 >= parents.$length ? ($throwRuntimeError("index out of range"), undefined) : parents.$array[parents.$offset + 0] = f.Name);
+ }
+ /* */ if ((x$2 = parents.$length - 1 >> 0, ((x$2 < 0 || x$2 >= parents.$length) ? ($throwRuntimeError("index out of range"), undefined) : parents.$array[parents.$offset + x$2])) === "") { $s = 13; continue; }
+ /* */ $s = 14; continue;
+ /* if ((x$2 = parents.$length - 1 >> 0, ((x$2 < 0 || x$2 >= parents.$length) ? ($throwRuntimeError("index out of range"), undefined) : parents.$array[parents.$offset + x$2])) === "") { */ case 13:
+ _r$9 = fmt.Errorf("xml: trailing '>' in field %s of type %s", new sliceType$5([new $String(f.Name), typ])); /* */ $s = 15; case 15: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ $s = -1; return [ptrType$8.nil, _r$9];
+ /* } */ case 14:
+ finfo.name = (x$3 = parents.$length - 1 >> 0, ((x$3 < 0 || x$3 >= parents.$length) ? ($throwRuntimeError("index out of range"), undefined) : parents.$array[parents.$offset + x$3]));
+ /* */ if (parents.$length > 1) { $s = 16; continue; }
+ /* */ $s = 17; continue;
+ /* if (parents.$length > 1) { */ case 16:
+ /* */ if (((finfo.flags & 1)) === 0) { $s = 18; continue; }
+ /* */ $s = 19; continue;
+ /* if (((finfo.flags & 1)) === 0) { */ case 18:
+ _r$10 = fmt.Errorf("xml: %s chain not valid with %s flag", new sliceType$5([new $String(tag), new $String(strings.Join($subslice(tokens, 1), ","))])); /* */ $s = 20; case 20: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ $s = -1; return [ptrType$8.nil, _r$10];
+ /* } */ case 19:
+ finfo.parents = $subslice(parents, 0, (parents.$length - 1 >> 0));
+ /* } */ case 17:
+ /* */ if (!(((finfo.flags & 1) === 0))) { $s = 21; continue; }
+ /* */ $s = 22; continue;
+ /* if (!(((finfo.flags & 1) === 0))) { */ case 21:
+ ftyp = f.Type;
+ _r$11 = lookupXMLName(ftyp); /* */ $s = 23; case 23: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ xmlname$1 = _r$11;
+ /* */ if (!(xmlname$1 === ptrType$8.nil) && !(xmlname$1.name === finfo.name)) { $s = 24; continue; }
+ /* */ $s = 25; continue;
+ /* if (!(xmlname$1 === ptrType$8.nil) && !(xmlname$1.name === finfo.name)) { */ case 24:
+ _r$12 = fmt.Errorf("xml: name %q in tag of %s.%s conflicts with name %q in %s.XMLName", new sliceType$5([new $String(finfo.name), typ, new $String(f.Name), new $String(xmlname$1.name), ftyp])); /* */ $s = 26; case 26: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ $s = -1; return [ptrType$8.nil, _r$12];
+ /* } */ case 25:
+ /* } */ case 22:
+ $s = -1; return [finfo, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: structFieldInfo }; } $f.$ptr = $ptr; $f._1 = _1; $f._2 = _2; $f._i = _i; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._ref = _ref; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f.f = f; $f.finfo = finfo; $f.flag = flag; $f.ftyp = ftyp; $f.i = i; $f.mode = mode; $f.parents = parents; $f.tag = tag; $f.tokens = tokens; $f.typ = typ; $f.valid = valid; $f.x$2 = x$2; $f.x$3 = x$3; $f.xmlname = xmlname; $f.xmlname$1 = xmlname$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ lookupXMLName = function(typ) {
+ var $ptr, _r$10, _r$11, _r$6, _r$7, _r$8, _r$9, _tmp, _tmp$1, _tuple, err, f, finfo, i, n, typ, xmlname, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tuple = $f._tuple; err = $f.err; f = $f.f; finfo = $f.finfo; i = $f.i; n = $f.n; typ = $f.typ; xmlname = $f.xmlname; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ xmlname = ptrType$8.nil;
+ /* while (true) { */ case 1:
+ _r$6 = typ.Kind(); /* */ $s = 3; case 3: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ /* if (!(_r$6 === 22)) { break; } */ if(!(_r$6 === 22)) { $s = 2; continue; }
+ _r$7 = typ.Elem(); /* */ $s = 4; case 4: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ typ = _r$7;
+ /* } */ $s = 1; continue; case 2:
+ _r$8 = typ.Kind(); /* */ $s = 7; case 7: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ /* */ if (!((_r$8 === 25))) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (!((_r$8 === 25))) { */ case 5:
+ xmlname = ptrType$8.nil;
+ $s = -1; return xmlname;
+ /* } */ case 6:
+ _tmp = 0;
+ _r$9 = typ.NumField(); /* */ $s = 8; case 8: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _tmp$1 = _r$9;
+ i = _tmp;
+ n = _tmp$1;
+ /* while (true) { */ case 9:
+ /* if (!(i < n)) { break; } */ if(!(i < n)) { $s = 10; continue; }
+ f = [f];
+ _r$10 = typ.Field(i); /* */ $s = 11; case 11: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ f[0] = $clone(_r$10, reflect.StructField);
+ /* */ if (!(f[0].Name === "XMLName")) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if (!(f[0].Name === "XMLName")) { */ case 12:
+ i = i + (1) >> 0;
+ /* continue; */ $s = 9; continue;
+ /* } */ case 13:
+ _r$11 = structFieldInfo(typ, f[0]); /* */ $s = 14; case 14: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _tuple = _r$11;
+ finfo = _tuple[0];
+ err = _tuple[1];
+ if (!(finfo.name === "") && $interfaceIsEqual(err, $ifaceNil)) {
+ xmlname = finfo;
+ $s = -1; return xmlname;
+ }
+ /* break; */ $s = 10; continue;
+ /* } */ $s = 9; continue; case 10:
+ xmlname = ptrType$8.nil;
+ $s = -1; return xmlname;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: lookupXMLName }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tuple = _tuple; $f.err = err; $f.f = f; $f.finfo = finfo; $f.i = i; $f.n = n; $f.typ = typ; $f.xmlname = xmlname; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ min = function(a, b) {
+ var $ptr, a, b;
+ if (a <= b) {
+ return a;
+ }
+ return b;
+ };
+ addFieldInfo = function(typ, tinfo, newf) {
+ var $ptr, _i, _i$1, _i$2, _r$6, _r$7, _ref, _ref$1, _ref$2, c, conflicts, f1, f2, i, i$1, i$2, i$3, minl, newf, oldf, oldf$1, p, tinfo, typ, x$10, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _i$1 = $f._i$1; _i$2 = $f._i$2; _r$6 = $f._r$6; _r$7 = $f._r$7; _ref = $f._ref; _ref$1 = $f._ref$1; _ref$2 = $f._ref$2; c = $f.c; conflicts = $f.conflicts; f1 = $f.f1; f2 = $f.f2; i = $f.i; i$1 = $f.i$1; i$2 = $f.i$2; i$3 = $f.i$3; minl = $f.minl; newf = $f.newf; oldf = $f.oldf; oldf$1 = $f.oldf$1; p = $f.p; tinfo = $f.tinfo; typ = $f.typ; x$10 = $f.x$10; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; x$8 = $f.x$8; x$9 = $f.x$9; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ conflicts = sliceType$9.nil;
+ _ref = tinfo.fields;
+ _i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 2; continue; }
+ i = _i;
+ oldf = (x$2 = tinfo.fields, ((i < 0 || i >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + i]));
+ if (!(((oldf.flags & 127) === (newf.flags & 127)))) {
+ _i++;
+ /* continue; */ $s = 1; continue;
+ }
+ if (!(oldf.xmlns === "") && !(newf.xmlns === "") && !(oldf.xmlns === newf.xmlns)) {
+ _i++;
+ /* continue; */ $s = 1; continue;
+ }
+ minl = min(newf.parents.$length, oldf.parents.$length);
+ p = 0;
+ while (true) {
+ if (!(p < minl)) { break; }
+ if (!((x$3 = oldf.parents, ((p < 0 || p >= x$3.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + p])) === (x$4 = newf.parents, ((p < 0 || p >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + p])))) {
+ _i++;
+ /* continue Loop; */ $s = 1; continue s;
+ }
+ p = p + (1) >> 0;
+ }
+ if (oldf.parents.$length > newf.parents.$length) {
+ if ((x$5 = oldf.parents, x$6 = newf.parents.$length, ((x$6 < 0 || x$6 >= x$5.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$5.$array[x$5.$offset + x$6])) === newf.name) {
+ conflicts = $append(conflicts, i);
+ }
+ } else if (oldf.parents.$length < newf.parents.$length) {
+ if ((x$7 = newf.parents, x$8 = oldf.parents.$length, ((x$8 < 0 || x$8 >= x$7.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$7.$array[x$7.$offset + x$8])) === oldf.name) {
+ conflicts = $append(conflicts, i);
+ }
+ } else {
+ if (newf.name === oldf.name) {
+ conflicts = $append(conflicts, i);
+ }
+ }
+ _i++;
+ /* } */ $s = 1; continue; case 2:
+ if (conflicts === sliceType$9.nil) {
+ tinfo.fields = $append(tinfo.fields, newf);
+ $s = -1; return $ifaceNil;
+ }
+ _ref$1 = conflicts;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ i$1 = ((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]);
+ if ((x$9 = tinfo.fields, ((i$1 < 0 || i$1 >= x$9.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$9.$array[x$9.$offset + i$1])).idx.$length < newf.idx.$length) {
+ $s = -1; return $ifaceNil;
+ }
+ _i$1++;
+ }
+ _ref$2 = conflicts;
+ _i$2 = 0;
+ /* while (true) { */ case 3:
+ /* if (!(_i$2 < _ref$2.$length)) { break; } */ if(!(_i$2 < _ref$2.$length)) { $s = 4; continue; }
+ i$2 = ((_i$2 < 0 || _i$2 >= _ref$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$2.$array[_ref$2.$offset + _i$2]);
+ oldf$1 = (x$10 = tinfo.fields, ((i$2 < 0 || i$2 >= x$10.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$10.$array[x$10.$offset + i$2]));
+ /* */ if (oldf$1.idx.$length === newf.idx.$length) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (oldf$1.idx.$length === newf.idx.$length) { */ case 5:
+ _r$6 = typ.FieldByIndex(oldf$1.idx); /* */ $s = 7; case 7: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ f1 = $clone(_r$6, reflect.StructField);
+ _r$7 = typ.FieldByIndex(newf.idx); /* */ $s = 8; case 8: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ f2 = $clone(_r$7, reflect.StructField);
+ $s = -1; return new TagPathError.ptr(typ, f1.Name, new reflect.StructTag(f1.Tag).Get("xml"), f2.Name, new reflect.StructTag(f2.Tag).Get("xml"));
+ /* } */ case 6:
+ _i$2++;
+ /* } */ $s = 3; continue; case 4:
+ c = conflicts.$length - 1 >> 0;
+ while (true) {
+ if (!(c >= 0)) { break; }
+ i$3 = ((c < 0 || c >= conflicts.$length) ? ($throwRuntimeError("index out of range"), undefined) : conflicts.$array[conflicts.$offset + c]);
+ $copySlice($subslice(tinfo.fields, i$3), $subslice(tinfo.fields, (i$3 + 1 >> 0)));
+ tinfo.fields = $subslice(tinfo.fields, 0, (tinfo.fields.$length - 1 >> 0));
+ c = c - (1) >> 0;
+ }
+ tinfo.fields = $append(tinfo.fields, newf);
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: addFieldInfo }; } $f.$ptr = $ptr; $f._i = _i; $f._i$1 = _i$1; $f._i$2 = _i$2; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._ref = _ref; $f._ref$1 = _ref$1; $f._ref$2 = _ref$2; $f.c = c; $f.conflicts = conflicts; $f.f1 = f1; $f.f2 = f2; $f.i = i; $f.i$1 = i$1; $f.i$2 = i$2; $f.i$3 = i$3; $f.minl = minl; $f.newf = newf; $f.oldf = oldf; $f.oldf$1 = oldf$1; $f.p = p; $f.tinfo = tinfo; $f.typ = typ; $f.x$10 = x$10; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.x$8 = x$8; $f.x$9 = x$9; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ TagPathError.ptr.prototype.Error = function() {
+ var $ptr, _r$6, e, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; e = $f.e; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ _r$6 = fmt.Sprintf("%s field %q with tag %q conflicts with field %q with tag %q", new sliceType$5([e.Struct, new $String(e.Field1), new $String(e.Tag1), new $String(e.Field2), new $String(e.Tag2)])); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return _r$6;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: TagPathError.ptr.prototype.Error }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f.e = e; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ TagPathError.prototype.Error = function() { return this.$val.Error(); };
+ fieldInfo.ptr.prototype.value = function(v) {
+ var $ptr, _i, _r$10, _r$11, _r$12, _r$6, _r$7, _r$8, _r$9, _ref, _v, finfo, i, t, v, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _ref = $f._ref; _v = $f._v; finfo = $f.finfo; i = $f.i; t = $f.t; v = $f.v; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ finfo = this;
+ _ref = finfo.idx;
+ _i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 2; continue; }
+ i = _i;
+ x$2 = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ /* */ if (i > 0) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (i > 0) { */ case 3:
+ t = $clone(v, reflect.Value).Type();
+ _r$6 = t.Kind(); /* */ $s = 8; case 8: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ if (!(_r$6 === 22)) { _v = false; $s = 7; continue s; }
+ _r$7 = t.Elem(); /* */ $s = 9; case 9: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _r$8 = _r$7.Kind(); /* */ $s = 10; case 10: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _v = _r$8 === 25; case 7:
+ /* */ if (_v) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (_v) { */ case 5:
+ /* */ if ($clone(v, reflect.Value).IsNil()) { $s = 11; continue; }
+ /* */ $s = 12; continue;
+ /* if ($clone(v, reflect.Value).IsNil()) { */ case 11:
+ _r$9 = $clone(v, reflect.Value).Type().Elem(); /* */ $s = 13; case 13: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _r$10 = reflect.New(_r$9); /* */ $s = 14; case 14: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ $r = $clone(v, reflect.Value).Set($clone(_r$10, reflect.Value)); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 12:
+ _r$11 = $clone(v, reflect.Value).Elem(); /* */ $s = 16; case 16: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ v = _r$11;
+ /* } */ case 6:
+ /* } */ case 4:
+ _r$12 = $clone(v, reflect.Value).Field(x$2); /* */ $s = 17; case 17: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ v = _r$12;
+ _i++;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return v;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: fieldInfo.ptr.prototype.value }; } $f.$ptr = $ptr; $f._i = _i; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._ref = _ref; $f._v = _v; $f.finfo = finfo; $f.i = i; $f.t = t; $f.v = v; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ fieldInfo.prototype.value = function(v) { return this.$val.value(v); };
+ SyntaxError.ptr.prototype.Error = function() {
+ var $ptr, e;
+ e = this;
+ return "XML syntax error on line " + strconv.Itoa(e.Line) + ": " + e.Msg;
+ };
+ SyntaxError.prototype.Error = function() { return this.$val.Error(); };
+ StartElement.ptr.prototype.Copy = function() {
+ var $ptr, attrs, e;
+ e = this;
+ attrs = $makeSlice(sliceType$6, e.Attr.$length);
+ $copySlice(attrs, e.Attr);
+ e.Attr = attrs;
+ return e;
+ };
+ StartElement.prototype.Copy = function() { return this.$val.Copy(); };
+ StartElement.ptr.prototype.End = function() {
+ var $ptr, e;
+ e = this;
+ return new EndElement.ptr($clone(e.Name, Name));
+ };
+ StartElement.prototype.End = function() { return this.$val.End(); };
+ makeCopy = function(b) {
+ var $ptr, b, b1;
+ b1 = $makeSlice(sliceType, b.$length);
+ $copySlice(b1, b);
+ return b1;
+ };
+ CharData.prototype.Copy = function() {
+ var $ptr, c, x$2;
+ c = this;
+ return ((x$2 = makeCopy($subslice(new sliceType(c.$array), c.$offset, c.$offset + c.$length)), $subslice(new CharData(x$2.$array), x$2.$offset, x$2.$offset + x$2.$length)));
+ };
+ $ptrType(CharData).prototype.Copy = function() { return this.$get().Copy(); };
+ Comment.prototype.Copy = function() {
+ var $ptr, c, x$2;
+ c = this;
+ return ((x$2 = makeCopy($subslice(new sliceType(c.$array), c.$offset, c.$offset + c.$length)), $subslice(new Comment(x$2.$array), x$2.$offset, x$2.$offset + x$2.$length)));
+ };
+ $ptrType(Comment).prototype.Copy = function() { return this.$get().Copy(); };
+ ProcInst.ptr.prototype.Copy = function() {
+ var $ptr, p;
+ p = this;
+ p.Inst = makeCopy(p.Inst);
+ return p;
+ };
+ ProcInst.prototype.Copy = function() { return this.$val.Copy(); };
+ Directive.prototype.Copy = function() {
+ var $ptr, d, x$2;
+ d = this;
+ return ((x$2 = makeCopy($subslice(new sliceType(d.$array), d.$offset, d.$offset + d.$length)), $subslice(new Directive(x$2.$array), x$2.$offset, x$2.$offset + x$2.$length)));
+ };
+ $ptrType(Directive).prototype.Copy = function() { return this.$get().Copy(); };
+ Decoder.ptr.prototype.Token = function() {
+ var $ptr, _entry, _entry$1, _i, _i$1, _key, _key$1, _r$6, _r$7, _ref, _ref$1, _ref$2, _tuple, _tuple$1, _tuple$2, _tuple$3, a, d, err, i, ok, ok$1, ok$2, t, t1, t1$1, t1$2, v, v$1, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _entry$1 = $f._entry$1; _i = $f._i; _i$1 = $f._i$1; _key = $f._key; _key$1 = $f._key$1; _r$6 = $f._r$6; _r$7 = $f._r$7; _ref = $f._ref; _ref$1 = $f._ref$1; _ref$2 = $f._ref$2; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; a = $f.a; d = $f.d; err = $f.err; i = $f.i; ok = $f.ok; ok$1 = $f.ok$1; ok$2 = $f.ok$2; t = $f.t; t1 = $f.t1; t1$1 = $f.t1$1; t1$2 = $f.t1$2; v = $f.v; v$1 = $f.v$1; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ t1 = [t1];
+ d = this;
+ t = $ifaceNil;
+ err = $ifaceNil;
+ if (!(d.stk === ptrType$14.nil) && (d.stk.kind === 2)) {
+ $s = -1; return [$ifaceNil, io.EOF];
+ }
+ /* */ if (!($interfaceIsEqual(d.nextToken, $ifaceNil))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!($interfaceIsEqual(d.nextToken, $ifaceNil))) { */ case 1:
+ t = d.nextToken;
+ d.nextToken = $ifaceNil;
+ $s = 3; continue;
+ /* } else { */ case 2:
+ _r$6 = d.rawToken(); /* */ $s = 4; case 4: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple = _r$6;
+ t = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ if ($interfaceIsEqual(err, io.EOF) && !(d.stk === ptrType$14.nil) && !((d.stk.kind === 2))) {
+ err = d.syntaxError("unexpected EOF");
+ }
+ $s = -1; return [t, err];
+ }
+ /* } */ case 3:
+ /* */ if (!d.Strict) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (!d.Strict) { */ case 5:
+ _r$7 = d.autoClose(t); /* */ $s = 7; case 7: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _tuple$1 = _r$7;
+ t1$1 = _tuple$1[0];
+ ok = _tuple$1[1];
+ if (ok) {
+ d.nextToken = t;
+ t = t1$1;
+ }
+ /* } */ case 6:
+ _ref = t;
+ if ($assertType(_ref, StartElement, true)[1]) {
+ t1$2 = $clone(_ref.$val, StartElement);
+ _ref$1 = t1$2.Attr;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref$1.$length)) { break; }
+ a = $clone(((_i < 0 || _i >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i]), Attr);
+ if (a.Name.Space === "xmlns") {
+ _tuple$2 = (_entry = d.ns[$String.keyFor(a.Name.Local)], _entry !== undefined ? [_entry.v, true] : ["", false]);
+ v = _tuple$2[0];
+ ok$1 = _tuple$2[1];
+ d.pushNs(a.Name.Local, v, ok$1);
+ _key = a.Name.Local; (d.ns || $throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(_key)] = { k: _key, v: a.Value };
+ }
+ if (a.Name.Space === "" && a.Name.Local === "xmlns") {
+ _tuple$3 = (_entry$1 = d.ns[$String.keyFor("")], _entry$1 !== undefined ? [_entry$1.v, true] : ["", false]);
+ v$1 = _tuple$3[0];
+ ok$2 = _tuple$3[1];
+ d.pushNs("", v$1, ok$2);
+ _key$1 = ""; (d.ns || $throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(_key$1)] = { k: _key$1, v: a.Value };
+ }
+ _i++;
+ }
+ d.translate(t1$2.Name, true);
+ _ref$2 = t1$2.Attr;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$2.$length)) { break; }
+ i = _i$1;
+ d.translate((x$2 = t1$2.Attr, ((i < 0 || i >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + i])).Name, false);
+ _i$1++;
+ }
+ d.pushElement($clone(t1$2.Name, Name));
+ t = new t1$2.constructor.elem(t1$2);
+ } else if ($assertType(_ref, EndElement, true)[1]) {
+ t1[0] = $clone(_ref.$val, EndElement);
+ d.translate(t1[0].Name, true);
+ if (!d.popElement(t1[0])) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ t = new t1[0].constructor.elem(t1[0]);
+ }
+ $s = -1; return [t, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.Token }; } $f.$ptr = $ptr; $f._entry = _entry; $f._entry$1 = _entry$1; $f._i = _i; $f._i$1 = _i$1; $f._key = _key; $f._key$1 = _key$1; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._ref = _ref; $f._ref$1 = _ref$1; $f._ref$2 = _ref$2; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f.a = a; $f.d = d; $f.err = err; $f.i = i; $f.ok = ok; $f.ok$1 = ok$1; $f.ok$2 = ok$2; $f.t = t; $f.t1 = t1; $f.t1$1 = t1$1; $f.t1$2 = t1$2; $f.v = v; $f.v$1 = v$1; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.Token = function() { return this.$val.Token(); };
+ Decoder.ptr.prototype.translate = function(n, isElementName) {
+ var $ptr, _entry, _tuple, d, isElementName, n, ok, v;
+ d = this;
+ if (n.Space === "xmlns") {
+ return;
+ } else if (n.Space === "" && !isElementName) {
+ return;
+ } else if (n.Space === "xml") {
+ n.Space = "http://www.w3.org/XML/1998/namespace";
+ } else if (n.Space === "" && n.Local === "xmlns") {
+ return;
+ }
+ _tuple = (_entry = d.ns[$String.keyFor(n.Space)], _entry !== undefined ? [_entry.v, true] : ["", false]);
+ v = _tuple[0];
+ ok = _tuple[1];
+ if (ok) {
+ n.Space = v;
+ } else if (n.Space === "") {
+ n.Space = d.DefaultSpace;
+ }
+ };
+ Decoder.prototype.translate = function(n, isElementName) { return this.$val.translate(n, isElementName); };
+ Decoder.ptr.prototype.switchToReader = function(r) {
+ var $ptr, _tuple, d, ok, r, rb;
+ d = this;
+ _tuple = $assertType(r, io.ByteReader, true);
+ rb = _tuple[0];
+ ok = _tuple[1];
+ if (ok) {
+ d.r = rb;
+ } else {
+ d.r = bufio.NewReader(r);
+ }
+ };
+ Decoder.prototype.switchToReader = function(r) { return this.$val.switchToReader(r); };
+ Decoder.ptr.prototype.push = function(kind) {
+ var $ptr, d, kind, s;
+ d = this;
+ s = d.free;
+ if (!(s === ptrType$14.nil)) {
+ d.free = s.next;
+ } else {
+ s = new stack.ptr(ptrType$14.nil, 0, new Name.ptr("", ""), false);
+ }
+ s.next = d.stk;
+ s.kind = kind;
+ d.stk = s;
+ return s;
+ };
+ Decoder.prototype.push = function(kind) { return this.$val.push(kind); };
+ Decoder.ptr.prototype.pop = function() {
+ var $ptr, d, s;
+ d = this;
+ s = d.stk;
+ if (!(s === ptrType$14.nil)) {
+ d.stk = s.next;
+ s.next = d.free;
+ d.free = s;
+ }
+ return s;
+ };
+ Decoder.prototype.pop = function() { return this.$val.pop(); };
+ Decoder.ptr.prototype.pushEOF = function() {
+ var $ptr, d, s, start;
+ d = this;
+ start = d.stk;
+ while (true) {
+ if (!(!((start.kind === 0)))) { break; }
+ start = start.next;
+ }
+ while (true) {
+ if (!(!(start.next === ptrType$14.nil) && (start.next.kind === 1))) { break; }
+ start = start.next;
+ }
+ s = d.free;
+ if (!(s === ptrType$14.nil)) {
+ d.free = s.next;
+ } else {
+ s = new stack.ptr(ptrType$14.nil, 0, new Name.ptr("", ""), false);
+ }
+ s.kind = 2;
+ s.next = start.next;
+ start.next = s;
+ };
+ Decoder.prototype.pushEOF = function() { return this.$val.pushEOF(); };
+ Decoder.ptr.prototype.popEOF = function() {
+ var $ptr, d;
+ d = this;
+ if (d.stk === ptrType$14.nil || !((d.stk.kind === 2))) {
+ return false;
+ }
+ d.pop();
+ return true;
+ };
+ Decoder.prototype.popEOF = function() { return this.$val.popEOF(); };
+ Decoder.ptr.prototype.pushElement = function(name) {
+ var $ptr, d, name, s;
+ d = this;
+ s = d.push(0);
+ Name.copy(s.name, name);
+ };
+ Decoder.prototype.pushElement = function(name) { return this.$val.pushElement(name); };
+ Decoder.ptr.prototype.pushNs = function(local, url, ok) {
+ var $ptr, d, local, ok, s, url;
+ d = this;
+ s = d.push(1);
+ s.name.Local = local;
+ s.name.Space = url;
+ s.ok = ok;
+ };
+ Decoder.prototype.pushNs = function(local, url, ok) { return this.$val.pushNs(local, url, ok); };
+ Decoder.ptr.prototype.syntaxError = function(msg) {
+ var $ptr, d, msg;
+ d = this;
+ return new SyntaxError.ptr(msg, d.line);
+ };
+ Decoder.prototype.syntaxError = function(msg) { return this.$val.syntaxError(msg); };
+ Decoder.ptr.prototype.popElement = function(t) {
+ var $ptr, _key, d, name, s, s$1, t;
+ d = this;
+ s = d.pop();
+ name = $clone(t.Name, Name);
+ if (s === ptrType$14.nil || !((s.kind === 0))) {
+ d.err = d.syntaxError("unexpected end element </" + name.Local + ">");
+ return false;
+ } else if (!(s.name.Local === name.Local)) {
+ if (!d.Strict) {
+ d.needClose = true;
+ Name.copy(d.toClose, t.Name);
+ Name.copy(t.Name, s.name);
+ return true;
+ }
+ d.err = d.syntaxError("element <" + s.name.Local + "> closed by </" + name.Local + ">");
+ return false;
+ } else if (!(s.name.Space === name.Space)) {
+ d.err = d.syntaxError("element <" + s.name.Local + "> in space " + s.name.Space + "closed by </" + name.Local + "> in space " + name.Space);
+ return false;
+ }
+ while (true) {
+ if (!(!(d.stk === ptrType$14.nil) && !((d.stk.kind === 0)) && !((d.stk.kind === 2)))) { break; }
+ s$1 = d.pop();
+ if (s$1.ok) {
+ _key = s$1.name.Local; (d.ns || $throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(_key)] = { k: _key, v: s$1.name.Space };
+ } else {
+ delete d.ns[$String.keyFor(s$1.name.Local)];
+ }
+ }
+ return true;
+ };
+ Decoder.prototype.popElement = function(t) { return this.$val.popElement(t); };
+ Decoder.ptr.prototype.autoClose = function(t) {
+ var $ptr, _i, _r$6, _r$7, _ref, _tuple, d, et, name, ok, s, t, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r$6 = $f._r$6; _r$7 = $f._r$7; _ref = $f._ref; _tuple = $f._tuple; d = $f.d; et = $f.et; name = $f.name; ok = $f.ok; s = $f.s; t = $f.t; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ if (d.stk === ptrType$14.nil || !((d.stk.kind === 0))) {
+ $s = -1; return [$ifaceNil, false];
+ }
+ _r$6 = strings.ToLower(d.stk.name.Local); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ name = _r$6;
+ _ref = d.AutoClose;
+ _i = 0;
+ /* while (true) { */ case 2:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 3; continue; }
+ s = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ _r$7 = strings.ToLower(s); /* */ $s = 6; case 6: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ /* */ if (_r$7 === name) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (_r$7 === name) { */ case 4:
+ _tuple = $assertType(t, EndElement, true);
+ et = $clone(_tuple[0], EndElement);
+ ok = _tuple[1];
+ if (!ok || !(et.Name.Local === name)) {
+ $s = -1; return [(x$2 = new EndElement.ptr($clone(d.stk.name, Name)), new x$2.constructor.elem(x$2)), true];
+ }
+ /* break; */ $s = 3; continue;
+ /* } */ case 5:
+ _i++;
+ /* } */ $s = 2; continue; case 3:
+ $s = -1; return [$ifaceNil, false];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.autoClose }; } $f.$ptr = $ptr; $f._i = _i; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._ref = _ref; $f._tuple = _tuple; $f.d = d; $f.et = et; $f.name = name; $f.ok = ok; $f.s = s; $f.t = t; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.autoClose = function(t) { return this.$val.autoClose(t); };
+ Decoder.ptr.prototype.RawToken = function() {
+ var $ptr, _r$6, d, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; d = $f.d; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ if (d.unmarshalDepth > 0) {
+ $s = -1; return [$ifaceNil, errRawToken];
+ }
+ _r$6 = d.rawToken(); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return _r$6;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.RawToken }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f.d = d; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.RawToken = function() { return this.$val.RawToken(); };
+ Decoder.ptr.prototype.rawToken = function() {
+ var $ptr, _1, _2, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$19, _r$20, _r$21, _r$22, _r$23, _r$24, _r$25, _r$26, _r$27, _r$28, _r$29, _r$30, _r$6, _r$7, _r$8, _r$9, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tuple, _tuple$1, _tuple$10, _tuple$11, _tuple$12, _tuple$13, _tuple$14, _tuple$15, _tuple$16, _tuple$17, _tuple$18, _tuple$2, _tuple$3, _tuple$4, _tuple$5, _tuple$6, _tuple$7, _tuple$8, _tuple$9, a, attr, b, b0, b0$1, b0$2, b1, b1$1, content, d, data, data$1, data$2, data$3, data$4, depth, empty, enc, err, i, i$1, inquote, j, n, nCap, name, name$1, nattr, newr, ok, s, target, ver, x$2, x$3, x$4, x$5, x$6, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _2 = $f._2; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$19 = $f._r$19; _r$20 = $f._r$20; _r$21 = $f._r$21; _r$22 = $f._r$22; _r$23 = $f._r$23; _r$24 = $f._r$24; _r$25 = $f._r$25; _r$26 = $f._r$26; _r$27 = $f._r$27; _r$28 = $f._r$28; _r$29 = $f._r$29; _r$30 = $f._r$30; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tmp$7 = $f._tmp$7; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$10 = $f._tuple$10; _tuple$11 = $f._tuple$11; _tuple$12 = $f._tuple$12; _tuple$13 = $f._tuple$13; _tuple$14 = $f._tuple$14; _tuple$15 = $f._tuple$15; _tuple$16 = $f._tuple$16; _tuple$17 = $f._tuple$17; _tuple$18 = $f._tuple$18; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; _tuple$5 = $f._tuple$5; _tuple$6 = $f._tuple$6; _tuple$7 = $f._tuple$7; _tuple$8 = $f._tuple$8; _tuple$9 = $f._tuple$9; a = $f.a; attr = $f.attr; b = $f.b; b0 = $f.b0; b0$1 = $f.b0$1; b0$2 = $f.b0$2; b1 = $f.b1; b1$1 = $f.b1$1; content = $f.content; d = $f.d; data = $f.data; data$1 = $f.data$1; data$2 = $f.data$2; data$3 = $f.data$3; data$4 = $f.data$4; depth = $f.depth; empty = $f.empty; enc = $f.enc; err = $f.err; i = $f.i; i$1 = $f.i$1; inquote = $f.inquote; j = $f.j; n = $f.n; nCap = $f.nCap; name = $f.name; name$1 = $f.name$1; nattr = $f.nattr; newr = $f.newr; ok = $f.ok; s = $f.s; target = $f.target; ver = $f.ver; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ if (!($interfaceIsEqual(d.err, $ifaceNil))) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ if (d.needClose) {
+ d.needClose = false;
+ $s = -1; return [(x$2 = new EndElement.ptr($clone(d.toClose, Name)), new x$2.constructor.elem(x$2)), $ifaceNil];
+ }
+ _r$6 = d.getc(); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple = _r$6;
+ b = _tuple[0];
+ ok = _tuple[1];
+ if (!ok) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ /* */ if (!((b === 60))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!((b === 60))) { */ case 2:
+ d.ungetc(b);
+ _r$7 = d.text(-1, false); /* */ $s = 4; case 4: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ data = _r$7;
+ if (data === sliceType.nil) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ $s = -1; return [($subslice(new CharData(data.$array), data.$offset, data.$offset + data.$length)), $ifaceNil];
+ /* } */ case 3:
+ _r$8 = d.mustgetc(); /* */ $s = 5; case 5: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _tuple$1 = _r$8;
+ b = _tuple$1[0];
+ ok = _tuple$1[1];
+ if (!ok) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ _1 = b;
+ /* */ if (_1 === (47)) { $s = 7; continue; }
+ /* */ if (_1 === (63)) { $s = 8; continue; }
+ /* */ if (_1 === (33)) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (_1 === (47)) { */ case 7:
+ name = new Name.ptr("", "");
+ _r$9 = d.nsname(); /* */ $s = 11; case 11: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _tuple$2 = _r$9;
+ Name.copy(name, _tuple$2[0]);
+ ok = _tuple$2[1];
+ if (!ok) {
+ if ($interfaceIsEqual(d.err, $ifaceNil)) {
+ d.err = d.syntaxError("expected element name after </");
+ }
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ $r = d.space(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$10 = d.mustgetc(); /* */ $s = 13; case 13: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _tuple$3 = _r$10;
+ b = _tuple$3[0];
+ ok = _tuple$3[1];
+ if (!ok) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ if (!((b === 62))) {
+ d.err = d.syntaxError("invalid characters between </" + name.Local + " and >");
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ $s = -1; return [(x$3 = new EndElement.ptr($clone(name, Name)), new x$3.constructor.elem(x$3)), $ifaceNil];
+ /* } else if (_1 === (63)) { */ case 8:
+ target = "";
+ _r$11 = d.name(); /* */ $s = 14; case 14: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _tuple$4 = _r$11;
+ target = _tuple$4[0];
+ ok = _tuple$4[1];
+ if (!ok) {
+ if ($interfaceIsEqual(d.err, $ifaceNil)) {
+ d.err = d.syntaxError("expected target name after <?");
+ }
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ $r = d.space(); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ d.buf.Reset();
+ b0 = 0;
+ /* while (true) { */ case 16:
+ _r$12 = d.mustgetc(); /* */ $s = 18; case 18: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _tuple$5 = _r$12;
+ b = _tuple$5[0];
+ ok = _tuple$5[1];
+ if (!ok) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ d.buf.WriteByte(b);
+ if ((b0 === 63) && (b === 62)) {
+ /* break; */ $s = 17; continue;
+ }
+ b0 = b;
+ /* } */ $s = 16; continue; case 17:
+ data$1 = d.buf.Bytes();
+ data$1 = $subslice(data$1, 0, (data$1.$length - 2 >> 0));
+ /* */ if (target === "xml") { $s = 19; continue; }
+ /* */ $s = 20; continue;
+ /* if (target === "xml") { */ case 19:
+ content = ($bytesToString(data$1));
+ ver = procInst("version", content);
+ /* */ if (!(ver === "") && !(ver === "1.0")) { $s = 21; continue; }
+ /* */ $s = 22; continue;
+ /* if (!(ver === "") && !(ver === "1.0")) { */ case 21:
+ _r$13 = fmt.Errorf("xml: unsupported version %q; only version 1.0 is supported", new sliceType$5([new $String(ver)])); /* */ $s = 23; case 23: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ d.err = _r$13;
+ $s = -1; return [$ifaceNil, d.err];
+ /* } */ case 22:
+ enc = procInst("encoding", content);
+ /* */ if (!(enc === "") && !(enc === "utf-8") && !(enc === "UTF-8") && !strings.EqualFold(enc, "utf-8")) { $s = 24; continue; }
+ /* */ $s = 25; continue;
+ /* if (!(enc === "") && !(enc === "utf-8") && !(enc === "UTF-8") && !strings.EqualFold(enc, "utf-8")) { */ case 24:
+ /* */ if (d.CharsetReader === $throwNilPointerError) { $s = 26; continue; }
+ /* */ $s = 27; continue;
+ /* if (d.CharsetReader === $throwNilPointerError) { */ case 26:
+ _r$14 = fmt.Errorf("xml: encoding %q declared but Decoder.CharsetReader is nil", new sliceType$5([new $String(enc)])); /* */ $s = 28; case 28: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ d.err = _r$14;
+ $s = -1; return [$ifaceNil, d.err];
+ /* } */ case 27:
+ _r$15 = d.CharsetReader(enc, $assertType(d.r, io.Reader)); /* */ $s = 29; case 29: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ _tuple$6 = _r$15;
+ newr = _tuple$6[0];
+ err = _tuple$6[1];
+ /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 30; continue; }
+ /* */ $s = 31; continue;
+ /* if (!($interfaceIsEqual(err, $ifaceNil))) { */ case 30:
+ _r$16 = fmt.Errorf("xml: opening charset %q: %v", new sliceType$5([new $String(enc), err])); /* */ $s = 32; case 32: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ d.err = _r$16;
+ $s = -1; return [$ifaceNil, d.err];
+ /* } */ case 31:
+ if ($interfaceIsEqual(newr, $ifaceNil)) {
+ $panic(new $String("CharsetReader returned a nil Reader for charset " + enc));
+ }
+ d.switchToReader(newr);
+ /* } */ case 25:
+ /* } */ case 20:
+ $s = -1; return [(x$4 = new ProcInst.ptr(target, data$1), new x$4.constructor.elem(x$4)), $ifaceNil];
+ /* } else if (_1 === (33)) { */ case 9:
+ _r$17 = d.mustgetc(); /* */ $s = 33; case 33: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ _tuple$7 = _r$17;
+ b = _tuple$7[0];
+ ok = _tuple$7[1];
+ if (!ok) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ _2 = b;
+ /* */ if (_2 === (45)) { $s = 35; continue; }
+ /* */ if (_2 === (91)) { $s = 36; continue; }
+ /* */ $s = 37; continue;
+ /* if (_2 === (45)) { */ case 35:
+ _r$18 = d.mustgetc(); /* */ $s = 38; case 38: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ _tuple$8 = _r$18;
+ b = _tuple$8[0];
+ ok = _tuple$8[1];
+ if (!ok) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ if (!((b === 45))) {
+ d.err = d.syntaxError("invalid sequence <!- not part of <!--");
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ d.buf.Reset();
+ _tmp = 0;
+ _tmp$1 = 0;
+ b0$1 = _tmp;
+ b1 = _tmp$1;
+ /* while (true) { */ case 39:
+ _r$19 = d.mustgetc(); /* */ $s = 41; case 41: if($c) { $c = false; _r$19 = _r$19.$blk(); } if (_r$19 && _r$19.$blk !== undefined) { break s; }
+ _tuple$9 = _r$19;
+ b = _tuple$9[0];
+ ok = _tuple$9[1];
+ if (!ok) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ d.buf.WriteByte(b);
+ if ((b0$1 === 45) && (b1 === 45)) {
+ if (!((b === 62))) {
+ d.err = d.syntaxError("invalid sequence \"--\" not allowed in comments");
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ /* break; */ $s = 40; continue;
+ }
+ _tmp$2 = b1;
+ _tmp$3 = b;
+ b0$1 = _tmp$2;
+ b1 = _tmp$3;
+ /* } */ $s = 39; continue; case 40:
+ data$2 = d.buf.Bytes();
+ data$2 = $subslice(data$2, 0, (data$2.$length - 3 >> 0));
+ $s = -1; return [($subslice(new Comment(data$2.$array), data$2.$offset, data$2.$offset + data$2.$length)), $ifaceNil];
+ /* } else if (_2 === (91)) { */ case 36:
+ i = 0;
+ /* while (true) { */ case 42:
+ /* if (!(i < 6)) { break; } */ if(!(i < 6)) { $s = 43; continue; }
+ _r$20 = d.mustgetc(); /* */ $s = 44; case 44: if($c) { $c = false; _r$20 = _r$20.$blk(); } if (_r$20 && _r$20.$blk !== undefined) { break s; }
+ _tuple$10 = _r$20;
+ b = _tuple$10[0];
+ ok = _tuple$10[1];
+ if (!ok) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ if (!((b === "CDATA[".charCodeAt(i)))) {
+ d.err = d.syntaxError("invalid <![ sequence");
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ i = i + (1) >> 0;
+ /* } */ $s = 42; continue; case 43:
+ _r$21 = d.text(-1, true); /* */ $s = 45; case 45: if($c) { $c = false; _r$21 = _r$21.$blk(); } if (_r$21 && _r$21.$blk !== undefined) { break s; }
+ data$3 = _r$21;
+ if (data$3 === sliceType.nil) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ $s = -1; return [($subslice(new CharData(data$3.$array), data$3.$offset, data$3.$offset + data$3.$length)), $ifaceNil];
+ /* } */ case 37:
+ case 34:
+ d.buf.Reset();
+ d.buf.WriteByte(b);
+ inquote = 0;
+ depth = 0;
+ /* while (true) { */ case 46:
+ _r$22 = d.mustgetc(); /* */ $s = 48; case 48: if($c) { $c = false; _r$22 = _r$22.$blk(); } if (_r$22 && _r$22.$blk !== undefined) { break s; }
+ _tuple$11 = _r$22;
+ b = _tuple$11[0];
+ ok = _tuple$11[1];
+ if (!ok) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ if ((inquote === 0) && (b === 62) && (depth === 0)) {
+ /* break; */ $s = 47; continue;
+ }
+ /* HandleB: */ case 49:
+ d.buf.WriteByte(b);
+ /* */ if ((b === inquote)) { $s = 51; continue; }
+ /* */ if (!((inquote === 0))) { $s = 52; continue; }
+ /* */ if ((b === 39) || (b === 34)) { $s = 53; continue; }
+ /* */ if ((b === 62) && (inquote === 0)) { $s = 54; continue; }
+ /* */ if ((b === 60) && (inquote === 0)) { $s = 55; continue; }
+ /* */ $s = 56; continue;
+ /* if ((b === inquote)) { */ case 51:
+ inquote = 0;
+ $s = 56; continue;
+ /* } else if (!((inquote === 0))) { */ case 52:
+ $s = 56; continue;
+ /* } else if ((b === 39) || (b === 34)) { */ case 53:
+ inquote = b;
+ $s = 56; continue;
+ /* } else if ((b === 62) && (inquote === 0)) { */ case 54:
+ depth = depth - (1) >> 0;
+ $s = 56; continue;
+ /* } else if ((b === 60) && (inquote === 0)) { */ case 55:
+ s = "!--";
+ i$1 = 0;
+ /* while (true) { */ case 57:
+ /* if (!(i$1 < s.length)) { break; } */ if(!(i$1 < s.length)) { $s = 58; continue; }
+ _r$23 = d.mustgetc(); /* */ $s = 59; case 59: if($c) { $c = false; _r$23 = _r$23.$blk(); } if (_r$23 && _r$23.$blk !== undefined) { break s; }
+ _tuple$12 = _r$23;
+ b = _tuple$12[0];
+ ok = _tuple$12[1];
+ if (!ok) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ /* */ if (!((b === s.charCodeAt(i$1)))) { $s = 60; continue; }
+ /* */ $s = 61; continue;
+ /* if (!((b === s.charCodeAt(i$1)))) { */ case 60:
+ j = 0;
+ while (true) {
+ if (!(j < i$1)) { break; }
+ d.buf.WriteByte(s.charCodeAt(j));
+ j = j + (1) >> 0;
+ }
+ depth = depth + (1) >> 0;
+ /* goto HandleB */ $s = 49; continue;
+ /* } */ case 61:
+ i$1 = i$1 + (1) >> 0;
+ /* } */ $s = 57; continue; case 58:
+ d.buf.Truncate(d.buf.Len() - 1 >> 0);
+ _tmp$4 = 0;
+ _tmp$5 = 0;
+ b0$2 = _tmp$4;
+ b1$1 = _tmp$5;
+ /* while (true) { */ case 62:
+ _r$24 = d.mustgetc(); /* */ $s = 64; case 64: if($c) { $c = false; _r$24 = _r$24.$blk(); } if (_r$24 && _r$24.$blk !== undefined) { break s; }
+ _tuple$13 = _r$24;
+ b = _tuple$13[0];
+ ok = _tuple$13[1];
+ if (!ok) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ if ((b0$2 === 45) && (b1$1 === 45) && (b === 62)) {
+ /* break; */ $s = 63; continue;
+ }
+ _tmp$6 = b1$1;
+ _tmp$7 = b;
+ b0$2 = _tmp$6;
+ b1$1 = _tmp$7;
+ /* } */ $s = 62; continue; case 63:
+ /* } */ case 56:
+ case 50:
+ /* } */ $s = 46; continue; case 47:
+ $s = -1; return [((x$5 = d.buf.Bytes(), $subslice(new Directive(x$5.$array), x$5.$offset, x$5.$offset + x$5.$length))), $ifaceNil];
+ /* } */ case 10:
+ case 6:
+ d.ungetc(b);
+ name$1 = new Name.ptr("", "");
+ empty = false;
+ attr = sliceType$6.nil;
+ _r$25 = d.nsname(); /* */ $s = 65; case 65: if($c) { $c = false; _r$25 = _r$25.$blk(); } if (_r$25 && _r$25.$blk !== undefined) { break s; }
+ _tuple$14 = _r$25;
+ Name.copy(name$1, _tuple$14[0]);
+ ok = _tuple$14[1];
+ if (!ok) {
+ if ($interfaceIsEqual(d.err, $ifaceNil)) {
+ d.err = d.syntaxError("expected element name after <");
+ }
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ attr = new sliceType$6([]);
+ /* while (true) { */ case 66:
+ $r = d.space(); /* */ $s = 68; case 68: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$26 = d.mustgetc(); /* */ $s = 69; case 69: if($c) { $c = false; _r$26 = _r$26.$blk(); } if (_r$26 && _r$26.$blk !== undefined) { break s; }
+ _tuple$15 = _r$26;
+ b = _tuple$15[0];
+ ok = _tuple$15[1];
+ if (!ok) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ /* */ if (b === 47) { $s = 70; continue; }
+ /* */ $s = 71; continue;
+ /* if (b === 47) { */ case 70:
+ empty = true;
+ _r$27 = d.mustgetc(); /* */ $s = 72; case 72: if($c) { $c = false; _r$27 = _r$27.$blk(); } if (_r$27 && _r$27.$blk !== undefined) { break s; }
+ _tuple$16 = _r$27;
+ b = _tuple$16[0];
+ ok = _tuple$16[1];
+ if (!ok) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ if (!((b === 62))) {
+ d.err = d.syntaxError("expected /> in element");
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ /* break; */ $s = 67; continue;
+ /* } */ case 71:
+ if (b === 62) {
+ /* break; */ $s = 67; continue;
+ }
+ d.ungetc(b);
+ n = attr.$length;
+ if (n >= attr.$capacity) {
+ nCap = $imul(2, attr.$capacity);
+ if (nCap === 0) {
+ nCap = 4;
+ }
+ nattr = $makeSlice(sliceType$6, n, nCap);
+ $copySlice(nattr, attr);
+ attr = nattr;
+ }
+ attr = $subslice(attr, 0, (n + 1 >> 0));
+ a = ((n < 0 || n >= attr.$length) ? ($throwRuntimeError("index out of range"), undefined) : attr.$array[attr.$offset + n]);
+ _r$28 = d.nsname(); /* */ $s = 73; case 73: if($c) { $c = false; _r$28 = _r$28.$blk(); } if (_r$28 && _r$28.$blk !== undefined) { break s; }
+ _tuple$17 = _r$28;
+ Name.copy(a.Name, _tuple$17[0]);
+ ok = _tuple$17[1];
+ if (!ok) {
+ if ($interfaceIsEqual(d.err, $ifaceNil)) {
+ d.err = d.syntaxError("expected attribute name in element");
+ }
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ $r = d.space(); /* */ $s = 74; case 74: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$29 = d.mustgetc(); /* */ $s = 75; case 75: if($c) { $c = false; _r$29 = _r$29.$blk(); } if (_r$29 && _r$29.$blk !== undefined) { break s; }
+ _tuple$18 = _r$29;
+ b = _tuple$18[0];
+ ok = _tuple$18[1];
+ if (!ok) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ /* */ if (!((b === 61))) { $s = 76; continue; }
+ /* */ $s = 77; continue;
+ /* if (!((b === 61))) { */ case 76:
+ if (d.Strict) {
+ d.err = d.syntaxError("attribute name without = in element");
+ $s = -1; return [$ifaceNil, d.err];
+ } else {
+ d.ungetc(b);
+ a.Value = a.Name.Local;
+ }
+ $s = 78; continue;
+ /* } else { */ case 77:
+ $r = d.space(); /* */ $s = 79; case 79: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$30 = d.attrval(); /* */ $s = 80; case 80: if($c) { $c = false; _r$30 = _r$30.$blk(); } if (_r$30 && _r$30.$blk !== undefined) { break s; }
+ data$4 = _r$30;
+ if (data$4 === sliceType.nil) {
+ $s = -1; return [$ifaceNil, d.err];
+ }
+ a.Value = ($bytesToString(data$4));
+ /* } */ case 78:
+ /* } */ $s = 66; continue; case 67:
+ if (empty) {
+ d.needClose = true;
+ Name.copy(d.toClose, name$1);
+ }
+ $s = -1; return [(x$6 = new StartElement.ptr($clone(name$1, Name), attr), new x$6.constructor.elem(x$6)), $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.rawToken }; } $f.$ptr = $ptr; $f._1 = _1; $f._2 = _2; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$19 = _r$19; $f._r$20 = _r$20; $f._r$21 = _r$21; $f._r$22 = _r$22; $f._r$23 = _r$23; $f._r$24 = _r$24; $f._r$25 = _r$25; $f._r$26 = _r$26; $f._r$27 = _r$27; $f._r$28 = _r$28; $f._r$29 = _r$29; $f._r$30 = _r$30; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tmp$7 = _tmp$7; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$10 = _tuple$10; $f._tuple$11 = _tuple$11; $f._tuple$12 = _tuple$12; $f._tuple$13 = _tuple$13; $f._tuple$14 = _tuple$14; $f._tuple$15 = _tuple$15; $f._tuple$16 = _tuple$16; $f._tuple$17 = _tuple$17; $f._tuple$18 = _tuple$18; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f._tuple$5 = _tuple$5; $f._tuple$6 = _tuple$6; $f._tuple$7 = _tuple$7; $f._tuple$8 = _tuple$8; $f._tuple$9 = _tuple$9; $f.a = a; $f.attr = attr; $f.b = b; $f.b0 = b0; $f.b0$1 = b0$1; $f.b0$2 = b0$2; $f.b1 = b1; $f.b1$1 = b1$1; $f.content = content; $f.d = d; $f.data = data; $f.data$1 = data$1; $f.data$2 = data$2; $f.data$3 = data$3; $f.data$4 = data$4; $f.depth = depth; $f.empty = empty; $f.enc = enc; $f.err = err; $f.i = i; $f.i$1 = i$1; $f.inquote = inquote; $f.j = j; $f.n = n; $f.nCap = nCap; $f.name = name; $f.name$1 = name$1; $f.nattr = nattr; $f.newr = newr; $f.ok = ok; $f.s = s; $f.target = target; $f.ver = ver; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.rawToken = function() { return this.$val.rawToken(); };
+ Decoder.ptr.prototype.attrval = function() {
+ var $ptr, _r$6, _r$7, _r$8, _tuple, _tuple$1, b, d, ok, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; b = $f.b; d = $f.d; ok = $f.ok; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ _r$6 = d.mustgetc(); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple = _r$6;
+ b = _tuple[0];
+ ok = _tuple[1];
+ if (!ok) {
+ $s = -1; return sliceType.nil;
+ }
+ /* */ if ((b === 34) || (b === 39)) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if ((b === 34) || (b === 39)) { */ case 2:
+ _r$7 = d.text(((b >> 0)), false); /* */ $s = 4; case 4: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $s = -1; return _r$7;
+ /* } */ case 3:
+ if (d.Strict) {
+ d.err = d.syntaxError("unquoted or missing attribute value in element");
+ $s = -1; return sliceType.nil;
+ }
+ d.ungetc(b);
+ d.buf.Reset();
+ /* while (true) { */ case 5:
+ _r$8 = d.mustgetc(); /* */ $s = 7; case 7: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _tuple$1 = _r$8;
+ b = _tuple$1[0];
+ ok = _tuple$1[1];
+ if (!ok) {
+ $s = -1; return sliceType.nil;
+ }
+ if (97 <= b && b <= 122 || 65 <= b && b <= 90 || 48 <= b && b <= 57 || (b === 95) || (b === 58) || (b === 45)) {
+ d.buf.WriteByte(b);
+ } else {
+ d.ungetc(b);
+ /* break; */ $s = 6; continue;
+ }
+ /* } */ $s = 5; continue; case 6:
+ $s = -1; return d.buf.Bytes();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.attrval }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.b = b; $f.d = d; $f.ok = ok; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.attrval = function() { return this.$val.attrval(); };
+ Decoder.ptr.prototype.space = function() {
+ var $ptr, _1, _r$6, _tuple, b, d, ok, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r$6 = $f._r$6; _tuple = $f._tuple; b = $f.b; d = $f.d; ok = $f.ok; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ /* while (true) { */ case 1:
+ _r$6 = d.getc(); /* */ $s = 3; case 3: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple = _r$6;
+ b = _tuple[0];
+ ok = _tuple[1];
+ if (!ok) {
+ $s = -1; return;
+ }
+ _1 = b;
+ if ((_1 === (32)) || (_1 === (13)) || (_1 === (10)) || (_1 === (9))) {
+ } else {
+ d.ungetc(b);
+ $s = -1; return;
+ }
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.space }; } $f.$ptr = $ptr; $f._1 = _1; $f._r$6 = _r$6; $f._tuple = _tuple; $f.b = b; $f.d = d; $f.ok = ok; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.space = function() { return this.$val.space(); };
+ Decoder.ptr.prototype.getc = function() {
+ var $ptr, _r$6, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tuple, b, d, ok, x$2, x$3, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tuple = $f._tuple; b = $f.b; d = $f.d; ok = $f.ok; x$2 = $f.x$2; x$3 = $f.x$3; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = 0;
+ ok = false;
+ d = this;
+ if (!($interfaceIsEqual(d.err, $ifaceNil))) {
+ _tmp = 0;
+ _tmp$1 = false;
+ b = _tmp;
+ ok = _tmp$1;
+ $s = -1; return [b, ok];
+ }
+ /* */ if (d.nextByte >= 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (d.nextByte >= 0) { */ case 1:
+ b = ((d.nextByte << 24 >>> 24));
+ d.nextByte = -1;
+ $s = 3; continue;
+ /* } else { */ case 2:
+ _r$6 = d.r.ReadByte(); /* */ $s = 4; case 4: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple = _r$6;
+ b = _tuple[0];
+ d.err = _tuple[1];
+ if (!($interfaceIsEqual(d.err, $ifaceNil))) {
+ _tmp$2 = 0;
+ _tmp$3 = false;
+ b = _tmp$2;
+ ok = _tmp$3;
+ $s = -1; return [b, ok];
+ }
+ if (!(d.saved === ptrType$13.nil)) {
+ d.saved.WriteByte(b);
+ }
+ /* } */ case 3:
+ if (b === 10) {
+ d.line = d.line + (1) >> 0;
+ }
+ d.offset = (x$2 = d.offset, x$3 = new $Int64(0, 1), new $Int64(x$2.$high + x$3.$high, x$2.$low + x$3.$low));
+ _tmp$4 = b;
+ _tmp$5 = true;
+ b = _tmp$4;
+ ok = _tmp$5;
+ $s = -1; return [b, ok];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.getc }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tuple = _tuple; $f.b = b; $f.d = d; $f.ok = ok; $f.x$2 = x$2; $f.x$3 = x$3; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.getc = function() { return this.$val.getc(); };
+ Decoder.ptr.prototype.InputOffset = function() {
+ var $ptr, d;
+ d = this;
+ return d.offset;
+ };
+ Decoder.prototype.InputOffset = function() { return this.$val.InputOffset(); };
+ Decoder.ptr.prototype.savedOffset = function() {
+ var $ptr, d, n;
+ d = this;
+ n = d.saved.Len();
+ if (d.nextByte >= 0) {
+ n = n - (1) >> 0;
+ }
+ return n;
+ };
+ Decoder.prototype.savedOffset = function() { return this.$val.savedOffset(); };
+ Decoder.ptr.prototype.mustgetc = function() {
+ var $ptr, _r$6, _tuple, b, d, ok, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; _tuple = $f._tuple; b = $f.b; d = $f.d; ok = $f.ok; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = 0;
+ ok = false;
+ d = this;
+ _r$6 = d.getc(); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple = _r$6;
+ b = _tuple[0];
+ ok = _tuple[1];
+ if (!ok) {
+ if ($interfaceIsEqual(d.err, io.EOF)) {
+ d.err = d.syntaxError("unexpected EOF");
+ }
+ }
+ $s = -1; return [b, ok];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.mustgetc }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f._tuple = _tuple; $f.b = b; $f.d = d; $f.ok = ok; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.mustgetc = function() { return this.$val.mustgetc(); };
+ Decoder.ptr.prototype.ungetc = function(b) {
+ var $ptr, b, d, x$2, x$3;
+ d = this;
+ if (b === 10) {
+ d.line = d.line - (1) >> 0;
+ }
+ d.nextByte = ((b >> 0));
+ d.offset = (x$2 = d.offset, x$3 = new $Int64(0, 1), new $Int64(x$2.$high - x$3.$high, x$2.$low - x$3.$low));
+ };
+ Decoder.prototype.ungetc = function(b) { return this.$val.ungetc(b); };
+ Decoder.ptr.prototype.text = function(quote, cdata) {
+ var $ptr, _entry, _entry$1, _r$10, _r$11, _r$12, _r$13, _r$14, _r$6, _r$7, _r$8, _r$9, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, _tuple$5, _tuple$6, _tuple$7, _tuple$8, _tuple$9, b, b0, b1, base, before, buf, cdata, d, data, ent, err, haveText, n, name, ok, ok$1, ok$2, quote, r, r$1, s, s$1, size, start, text, trunc, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _entry$1 = $f._entry$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tmp$7 = $f._tmp$7; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; _tuple$5 = $f._tuple$5; _tuple$6 = $f._tuple$6; _tuple$7 = $f._tuple$7; _tuple$8 = $f._tuple$8; _tuple$9 = $f._tuple$9; b = $f.b; b0 = $f.b0; b1 = $f.b1; base = $f.base; before = $f.before; buf = $f.buf; cdata = $f.cdata; d = $f.d; data = $f.data; ent = $f.ent; err = $f.err; haveText = $f.haveText; n = $f.n; name = $f.name; ok = $f.ok; ok$1 = $f.ok$1; ok$2 = $f.ok$2; quote = $f.quote; r = $f.r; r$1 = $f.r$1; s = $f.s; s$1 = $f.s$1; size = $f.size; start = $f.start; text = $f.text; trunc = $f.trunc; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ _tmp = 0;
+ _tmp$1 = 0;
+ b0 = _tmp;
+ b1 = _tmp$1;
+ trunc = 0;
+ d.buf.Reset();
+ /* while (true) { */ case 1:
+ _r$6 = d.getc(); /* */ $s = 3; case 3: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple = _r$6;
+ b = _tuple[0];
+ ok = _tuple[1];
+ if (!ok) {
+ if (cdata) {
+ if ($interfaceIsEqual(d.err, io.EOF)) {
+ d.err = d.syntaxError("unexpected EOF in CDATA section");
+ }
+ $s = -1; return sliceType.nil;
+ }
+ /* break Input; */ $s = 2; continue s;
+ }
+ if ((b0 === 93) && (b1 === 93) && (b === 62)) {
+ if (cdata) {
+ trunc = 2;
+ /* break Input; */ $s = 2; continue s;
+ }
+ d.err = d.syntaxError("unescaped ]]> not in CDATA section");
+ $s = -1; return sliceType.nil;
+ }
+ if ((b === 60) && !cdata) {
+ if (quote >= 0) {
+ d.err = d.syntaxError("unescaped < inside quoted string");
+ $s = -1; return sliceType.nil;
+ }
+ d.ungetc(60);
+ /* break Input; */ $s = 2; continue s;
+ }
+ if (quote >= 0 && (b === ((quote << 24 >>> 24)))) {
+ /* break Input; */ $s = 2; continue s;
+ }
+ /* */ if ((b === 38) && !cdata) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if ((b === 38) && !cdata) { */ case 4:
+ before = d.buf.Len();
+ d.buf.WriteByte(38);
+ ok$1 = false;
+ text = "";
+ haveText = false;
+ _r$7 = d.mustgetc(); /* */ $s = 6; case 6: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _tuple$1 = _r$7;
+ b = _tuple$1[0];
+ ok$1 = _tuple$1[1];
+ if (!ok$1) {
+ $s = -1; return sliceType.nil;
+ }
+ /* */ if (b === 35) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (b === 35) { */ case 7:
+ d.buf.WriteByte(b);
+ _r$8 = d.mustgetc(); /* */ $s = 10; case 10: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _tuple$2 = _r$8;
+ b = _tuple$2[0];
+ ok$1 = _tuple$2[1];
+ if (!ok$1) {
+ $s = -1; return sliceType.nil;
+ }
+ base = 10;
+ /* */ if (b === 120) { $s = 11; continue; }
+ /* */ $s = 12; continue;
+ /* if (b === 120) { */ case 11:
+ base = 16;
+ d.buf.WriteByte(b);
+ _r$9 = d.mustgetc(); /* */ $s = 13; case 13: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _tuple$3 = _r$9;
+ b = _tuple$3[0];
+ ok$1 = _tuple$3[1];
+ if (!ok$1) {
+ $s = -1; return sliceType.nil;
+ }
+ /* } */ case 12:
+ start = d.buf.Len();
+ /* while (true) { */ case 14:
+ /* if (!(48 <= b && b <= 57 || (base === 16) && 97 <= b && b <= 102 || (base === 16) && 65 <= b && b <= 70)) { break; } */ if(!(48 <= b && b <= 57 || (base === 16) && 97 <= b && b <= 102 || (base === 16) && 65 <= b && b <= 70)) { $s = 15; continue; }
+ d.buf.WriteByte(b);
+ _r$10 = d.mustgetc(); /* */ $s = 16; case 16: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _tuple$4 = _r$10;
+ b = _tuple$4[0];
+ ok$1 = _tuple$4[1];
+ if (!ok$1) {
+ $s = -1; return sliceType.nil;
+ }
+ /* } */ $s = 14; continue; case 15:
+ if (!((b === 59))) {
+ d.ungetc(b);
+ } else {
+ s = ($bytesToString($subslice(d.buf.Bytes(), start)));
+ d.buf.WriteByte(59);
+ _tuple$5 = strconv.ParseUint(s, base, 64);
+ n = _tuple$5[0];
+ err = _tuple$5[1];
+ if ($interfaceIsEqual(err, $ifaceNil) && (n.$high < 0 || (n.$high === 0 && n.$low <= 1114111))) {
+ text = ($encodeRune(n.$low));
+ haveText = true;
+ }
+ }
+ $s = 9; continue;
+ /* } else { */ case 8:
+ d.ungetc(b);
+ _r$11 = d.readName(); /* */ $s = 19; case 19: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ /* */ if (!_r$11) { $s = 17; continue; }
+ /* */ $s = 18; continue;
+ /* if (!_r$11) { */ case 17:
+ if (!($interfaceIsEqual(d.err, $ifaceNil))) {
+ $s = -1; return sliceType.nil;
+ }
+ ok$1 = false;
+ /* } */ case 18:
+ _r$12 = d.mustgetc(); /* */ $s = 20; case 20: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _tuple$6 = _r$12;
+ b = _tuple$6[0];
+ ok$1 = _tuple$6[1];
+ if (!ok$1) {
+ $s = -1; return sliceType.nil;
+ }
+ if (!((b === 59))) {
+ d.ungetc(b);
+ } else {
+ name = $subslice(d.buf.Bytes(), (before + 1 >> 0));
+ d.buf.WriteByte(59);
+ if (isName(name)) {
+ s$1 = ($bytesToString(name));
+ _tuple$7 = (_entry = entity[$String.keyFor(s$1)], _entry !== undefined ? [_entry.v, true] : [0, false]);
+ r = _tuple$7[0];
+ ok$2 = _tuple$7[1];
+ if (ok$2) {
+ text = ($encodeRune(r));
+ haveText = true;
+ } else if (!(d.Entity === false)) {
+ _tuple$8 = (_entry$1 = d.Entity[$String.keyFor(s$1)], _entry$1 !== undefined ? [_entry$1.v, true] : ["", false]);
+ text = _tuple$8[0];
+ haveText = _tuple$8[1];
+ }
+ }
+ }
+ /* } */ case 9:
+ if (haveText) {
+ d.buf.Truncate(before);
+ d.buf.Write((new sliceType($stringToBytes(text))));
+ _tmp$2 = 0;
+ _tmp$3 = 0;
+ b0 = _tmp$2;
+ b1 = _tmp$3;
+ /* continue Input; */ $s = 1; continue s;
+ }
+ if (!d.Strict) {
+ _tmp$4 = 0;
+ _tmp$5 = 0;
+ b0 = _tmp$4;
+ b1 = _tmp$5;
+ /* continue Input; */ $s = 1; continue s;
+ }
+ ent = ($bytesToString($subslice(d.buf.Bytes(), before)));
+ if (!((ent.charCodeAt((ent.length - 1 >> 0)) === 59))) {
+ ent = ent + (" (no semicolon)");
+ }
+ d.err = d.syntaxError("invalid character entity " + ent);
+ $s = -1; return sliceType.nil;
+ /* } */ case 5:
+ if (b === 13) {
+ d.buf.WriteByte(10);
+ } else if ((b1 === 13) && (b === 10)) {
+ } else {
+ d.buf.WriteByte(b);
+ }
+ _tmp$6 = b1;
+ _tmp$7 = b;
+ b0 = _tmp$6;
+ b1 = _tmp$7;
+ /* } */ $s = 1; continue; case 2:
+ data = d.buf.Bytes();
+ data = $subslice(data, 0, (data.$length - trunc >> 0));
+ buf = data;
+ /* while (true) { */ case 21:
+ /* if (!(buf.$length > 0)) { break; } */ if(!(buf.$length > 0)) { $s = 22; continue; }
+ _tuple$9 = utf8.DecodeRune(buf);
+ r$1 = _tuple$9[0];
+ size = _tuple$9[1];
+ if ((r$1 === 65533) && (size === 1)) {
+ d.err = d.syntaxError("invalid UTF-8");
+ $s = -1; return sliceType.nil;
+ }
+ buf = $subslice(buf, size);
+ /* */ if (!isInCharacterRange(r$1)) { $s = 23; continue; }
+ /* */ $s = 24; continue;
+ /* if (!isInCharacterRange(r$1)) { */ case 23:
+ _r$13 = fmt.Sprintf("illegal character code %U", new sliceType$5([new $Int32(r$1)])); /* */ $s = 25; case 25: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _r$14 = d.syntaxError(_r$13); /* */ $s = 26; case 26: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ d.err = _r$14;
+ $s = -1; return sliceType.nil;
+ /* } */ case 24:
+ /* } */ $s = 21; continue; case 22:
+ $s = -1; return data;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.text }; } $f.$ptr = $ptr; $f._entry = _entry; $f._entry$1 = _entry$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tmp$7 = _tmp$7; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f._tuple$5 = _tuple$5; $f._tuple$6 = _tuple$6; $f._tuple$7 = _tuple$7; $f._tuple$8 = _tuple$8; $f._tuple$9 = _tuple$9; $f.b = b; $f.b0 = b0; $f.b1 = b1; $f.base = base; $f.before = before; $f.buf = buf; $f.cdata = cdata; $f.d = d; $f.data = data; $f.ent = ent; $f.err = err; $f.haveText = haveText; $f.n = n; $f.name = name; $f.ok = ok; $f.ok$1 = ok$1; $f.ok$2 = ok$2; $f.quote = quote; $f.r = r; $f.r$1 = r$1; $f.s = s; $f.s$1 = s$1; $f.size = size; $f.start = start; $f.text = text; $f.trunc = trunc; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.text = function(quote, cdata) { return this.$val.text(quote, cdata); };
+ isInCharacterRange = function(r) {
+ var $ptr, inrange, r;
+ inrange = false;
+ inrange = (r === 9) || (r === 10) || (r === 13) || r >= 32 && r <= 57207 || r >= 57344 && r <= 65533 || r >= 65536 && r <= 1114111;
+ return inrange;
+ };
+ Decoder.ptr.prototype.nsname = function() {
+ var $ptr, _r$6, _tmp, _tmp$1, _tuple, d, i, name, ok, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tuple = $f._tuple; d = $f.d; i = $f.i; name = $f.name; ok = $f.ok; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ name = new Name.ptr("", "");
+ ok = false;
+ d = this;
+ _r$6 = d.name(); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple = _r$6;
+ s = _tuple[0];
+ ok = _tuple[1];
+ if (!ok) {
+ $s = -1; return [name, ok];
+ }
+ i = strings.Index(s, ":");
+ if (i < 0) {
+ name.Local = s;
+ } else {
+ name.Space = $substring(s, 0, i);
+ name.Local = $substring(s, (i + 1 >> 0));
+ }
+ _tmp = $clone(name, Name);
+ _tmp$1 = true;
+ Name.copy(name, _tmp);
+ ok = _tmp$1;
+ $s = -1; return [name, ok];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.nsname }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tuple = _tuple; $f.d = d; $f.i = i; $f.name = name; $f.ok = ok; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.nsname = function() { return this.$val.nsname(); };
+ Decoder.ptr.prototype.name = function() {
+ var $ptr, _r$6, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, b, d, ok, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; b = $f.b; d = $f.d; ok = $f.ok; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ s = "";
+ ok = false;
+ d = this;
+ d.buf.Reset();
+ _r$6 = d.readName(); /* */ $s = 3; case 3: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ /* */ if (!_r$6) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!_r$6) { */ case 1:
+ _tmp = "";
+ _tmp$1 = false;
+ s = _tmp;
+ ok = _tmp$1;
+ $s = -1; return [s, ok];
+ /* } */ case 2:
+ b = d.buf.Bytes();
+ if (!isName(b)) {
+ d.err = d.syntaxError("invalid XML name: " + ($bytesToString(b)));
+ _tmp$2 = "";
+ _tmp$3 = false;
+ s = _tmp$2;
+ ok = _tmp$3;
+ $s = -1; return [s, ok];
+ }
+ _tmp$4 = ($bytesToString(b));
+ _tmp$5 = true;
+ s = _tmp$4;
+ ok = _tmp$5;
+ $s = -1; return [s, ok];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.name }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f.b = b; $f.d = d; $f.ok = ok; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.name = function() { return this.$val.name(); };
+ Decoder.ptr.prototype.readName = function() {
+ var $ptr, _r$6, _r$7, _tuple, _tuple$1, b, d, ok, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; _r$7 = $f._r$7; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; b = $f.b; d = $f.d; ok = $f.ok; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ ok = false;
+ d = this;
+ b = 0;
+ _r$6 = d.mustgetc(); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple = _r$6;
+ b = _tuple[0];
+ ok = _tuple[1];
+ if (!ok) {
+ $s = -1; return ok;
+ }
+ if (b < 128 && !isNameByte(b)) {
+ d.ungetc(b);
+ ok = false;
+ $s = -1; return ok;
+ }
+ d.buf.WriteByte(b);
+ /* while (true) { */ case 2:
+ _r$7 = d.mustgetc(); /* */ $s = 4; case 4: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _tuple$1 = _r$7;
+ b = _tuple$1[0];
+ ok = _tuple$1[1];
+ if (!ok) {
+ $s = -1; return ok;
+ }
+ if (b < 128 && !isNameByte(b)) {
+ d.ungetc(b);
+ /* break; */ $s = 3; continue;
+ }
+ d.buf.WriteByte(b);
+ /* } */ $s = 2; continue; case 3:
+ ok = true;
+ $s = -1; return ok;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decoder.ptr.prototype.readName }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.b = b; $f.d = d; $f.ok = ok; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decoder.prototype.readName = function() { return this.$val.readName(); };
+ isNameByte = function(c) {
+ var $ptr, c;
+ return 65 <= c && c <= 90 || 97 <= c && c <= 122 || 48 <= c && c <= 57 || (c === 95) || (c === 58) || (c === 46) || (c === 45);
+ };
+ isName = function(s) {
+ var $ptr, _tuple, _tuple$1, c, n, s;
+ if (s.$length === 0) {
+ return false;
+ }
+ _tuple = utf8.DecodeRune(s);
+ c = _tuple[0];
+ n = _tuple[1];
+ if ((c === 65533) && (n === 1)) {
+ return false;
+ }
+ if (!unicode.Is(first, c)) {
+ return false;
+ }
+ while (true) {
+ if (!(n < s.$length)) { break; }
+ s = $subslice(s, n);
+ _tuple$1 = utf8.DecodeRune(s);
+ c = _tuple$1[0];
+ n = _tuple$1[1];
+ if ((c === 65533) && (n === 1)) {
+ return false;
+ }
+ if (!unicode.Is(first, c) && !unicode.Is(second, c)) {
+ return false;
+ }
+ }
+ return true;
+ };
+ isNameString = function(s) {
+ var $ptr, _tuple, _tuple$1, c, n, s;
+ if (s.length === 0) {
+ return false;
+ }
+ _tuple = utf8.DecodeRuneInString(s);
+ c = _tuple[0];
+ n = _tuple[1];
+ if ((c === 65533) && (n === 1)) {
+ return false;
+ }
+ if (!unicode.Is(first, c)) {
+ return false;
+ }
+ while (true) {
+ if (!(n < s.length)) { break; }
+ s = $substring(s, n);
+ _tuple$1 = utf8.DecodeRuneInString(s);
+ c = _tuple$1[0];
+ n = _tuple$1[1];
+ if ((c === 65533) && (n === 1)) {
+ return false;
+ }
+ if (!unicode.Is(first, c) && !unicode.Is(second, c)) {
+ return false;
+ }
+ }
+ return true;
+ };
+ EscapeText = function(w, s) {
+ var $ptr, _r$6, s, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$6 = $f._r$6; s = $f.s; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$6 = escapeText(w, s, true); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return _r$6;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: EscapeText }; } $f.$ptr = $ptr; $f._r$6 = _r$6; $f.s = s; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.EscapeText = EscapeText;
+ escapeText = function(w, s, escapeNewline) {
+ var $ptr, _1, _r$6, _r$7, _r$8, _tuple, _tuple$1, _tuple$2, _tuple$3, err, err$1, err$2, esc, escapeNewline, i, last, r, s, w, width, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; err = $f.err; err$1 = $f.err$1; err$2 = $f.err$2; esc = $f.esc; escapeNewline = $f.escapeNewline; i = $f.i; last = $f.last; r = $f.r; s = $f.s; w = $f.w; width = $f.width; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ esc = sliceType.nil;
+ last = 0;
+ i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(i < s.$length)) { break; } */ if(!(i < s.$length)) { $s = 2; continue; }
+ _tuple = utf8.DecodeRune($subslice(s, i));
+ r = _tuple[0];
+ width = _tuple[1];
+ i = i + (width) >> 0;
+ _1 = r;
+ if (_1 === (34)) {
+ esc = esc_quot;
+ } else if (_1 === (39)) {
+ esc = esc_apos;
+ } else if (_1 === (38)) {
+ esc = esc_amp;
+ } else if (_1 === (60)) {
+ esc = esc_lt;
+ } else if (_1 === (62)) {
+ esc = esc_gt;
+ } else if (_1 === (9)) {
+ esc = esc_tab;
+ } else if (_1 === (10)) {
+ if (!escapeNewline) {
+ /* continue; */ $s = 1; continue;
+ }
+ esc = esc_nl;
+ } else if (_1 === (13)) {
+ esc = esc_cr;
+ } else {
+ if (!isInCharacterRange(r) || ((r === 65533) && (width === 1))) {
+ esc = esc_fffd;
+ /* break; */ $s = 3; continue;
+ }
+ /* continue; */ $s = 1; continue;
+ }
+ case 3:
+ _r$6 = w.Write($subslice(s, last, (i - width >> 0))); /* */ $s = 4; case 4: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple$1 = _r$6;
+ err = _tuple$1[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ _r$7 = w.Write(esc); /* */ $s = 5; case 5: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _tuple$2 = _r$7;
+ err$1 = _tuple$2[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ last = i;
+ /* } */ $s = 1; continue; case 2:
+ _r$8 = w.Write($subslice(s, last)); /* */ $s = 6; case 6: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _tuple$3 = _r$8;
+ err$2 = _tuple$3[1];
+ if (!($interfaceIsEqual(err$2, $ifaceNil))) {
+ $s = -1; return err$2;
+ }
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: escapeText }; } $f.$ptr = $ptr; $f._1 = _1; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f.err = err; $f.err$1 = err$1; $f.err$2 = err$2; $f.esc = esc; $f.escapeNewline = escapeNewline; $f.i = i; $f.last = last; $f.r = r; $f.s = s; $f.w = w; $f.width = width; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ printer.ptr.prototype.EscapeString = function(s) {
+ var $ptr, _1, _r$6, _r$7, _r$8, _tuple, esc, i, last, p, r, s, width, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _tuple = $f._tuple; esc = $f.esc; i = $f.i; last = $f.last; p = $f.p; r = $f.r; s = $f.s; width = $f.width; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ esc = sliceType.nil;
+ last = 0;
+ i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(i < s.length)) { break; } */ if(!(i < s.length)) { $s = 2; continue; }
+ _tuple = utf8.DecodeRuneInString($substring(s, i));
+ r = _tuple[0];
+ width = _tuple[1];
+ i = i + (width) >> 0;
+ _1 = r;
+ if (_1 === (34)) {
+ esc = esc_quot;
+ } else if (_1 === (39)) {
+ esc = esc_apos;
+ } else if (_1 === (38)) {
+ esc = esc_amp;
+ } else if (_1 === (60)) {
+ esc = esc_lt;
+ } else if (_1 === (62)) {
+ esc = esc_gt;
+ } else if (_1 === (9)) {
+ esc = esc_tab;
+ } else if (_1 === (10)) {
+ esc = esc_nl;
+ } else if (_1 === (13)) {
+ esc = esc_cr;
+ } else {
+ if (!isInCharacterRange(r) || ((r === 65533) && (width === 1))) {
+ esc = esc_fffd;
+ /* break; */ $s = 3; continue;
+ }
+ /* continue; */ $s = 1; continue;
+ }
+ case 3:
+ _r$6 = p.Writer.WriteString($substring(s, last, (i - width >> 0))); /* */ $s = 4; case 4: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$6;
+ _r$7 = p.Writer.Write(esc); /* */ $s = 5; case 5: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _r$7;
+ last = i;
+ /* } */ $s = 1; continue; case 2:
+ _r$8 = p.Writer.WriteString($substring(s, last)); /* */ $s = 6; case 6: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _r$8;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: printer.ptr.prototype.EscapeString }; } $f.$ptr = $ptr; $f._1 = _1; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._tuple = _tuple; $f.esc = esc; $f.i = i; $f.last = last; $f.p = p; $f.r = r; $f.s = s; $f.width = width; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ printer.prototype.EscapeString = function(s) { return this.$val.EscapeString(s); };
+ emitCDATA = function(w, s) {
+ var $ptr, _r$10, _r$6, _r$7, _r$8, _r$9, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, err, err$1, err$2, err$3, err$4, i, s, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; err = $f.err; err$1 = $f.err$1; err$2 = $f.err$2; err$3 = $f.err$3; err$4 = $f.err$4; i = $f.i; s = $f.s; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ if (s.$length === 0) {
+ $s = -1; return $ifaceNil;
+ }
+ _r$6 = w.Write(cdataStart); /* */ $s = 1; case 1: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple = _r$6;
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ /* while (true) { */ case 2:
+ i = bytes.Index(s, cdataEnd);
+ /* */ if (i >= 0 && (i + cdataEnd.$length >> 0) <= s.$length) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (i >= 0 && (i + cdataEnd.$length >> 0) <= s.$length) { */ case 4:
+ _r$7 = w.Write($subslice(s, 0, i)); /* */ $s = 7; case 7: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _tuple$1 = _r$7;
+ err$1 = _tuple$1[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ _r$8 = w.Write(cdataEscape); /* */ $s = 8; case 8: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _tuple$2 = _r$8;
+ err$2 = _tuple$2[1];
+ if (!($interfaceIsEqual(err$2, $ifaceNil))) {
+ $s = -1; return err$2;
+ }
+ i = i + (cdataEnd.$length) >> 0;
+ $s = 6; continue;
+ /* } else { */ case 5:
+ _r$9 = w.Write(s); /* */ $s = 9; case 9: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _tuple$3 = _r$9;
+ err$3 = _tuple$3[1];
+ if (!($interfaceIsEqual(err$3, $ifaceNil))) {
+ $s = -1; return err$3;
+ }
+ /* break; */ $s = 3; continue;
+ /* } */ case 6:
+ s = $subslice(s, i);
+ /* } */ $s = 2; continue; case 3:
+ _r$10 = w.Write(cdataEnd); /* */ $s = 10; case 10: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _tuple$4 = _r$10;
+ err$4 = _tuple$4[1];
+ if (!($interfaceIsEqual(err$4, $ifaceNil))) {
+ $s = -1; return err$4;
+ }
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: emitCDATA }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f.err = err; $f.err$1 = err$1; $f.err$2 = err$2; $f.err$3 = err$3; $f.err$4 = err$4; $f.i = i; $f.s = s; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ procInst = function(param, s) {
+ var $ptr, idx, param, s, v;
+ param = param + "=";
+ idx = strings.Index(s, param);
+ if (idx === -1) {
+ return "";
+ }
+ v = $substring(s, (idx + param.length >> 0));
+ if (v === "") {
+ return "";
+ }
+ if (!((v.charCodeAt(0) === 39)) && !((v.charCodeAt(0) === 34))) {
+ return "";
+ }
+ idx = strings.IndexRune($substring(v, 1), ((v.charCodeAt(0) >> 0)));
+ if (idx === -1) {
+ return "";
+ }
+ return $substring(v, 1, (idx + 1 >> 0));
+ };
+ ptrType$7.methods = [{prop: "Indent", name: "Indent", pkg: "", typ: $funcType([$String, $String], [], false)}, {prop: "Encode", name: "Encode", pkg: "", typ: $funcType([$emptyInterface], [$error], false)}, {prop: "EncodeElement", name: "EncodeElement", pkg: "", typ: $funcType([$emptyInterface, StartElement], [$error], false)}, {prop: "EncodeToken", name: "EncodeToken", pkg: "", typ: $funcType([Token], [$error], false)}, {prop: "Flush", name: "Flush", pkg: "", typ: $funcType([], [$error], false)}];
+ ptrType$10.methods = [{prop: "createAttrPrefix", name: "createAttrPrefix", pkg: "encoding/xml", typ: $funcType([$String], [$String], false)}, {prop: "deleteAttrPrefix", name: "deleteAttrPrefix", pkg: "encoding/xml", typ: $funcType([$String], [], false)}, {prop: "markPrefix", name: "markPrefix", pkg: "encoding/xml", typ: $funcType([], [], false)}, {prop: "popPrefix", name: "popPrefix", pkg: "encoding/xml", typ: $funcType([], [], false)}, {prop: "marshalValue", name: "marshalValue", pkg: "encoding/xml", typ: $funcType([reflect.Value, ptrType$8, ptrType$9], [$error], false)}, {prop: "marshalAttr", name: "marshalAttr", pkg: "encoding/xml", typ: $funcType([ptrType$9, Name, reflect.Value], [$error], false)}, {prop: "marshalInterface", name: "marshalInterface", pkg: "encoding/xml", typ: $funcType([Marshaler, StartElement], [$error], false)}, {prop: "marshalTextInterface", name: "marshalTextInterface", pkg: "encoding/xml", typ: $funcType([encoding.TextMarshaler, StartElement], [$error], false)}, {prop: "writeStart", name: "writeStart", pkg: "encoding/xml", typ: $funcType([ptrType$9], [$error], false)}, {prop: "writeEnd", name: "writeEnd", pkg: "encoding/xml", typ: $funcType([Name], [$error], false)}, {prop: "marshalSimple", name: "marshalSimple", pkg: "encoding/xml", typ: $funcType([reflect.Type, reflect.Value], [$String, sliceType, $error], false)}, {prop: "marshalStruct", name: "marshalStruct", pkg: "encoding/xml", typ: $funcType([ptrType$12, reflect.Value], [$error], false)}, {prop: "cachedWriteError", name: "cachedWriteError", pkg: "encoding/xml", typ: $funcType([], [$error], false)}, {prop: "writeIndent", name: "writeIndent", pkg: "encoding/xml", typ: $funcType([$Int], [], false)}, {prop: "EscapeString", name: "EscapeString", pkg: "", typ: $funcType([$String], [], false)}];
+ ptrType$15.methods = [{prop: "trim", name: "trim", pkg: "encoding/xml", typ: $funcType([sliceType$3], [$error], false)}, {prop: "push", name: "push", pkg: "encoding/xml", typ: $funcType([sliceType$3], [$error], false)}];
+ ptrType$16.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ UnmarshalError.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$8.methods = [{prop: "value", name: "value", pkg: "encoding/xml", typ: $funcType([reflect.Value], [reflect.Value], false)}];
+ ptrType$18.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$19.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ StartElement.methods = [{prop: "Copy", name: "Copy", pkg: "", typ: $funcType([], [StartElement], false)}, {prop: "End", name: "End", pkg: "", typ: $funcType([], [EndElement], false)}];
+ CharData.methods = [{prop: "Copy", name: "Copy", pkg: "", typ: $funcType([], [CharData], false)}];
+ Comment.methods = [{prop: "Copy", name: "Copy", pkg: "", typ: $funcType([], [Comment], false)}];
+ ProcInst.methods = [{prop: "Copy", name: "Copy", pkg: "", typ: $funcType([], [ProcInst], false)}];
+ Directive.methods = [{prop: "Copy", name: "Copy", pkg: "", typ: $funcType([], [Directive], false)}];
+ ptrType$17.methods = [{prop: "Decode", name: "Decode", pkg: "", typ: $funcType([$emptyInterface], [$error], false)}, {prop: "DecodeElement", name: "DecodeElement", pkg: "", typ: $funcType([$emptyInterface, ptrType$9], [$error], false)}, {prop: "unmarshalInterface", name: "unmarshalInterface", pkg: "encoding/xml", typ: $funcType([Unmarshaler, ptrType$9], [$error], false)}, {prop: "unmarshalTextInterface", name: "unmarshalTextInterface", pkg: "encoding/xml", typ: $funcType([encoding.TextUnmarshaler, ptrType$9], [$error], false)}, {prop: "unmarshalAttr", name: "unmarshalAttr", pkg: "encoding/xml", typ: $funcType([reflect.Value, Attr], [$error], false)}, {prop: "unmarshal", name: "unmarshal", pkg: "encoding/xml", typ: $funcType([reflect.Value, ptrType$9], [$error], false)}, {prop: "unmarshalPath", name: "unmarshalPath", pkg: "encoding/xml", typ: $funcType([ptrType$12, reflect.Value, sliceType$3, ptrType$9], [$Bool, $error], false)}, {prop: "Skip", name: "Skip", pkg: "", typ: $funcType([], [$error], false)}, {prop: "Token", name: "Token", pkg: "", typ: $funcType([], [Token, $error], false)}, {prop: "translate", name: "translate", pkg: "encoding/xml", typ: $funcType([ptrType$20, $Bool], [], false)}, {prop: "switchToReader", name: "switchToReader", pkg: "encoding/xml", typ: $funcType([io.Reader], [], false)}, {prop: "push", name: "push", pkg: "encoding/xml", typ: $funcType([$Int], [ptrType$14], false)}, {prop: "pop", name: "pop", pkg: "encoding/xml", typ: $funcType([], [ptrType$14], false)}, {prop: "pushEOF", name: "pushEOF", pkg: "encoding/xml", typ: $funcType([], [], false)}, {prop: "popEOF", name: "popEOF", pkg: "encoding/xml", typ: $funcType([], [$Bool], false)}, {prop: "pushElement", name: "pushElement", pkg: "encoding/xml", typ: $funcType([Name], [], false)}, {prop: "pushNs", name: "pushNs", pkg: "encoding/xml", typ: $funcType([$String, $String, $Bool], [], false)}, {prop: "syntaxError", name: "syntaxError", pkg: "encoding/xml", typ: $funcType([$String], [$error], false)}, {prop: "popElement", name: "popElement", pkg: "encoding/xml", typ: $funcType([ptrType$21], [$Bool], false)}, {prop: "autoClose", name: "autoClose", pkg: "encoding/xml", typ: $funcType([Token], [Token, $Bool], false)}, {prop: "RawToken", name: "RawToken", pkg: "", typ: $funcType([], [Token, $error], false)}, {prop: "rawToken", name: "rawToken", pkg: "encoding/xml", typ: $funcType([], [Token, $error], false)}, {prop: "attrval", name: "attrval", pkg: "encoding/xml", typ: $funcType([], [sliceType], false)}, {prop: "space", name: "space", pkg: "encoding/xml", typ: $funcType([], [], false)}, {prop: "getc", name: "getc", pkg: "encoding/xml", typ: $funcType([], [$Uint8, $Bool], false)}, {prop: "InputOffset", name: "InputOffset", pkg: "", typ: $funcType([], [$Int64], false)}, {prop: "savedOffset", name: "savedOffset", pkg: "encoding/xml", typ: $funcType([], [$Int], false)}, {prop: "mustgetc", name: "mustgetc", pkg: "encoding/xml", typ: $funcType([], [$Uint8, $Bool], false)}, {prop: "ungetc", name: "ungetc", pkg: "encoding/xml", typ: $funcType([$Uint8], [], false)}, {prop: "text", name: "text", pkg: "encoding/xml", typ: $funcType([$Int, $Bool], [sliceType], false)}, {prop: "nsname", name: "nsname", pkg: "encoding/xml", typ: $funcType([], [Name, $Bool], false)}, {prop: "name", name: "name", pkg: "encoding/xml", typ: $funcType([], [$String, $Bool], false)}, {prop: "readName", name: "readName", pkg: "encoding/xml", typ: $funcType([], [$Bool], false)}];
+ Marshaler.init([{prop: "MarshalXML", name: "MarshalXML", pkg: "", typ: $funcType([ptrType$7, StartElement], [$error], false)}]);
+ MarshalerAttr.init([{prop: "MarshalXMLAttr", name: "MarshalXMLAttr", pkg: "", typ: $funcType([Name], [Attr, $error], false)}]);
+ Encoder.init("encoding/xml", [{prop: "p", name: "p", exported: false, typ: printer, tag: ""}]);
+ printer.init("encoding/xml", [{prop: "Writer", name: "", exported: true, typ: ptrType$6, tag: ""}, {prop: "encoder", name: "encoder", exported: false, typ: ptrType$7, tag: ""}, {prop: "seq", name: "seq", exported: false, typ: $Int, tag: ""}, {prop: "indent", name: "indent", exported: false, typ: $String, tag: ""}, {prop: "prefix", name: "prefix", exported: false, typ: $String, tag: ""}, {prop: "depth", name: "depth", exported: false, typ: $Int, tag: ""}, {prop: "indentedIn", name: "indentedIn", exported: false, typ: $Bool, tag: ""}, {prop: "putNewline", name: "putNewline", exported: false, typ: $Bool, tag: ""}, {prop: "attrNS", name: "attrNS", exported: false, typ: mapType, tag: ""}, {prop: "attrPrefix", name: "attrPrefix", exported: false, typ: mapType, tag: ""}, {prop: "prefixes", name: "prefixes", exported: false, typ: sliceType$3, tag: ""}, {prop: "tags", name: "tags", exported: false, typ: sliceType$4, tag: ""}]);
+ parentStack.init("encoding/xml", [{prop: "p", name: "p", exported: false, typ: ptrType$10, tag: ""}, {prop: "stack", name: "stack", exported: false, typ: sliceType$3, tag: ""}]);
+ UnsupportedTypeError.init("", [{prop: "Type", name: "Type", exported: true, typ: reflect.Type, tag: ""}]);
+ Unmarshaler.init([{prop: "UnmarshalXML", name: "UnmarshalXML", pkg: "", typ: $funcType([ptrType$17, StartElement], [$error], false)}]);
+ UnmarshalerAttr.init([{prop: "UnmarshalXMLAttr", name: "UnmarshalXMLAttr", pkg: "", typ: $funcType([Attr], [$error], false)}]);
+ typeInfo.init("encoding/xml", [{prop: "xmlname", name: "xmlname", exported: false, typ: ptrType$8, tag: ""}, {prop: "fields", name: "fields", exported: false, typ: sliceType$8, tag: ""}]);
+ fieldInfo.init("encoding/xml", [{prop: "idx", name: "idx", exported: false, typ: sliceType$9, tag: ""}, {prop: "name", name: "name", exported: false, typ: $String, tag: ""}, {prop: "xmlns", name: "xmlns", exported: false, typ: $String, tag: ""}, {prop: "flags", name: "flags", exported: false, typ: fieldFlags, tag: ""}, {prop: "parents", name: "parents", exported: false, typ: sliceType$3, tag: ""}]);
+ TagPathError.init("", [{prop: "Struct", name: "Struct", exported: true, typ: reflect.Type, tag: ""}, {prop: "Field1", name: "Field1", exported: true, typ: $String, tag: ""}, {prop: "Tag1", name: "Tag1", exported: true, typ: $String, tag: ""}, {prop: "Field2", name: "Field2", exported: true, typ: $String, tag: ""}, {prop: "Tag2", name: "Tag2", exported: true, typ: $String, tag: ""}]);
+ SyntaxError.init("", [{prop: "Msg", name: "Msg", exported: true, typ: $String, tag: ""}, {prop: "Line", name: "Line", exported: true, typ: $Int, tag: ""}]);
+ Name.init("", [{prop: "Space", name: "Space", exported: true, typ: $String, tag: ""}, {prop: "Local", name: "Local", exported: true, typ: $String, tag: ""}]);
+ Attr.init("", [{prop: "Name", name: "Name", exported: true, typ: Name, tag: ""}, {prop: "Value", name: "Value", exported: true, typ: $String, tag: ""}]);
+ Token.init([]);
+ StartElement.init("", [{prop: "Name", name: "Name", exported: true, typ: Name, tag: ""}, {prop: "Attr", name: "Attr", exported: true, typ: sliceType$6, tag: ""}]);
+ EndElement.init("", [{prop: "Name", name: "Name", exported: true, typ: Name, tag: ""}]);
+ CharData.init($Uint8);
+ Comment.init($Uint8);
+ ProcInst.init("", [{prop: "Target", name: "Target", exported: true, typ: $String, tag: ""}, {prop: "Inst", name: "Inst", exported: true, typ: sliceType, tag: ""}]);
+ Directive.init($Uint8);
+ Decoder.init("encoding/xml", [{prop: "Strict", name: "Strict", exported: true, typ: $Bool, tag: ""}, {prop: "AutoClose", name: "AutoClose", exported: true, typ: sliceType$3, tag: ""}, {prop: "Entity", name: "Entity", exported: true, typ: mapType, tag: ""}, {prop: "CharsetReader", name: "CharsetReader", exported: true, typ: funcType, tag: ""}, {prop: "DefaultSpace", name: "DefaultSpace", exported: true, typ: $String, tag: ""}, {prop: "r", name: "r", exported: false, typ: io.ByteReader, tag: ""}, {prop: "buf", name: "buf", exported: false, typ: bytes.Buffer, tag: ""}, {prop: "saved", name: "saved", exported: false, typ: ptrType$13, tag: ""}, {prop: "stk", name: "stk", exported: false, typ: ptrType$14, tag: ""}, {prop: "free", name: "free", exported: false, typ: ptrType$14, tag: ""}, {prop: "needClose", name: "needClose", exported: false, typ: $Bool, tag: ""}, {prop: "toClose", name: "toClose", exported: false, typ: Name, tag: ""}, {prop: "nextToken", name: "nextToken", exported: false, typ: Token, tag: ""}, {prop: "nextByte", name: "nextByte", exported: false, typ: $Int, tag: ""}, {prop: "ns", name: "ns", exported: false, typ: mapType, tag: ""}, {prop: "err", name: "err", exported: false, typ: $error, tag: ""}, {prop: "line", name: "line", exported: false, typ: $Int, tag: ""}, {prop: "offset", name: "offset", exported: false, typ: $Int64, tag: ""}, {prop: "unmarshalDepth", name: "unmarshalDepth", exported: false, typ: $Int, tag: ""}]);
+ stack.init("encoding/xml", [{prop: "next", name: "next", exported: false, typ: ptrType$14, tag: ""}, {prop: "kind", name: "kind", exported: false, typ: $Int, tag: ""}, {prop: "name", name: "name", exported: false, typ: Name, tag: ""}, {prop: "ok", name: "ok", exported: false, typ: $Bool, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bufio.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = bytes.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = encoding.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = reflect.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = unicode.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = utf8.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ tinfoLock = new sync.RWMutex.ptr(new sync.Mutex.ptr(0, 0), 0, 0, 0, 0);
+ begComment = (new sliceType($stringToBytes("<!--")));
+ endComment = (new sliceType($stringToBytes("-->")));
+ endProcInst = (new sliceType($stringToBytes("?>")));
+ _r = reflect.TypeOf((ptrType.nil)).Elem(); /* */ $s = 13; case 13: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ marshalerType = _r;
+ _r$1 = reflect.TypeOf((ptrType$1.nil)).Elem(); /* */ $s = 14; case 14: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ marshalerAttrType = _r$1;
+ _r$2 = reflect.TypeOf((ptrType$2.nil)).Elem(); /* */ $s = 15; case 15: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ textMarshalerType = _r$2;
+ ddBytes = (new sliceType($stringToBytes("--")));
+ attrType = reflect.TypeOf((x = new Attr.ptr(new Name.ptr("", ""), ""), new x.constructor.elem(x)));
+ _r$3 = reflect.TypeOf((ptrType$3.nil)).Elem(); /* */ $s = 16; case 16: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ unmarshalerType = _r$3;
+ _r$4 = reflect.TypeOf((ptrType$4.nil)).Elem(); /* */ $s = 17; case 17: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ unmarshalerAttrType = _r$4;
+ _r$5 = reflect.TypeOf((ptrType$5.nil)).Elem(); /* */ $s = 18; case 18: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ textUnmarshalerType = _r$5;
+ tinfoMap = {};
+ nameType = reflect.TypeOf((x$1 = new Name.ptr("", ""), new x$1.constructor.elem(x$1)));
+ errRawToken = errors.New("xml: cannot use RawToken from UnmarshalXML method");
+ entity = $makeMap($String.keyFor, [{ k: "lt", v: 60 }, { k: "gt", v: 62 }, { k: "amp", v: 38 }, { k: "apos", v: 39 }, { k: "quot", v: 34 }]);
+ first = new unicode.RangeTable.ptr(new sliceType$1([new unicode.Range16.ptr(58, 58, 1), new unicode.Range16.ptr(65, 90, 1), new unicode.Range16.ptr(95, 95, 1), new unicode.Range16.ptr(97, 122, 1), new unicode.Range16.ptr(192, 214, 1), new unicode.Range16.ptr(216, 246, 1), new unicode.Range16.ptr(248, 255, 1), new unicode.Range16.ptr(256, 305, 1), new unicode.Range16.ptr(308, 318, 1), new unicode.Range16.ptr(321, 328, 1), new unicode.Range16.ptr(330, 382, 1), new unicode.Range16.ptr(384, 451, 1), new unicode.Range16.ptr(461, 496, 1), new unicode.Range16.ptr(500, 501, 1), new unicode.Range16.ptr(506, 535, 1), new unicode.Range16.ptr(592, 680, 1), new unicode.Range16.ptr(699, 705, 1), new unicode.Range16.ptr(902, 902, 1), new unicode.Range16.ptr(904, 906, 1), new unicode.Range16.ptr(908, 908, 1), new unicode.Range16.ptr(910, 929, 1), new unicode.Range16.ptr(931, 974, 1), new unicode.Range16.ptr(976, 982, 1), new unicode.Range16.ptr(986, 992, 2), new unicode.Range16.ptr(994, 1011, 1), new unicode.Range16.ptr(1025, 1036, 1), new unicode.Range16.ptr(1038, 1103, 1), new unicode.Range16.ptr(1105, 1116, 1), new unicode.Range16.ptr(1118, 1153, 1), new unicode.Range16.ptr(1168, 1220, 1), new unicode.Range16.ptr(1223, 1224, 1), new unicode.Range16.ptr(1227, 1228, 1), new unicode.Range16.ptr(1232, 1259, 1), new unicode.Range16.ptr(1262, 1269, 1), new unicode.Range16.ptr(1272, 1273, 1), new unicode.Range16.ptr(1329, 1366, 1), new unicode.Range16.ptr(1369, 1369, 1), new unicode.Range16.ptr(1377, 1414, 1), new unicode.Range16.ptr(1488, 1514, 1), new unicode.Range16.ptr(1520, 1522, 1), new unicode.Range16.ptr(1569, 1594, 1), new unicode.Range16.ptr(1601, 1610, 1), new unicode.Range16.ptr(1649, 1719, 1), new unicode.Range16.ptr(1722, 1726, 1), new unicode.Range16.ptr(1728, 1742, 1), new unicode.Range16.ptr(1744, 1747, 1), new unicode.Range16.ptr(1749, 1749, 1), new unicode.Range16.ptr(1765, 1766, 1), new unicode.Range16.ptr(2309, 2361, 1), new unicode.Range16.ptr(2365, 2365, 1), new unicode.Range16.ptr(2392, 2401, 1), new unicode.Range16.ptr(2437, 2444, 1), new unicode.Range16.ptr(2447, 2448, 1), new unicode.Range16.ptr(2451, 2472, 1), new unicode.Range16.ptr(2474, 2480, 1), new unicode.Range16.ptr(2482, 2482, 1), new unicode.Range16.ptr(2486, 2489, 1), new unicode.Range16.ptr(2524, 2525, 1), new unicode.Range16.ptr(2527, 2529, 1), new unicode.Range16.ptr(2544, 2545, 1), new unicode.Range16.ptr(2565, 2570, 1), new unicode.Range16.ptr(2575, 2576, 1), new unicode.Range16.ptr(2579, 2600, 1), new unicode.Range16.ptr(2602, 2608, 1), new unicode.Range16.ptr(2610, 2611, 1), new unicode.Range16.ptr(2613, 2614, 1), new unicode.Range16.ptr(2616, 2617, 1), new unicode.Range16.ptr(2649, 2652, 1), new unicode.Range16.ptr(2654, 2654, 1), new unicode.Range16.ptr(2674, 2676, 1), new unicode.Range16.ptr(2693, 2699, 1), new unicode.Range16.ptr(2701, 2701, 1), new unicode.Range16.ptr(2703, 2705, 1), new unicode.Range16.ptr(2707, 2728, 1), new unicode.Range16.ptr(2730, 2736, 1), new unicode.Range16.ptr(2738, 2739, 1), new unicode.Range16.ptr(2741, 2745, 1), new unicode.Range16.ptr(2749, 2784, 35), new unicode.Range16.ptr(2821, 2828, 1), new unicode.Range16.ptr(2831, 2832, 1), new unicode.Range16.ptr(2835, 2856, 1), new unicode.Range16.ptr(2858, 2864, 1), new unicode.Range16.ptr(2866, 2867, 1), new unicode.Range16.ptr(2870, 2873, 1), new unicode.Range16.ptr(2877, 2877, 1), new unicode.Range16.ptr(2908, 2909, 1), new unicode.Range16.ptr(2911, 2913, 1), new unicode.Range16.ptr(2949, 2954, 1), new unicode.Range16.ptr(2958, 2960, 1), new unicode.Range16.ptr(2962, 2965, 1), new unicode.Range16.ptr(2969, 2970, 1), new unicode.Range16.ptr(2972, 2972, 1), new unicode.Range16.ptr(2974, 2975, 1), new unicode.Range16.ptr(2979, 2980, 1), new unicode.Range16.ptr(2984, 2986, 1), new unicode.Range16.ptr(2990, 2997, 1), new unicode.Range16.ptr(2999, 3001, 1), new unicode.Range16.ptr(3077, 3084, 1), new unicode.Range16.ptr(3086, 3088, 1), new unicode.Range16.ptr(3090, 3112, 1), new unicode.Range16.ptr(3114, 3123, 1), new unicode.Range16.ptr(3125, 3129, 1), new unicode.Range16.ptr(3168, 3169, 1), new unicode.Range16.ptr(3205, 3212, 1), new unicode.Range16.ptr(3214, 3216, 1), new unicode.Range16.ptr(3218, 3240, 1), new unicode.Range16.ptr(3242, 3251, 1), new unicode.Range16.ptr(3253, 3257, 1), new unicode.Range16.ptr(3294, 3294, 1), new unicode.Range16.ptr(3296, 3297, 1), new unicode.Range16.ptr(3333, 3340, 1), new unicode.Range16.ptr(3342, 3344, 1), new unicode.Range16.ptr(3346, 3368, 1), new unicode.Range16.ptr(3370, 3385, 1), new unicode.Range16.ptr(3424, 3425, 1), new unicode.Range16.ptr(3585, 3630, 1), new unicode.Range16.ptr(3632, 3632, 1), new unicode.Range16.ptr(3634, 3635, 1), new unicode.Range16.ptr(3648, 3653, 1), new unicode.Range16.ptr(3713, 3714, 1), new unicode.Range16.ptr(3716, 3716, 1), new unicode.Range16.ptr(3719, 3720, 1), new unicode.Range16.ptr(3722, 3725, 3), new unicode.Range16.ptr(3732, 3735, 1), new unicode.Range16.ptr(3737, 3743, 1), new unicode.Range16.ptr(3745, 3747, 1), new unicode.Range16.ptr(3749, 3751, 2), new unicode.Range16.ptr(3754, 3755, 1), new unicode.Range16.ptr(3757, 3758, 1), new unicode.Range16.ptr(3760, 3760, 1), new unicode.Range16.ptr(3762, 3763, 1), new unicode.Range16.ptr(3773, 3773, 1), new unicode.Range16.ptr(3776, 3780, 1), new unicode.Range16.ptr(3904, 3911, 1), new unicode.Range16.ptr(3913, 3945, 1), new unicode.Range16.ptr(4256, 4293, 1), new unicode.Range16.ptr(4304, 4342, 1), new unicode.Range16.ptr(4352, 4352, 1), new unicode.Range16.ptr(4354, 4355, 1), new unicode.Range16.ptr(4357, 4359, 1), new unicode.Range16.ptr(4361, 4361, 1), new unicode.Range16.ptr(4363, 4364, 1), new unicode.Range16.ptr(4366, 4370, 1), new unicode.Range16.ptr(4412, 4416, 2), new unicode.Range16.ptr(4428, 4432, 2), new unicode.Range16.ptr(4436, 4437, 1), new unicode.Range16.ptr(4441, 4441, 1), new unicode.Range16.ptr(4447, 4449, 1), new unicode.Range16.ptr(4451, 4457, 2), new unicode.Range16.ptr(4461, 4462, 1), new unicode.Range16.ptr(4466, 4467, 1), new unicode.Range16.ptr(4469, 4510, 41), new unicode.Range16.ptr(4520, 4523, 3), new unicode.Range16.ptr(4526, 4527, 1), new unicode.Range16.ptr(4535, 4536, 1), new unicode.Range16.ptr(4538, 4538, 1), new unicode.Range16.ptr(4540, 4546, 1), new unicode.Range16.ptr(4587, 4592, 5), new unicode.Range16.ptr(4601, 4601, 1), new unicode.Range16.ptr(7680, 7835, 1), new unicode.Range16.ptr(7840, 7929, 1), new unicode.Range16.ptr(7936, 7957, 1), new unicode.Range16.ptr(7960, 7965, 1), new unicode.Range16.ptr(7968, 8005, 1), new unicode.Range16.ptr(8008, 8013, 1), new unicode.Range16.ptr(8016, 8023, 1), new unicode.Range16.ptr(8025, 8027, 2), new unicode.Range16.ptr(8029, 8029, 1), new unicode.Range16.ptr(8031, 8061, 1), new unicode.Range16.ptr(8064, 8116, 1), new unicode.Range16.ptr(8118, 8124, 1), new unicode.Range16.ptr(8126, 8126, 1), new unicode.Range16.ptr(8130, 8132, 1), new unicode.Range16.ptr(8134, 8140, 1), new unicode.Range16.ptr(8144, 8147, 1), new unicode.Range16.ptr(8150, 8155, 1), new unicode.Range16.ptr(8160, 8172, 1), new unicode.Range16.ptr(8178, 8180, 1), new unicode.Range16.ptr(8182, 8188, 1), new unicode.Range16.ptr(8486, 8486, 1), new unicode.Range16.ptr(8490, 8491, 1), new unicode.Range16.ptr(8494, 8494, 1), new unicode.Range16.ptr(8576, 8578, 1), new unicode.Range16.ptr(12295, 12295, 1), new unicode.Range16.ptr(12321, 12329, 1), new unicode.Range16.ptr(12353, 12436, 1), new unicode.Range16.ptr(12449, 12538, 1), new unicode.Range16.ptr(12549, 12588, 1), new unicode.Range16.ptr(19968, 40869, 1), new unicode.Range16.ptr(44032, 55203, 1)]), sliceType$2.nil, 0);
+ second = new unicode.RangeTable.ptr(new sliceType$1([new unicode.Range16.ptr(45, 46, 1), new unicode.Range16.ptr(48, 57, 1), new unicode.Range16.ptr(183, 183, 1), new unicode.Range16.ptr(720, 721, 1), new unicode.Range16.ptr(768, 837, 1), new unicode.Range16.ptr(864, 865, 1), new unicode.Range16.ptr(903, 903, 1), new unicode.Range16.ptr(1155, 1158, 1), new unicode.Range16.ptr(1425, 1441, 1), new unicode.Range16.ptr(1443, 1465, 1), new unicode.Range16.ptr(1467, 1469, 1), new unicode.Range16.ptr(1471, 1471, 1), new unicode.Range16.ptr(1473, 1474, 1), new unicode.Range16.ptr(1476, 1600, 124), new unicode.Range16.ptr(1611, 1618, 1), new unicode.Range16.ptr(1632, 1641, 1), new unicode.Range16.ptr(1648, 1648, 1), new unicode.Range16.ptr(1750, 1756, 1), new unicode.Range16.ptr(1757, 1759, 1), new unicode.Range16.ptr(1760, 1764, 1), new unicode.Range16.ptr(1767, 1768, 1), new unicode.Range16.ptr(1770, 1773, 1), new unicode.Range16.ptr(1776, 1785, 1), new unicode.Range16.ptr(2305, 2307, 1), new unicode.Range16.ptr(2364, 2364, 1), new unicode.Range16.ptr(2366, 2380, 1), new unicode.Range16.ptr(2381, 2381, 1), new unicode.Range16.ptr(2385, 2388, 1), new unicode.Range16.ptr(2402, 2403, 1), new unicode.Range16.ptr(2406, 2415, 1), new unicode.Range16.ptr(2433, 2435, 1), new unicode.Range16.ptr(2492, 2492, 1), new unicode.Range16.ptr(2494, 2495, 1), new unicode.Range16.ptr(2496, 2500, 1), new unicode.Range16.ptr(2503, 2504, 1), new unicode.Range16.ptr(2507, 2509, 1), new unicode.Range16.ptr(2519, 2519, 1), new unicode.Range16.ptr(2530, 2531, 1), new unicode.Range16.ptr(2534, 2543, 1), new unicode.Range16.ptr(2562, 2620, 58), new unicode.Range16.ptr(2622, 2623, 1), new unicode.Range16.ptr(2624, 2626, 1), new unicode.Range16.ptr(2631, 2632, 1), new unicode.Range16.ptr(2635, 2637, 1), new unicode.Range16.ptr(2662, 2671, 1), new unicode.Range16.ptr(2672, 2673, 1), new unicode.Range16.ptr(2689, 2691, 1), new unicode.Range16.ptr(2748, 2748, 1), new unicode.Range16.ptr(2750, 2757, 1), new unicode.Range16.ptr(2759, 2761, 1), new unicode.Range16.ptr(2763, 2765, 1), new unicode.Range16.ptr(2790, 2799, 1), new unicode.Range16.ptr(2817, 2819, 1), new unicode.Range16.ptr(2876, 2876, 1), new unicode.Range16.ptr(2878, 2883, 1), new unicode.Range16.ptr(2887, 2888, 1), new unicode.Range16.ptr(2891, 2893, 1), new unicode.Range16.ptr(2902, 2903, 1), new unicode.Range16.ptr(2918, 2927, 1), new unicode.Range16.ptr(2946, 2947, 1), new unicode.Range16.ptr(3006, 3010, 1), new unicode.Range16.ptr(3014, 3016, 1), new unicode.Range16.ptr(3018, 3021, 1), new unicode.Range16.ptr(3031, 3031, 1), new unicode.Range16.ptr(3047, 3055, 1), new unicode.Range16.ptr(3073, 3075, 1), new unicode.Range16.ptr(3134, 3140, 1), new unicode.Range16.ptr(3142, 3144, 1), new unicode.Range16.ptr(3146, 3149, 1), new unicode.Range16.ptr(3157, 3158, 1), new unicode.Range16.ptr(3174, 3183, 1), new unicode.Range16.ptr(3202, 3203, 1), new unicode.Range16.ptr(3262, 3268, 1), new unicode.Range16.ptr(3270, 3272, 1), new unicode.Range16.ptr(3274, 3277, 1), new unicode.Range16.ptr(3285, 3286, 1), new unicode.Range16.ptr(3302, 3311, 1), new unicode.Range16.ptr(3330, 3331, 1), new unicode.Range16.ptr(3390, 3395, 1), new unicode.Range16.ptr(3398, 3400, 1), new unicode.Range16.ptr(3402, 3405, 1), new unicode.Range16.ptr(3415, 3415, 1), new unicode.Range16.ptr(3430, 3439, 1), new unicode.Range16.ptr(3633, 3633, 1), new unicode.Range16.ptr(3636, 3642, 1), new unicode.Range16.ptr(3654, 3654, 1), new unicode.Range16.ptr(3655, 3662, 1), new unicode.Range16.ptr(3664, 3673, 1), new unicode.Range16.ptr(3761, 3761, 1), new unicode.Range16.ptr(3764, 3769, 1), new unicode.Range16.ptr(3771, 3772, 1), new unicode.Range16.ptr(3782, 3782, 1), new unicode.Range16.ptr(3784, 3789, 1), new unicode.Range16.ptr(3792, 3801, 1), new unicode.Range16.ptr(3864, 3865, 1), new unicode.Range16.ptr(3872, 3881, 1), new unicode.Range16.ptr(3893, 3897, 2), new unicode.Range16.ptr(3902, 3903, 1), new unicode.Range16.ptr(3953, 3972, 1), new unicode.Range16.ptr(3974, 3979, 1), new unicode.Range16.ptr(3984, 3989, 1), new unicode.Range16.ptr(3991, 3991, 1), new unicode.Range16.ptr(3993, 4013, 1), new unicode.Range16.ptr(4017, 4023, 1), new unicode.Range16.ptr(4025, 4025, 1), new unicode.Range16.ptr(8400, 8412, 1), new unicode.Range16.ptr(8417, 12293, 3876), new unicode.Range16.ptr(12330, 12335, 1), new unicode.Range16.ptr(12337, 12341, 1), new unicode.Range16.ptr(12441, 12442, 1), new unicode.Range16.ptr(12445, 12446, 1), new unicode.Range16.ptr(12540, 12542, 1)]), sliceType$2.nil, 0);
+ esc_quot = (new sliceType($stringToBytes("&#34;")));
+ esc_apos = (new sliceType($stringToBytes("&#39;")));
+ esc_amp = (new sliceType($stringToBytes("&amp;")));
+ esc_lt = (new sliceType($stringToBytes("&lt;")));
+ esc_gt = (new sliceType($stringToBytes("&gt;")));
+ esc_tab = (new sliceType($stringToBytes("&#x9;")));
+ esc_nl = (new sliceType($stringToBytes("&#xA;")));
+ esc_cr = (new sliceType($stringToBytes("&#xD;")));
+ esc_fffd = (new sliceType($stringToBytes("\xEF\xBF\xBD")));
+ cdataStart = (new sliceType($stringToBytes("<![CDATA[")));
+ cdataEnd = (new sliceType($stringToBytes("]]>")));
+ cdataEscape = (new sliceType($stringToBytes("]]]]><![CDATA[>")));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["math/rand"] = (function() {
+ var $pkg = {}, $init, nosync, math, Source, Source64, Rand, lockedSource, rngSource, arrayType, ptrType, ptrType$1, sliceType, ptrType$2, ptrType$3, sliceType$1, ptrType$5, ke, we, fe, kn, wn, fn, globalRand, rng_cooked, absInt32, NewSource, New, read, seedrand;
+ nosync = $packages["github.com/gopherjs/gopherjs/nosync"];
+ math = $packages["math"];
+ Source = $pkg.Source = $newType(8, $kindInterface, "rand.Source", true, "math/rand", true, null);
+ Source64 = $pkg.Source64 = $newType(8, $kindInterface, "rand.Source64", true, "math/rand", true, null);
+ Rand = $pkg.Rand = $newType(0, $kindStruct, "rand.Rand", true, "math/rand", true, function(src_, s64_, readVal_, readPos_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.src = $ifaceNil;
+ this.s64 = $ifaceNil;
+ this.readVal = new $Int64(0, 0);
+ this.readPos = 0;
+ return;
+ }
+ this.src = src_;
+ this.s64 = s64_;
+ this.readVal = readVal_;
+ this.readPos = readPos_;
+ });
+ lockedSource = $pkg.lockedSource = $newType(0, $kindStruct, "rand.lockedSource", true, "math/rand", false, function(lk_, src_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.lk = new nosync.Mutex.ptr(false);
+ this.src = $ifaceNil;
+ return;
+ }
+ this.lk = lk_;
+ this.src = src_;
+ });
+ rngSource = $pkg.rngSource = $newType(0, $kindStruct, "rand.rngSource", true, "math/rand", false, function(tap_, feed_, vec_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.tap = 0;
+ this.feed = 0;
+ this.vec = arrayType.zero();
+ return;
+ }
+ this.tap = tap_;
+ this.feed = feed_;
+ this.vec = vec_;
+ });
+ arrayType = $arrayType($Int64, 607);
+ ptrType = $ptrType(lockedSource);
+ ptrType$1 = $ptrType($Int8);
+ sliceType = $sliceType($Int);
+ ptrType$2 = $ptrType($Int64);
+ ptrType$3 = $ptrType(Rand);
+ sliceType$1 = $sliceType($Uint8);
+ ptrType$5 = $ptrType(rngSource);
+ Rand.ptr.prototype.ExpFloat64 = function() {
+ var $ptr, _r, _r$1, _r$2, _r$3, i, j, r, x, x$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; i = $f.i; j = $f.j; r = $f.r; x = $f.x; x$1 = $f.x$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ /* while (true) { */ case 1:
+ _r = r.Uint32(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ j = _r;
+ i = (j & 255) >>> 0;
+ x = (j) * (((i < 0 || i >= we.length) ? ($throwRuntimeError("index out of range"), undefined) : we[i]));
+ if (j < ((i < 0 || i >= ke.length) ? ($throwRuntimeError("index out of range"), undefined) : ke[i])) {
+ $s = -1; return x;
+ }
+ /* */ if (i === 0) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (i === 0) { */ case 4:
+ _r$1 = r.Float64(); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = math.Log(_r$1); /* */ $s = 7; case 7: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return 7.69711747013105 - _r$2;
+ /* } */ case 5:
+ _r$3 = r.Float64(); /* */ $s = 10; case 10: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ /* */ if ($fround(((i < 0 || i >= fe.length) ? ($throwRuntimeError("index out of range"), undefined) : fe[i]) + $fround(($fround(_r$3)) * ($fround((x$1 = i - 1 >>> 0, ((x$1 < 0 || x$1 >= fe.length) ? ($throwRuntimeError("index out of range"), undefined) : fe[x$1])) - ((i < 0 || i >= fe.length) ? ($throwRuntimeError("index out of range"), undefined) : fe[i]))))) < ($fround(math.Exp(-x)))) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if ($fround(((i < 0 || i >= fe.length) ? ($throwRuntimeError("index out of range"), undefined) : fe[i]) + $fround(($fround(_r$3)) * ($fround((x$1 = i - 1 >>> 0, ((x$1 < 0 || x$1 >= fe.length) ? ($throwRuntimeError("index out of range"), undefined) : fe[x$1])) - ((i < 0 || i >= fe.length) ? ($throwRuntimeError("index out of range"), undefined) : fe[i]))))) < ($fround(math.Exp(-x)))) { */ case 8:
+ $s = -1; return x;
+ /* } */ case 9:
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return 0;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Rand.ptr.prototype.ExpFloat64 }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f.i = i; $f.j = j; $f.r = r; $f.x = x; $f.x$1 = x$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Rand.prototype.ExpFloat64 = function() { return this.$val.ExpFloat64(); };
+ absInt32 = function(i) {
+ var $ptr, i;
+ if (i < 0) {
+ return ((-i >>> 0));
+ }
+ return ((i >>> 0));
+ };
+ Rand.ptr.prototype.NormFloat64 = function() {
+ var $ptr, _r, _r$1, _r$2, _r$3, _r$4, _r$5, i, j, r, x, x$1, y, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; i = $f.i; j = $f.j; r = $f.r; x = $f.x; x$1 = $f.x$1; y = $f.y; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ /* while (true) { */ case 1:
+ _r = r.Uint32(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ j = ((_r >> 0));
+ i = j & 127;
+ x = (j) * (((i < 0 || i >= wn.length) ? ($throwRuntimeError("index out of range"), undefined) : wn[i]));
+ if (absInt32(j) < ((i < 0 || i >= kn.length) ? ($throwRuntimeError("index out of range"), undefined) : kn[i])) {
+ $s = -1; return x;
+ }
+ /* */ if (i === 0) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (i === 0) { */ case 4:
+ /* while (true) { */ case 6:
+ _r$1 = r.Float64(); /* */ $s = 8; case 8: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = math.Log(_r$1); /* */ $s = 9; case 9: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ x = -_r$2 * 0.29047645161474317;
+ _r$3 = r.Float64(); /* */ $s = 10; case 10: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$4 = math.Log(_r$3); /* */ $s = 11; case 11: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ y = -_r$4;
+ if (y + y >= x * x) {
+ /* break; */ $s = 7; continue;
+ }
+ /* } */ $s = 6; continue; case 7:
+ if (j > 0) {
+ $s = -1; return 3.442619855899 + x;
+ }
+ $s = -1; return -3.442619855899 - x;
+ /* } */ case 5:
+ _r$5 = r.Float64(); /* */ $s = 14; case 14: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ /* */ if ($fround(((i < 0 || i >= fn.length) ? ($throwRuntimeError("index out of range"), undefined) : fn[i]) + $fround(($fround(_r$5)) * ($fround((x$1 = i - 1 >> 0, ((x$1 < 0 || x$1 >= fn.length) ? ($throwRuntimeError("index out of range"), undefined) : fn[x$1])) - ((i < 0 || i >= fn.length) ? ($throwRuntimeError("index out of range"), undefined) : fn[i]))))) < ($fround(math.Exp(-0.5 * x * x)))) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if ($fround(((i < 0 || i >= fn.length) ? ($throwRuntimeError("index out of range"), undefined) : fn[i]) + $fround(($fround(_r$5)) * ($fround((x$1 = i - 1 >> 0, ((x$1 < 0 || x$1 >= fn.length) ? ($throwRuntimeError("index out of range"), undefined) : fn[x$1])) - ((i < 0 || i >= fn.length) ? ($throwRuntimeError("index out of range"), undefined) : fn[i]))))) < ($fround(math.Exp(-0.5 * x * x)))) { */ case 12:
+ $s = -1; return x;
+ /* } */ case 13:
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return 0;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Rand.ptr.prototype.NormFloat64 }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f.i = i; $f.j = j; $f.r = r; $f.x = x; $f.x$1 = x$1; $f.y = y; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Rand.prototype.NormFloat64 = function() { return this.$val.NormFloat64(); };
+ NewSource = function(seed) {
+ var $ptr, rng, seed;
+ rng = new rngSource.ptr(0, 0, arrayType.zero());
+ rng.Seed(seed);
+ return rng;
+ };
+ $pkg.NewSource = NewSource;
+ New = function(src) {
+ var $ptr, _tuple, s64, src;
+ _tuple = $assertType(src, Source64, true);
+ s64 = _tuple[0];
+ return new Rand.ptr(src, s64, new $Int64(0, 0), 0);
+ };
+ $pkg.New = New;
+ Rand.ptr.prototype.Seed = function(seed) {
+ var $ptr, _tuple, lk, ok, r, seed, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _tuple = $f._tuple; lk = $f.lk; ok = $f.ok; r = $f.r; seed = $f.seed; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ _tuple = $assertType(r.src, ptrType, true);
+ lk = _tuple[0];
+ ok = _tuple[1];
+ /* */ if (ok) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (ok) { */ case 1:
+ $r = lk.seedPos(seed, (r.$ptr_readPos || (r.$ptr_readPos = new ptrType$1(function() { return this.$target.readPos; }, function($v) { this.$target.readPos = $v; }, r)))); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* } */ case 2:
+ $r = r.src.Seed(seed); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ r.readPos = 0;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Rand.ptr.prototype.Seed }; } $f.$ptr = $ptr; $f._tuple = _tuple; $f.lk = lk; $f.ok = ok; $f.r = r; $f.seed = seed; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Rand.prototype.Seed = function(seed) { return this.$val.Seed(seed); };
+ Rand.ptr.prototype.Int63 = function() {
+ var $ptr, _r, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ _r = r.src.Int63(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Rand.ptr.prototype.Int63 }; } $f.$ptr = $ptr; $f._r = _r; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Rand.prototype.Int63 = function() { return this.$val.Int63(); };
+ Rand.ptr.prototype.Uint32 = function() {
+ var $ptr, _r, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ _r = r.Int63(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return (($shiftRightInt64(_r, 31).$low >>> 0));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Rand.ptr.prototype.Uint32 }; } $f.$ptr = $ptr; $f._r = _r; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Rand.prototype.Uint32 = function() { return this.$val.Uint32(); };
+ Rand.ptr.prototype.Uint64 = function() {
+ var $ptr, _r, _r$1, _r$2, r, x, x$1, x$2, x$3, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; r = $f.r; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ /* */ if (!($interfaceIsEqual(r.s64, $ifaceNil))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!($interfaceIsEqual(r.s64, $ifaceNil))) { */ case 1:
+ _r = r.s64.Uint64(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* } */ case 2:
+ _r$1 = r.Int63(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = r.Int63(); /* */ $s = 5; case 5: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return (x = $shiftRightUint64(((x$1 = _r$1, new $Uint64(x$1.$high, x$1.$low))), 31), x$2 = $shiftLeft64(((x$3 = _r$2, new $Uint64(x$3.$high, x$3.$low))), 32), new $Uint64(x.$high | x$2.$high, (x.$low | x$2.$low) >>> 0));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Rand.ptr.prototype.Uint64 }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.r = r; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Rand.prototype.Uint64 = function() { return this.$val.Uint64(); };
+ Rand.ptr.prototype.Int31 = function() {
+ var $ptr, _r, r, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; r = $f.r; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ _r = r.Int63(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return (((x = $shiftRightInt64(_r, 32), x.$low + ((x.$high >> 31) * 4294967296)) >> 0));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Rand.ptr.prototype.Int31 }; } $f.$ptr = $ptr; $f._r = _r; $f.r = r; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Rand.prototype.Int31 = function() { return this.$val.Int31(); };
+ Rand.ptr.prototype.Int = function() {
+ var $ptr, _r, r, u, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; r = $f.r; u = $f.u; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ _r = r.Int63(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ u = ((_r.$low >>> 0));
+ $s = -1; return ((((u << 1 >>> 0) >>> 1 >>> 0) >> 0));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Rand.ptr.prototype.Int }; } $f.$ptr = $ptr; $f._r = _r; $f.r = r; $f.u = u; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Rand.prototype.Int = function() { return this.$val.Int(); };
+ Rand.ptr.prototype.Int63n = function(n) {
+ var $ptr, _r, _r$1, _r$2, max, n, r, v, x, x$1, x$2, x$3, x$4, x$5, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; max = $f.max; n = $f.n; r = $f.r; v = $f.v; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ if ((n.$high < 0 || (n.$high === 0 && n.$low <= 0))) {
+ $panic(new $String("invalid argument to Int63n"));
+ }
+ /* */ if ((x = (x$1 = new $Int64(n.$high - 0, n.$low - 1), new $Int64(n.$high & x$1.$high, (n.$low & x$1.$low) >>> 0)), (x.$high === 0 && x.$low === 0))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ((x = (x$1 = new $Int64(n.$high - 0, n.$low - 1), new $Int64(n.$high & x$1.$high, (n.$low & x$1.$low) >>> 0)), (x.$high === 0 && x.$low === 0))) { */ case 1:
+ _r = r.Int63(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return (x$2 = _r, x$3 = new $Int64(n.$high - 0, n.$low - 1), new $Int64(x$2.$high & x$3.$high, (x$2.$low & x$3.$low) >>> 0));
+ /* } */ case 2:
+ max = ((x$4 = (x$5 = $div64(new $Uint64(2147483648, 0), (new $Uint64(n.$high, n.$low)), true), new $Uint64(2147483647 - x$5.$high, 4294967295 - x$5.$low)), new $Int64(x$4.$high, x$4.$low)));
+ _r$1 = r.Int63(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ v = _r$1;
+ /* while (true) { */ case 5:
+ /* if (!((v.$high > max.$high || (v.$high === max.$high && v.$low > max.$low)))) { break; } */ if(!((v.$high > max.$high || (v.$high === max.$high && v.$low > max.$low)))) { $s = 6; continue; }
+ _r$2 = r.Int63(); /* */ $s = 7; case 7: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ v = _r$2;
+ /* } */ $s = 5; continue; case 6:
+ $s = -1; return $div64(v, n, true);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Rand.ptr.prototype.Int63n }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.max = max; $f.n = n; $f.r = r; $f.v = v; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Rand.prototype.Int63n = function(n) { return this.$val.Int63n(n); };
+ Rand.ptr.prototype.Int31n = function(n) {
+ var $ptr, _r, _r$1, _r$2, _r$3, _r$4, max, n, r, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; max = $f.max; n = $f.n; r = $f.r; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ if (n <= 0) {
+ $panic(new $String("invalid argument to Int31n"));
+ }
+ /* */ if ((n & ((n - 1 >> 0))) === 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ((n & ((n - 1 >> 0))) === 0) { */ case 1:
+ _r = r.Int31(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r & ((n - 1 >> 0));
+ /* } */ case 2:
+ max = (((2147483647 - (_r$1 = 2147483648 % ((n >>> 0)), _r$1 === _r$1 ? _r$1 : $throwRuntimeError("integer divide by zero")) >>> 0) >> 0));
+ _r$2 = r.Int31(); /* */ $s = 4; case 4: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ v = _r$2;
+ /* while (true) { */ case 5:
+ /* if (!(v > max)) { break; } */ if(!(v > max)) { $s = 6; continue; }
+ _r$3 = r.Int31(); /* */ $s = 7; case 7: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ v = _r$3;
+ /* } */ $s = 5; continue; case 6:
+ $s = -1; return (_r$4 = v % n, _r$4 === _r$4 ? _r$4 : $throwRuntimeError("integer divide by zero"));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Rand.ptr.prototype.Int31n }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f.max = max; $f.n = n; $f.r = r; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Rand.prototype.Int31n = function(n) { return this.$val.Int31n(n); };
+ Rand.ptr.prototype.Intn = function(n) {
+ var $ptr, _r, _r$1, n, r, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; n = $f.n; r = $f.r; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ if (n <= 0) {
+ $panic(new $String("invalid argument to Intn"));
+ }
+ /* */ if (n <= 2147483647) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (n <= 2147483647) { */ case 1:
+ _r = r.Int31n(((n >> 0))); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return ((_r >> 0));
+ /* } */ case 2:
+ _r$1 = r.Int63n((new $Int64(0, n))); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return (((x = _r$1, x.$low + ((x.$high >> 31) * 4294967296)) >> 0));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Rand.ptr.prototype.Intn }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.n = n; $f.r = r; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Rand.prototype.Intn = function(n) { return this.$val.Intn(n); };
+ Rand.ptr.prototype.Float64 = function() {
+ var $ptr, _r, f, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; f = $f.f; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ /* again: */ case 1:
+ _r = r.Int63(); /* */ $s = 2; case 2: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ f = ($flatten64(_r)) / 9.223372036854776e+18;
+ /* */ if (f === 1) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (f === 1) { */ case 3:
+ /* goto again */ $s = 1; continue;
+ /* } */ case 4:
+ $s = -1; return f;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Rand.ptr.prototype.Float64 }; } $f.$ptr = $ptr; $f._r = _r; $f.f = f; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Rand.prototype.Float64 = function() { return this.$val.Float64(); };
+ Rand.ptr.prototype.Float32 = function() {
+ var $ptr, _r, f, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; f = $f.f; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ /* again: */ case 1:
+ _r = r.Float64(); /* */ $s = 2; case 2: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ f = ($fround(_r));
+ /* */ if (f === 1) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (f === 1) { */ case 3:
+ /* goto again */ $s = 1; continue;
+ /* } */ case 4:
+ $s = -1; return f;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Rand.ptr.prototype.Float32 }; } $f.$ptr = $ptr; $f._r = _r; $f.f = f; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Rand.prototype.Float32 = function() { return this.$val.Float32(); };
+ Rand.ptr.prototype.Perm = function(n) {
+ var $ptr, _r, i, j, m, n, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; i = $f.i; j = $f.j; m = $f.m; n = $f.n; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ m = $makeSlice(sliceType, n);
+ i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(i < n)) { break; } */ if(!(i < n)) { $s = 2; continue; }
+ _r = r.Intn(i + 1 >> 0); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ j = _r;
+ ((i < 0 || i >= m.$length) ? ($throwRuntimeError("index out of range"), undefined) : m.$array[m.$offset + i] = ((j < 0 || j >= m.$length) ? ($throwRuntimeError("index out of range"), undefined) : m.$array[m.$offset + j]));
+ ((j < 0 || j >= m.$length) ? ($throwRuntimeError("index out of range"), undefined) : m.$array[m.$offset + j] = i);
+ i = i + (1) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return m;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Rand.ptr.prototype.Perm }; } $f.$ptr = $ptr; $f._r = _r; $f.i = i; $f.j = j; $f.m = m; $f.n = n; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Rand.prototype.Perm = function(n) { return this.$val.Perm(n); };
+ Rand.ptr.prototype.Read = function(p) {
+ var $ptr, _r, _r$1, _tuple, _tuple$1, _tuple$2, err, lk, n, ok, p, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; err = $f.err; lk = $f.lk; n = $f.n; ok = $f.ok; p = $f.p; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ r = this;
+ _tuple = $assertType(r.src, ptrType, true);
+ lk = _tuple[0];
+ ok = _tuple[1];
+ /* */ if (ok) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (ok) { */ case 1:
+ _r = lk.read(p, (r.$ptr_readVal || (r.$ptr_readVal = new ptrType$2(function() { return this.$target.readVal; }, function($v) { this.$target.readVal = $v; }, r))), (r.$ptr_readPos || (r.$ptr_readPos = new ptrType$1(function() { return this.$target.readPos; }, function($v) { this.$target.readPos = $v; }, r)))); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple$1 = _r;
+ n = _tuple$1[0];
+ err = _tuple$1[1];
+ $s = -1; return [n, err];
+ /* } */ case 2:
+ _r$1 = read(p, $methodVal(r, "Int63"), (r.$ptr_readVal || (r.$ptr_readVal = new ptrType$2(function() { return this.$target.readVal; }, function($v) { this.$target.readVal = $v; }, r))), (r.$ptr_readPos || (r.$ptr_readPos = new ptrType$1(function() { return this.$target.readPos; }, function($v) { this.$target.readPos = $v; }, r)))); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$2 = _r$1;
+ n = _tuple$2[0];
+ err = _tuple$2[1];
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Rand.ptr.prototype.Read }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f.err = err; $f.lk = lk; $f.n = n; $f.ok = ok; $f.p = p; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Rand.prototype.Read = function(p) { return this.$val.Read(p); };
+ read = function(p, int63, readVal, readPos) {
+ var $ptr, _r, err, int63, n, p, pos, readPos, readVal, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; err = $f.err; int63 = $f.int63; n = $f.n; p = $f.p; pos = $f.pos; readPos = $f.readPos; readVal = $f.readVal; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ pos = readPos.$get();
+ val = readVal.$get();
+ n = 0;
+ /* while (true) { */ case 1:
+ /* if (!(n < p.$length)) { break; } */ if(!(n < p.$length)) { $s = 2; continue; }
+ /* */ if (pos === 0) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (pos === 0) { */ case 3:
+ _r = int63(); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ val = _r;
+ pos = 7;
+ /* } */ case 4:
+ ((n < 0 || n >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + n] = ((val.$low << 24 >>> 24)));
+ val = $shiftRightInt64(val, (8));
+ pos = pos - (1) << 24 >> 24;
+ n = n + (1) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ readPos.$set(pos);
+ readVal.$set(val);
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: read }; } $f.$ptr = $ptr; $f._r = _r; $f.err = err; $f.int63 = int63; $f.n = n; $f.p = p; $f.pos = pos; $f.readPos = readPos; $f.readVal = readVal; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ lockedSource.ptr.prototype.Int63 = function() {
+ var $ptr, _r, n, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; n = $f.n; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = new $Int64(0, 0);
+ r = this;
+ r.lk.Lock();
+ _r = r.src.Int63(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ n = _r;
+ r.lk.Unlock();
+ $s = -1; return n;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: lockedSource.ptr.prototype.Int63 }; } $f.$ptr = $ptr; $f._r = _r; $f.n = n; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ lockedSource.prototype.Int63 = function() { return this.$val.Int63(); };
+ lockedSource.ptr.prototype.Uint64 = function() {
+ var $ptr, _r, n, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; n = $f.n; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = new $Uint64(0, 0);
+ r = this;
+ r.lk.Lock();
+ _r = r.src.Uint64(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ n = _r;
+ r.lk.Unlock();
+ $s = -1; return n;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: lockedSource.ptr.prototype.Uint64 }; } $f.$ptr = $ptr; $f._r = _r; $f.n = n; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ lockedSource.prototype.Uint64 = function() { return this.$val.Uint64(); };
+ lockedSource.ptr.prototype.Seed = function(seed) {
+ var $ptr, r, seed, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; r = $f.r; seed = $f.seed; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ r.lk.Lock();
+ $r = r.src.Seed(seed); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ r.lk.Unlock();
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: lockedSource.ptr.prototype.Seed }; } $f.$ptr = $ptr; $f.r = r; $f.seed = seed; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ lockedSource.prototype.Seed = function(seed) { return this.$val.Seed(seed); };
+ lockedSource.ptr.prototype.seedPos = function(seed, readPos) {
+ var $ptr, r, readPos, seed, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; r = $f.r; readPos = $f.readPos; seed = $f.seed; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ r.lk.Lock();
+ $r = r.src.Seed(seed); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ readPos.$set(0);
+ r.lk.Unlock();
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: lockedSource.ptr.prototype.seedPos }; } $f.$ptr = $ptr; $f.r = r; $f.readPos = readPos; $f.seed = seed; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ lockedSource.prototype.seedPos = function(seed, readPos) { return this.$val.seedPos(seed, readPos); };
+ lockedSource.ptr.prototype.read = function(p, readVal, readPos) {
+ var $ptr, _r, _tuple, err, n, p, r, readPos, readVal, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; err = $f.err; n = $f.n; p = $f.p; r = $f.r; readPos = $f.readPos; readVal = $f.readVal; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ r = this;
+ r.lk.Lock();
+ _r = read(p, $methodVal(r.src, "Int63"), readVal, readPos); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ n = _tuple[0];
+ err = _tuple[1];
+ r.lk.Unlock();
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: lockedSource.ptr.prototype.read }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.err = err; $f.n = n; $f.p = p; $f.r = r; $f.readPos = readPos; $f.readVal = readVal; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ lockedSource.prototype.read = function(p, readVal, readPos) { return this.$val.read(p, readVal, readPos); };
+ seedrand = function(x) {
+ var $ptr, _q, _r, hi, lo, x;
+ hi = (_q = x / 44488, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ lo = (_r = x % 44488, _r === _r ? _r : $throwRuntimeError("integer divide by zero"));
+ x = ($imul(48271, lo)) - ($imul(3399, hi)) >> 0;
+ if (x < 0) {
+ x = x + (2147483647) >> 0;
+ }
+ return x;
+ };
+ rngSource.ptr.prototype.Seed = function(seed) {
+ var $ptr, i, rng, seed, u, x, x$1, x$2, x$3, x$4, x$5;
+ rng = this;
+ rng.tap = 0;
+ rng.feed = 334;
+ seed = $div64(seed, new $Int64(0, 2147483647), true);
+ if ((seed.$high < 0 || (seed.$high === 0 && seed.$low < 0))) {
+ seed = (x = new $Int64(0, 2147483647), new $Int64(seed.$high + x.$high, seed.$low + x.$low));
+ }
+ if ((seed.$high === 0 && seed.$low === 0)) {
+ seed = new $Int64(0, 89482311);
+ }
+ x$1 = (((seed.$low + ((seed.$high >> 31) * 4294967296)) >> 0));
+ i = -20;
+ while (true) {
+ if (!(i < 607)) { break; }
+ x$1 = seedrand(x$1);
+ if (i >= 0) {
+ u = new $Int64(0, 0);
+ u = $shiftLeft64((new $Int64(0, x$1)), 40);
+ x$1 = seedrand(x$1);
+ u = (x$2 = $shiftLeft64((new $Int64(0, x$1)), 20), new $Int64(u.$high ^ x$2.$high, (u.$low ^ x$2.$low) >>> 0));
+ x$1 = seedrand(x$1);
+ u = (x$3 = (new $Int64(0, x$1)), new $Int64(u.$high ^ x$3.$high, (u.$low ^ x$3.$low) >>> 0));
+ u = (x$4 = ((i < 0 || i >= rng_cooked.length) ? ($throwRuntimeError("index out of range"), undefined) : rng_cooked[i]), new $Int64(u.$high ^ x$4.$high, (u.$low ^ x$4.$low) >>> 0));
+ (x$5 = rng.vec, ((i < 0 || i >= x$5.length) ? ($throwRuntimeError("index out of range"), undefined) : x$5[i] = u));
+ }
+ i = i + (1) >> 0;
+ }
+ };
+ rngSource.prototype.Seed = function(seed) { return this.$val.Seed(seed); };
+ rngSource.ptr.prototype.Int63 = function() {
+ var $ptr, rng, x, x$1;
+ rng = this;
+ return ((x = (x$1 = rng.Uint64(), new $Uint64(x$1.$high & 2147483647, (x$1.$low & 4294967295) >>> 0)), new $Int64(x.$high, x.$low)));
+ };
+ rngSource.prototype.Int63 = function() { return this.$val.Int63(); };
+ rngSource.ptr.prototype.Uint64 = function() {
+ var $ptr, rng, x, x$1, x$2, x$3, x$4, x$5, x$6, x$7, x$8;
+ rng = this;
+ rng.tap = rng.tap - (1) >> 0;
+ if (rng.tap < 0) {
+ rng.tap = rng.tap + (607) >> 0;
+ }
+ rng.feed = rng.feed - (1) >> 0;
+ if (rng.feed < 0) {
+ rng.feed = rng.feed + (607) >> 0;
+ }
+ x$6 = (x = (x$1 = rng.vec, x$2 = rng.feed, ((x$2 < 0 || x$2 >= x$1.length) ? ($throwRuntimeError("index out of range"), undefined) : x$1[x$2])), x$3 = (x$4 = rng.vec, x$5 = rng.tap, ((x$5 < 0 || x$5 >= x$4.length) ? ($throwRuntimeError("index out of range"), undefined) : x$4[x$5])), new $Int64(x.$high + x$3.$high, x.$low + x$3.$low));
+ (x$7 = rng.vec, x$8 = rng.feed, ((x$8 < 0 || x$8 >= x$7.length) ? ($throwRuntimeError("index out of range"), undefined) : x$7[x$8] = x$6));
+ return (new $Uint64(x$6.$high, x$6.$low));
+ };
+ rngSource.prototype.Uint64 = function() { return this.$val.Uint64(); };
+ ptrType$3.methods = [{prop: "ExpFloat64", name: "ExpFloat64", pkg: "", typ: $funcType([], [$Float64], false)}, {prop: "NormFloat64", name: "NormFloat64", pkg: "", typ: $funcType([], [$Float64], false)}, {prop: "Seed", name: "Seed", pkg: "", typ: $funcType([$Int64], [], false)}, {prop: "Int63", name: "Int63", pkg: "", typ: $funcType([], [$Int64], false)}, {prop: "Uint32", name: "Uint32", pkg: "", typ: $funcType([], [$Uint32], false)}, {prop: "Uint64", name: "Uint64", pkg: "", typ: $funcType([], [$Uint64], false)}, {prop: "Int31", name: "Int31", pkg: "", typ: $funcType([], [$Int32], false)}, {prop: "Int", name: "Int", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Int63n", name: "Int63n", pkg: "", typ: $funcType([$Int64], [$Int64], false)}, {prop: "Int31n", name: "Int31n", pkg: "", typ: $funcType([$Int32], [$Int32], false)}, {prop: "Intn", name: "Intn", pkg: "", typ: $funcType([$Int], [$Int], false)}, {prop: "Float64", name: "Float64", pkg: "", typ: $funcType([], [$Float64], false)}, {prop: "Float32", name: "Float32", pkg: "", typ: $funcType([], [$Float32], false)}, {prop: "Perm", name: "Perm", pkg: "", typ: $funcType([$Int], [sliceType], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType$1], [$Int, $error], false)}];
+ ptrType.methods = [{prop: "Int63", name: "Int63", pkg: "", typ: $funcType([], [$Int64], false)}, {prop: "Uint64", name: "Uint64", pkg: "", typ: $funcType([], [$Uint64], false)}, {prop: "Seed", name: "Seed", pkg: "", typ: $funcType([$Int64], [], false)}, {prop: "seedPos", name: "seedPos", pkg: "math/rand", typ: $funcType([$Int64, ptrType$1], [], false)}, {prop: "read", name: "read", pkg: "math/rand", typ: $funcType([sliceType$1, ptrType$2, ptrType$1], [$Int, $error], false)}];
+ ptrType$5.methods = [{prop: "Seed", name: "Seed", pkg: "", typ: $funcType([$Int64], [], false)}, {prop: "Int63", name: "Int63", pkg: "", typ: $funcType([], [$Int64], false)}, {prop: "Uint64", name: "Uint64", pkg: "", typ: $funcType([], [$Uint64], false)}];
+ Source.init([{prop: "Int63", name: "Int63", pkg: "", typ: $funcType([], [$Int64], false)}, {prop: "Seed", name: "Seed", pkg: "", typ: $funcType([$Int64], [], false)}]);
+ Source64.init([{prop: "Int63", name: "Int63", pkg: "", typ: $funcType([], [$Int64], false)}, {prop: "Seed", name: "Seed", pkg: "", typ: $funcType([$Int64], [], false)}, {prop: "Uint64", name: "Uint64", pkg: "", typ: $funcType([], [$Uint64], false)}]);
+ Rand.init("math/rand", [{prop: "src", name: "src", exported: false, typ: Source, tag: ""}, {prop: "s64", name: "s64", exported: false, typ: Source64, tag: ""}, {prop: "readVal", name: "readVal", exported: false, typ: $Int64, tag: ""}, {prop: "readPos", name: "readPos", exported: false, typ: $Int8, tag: ""}]);
+ lockedSource.init("math/rand", [{prop: "lk", name: "lk", exported: false, typ: nosync.Mutex, tag: ""}, {prop: "src", name: "src", exported: false, typ: Source64, tag: ""}]);
+ rngSource.init("math/rand", [{prop: "tap", name: "tap", exported: false, typ: $Int, tag: ""}, {prop: "feed", name: "feed", exported: false, typ: $Int, tag: ""}, {prop: "vec", name: "vec", exported: false, typ: arrayType, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = nosync.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = math.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ ke = $toNativeArray($kindUint32, [3801129273, 0, 2615860924, 3279400049, 3571300752, 3733536696, 3836274812, 3906990442, 3958562475, 3997804264, 4028649213, 4053523342, 4074002619, 4091154507, 4105727352, 4118261130, 4129155133, 4138710916, 4147160435, 4154685009, 4161428406, 4167506077, 4173011791, 4178022498, 4182601930, 4186803325, 4190671498, 4194244443, 4197554582, 4200629752, 4203493986, 4206168142, 4208670408, 4211016720, 4213221098, 4215295924, 4217252177, 4219099625, 4220846988, 4222502074, 4224071896, 4225562770, 4226980400, 4228329951, 4229616109, 4230843138, 4232014925, 4233135020, 4234206673, 4235232866, 4236216336, 4237159604, 4238064994, 4238934652, 4239770563, 4240574564, 4241348362, 4242093539, 4242811568, 4243503822, 4244171579, 4244816032, 4245438297, 4246039419, 4246620374, 4247182079, 4247725394, 4248251127, 4248760037, 4249252839, 4249730206, 4250192773, 4250641138, 4251075867, 4251497493, 4251906522, 4252303431, 4252688672, 4253062674, 4253425844, 4253778565, 4254121205, 4254454110, 4254777611, 4255092022, 4255397640, 4255694750, 4255983622, 4256264513, 4256537670, 4256803325, 4257061702, 4257313014, 4257557464, 4257795244, 4258026541, 4258251531, 4258470383, 4258683258, 4258890309, 4259091685, 4259287526, 4259477966, 4259663135, 4259843154, 4260018142, 4260188212, 4260353470, 4260514019, 4260669958, 4260821380, 4260968374, 4261111028, 4261249421, 4261383632, 4261513736, 4261639802, 4261761900, 4261880092, 4261994441, 4262105003, 4262211835, 4262314988, 4262414513, 4262510454, 4262602857, 4262691764, 4262777212, 4262859239, 4262937878, 4263013162, 4263085118, 4263153776, 4263219158, 4263281289, 4263340187, 4263395872, 4263448358, 4263497660, 4263543789, 4263586755, 4263626565, 4263663224, 4263696735, 4263727099, 4263754314, 4263778377, 4263799282, 4263817020, 4263831582, 4263842955, 4263851124, 4263856071, 4263857776, 4263856218, 4263851370, 4263843206, 4263831695, 4263816804, 4263798497, 4263776735, 4263751476, 4263722676, 4263690284, 4263654251, 4263614520, 4263571032, 4263523724, 4263472530, 4263417377, 4263358192, 4263294892, 4263227394, 4263155608, 4263079437, 4262998781, 4262913534, 4262823581, 4262728804, 4262629075, 4262524261, 4262414220, 4262298801, 4262177846, 4262051187, 4261918645, 4261780032, 4261635148, 4261483780, 4261325704, 4261160681, 4260988457, 4260808763, 4260621313, 4260425802, 4260221905, 4260009277, 4259787550, 4259556329, 4259315195, 4259063697, 4258801357, 4258527656, 4258242044, 4257943926, 4257632664, 4257307571, 4256967906, 4256612870, 4256241598, 4255853155, 4255446525, 4255020608, 4254574202, 4254106002, 4253614578, 4253098370, 4252555662, 4251984571, 4251383021, 4250748722, 4250079132, 4249371435, 4248622490, 4247828790, 4246986404, 4246090910, 4245137315, 4244119963, 4243032411, 4241867296, 4240616155, 4239269214, 4237815118, 4236240596, 4234530035, 4232664930, 4230623176, 4228378137, 4225897409, 4223141146, 4220059768, 4216590757, 4212654085, 4208145538, 4202926710, 4196809522, 4189531420, 4180713890, 4169789475, 4155865042, 4137444620, 4111806704, 4073393724, 4008685917, 3873074895]);
+ we = $toNativeArray($kindFloat32, [2.0249555365836613e-09, 1.4866739783681027e-11, 2.4409616689036184e-11, 3.1968806074589295e-11, 3.844677007314168e-11, 4.42282044321729e-11, 4.951644302919611e-11, 5.443358958023836e-11, 5.905943789574764e-11, 6.34494193296753e-11, 6.764381416113352e-11, 7.167294535648239e-11, 7.556032188826833e-11, 7.932458162551725e-11, 8.298078890689453e-11, 8.654132271912474e-11, 9.001651507523079e-11, 9.341507428706208e-11, 9.674443190998971e-11, 1.0001099254308699e-10, 1.0322031424037093e-10, 1.0637725422757427e-10, 1.0948611461891744e-10, 1.1255067711157807e-10, 1.1557434870246297e-10, 1.1856014781042035e-10, 1.2151082917633005e-10, 1.2442885610752796e-10, 1.2731647680563896e-10, 1.3017574518325858e-10, 1.330085347417409e-10, 1.3581656632677408e-10, 1.386014220061682e-10, 1.413645728254309e-10, 1.4410737880776736e-10, 1.4683107507629245e-10, 1.4953686899854546e-10, 1.522258291641876e-10, 1.5489899640730442e-10, 1.575573282952547e-10, 1.6020171300645814e-10, 1.628330109637588e-10, 1.6545202707884954e-10, 1.68059510752272e-10, 1.7065616975120435e-10, 1.73242697965037e-10, 1.758197337720091e-10, 1.783878739169964e-10, 1.8094774290045024e-10, 1.834998542005195e-10, 1.8604476292871652e-10, 1.8858298256319017e-10, 1.9111498494872592e-10, 1.9364125580789704e-10, 1.9616222535212557e-10, 1.9867835154840918e-10, 2.011900368525943e-10, 2.0369768372052732e-10, 2.062016807302669e-10, 2.0870240258208383e-10, 2.1120022397624894e-10, 2.136955057352452e-10, 2.1618855317040442e-10, 2.1867974098199738e-10, 2.2116936060356807e-10, 2.2365774510202385e-10, 2.2614519978869652e-10, 2.2863201609713002e-10, 2.3111849933865614e-10, 2.3360494094681883e-10, 2.3609159072179864e-10, 2.3857874009713953e-10, 2.4106666662859766e-10, 2.4355562011635357e-10, 2.460458781161634e-10, 2.485376904282077e-10, 2.5103127909709144e-10, 2.5352694943414633e-10, 2.560248957284017e-10, 2.585253955356137e-10, 2.610286709003873e-10, 2.6353494386732734e-10, 2.6604446423661443e-10, 2.6855745405285347e-10, 2.71074163116225e-10, 2.7359478571575835e-10, 2.7611959940720965e-10, 2.786487707240326e-10, 2.8118254946640775e-10, 2.8372118543451563e-10, 2.8626484516180994e-10, 2.8881380620404684e-10, 2.9136826285025563e-10, 2.9392840938946563e-10, 2.96494523377433e-10, 2.990667713476114e-10, 3.016454031001814e-10, 3.042306406797479e-10, 3.068226783753403e-10, 3.09421765987139e-10, 3.12028125559749e-10, 3.1464195138219964e-10, 3.17263521010247e-10, 3.1989300097734485e-10, 3.225306410836737e-10, 3.2517669112941405e-10, 3.2783134540359526e-10, 3.3049485370639786e-10, 3.3316743808242677e-10, 3.3584937608743815e-10, 3.385408342548857e-10, 3.4124211789610115e-10, 3.4395342130011386e-10, 3.4667499426710435e-10, 3.494071143528288e-10, 3.521500313574677e-10, 3.54903967325626e-10, 3.576691720574843e-10, 3.6044595086437425e-10, 3.632345535464765e-10, 3.660352021483959e-10, 3.688482297370399e-10, 3.716738583570134e-10, 3.7451239331964814e-10, 3.773641121807003e-10, 3.802292924959261e-10, 3.831082673322328e-10, 3.8600128648980103e-10, 3.8890865527996255e-10, 3.9183070676962473e-10, 3.9476774627011935e-10, 3.977200790927782e-10, 4.006880383045086e-10, 4.0367195697221803e-10, 4.066721681628138e-10, 4.0968900494320337e-10, 4.127228558914453e-10, 4.15774054074447e-10, 4.188429603146915e-10, 4.2192993543466173e-10, 4.25035395767992e-10, 4.2815970213716525e-10, 4.313032986313914e-10, 4.3446651831757777e-10, 4.376498607960855e-10, 4.408536868893975e-10, 4.4407846844229937e-10, 4.4732464954400086e-10, 4.5059267428371186e-10, 4.538830145062178e-10, 4.5719619756745544e-10, 4.605326675566346e-10, 4.638929240741163e-10, 4.672775499869886e-10, 4.706869893844612e-10, 4.74121908400349e-10, 4.775827511238617e-10, 4.810701836888143e-10, 4.845848167178701e-10, 4.881271498113904e-10, 4.916979601254923e-10, 4.952977472605369e-10, 4.989272883726414e-10, 5.025872495956207e-10, 5.062783525744408e-10, 5.100013189540675e-10, 5.13756870379467e-10, 5.175458395179078e-10, 5.21369003525507e-10, 5.252272505806843e-10, 5.29121357839557e-10, 5.330522134805449e-10, 5.3702081670437e-10, 5.41028055689452e-10, 5.450749851476644e-10, 5.491624932574268e-10, 5.532918012640664e-10, 5.574638528571541e-10, 5.616799247931681e-10, 5.659410717839819e-10, 5.702485705860738e-10, 5.746036979559221e-10, 5.790077306500052e-10, 5.83462111958255e-10, 5.879682296594524e-10, 5.925275825546805e-10, 5.971417249561739e-10, 6.01812211176167e-10, 6.065408175714992e-10, 6.113292094767075e-10, 6.16179329782085e-10, 6.21092954844471e-10, 6.260721940876124e-10, 6.311191569352559e-10, 6.362359528111483e-10, 6.414249686947926e-10, 6.466885360545405e-10, 6.520292639144998e-10, 6.574497612987784e-10, 6.629528592760892e-10, 6.685415554485985e-10, 6.742187919073217e-10, 6.799880103436351e-10, 6.858525969377638e-10, 6.918161599145378e-10, 6.978825850545434e-10, 7.040559801829716e-10, 7.103406751696184e-10, 7.167412219288849e-10, 7.232625609532306e-10, 7.2990985477972e-10, 7.366885990123251e-10, 7.436047333442275e-10, 7.506645305355164e-10, 7.57874762946642e-10, 7.652426470272644e-10, 7.727759543385559e-10, 7.804830115532013e-10, 7.883728114777e-10, 7.964550685635174e-10, 8.047402189070851e-10, 8.132396422944055e-10, 8.219657177122031e-10, 8.309318788590758e-10, 8.401527806789488e-10, 8.496445214056791e-10, 8.594246980742071e-10, 8.695127395874636e-10, 8.799300732498239e-10, 8.90700457834015e-10, 9.01850316648023e-10, 9.134091816243028e-10, 9.254100818978372e-10, 9.37890431984556e-10, 9.508922538259412e-10, 9.64463842123564e-10, 9.78660263939446e-10, 9.935448019859905e-10, 1.0091912860943353e-09, 1.0256859805934937e-09, 1.0431305819125214e-09, 1.0616465484503124e-09, 1.0813799855569073e-09, 1.1025096391392708e-09, 1.1252564435793033e-09, 1.149898620766976e-09, 1.176793218427008e-09, 1.2064089727203964e-09, 1.2393785997488749e-09, 1.2765849488616254e-09, 1.319313880365769e-09, 1.36954347862428e-09, 1.4305497897382224e-09, 1.5083649884672923e-09, 1.6160853766322703e-09, 1.7921247819074893e-09]);
+ fe = $toNativeArray($kindFloat32, [1, 0.9381436705589294, 0.900469958782196, 0.8717043399810791, 0.847785472869873, 0.8269932866096497, 0.8084216713905334, 0.7915276288986206, 0.7759568691253662, 0.7614634037017822, 0.7478685975074768, 0.7350381016731262, 0.7228676676750183, 0.7112747430801392, 0.7001926302909851, 0.6895664930343628, 0.6793505549430847, 0.669506311416626, 0.6600008606910706, 0.6508058309555054, 0.6418967247009277, 0.633251965045929, 0.62485271692276, 0.6166821718215942, 0.608725368976593, 0.6009689569473267, 0.5934008955955505, 0.5860103368759155, 0.5787873864173889, 0.5717230439186096, 0.5648092031478882, 0.5580382943153381, 0.5514034032821655, 0.5448982119560242, 0.5385168790817261, 0.5322538614273071, 0.526104211807251, 0.5200631618499756, 0.5141264200210571, 0.5082897543907166, 0.5025495290756226, 0.4969019889831543, 0.4913438558578491, 0.4858720004558563, 0.48048335313796997, 0.4751752018928528, 0.4699448347091675, 0.4647897481918335, 0.4597076177597046, 0.4546961486339569, 0.4497532546520233, 0.44487687945365906, 0.4400651156902313, 0.4353161156177521, 0.4306281507015228, 0.42599955201148987, 0.42142874002456665, 0.4169141948223114, 0.4124544560909271, 0.40804818272590637, 0.4036940038204193, 0.39939069747924805, 0.3951369822025299, 0.39093172550201416, 0.38677382469177246, 0.38266217708587646, 0.378595769405365, 0.37457355856895447, 0.37059465050697327, 0.366658091545105, 0.362762987613678, 0.358908474445343, 0.35509374737739563, 0.35131800174713135, 0.3475804924964905, 0.34388044476509094, 0.34021714329719543, 0.33658990263938904, 0.3329980671405792, 0.3294409513473511, 0.32591795921325684, 0.32242849469184875, 0.3189719021320343, 0.3155476748943329, 0.31215524673461914, 0.3087940812110901, 0.30546361207962036, 0.30216339230537415, 0.29889291524887085, 0.29565170407295227, 0.2924392819404602, 0.2892552316188812, 0.28609907627105713, 0.2829704284667969, 0.27986884117126465, 0.2767939269542694, 0.2737452983856201, 0.2707225978374481, 0.26772540807724, 0.26475343108177185, 0.2618062496185303, 0.258883535861969, 0.2559850215911865, 0.25311028957366943, 0.25025907158851624, 0.24743106961250305, 0.2446259707212448, 0.24184346199035645, 0.23908329010009766, 0.23634515702724457, 0.2336287796497345, 0.23093391954898834, 0.22826029360294342, 0.22560766339302063, 0.22297576069831848, 0.22036437690258026, 0.21777324378490448, 0.21520215272903442, 0.212650865316391, 0.21011915802955627, 0.20760682225227356, 0.20511364936828613, 0.20263944566249847, 0.20018397271633148, 0.19774706661701202, 0.1953285187482834, 0.19292815029621124, 0.19054576754570007, 0.18818120658397675, 0.18583425879478455, 0.18350479006767273, 0.18119260668754578, 0.17889754474163055, 0.17661945521831512, 0.17435817420482635, 0.1721135377883911, 0.16988539695739746, 0.16767361760139465, 0.16547803580760956, 0.16329853236675262, 0.16113494336605072, 0.1589871346950531, 0.15685498714447021, 0.15473836660385132, 0.15263713896274567, 0.1505511850118637, 0.1484803706407547, 0.14642459154129028, 0.1443837285041809, 0.14235764741897583, 0.1403462439775467, 0.13834942877292633, 0.136367067694664, 0.13439907133579254, 0.1324453204870224, 0.1305057406425476, 0.12858019769191742, 0.12666863203048706, 0.12477091699838638, 0.12288697808980942, 0.1210167184472084, 0.11916005611419678, 0.11731690168380737, 0.11548716574907303, 0.11367076635360718, 0.11186762899160385, 0.11007767915725708, 0.1083008274435997, 0.10653700679540634, 0.10478614270687103, 0.1030481606721878, 0.10132300108671188, 0.0996105819940567, 0.09791085124015808, 0.09622374176979065, 0.09454918652772903, 0.09288713335990906, 0.09123751521110535, 0.08960027992725372, 0.08797537535429001, 0.08636274188756943, 0.0847623273730278, 0.08317409455776215, 0.08159798383712769, 0.08003395050764084, 0.07848194986581802, 0.07694194465875626, 0.07541389018297195, 0.07389774918556213, 0.07239348441362381, 0.070901058614254, 0.06942043453454971, 0.06795158982276917, 0.06649449467658997, 0.06504911929368973, 0.06361543387174606, 0.06219341605901718, 0.06078304722905159, 0.0593843050301075, 0.05799717456102371, 0.05662164092063904, 0.05525768920779228, 0.05390531197190285, 0.05256449431180954, 0.05123523622751236, 0.04991753399372101, 0.04861138388514519, 0.047316793352365494, 0.04603376239538193, 0.044762298464775085, 0.04350241273641586, 0.04225412383675575, 0.04101744294166565, 0.039792392402887344, 0.03857899457216263, 0.03737728297710419, 0.03618728369474411, 0.03500903770327568, 0.03384258225560188, 0.0326879620552063, 0.031545232981443405, 0.030414443463087082, 0.0292956605553627, 0.028188949450850487, 0.027094384655356407, 0.02601204626262188, 0.024942025542259216, 0.023884421214461327, 0.022839335724711418, 0.021806888282299042, 0.020787203684449196, 0.019780423492193222, 0.018786700442433357, 0.017806200310587883, 0.016839107498526573, 0.015885621309280396, 0.014945968054234982, 0.01402039173990488, 0.013109165243804455, 0.012212592177093029, 0.011331013403832912, 0.010464809834957123, 0.009614413604140282, 0.008780314587056637, 0.007963077165186405, 0.007163353264331818, 0.0063819061033427715, 0.005619642324745655, 0.004877655766904354, 0.004157294984906912, 0.003460264764726162, 0.0027887988835573196, 0.0021459676790982485, 0.001536299823783338, 0.0009672692976891994, 0.0004541343660093844]);
+ kn = $toNativeArray($kindUint32, [1991057938, 0, 1611602771, 1826899878, 1918584482, 1969227037, 2001281515, 2023368125, 2039498179, 2051788381, 2061460127, 2069267110, 2075699398, 2081089314, 2085670119, 2089610331, 2093034710, 2096037586, 2098691595, 2101053571, 2103168620, 2105072996, 2106796166, 2108362327, 2109791536, 2111100552, 2112303493, 2113412330, 2114437283, 2115387130, 2116269447, 2117090813, 2117856962, 2118572919, 2119243101, 2119871411, 2120461303, 2121015852, 2121537798, 2122029592, 2122493434, 2122931299, 2123344971, 2123736059, 2124106020, 2124456175, 2124787725, 2125101763, 2125399283, 2125681194, 2125948325, 2126201433, 2126441213, 2126668298, 2126883268, 2127086657, 2127278949, 2127460589, 2127631985, 2127793506, 2127945490, 2128088244, 2128222044, 2128347141, 2128463758, 2128572095, 2128672327, 2128764606, 2128849065, 2128925811, 2128994934, 2129056501, 2129110560, 2129157136, 2129196237, 2129227847, 2129251929, 2129268426, 2129277255, 2129278312, 2129271467, 2129256561, 2129233410, 2129201800, 2129161480, 2129112170, 2129053545, 2128985244, 2128906855, 2128817916, 2128717911, 2128606255, 2128482298, 2128345305, 2128194452, 2128028813, 2127847342, 2127648860, 2127432031, 2127195339, 2126937058, 2126655214, 2126347546, 2126011445, 2125643893, 2125241376, 2124799783, 2124314271, 2123779094, 2123187386, 2122530867, 2121799464, 2120980787, 2120059418, 2119015917, 2117825402, 2116455471, 2114863093, 2112989789, 2110753906, 2108037662, 2104664315, 2100355223, 2094642347, 2086670106, 2074676188, 2054300022, 2010539237]);
+ wn = $toNativeArray($kindFloat32, [1.7290404663583558e-09, 1.2680928529462676e-10, 1.689751810696194e-10, 1.9862687883343e-10, 2.223243117382978e-10, 2.4244936613904144e-10, 2.601613091623989e-10, 2.761198769629658e-10, 2.9073962681813725e-10, 3.042996965518796e-10, 3.169979556627567e-10, 3.289802041894774e-10, 3.4035738116777736e-10, 3.5121602848242617e-10, 3.61625090983253e-10, 3.7164057942185025e-10, 3.813085680537398e-10, 3.906675816178762e-10, 3.997501218933053e-10, 4.0858399996679395e-10, 4.1719308563337165e-10, 4.255982233303257e-10, 4.3381759295968436e-10, 4.4186720948857783e-10, 4.497613115272969e-10, 4.57512583373898e-10, 4.6513240481438345e-10, 4.726310454117311e-10, 4.800177477726209e-10, 4.873009773476156e-10, 4.944885056978876e-10, 5.015873272284921e-10, 5.086040477664255e-10, 5.155446070048697e-10, 5.224146670812502e-10, 5.292193350214802e-10, 5.359634958068682e-10, 5.426517013518151e-10, 5.492881705038144e-10, 5.558769555769061e-10, 5.624218868405251e-10, 5.689264614971989e-10, 5.75394121238304e-10, 5.818281967329142e-10, 5.882316855831959e-10, 5.946076964136182e-10, 6.009590047817426e-10, 6.072883862451306e-10, 6.135985053390414e-10, 6.19892026598734e-10, 6.261713370037114e-10, 6.324390455780815e-10, 6.386973727678935e-10, 6.449488165749528e-10, 6.511955974453087e-10, 6.574400468473129e-10, 6.636843297158634e-10, 6.699307220081607e-10, 6.761814441702541e-10, 6.824387166481927e-10, 6.887046488657234e-10, 6.949815167800466e-10, 7.012714853260604e-10, 7.075767749498141e-10, 7.13899661608508e-10, 7.202424212593428e-10, 7.266072743483676e-10, 7.329966078550854e-10, 7.394128087589991e-10, 7.458582640396116e-10, 7.523354716987285e-10, 7.588469852493063e-10, 7.653954137154528e-10, 7.719834771435785e-10, 7.786139510912449e-10, 7.852897221383159e-10, 7.920137878869582e-10, 7.987892014504894e-10, 8.056192379868321e-10, 8.125072836762115e-10, 8.194568912323064e-10, 8.264716688799467e-10, 8.3355555791087e-10, 8.407127216614185e-10, 8.479473234679347e-10, 8.552640262671218e-10, 8.626675485068347e-10, 8.701631637464402e-10, 8.777562010564566e-10, 8.854524335966119e-10, 8.932581896381464e-10, 9.011799639857543e-10, 9.092249730890956e-10, 9.174008219758889e-10, 9.25715837318819e-10, 9.341788453909317e-10, 9.42799727177146e-10, 9.515889187738935e-10, 9.605578554783278e-10, 9.697193048552322e-10, 9.790869226478094e-10, 9.886760299337993e-10, 9.985036131254788e-10, 1.008588212947359e-09, 1.0189509236369076e-09, 1.0296150598776421e-09, 1.040606933955246e-09, 1.0519566329136865e-09, 1.0636980185552147e-09, 1.0758701707302976e-09, 1.0885182755160372e-09, 1.101694735439196e-09, 1.115461056855338e-09, 1.1298901814171813e-09, 1.1450695946990663e-09, 1.1611052119775422e-09, 1.178127595480305e-09, 1.1962995039027646e-09, 1.2158286599728285e-09, 1.2369856250415978e-09, 1.2601323318151003e-09, 1.2857697129220469e-09, 1.3146201904845611e-09, 1.3477839955200466e-09, 1.3870635751089821e-09, 1.43574030442295e-09, 1.5008658760251592e-09, 1.6030947680434338e-09]);
+ fn = $toNativeArray($kindFloat32, [1, 0.963599681854248, 0.9362826943397522, 0.9130436182022095, 0.8922816514968872, 0.8732430338859558, 0.8555005788803101, 0.8387836217880249, 0.8229072093963623, 0.8077383041381836, 0.7931770086288452, 0.7791460752487183, 0.7655841708183289, 0.7524415850639343, 0.7396772503852844, 0.7272568941116333, 0.7151514887809753, 0.7033361196517944, 0.6917891502380371, 0.6804918646812439, 0.6694276928901672, 0.6585819721221924, 0.6479418277740479, 0.6374954581260681, 0.6272324919700623, 0.6171433925628662, 0.6072195172309875, 0.5974531769752502, 0.5878370404243469, 0.5783646702766418, 0.5690299868583679, 0.5598273873329163, 0.550751805305481, 0.5417983531951904, 0.5329626798629761, 0.5242405533790588, 0.5156282186508179, 0.5071220397949219, 0.49871864914894104, 0.4904148280620575, 0.48220765590667725, 0.47409430146217346, 0.466072142124176, 0.45813870429992676, 0.45029163360595703, 0.44252872467041016, 0.4348478317260742, 0.42724698781967163, 0.41972434520721436, 0.41227802634239197, 0.40490642189979553, 0.39760786294937134, 0.3903807997703552, 0.3832238018512726, 0.3761354684829712, 0.3691144585609436, 0.36215949058532715, 0.3552693724632263, 0.3484429717063904, 0.3416791558265686, 0.33497685194015503, 0.32833510637283325, 0.3217529058456421, 0.3152293860912323, 0.30876362323760986, 0.3023548424243927, 0.2960021495819092, 0.2897048592567444, 0.28346219658851624, 0.2772735059261322, 0.271138072013855, 0.2650552988052368, 0.25902456045150757, 0.25304529070854187, 0.24711695313453674, 0.24123899638652802, 0.23541094362735748, 0.22963231801986694, 0.22390270233154297, 0.21822164952754974, 0.21258877217769623, 0.20700371265411377, 0.20146611332893372, 0.1959756463766098, 0.19053204357624054, 0.18513499200344086, 0.17978426814079285, 0.1744796335697174, 0.16922089457511902, 0.16400785744190216, 0.1588403731584549, 0.15371830761432648, 0.14864157140254974, 0.14361007511615753, 0.13862377405166626, 0.13368265330791473, 0.12878671288490295, 0.12393598258495331, 0.11913054436445236, 0.11437050998210907, 0.10965602099895477, 0.1049872562289238, 0.10036443918943405, 0.09578784555196762, 0.09125780314207077, 0.08677466958761215, 0.08233889937400818, 0.07795098423957825, 0.07361150532960892, 0.06932111829519272, 0.06508058309555054, 0.06089077144861221, 0.05675266310572624, 0.05266740173101425, 0.048636294901371, 0.044660862535238266, 0.040742866694927216, 0.03688438981771469, 0.03308788686990738, 0.029356317594647408, 0.025693291798233986, 0.02210330404341221, 0.018592102453112602, 0.015167297795414925, 0.011839478276669979, 0.0086244847625494, 0.005548994988203049, 0.0026696291752159595]);
+ rng_cooked = $toNativeArray($kindInt64, [new $Int64(-973649357, 3952672746), new $Int64(-1065661887, 3130416987), new $Int64(324977939, 3414273807), new $Int64(1241840476, 2806224363), new $Int64(-1477934308, 1997590414), new $Int64(2103305448, 2402795971), new $Int64(1663160183, 1140819369), new $Int64(1120601685, 1788868961), new $Int64(1848035537, 1089001426), new $Int64(1235702047, 873593504), new $Int64(1911387977, 581324885), new $Int64(-1654874170, 1609182556), new $Int64(1069394745, 1241596776), new $Int64(1895445337, 1771189259), new $Int64(-1374618802, 3467012610), new $Int64(-140526423, 2344407434), new $Int64(-1745367887, 782467244), new $Int64(26335124, 3404933915), new $Int64(1063924276, 618867887), new $Int64(-968700782, 520164395), new $Int64(-1591572833, 1341358184), new $Int64(-1515085039, 665794848), new $Int64(1527227641, 3183648150), new $Int64(1781176124, 696329606), new $Int64(1789146075, 4151988961), new $Int64(-2087444114, 998951326), new $Int64(-612324923, 1364957564), new $Int64(63173359, 4090230633), new $Int64(-1498029007, 4009697548), new $Int64(248009524, 2569622517), new $Int64(778703922, 3742421481), new $Int64(-1109106023, 1506914633), new $Int64(1738099768, 1983412561), new $Int64(236311649, 1436266083), new $Int64(-1111517500, 3922894967), new $Int64(-1336974714, 1792680179), new $Int64(563141142, 1188796351), new $Int64(1349617468, 405968250), new $Int64(1044074554, 433754187), new $Int64(870549669, 4073162024), new $Int64(-1094251604, 433121399), new $Int64(2451824, 4162580594), new $Int64(-137262572, 4132415622), new $Int64(-1536231048, 3033822028), new $Int64(2016407895, 824682382), new $Int64(2366218, 3583765414), new $Int64(-624604839, 535386927), new $Int64(1637219058, 2286693689), new $Int64(1453075389, 2968466525), new $Int64(193683513, 1351410206), new $Int64(-283806096, 1412813499), new $Int64(492736522, 4126267639), new $Int64(512765208, 2105529399), new $Int64(2132966268, 2413882233), new $Int64(947457634, 32226200), new $Int64(1149341356, 2032329073), new $Int64(106485445, 1356518208), new $Int64(-2067810156, 3430061722), new $Int64(-1484435135, 3820169661), new $Int64(-1665985194, 2981816134), new $Int64(1017155588, 4184371017), new $Int64(206574701, 2119206761), new $Int64(-852109057, 2472200560), new $Int64(-560457548, 2853524696), new $Int64(1307803389, 1681119904), new $Int64(-174986835, 95608918), new $Int64(392686347, 3690479145), new $Int64(-1205570926, 1397922290), new $Int64(-1159314025, 1516129515), new $Int64(-320178155, 1547420459), new $Int64(1311333971, 1470949486), new $Int64(-1953469798, 1336785672), new $Int64(-45086614, 4131677129), new $Int64(-1392278100, 4246329084), new $Int64(-1142500187, 3788585631), new $Int64(-66478285, 3080389532), new $Int64(-646438364, 2215402037), new $Int64(391002300, 1171593935), new $Int64(1408774047, 1423855166), new $Int64(-519177718, 2276716302), new $Int64(-368453140, 2068027241), new $Int64(1369359303, 3427553297), new $Int64(189241615, 3289637845), new $Int64(1057480830, 3486407650), new $Int64(-1512910664, 3071877822), new $Int64(1159653919, 3363620705), new $Int64(-934256930, 4159821533), new $Int64(-76621938, 1894661), new $Int64(-674493898, 1156868282), new $Int64(348271067, 776219088), new $Int64(-501428838, 2425634259), new $Int64(1716021749, 680510161), new $Int64(-574263456, 1310101429), new $Int64(1095885995, 2964454134), new $Int64(-325695512, 3467098407), new $Int64(1990672920, 2109628894), new $Int64(-2139648704, 1232604732), new $Int64(-1838070714, 3261916179), new $Int64(1699175360, 434597899), new $Int64(235436061, 1624796439), new $Int64(-1626402839, 3589632480), new $Int64(1198416575, 864579159), new $Int64(-1938748161, 1380889830), new $Int64(619206309, 2654509477), new $Int64(1419738251, 1468209306), new $Int64(-1744284772, 100794388), new $Int64(-1191421458, 2991674471), new $Int64(-208666741, 2224662036), new $Int64(-173659161, 977097250), new $Int64(1351320195, 726419512), new $Int64(-183459897, 1747974366), new $Int64(-753095183, 1556430604), new $Int64(-1049492215, 1080776742), new $Int64(-385846958, 280794874), new $Int64(117767733, 919835643), new $Int64(-967009426, 3434019658), new $Int64(-1951414480, 2461941785), new $Int64(133215641, 3615001066), new $Int64(417204809, 3103414427), new $Int64(790056561, 3380809712), new $Int64(-1267681408, 2724693469), new $Int64(547796833, 598827710), new $Int64(-1846559452, 3452273442), new $Int64(-75778224, 649274915), new $Int64(-801301329, 2585724112), new $Int64(-1510934263, 3165579553), new $Int64(1185578221, 2635894283), new $Int64(-52910178, 2053289721), new $Int64(985976581, 3169337108), new $Int64(1170569632, 144717764), new $Int64(1079216270, 1383666384), new $Int64(-124804942, 681540375), new $Int64(1375448925, 537050586), new $Int64(-1964768344, 315246468), new $Int64(226402871, 849323088), new $Int64(-885062465, 45543944), new $Int64(-946445250, 2319052083), new $Int64(-40708194, 3613090841), new $Int64(560472520, 2992171180), new $Int64(-381863169, 2068244785), new $Int64(917538188, 4239862634), new $Int64(-1369555809, 3892253031), new $Int64(720683925, 958186149), new $Int64(-423297785, 1877702262), new $Int64(1357886971, 837674867), new $Int64(1837048883, 1507589294), new $Int64(1905518400, 873336795), new $Int64(-1879761037, 2764496274), new $Int64(-1806480530, 4196182374), new $Int64(-1066765755, 550964545), new $Int64(818747069, 420611474), new $Int64(-1924830376, 204265180), new $Int64(1549974541, 1787046383), new $Int64(1215581865, 3102292318), new $Int64(418321538, 1552199393), new $Int64(1243493047, 980542004), new $Int64(267284263, 3293718720), new $Int64(1179528763, 3771917473), new $Int64(599484404, 2195808264), new $Int64(252818753, 3894702887), new $Int64(-1367475956, 2099949527), new $Int64(1424094358, 338442522), new $Int64(490737398, 637158004), new $Int64(-1727621530, 281976339), new $Int64(574970164, 3619802330), new $Int64(-431930823, 3084554784), new $Int64(-1264611183, 4129772886), new $Int64(-2104399043, 1680378557), new $Int64(-1621962591, 3339087776), new $Int64(1680500332, 4220317857), new $Int64(-1935828963, 2959322499), new $Int64(1675600481, 1488354890), new $Int64(-834863562, 3958162143), new $Int64(-1226511573, 2773705983), new $Int64(1876039582, 225908689), new $Int64(-1183735113, 908216283), new $Int64(-605696219, 3574646075), new $Int64(-1827723091, 1936937569), new $Int64(1519770881, 75492235), new $Int64(816689472, 1935193178), new $Int64(2142521206, 2018250883), new $Int64(455141620, 3943126022), new $Int64(-601399488, 3066544345), new $Int64(1932392669, 2793082663), new $Int64(-1239009361, 3297036421), new $Int64(1640597065, 2206987825), new $Int64(-553246738, 807894872), new $Int64(-1781325307, 766252117), new $Int64(2060649606, 3833114345), new $Int64(845619743, 1255067973), new $Int64(1201145605, 741697208), new $Int64(-1476242608, 2810093753), new $Int64(1109032642, 4229340371), new $Int64(1462188720, 1361684224), new $Int64(-1159399429, 1906263026), new $Int64(475781207, 3904421704), new $Int64(-623537128, 1769075545), new $Int64(1062308525, 2621599764), new $Int64(1279509432, 3431891480), new $Int64(-1742751146, 1871896503), new $Int64(128756421, 1412808876), new $Int64(1605404688, 952876175), new $Int64(-230443691, 1824438899), new $Int64(1662295856, 1005035476), new $Int64(-156574141, 527508597), new $Int64(1288873303, 3066806859), new $Int64(565995893, 3244940914), new $Int64(-889746188, 209092916), new $Int64(-247669406, 1242699167), new $Int64(-713830396, 456723774), new $Int64(1776978905, 1001252870), new $Int64(1468772157, 2026725874), new $Int64(857254202, 2137562569), new $Int64(765939740, 3183366709), new $Int64(1533887628, 2612072960), new $Int64(56977098, 1727148468), new $Int64(-1197583895, 3803658212), new $Int64(1883670356, 479946959), new $Int64(685713571, 1562982345), new $Int64(-1946242443, 1766109365), new $Int64(700596547, 3257093788), new $Int64(-184714929, 2365720207), new $Int64(93384808, 3742754173), new $Int64(-458385235, 2878193673), new $Int64(1096135042, 2174002182), new $Int64(-834260953, 3573511231), new $Int64(-754572527, 1760299077), new $Int64(-1375627191, 2260779833), new $Int64(-866019274, 1452805722), new $Int64(-1229671918, 2940011802), new $Int64(1890251082, 1886183802), new $Int64(893897673, 2514369088), new $Int64(1644345561, 3924317791), new $Int64(-1974867432, 500935732), new $Int64(1403501753, 676580929), new $Int64(-1565912283, 1184984890), new $Int64(-691968413, 1271474274), new $Int64(-1828754738, 3163791473), new $Int64(2051027584, 2842487377), new $Int64(1511537551, 2170968612), new $Int64(573262976, 3535856740), new $Int64(-2053227187, 1488599718), new $Int64(-1180531831, 3408913763), new $Int64(-2086531912, 2501050084), new $Int64(-875130448, 1639124157), new $Int64(-2009482504, 4088176393), new $Int64(1574896563, 3989947576), new $Int64(-165243708, 3414355209), new $Int64(-792329287, 2275136352), new $Int64(-2057774345, 2151835223), new $Int64(-931144933, 1654534827), new $Int64(-679921451, 377892833), new $Int64(-482716010, 660204544), new $Int64(85706799, 390828249), new $Int64(-1422172693, 3402783878), new $Int64(-1468634160, 3717936603), new $Int64(1113532086, 2211058823), new $Int64(1564224320, 2692150867), new $Int64(1952770442, 1928910388), new $Int64(788716862, 3931011137), new $Int64(1083670504, 1112701047), new $Int64(-68150572, 2452299106), new $Int64(-896164822, 2337204777), new $Int64(1774877857, 273889282), new $Int64(1798719843, 1462008793), new $Int64(2138834788, 1554494002), new $Int64(-1194967131, 182675323), new $Int64(-1598554764, 1882802136), new $Int64(589279648, 3700220025), new $Int64(381039426, 3083431543), new $Int64(-851859191, 3622207527), new $Int64(338126939, 432729309), new $Int64(-1667470126, 2391914317), new $Int64(-1849558151, 235747924), new $Int64(2120733629, 3088823825), new $Int64(-745079795, 2314658321), new $Int64(1165929723, 2957634338), new $Int64(501323675, 4117056981), new $Int64(1564699815, 1482500298), new $Int64(-740826490, 840489337), new $Int64(799522364, 3483178565), new $Int64(532129761, 2074004656), new $Int64(724246478, 3643392642), new $Int64(-665153481, 1583624461), new $Int64(-885822954, 287473085), new $Int64(1667835381, 3136843981), new $Int64(1138806821, 1266970974), new $Int64(135185781, 1998688839), new $Int64(392094735, 1492900209), new $Int64(1031326774, 1538112737), new $Int64(-2070568842, 2207265429), new $Int64(-1886797613, 963263315), new $Int64(1671145500, 2295892134), new $Int64(1068469660, 2002560897), new $Int64(-356250305, 1369254035), new $Int64(33436120, 3353312708), new $Int64(57507843, 947771099), new $Int64(-1945755145, 1747061399), new $Int64(1507240140, 2047354631), new $Int64(720000810, 4165367136), new $Int64(479265078, 3388864963), new $Int64(-952181250, 286492130), new $Int64(2045622690, 2795735007), new $Int64(-715730566, 3703961339), new $Int64(-148436487, 1797825479), new $Int64(1429039600, 1116589674), new $Int64(-1665420098, 2593309206), new $Int64(1329049334, 3404995677), new $Int64(-750579440, 3453462936), new $Int64(1014767077, 3016498634), new $Int64(75698599, 1650371545), new $Int64(1592007860, 212344364), new $Int64(1127766888, 3843932156), new $Int64(-748019856, 3573129983), new $Int64(-890581831, 665897820), new $Int64(1071492673, 1675628772), new $Int64(243225682, 2831752928), new $Int64(2120298836, 1486294219), new $Int64(-1954407413, 268782709), new $Int64(-1002123503, 4186179080), new $Int64(624342951, 1613720397), new $Int64(857179861, 2703686015), new $Int64(-911618704, 2205342611), new $Int64(-672703993, 1411666394), new $Int64(-1528454899, 677744900), new $Int64(-1876628533, 4172867247), new $Int64(135494707, 2163418403), new $Int64(849547544, 2841526879), new $Int64(-1117516959, 1082141470), new $Int64(-1770111792, 4046134367), new $Int64(51415528, 2142943655), new $Int64(-249824333, 3124627521), new $Int64(998228909, 219992939), new $Int64(-1078790951, 1756846531), new $Int64(1283749206, 1225118210), new $Int64(-525858006, 1647770243), new $Int64(-2035959705, 444807907), new $Int64(2036369448, 3952076173), new $Int64(53201823, 1461839639), new $Int64(315761893, 3699250910), new $Int64(702974850, 1373688981), new $Int64(734022261, 147523747), new $Int64(-2047330906, 1211276581), new $Int64(1294440951, 2548832680), new $Int64(1144696256, 1995631888), new $Int64(-1992983070, 2011457303), new $Int64(-1351022674, 3057425772), new $Int64(667839456, 81484597), new $Int64(-1681980888, 3646681560), new $Int64(-1372462725, 635548515), new $Int64(602489502, 2508044581), new $Int64(-1794220117, 1014917157), new $Int64(719992433, 3214891315), new $Int64(-1294799037, 959582252), new $Int64(226415134, 3347040449), new $Int64(-362868096, 4102971975), new $Int64(397887437, 4078022210), new $Int64(-536803826, 2851767182), new $Int64(-1398321012, 1540160644), new $Int64(-1549098876, 1057290595), new $Int64(-112592988, 3907769253), new $Int64(579300318, 4248952684), new $Int64(-1054576049, 132554364), new $Int64(-1085862414, 1029351092), new $Int64(697840928, 2583007416), new $Int64(298619124, 1486185789), new $Int64(55905697, 2871589073), new $Int64(2017643612, 723203291), new $Int64(146250550, 2494333952), new $Int64(-1082993397, 2230939180), new $Int64(-1804568072, 3943232912), new $Int64(1768732449, 2181367922), new $Int64(-729261111, 2889274791), new $Int64(1824032949, 2046728161), new $Int64(1653899792, 1376052477), new $Int64(1022327048, 381236993), new $Int64(-1113097690, 3188942166), new $Int64(-74480109, 350070824), new $Int64(144881592, 61758415), new $Int64(-741824226, 3492950336), new $Int64(-2030042720, 3093818430), new $Int64(-453590535, 2962480613), new $Int64(-1912050708, 3154871160), new $Int64(-1636478569, 3228564679), new $Int64(610731502, 888276216), new $Int64(-946702974, 3574998604), new $Int64(-1277068380, 1967526716), new $Int64(-1556147941, 1554691298), new $Int64(-1573024234, 339944798), new $Int64(1223764147, 1154515356), new $Int64(1825645307, 967516237), new $Int64(1546195135, 596588202), new $Int64(-1867600880, 3764362170), new $Int64(-1655392592, 266611402), new $Int64(-393255880, 2047856075), new $Int64(-1000726433, 21444105), new $Int64(-949424754, 3065563181), new $Int64(-232418803, 1140663212), new $Int64(633187674, 2323741028), new $Int64(2126290159, 3103873707), new $Int64(1008658319, 2766828349), new $Int64(-485587503, 1970872996), new $Int64(1628585413, 3766615585), new $Int64(-595148528, 2036813414), new $Int64(-1994877121, 3105536507), new $Int64(13954645, 3396176938), new $Int64(-721402003, 1377154485), new $Int64(-61839181, 3807014186), new $Int64(543009040, 3710110597), new $Int64(-1751425519, 916420443), new $Int64(734556788, 2103831255), new $Int64(-1766161494, 717331943), new $Int64(-1574598896, 3550505941), new $Int64(45939673, 378749927), new $Int64(-1997615719, 611017331), new $Int64(592130075, 758907650), new $Int64(1012992349, 154266815), new $Int64(-1040454942, 1407468696), new $Int64(-1678191250, 970098704), new $Int64(-285057486, 1971660656), new $Int64(998365243, 3332747885), new $Int64(1947089649, 1935189867), new $Int64(1510248801, 203520055), new $Int64(-1305165746, 3916463034), new $Int64(-388598655, 3474113316), new $Int64(1036101639, 316544223), new $Int64(-1773744891, 1650844677), new $Int64(-907191419, 4267565603), new $Int64(-1070275024, 2501167616), new $Int64(-1520651863, 3929401789), new $Int64(-2091360852, 337170252), new $Int64(-960502090, 2061966842), new $Int64(-304190848, 2508461464), new $Int64(-1941471116, 2791377107), new $Int64(1240791848, 1227227588), new $Int64(1813978778, 1709681848), new $Int64(1153692192, 3768820575), new $Int64(-1002297449, 2887126398), new $Int64(-1447111334, 296561685), new $Int64(700300844, 3729960077), new $Int64(-1572311344, 372833036), new $Int64(2078875613, 2409779288), new $Int64(1829161290, 555274064), new $Int64(-1105595719, 4239804901), new $Int64(1839403216, 3723486978), new $Int64(-1649093095, 2145871984), new $Int64(-1582765715, 3565480803), new $Int64(-1568653827, 2197313814), new $Int64(974785092, 3613674566), new $Int64(438638731, 3042093666), new $Int64(-96556264, 3324034321), new $Int64(869420878, 3708873369), new $Int64(946682149, 1698090092), new $Int64(1618900382, 4213940712), new $Int64(-1843479747, 2087477361), new $Int64(-1766167800, 2407950639), new $Int64(-1296225558, 3942568569), new $Int64(-1223900450, 4088074412), new $Int64(723260036, 2964773675), new $Int64(-673921829, 1539178386), new $Int64(1062961552, 2694849566), new $Int64(460977733, 2120273838), new $Int64(-1604570740, 2484608657), new $Int64(880846449, 2956190677), new $Int64(1970902366, 4223313749), new $Int64(662161910, 3502682327), new $Int64(705634754, 4133891139), new $Int64(-1031359300, 1166449596), new $Int64(1038247601, 3362705993), new $Int64(93734798, 3892921029), new $Int64(1876124043, 786869787), new $Int64(1057490746, 1046342263), new $Int64(242763728, 493777327), new $Int64(-853573201, 3304827646), new $Int64(616460742, 125356352), new $Int64(499300063, 74094113), new $Int64(-795586925, 2500816079), new $Int64(-490248444, 514015239), new $Int64(1377565129, 543520454), new $Int64(-2039776725, 3614531153), new $Int64(2056746300, 2356753985), new $Int64(1390062617, 2018141668), new $Int64(131272971, 2087974891), new $Int64(-1502927041, 3166972343), new $Int64(372256200, 1517638666), new $Int64(-935275664, 173466846), new $Int64(-695774461, 4241513471), new $Int64(-1413550842, 2783126920), new $Int64(1972004134, 4167264826), new $Int64(29260506, 3907395640), new $Int64(-910901561, 1539634186), new $Int64(-595957298, 178241987), new $Int64(-113277636, 182168164), new $Int64(-1102530459, 2386154934), new $Int64(1379126408, 4077374341), new $Int64(-2114679722, 1732699140), new $Int64(-421057745, 1041306002), new $Int64(1860414813, 2068001749), new $Int64(1005320202, 3208962910), new $Int64(844054010, 697710380), new $Int64(-1509359403, 2228431183), new $Int64(-810313977, 3554678728), new $Int64(-750989047, 173470263), new $Int64(-85886265, 3848297795), new $Int64(-926936977, 246236185), new $Int64(-1984190461, 2066374846), new $Int64(1771673660, 312890749), new $Int64(703378057, 3573310289), new $Int64(-598851901, 143166754), new $Int64(613554316, 2081511079), new $Int64(1197802104, 486038032), new $Int64(-1906483789, 2982218564), new $Int64(364901986, 1000939191), new $Int64(1902782651, 2750454885), new $Int64(-671844857, 3375313137), new $Int64(-1643868040, 881302957), new $Int64(-1508784745, 2514186393), new $Int64(-1703622845, 360024739), new $Int64(1399671872, 292500025), new $Int64(1381210821, 2276300752), new $Int64(521803381, 4069087683), new $Int64(-1938982667, 1637778212), new $Int64(720490469, 1676670893), new $Int64(1067262482, 3855174429), new $Int64(2114075974, 2067248671), new $Int64(-89426259, 2884561259), new $Int64(-805741095, 2456511185), new $Int64(983726246, 561175414), new $Int64(-1719489563, 432588903), new $Int64(885133709, 4059399550), new $Int64(-93096266, 1075014784), new $Int64(-1733832628, 2728058415), new $Int64(1839142064, 1299703678), new $Int64(1262333188, 2347583393), new $Int64(1285481956, 2468164145), new $Int64(-1158354011, 1140014346), new $Int64(2033889184, 1936972070), new $Int64(-1737578993, 3870530098), new $Int64(-484494257, 1717789158), new $Int64(-232997156, 1153452491), new $Int64(-990424416, 3948827651), new $Int64(-1357145630, 2101413152), new $Int64(1495744672, 3854091229), new $Int64(83644069, 4215565463), new $Int64(-1385277313, 1202710438), new $Int64(-564909037, 2072216740), new $Int64(705690639, 2066751068), new $Int64(-2113583312, 173902580), new $Int64(-741983806, 142459001), new $Int64(172391592, 1889151926), new $Int64(-498943125, 3034199774), new $Int64(1618587731, 516490102), new $Int64(93114264, 3692577783), new $Int64(-2078821353, 2953948865), new $Int64(-320938673, 4041040923), new $Int64(-1942517976, 592046130), new $Int64(-705643640, 384297211), new $Int64(-2051649464, 265863924), new $Int64(2101717619, 1333136237), new $Int64(1499611781, 1406273556), new $Int64(1074670496, 426305476), new $Int64(125704633, 2750898176), new $Int64(488068495, 1633944332), new $Int64(2037723464, 3236349343), new $Int64(-1703423246, 4013676611), new $Int64(1718532237, 2265047407), new $Int64(1433593806, 875071080), new $Int64(-343047503, 1418843655), new $Int64(2009228711, 451657300), new $Int64(1229446621, 1866374663), new $Int64(1653472867, 1551455622), new $Int64(577191481, 3560962459), new $Int64(1669204077, 3347903778), new $Int64(-298327194, 2675874918), new $Int64(-1831355577, 2762991672), new $Int64(530492383, 3689068477), new $Int64(844089962, 4071997905), new $Int64(1508155730, 1381702441), new $Int64(2089931018, 2373284878), new $Int64(-864267462, 2143983064), new $Int64(308739063, 1938207195), new $Int64(1754949306, 1188152253), new $Int64(1272345009, 615870490), new $Int64(742653194, 2662252621), new $Int64(1477718295, 3839976789), new $Int64(-2091334213, 306752547), new $Int64(-1426688067, 2162363077), new $Int64(-57052633, 2767224719), new $Int64(-1471624099, 2628837712), new $Int64(1678405918, 2967771969), new $Int64(1694285728, 499792248), new $Int64(-1744131281, 4285253508), new $Int64(962357072, 2856511070), new $Int64(679471692, 2526409716), new $Int64(-1793706473, 1240875658), new $Int64(-914893422, 2577342868), new $Int64(-1001298215, 4136853496), new $Int64(-1477114974, 2403540137), new $Int64(1372824515, 1371410668), new $Int64(-176562048, 371758825), new $Int64(-441063112, 1528834084), new $Int64(-71688630, 1504757260), new $Int64(-1461820072, 699052551), new $Int64(-505543539, 3347789870), new $Int64(1951619734, 3430604759), new $Int64(2119672219, 1935601723), new $Int64(966789690, 834676166)]);
+ globalRand = New(new lockedSource.ptr(new nosync.Mutex.ptr(false), $assertType(NewSource(new $Int64(0, 1)), Source64)));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["github.com/r0fls/gostats"] = (function() {
+ var $pkg = {}, $init, math, rand, sort, time;
+ math = $packages["math"];
+ rand = $packages["math/rand"];
+ sort = $packages["sort"];
+ time = $packages["time"];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = math.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = rand.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sort.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = time.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["crypto/subtle"] = (function() {
+ var $pkg = {}, $init, ConstantTimeByteEq;
+ ConstantTimeByteEq = function(x, y) {
+ var $ptr, x, y, z;
+ z = ~(((x ^ y) << 24 >>> 24)) << 24 >>> 24;
+ z = (z & ((z >>> 4 << 24 >>> 24))) >>> 0;
+ z = (z & ((z >>> 2 << 24 >>> 24))) >>> 0;
+ z = (z & ((z >>> 1 << 24 >>> 24))) >>> 0;
+ return ((z >> 0));
+ };
+ $pkg.ConstantTimeByteEq = ConstantTimeByteEq;
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["crypto/cipher"] = (function() {
+ var $pkg = {}, $init, subtle, errors, io, runtime, Stream, sliceType$1, errOpen;
+ subtle = $packages["crypto/subtle"];
+ errors = $packages["errors"];
+ io = $packages["io"];
+ runtime = $packages["runtime"];
+ Stream = $pkg.Stream = $newType(8, $kindInterface, "cipher.Stream", true, "crypto/cipher", true, null);
+ sliceType$1 = $sliceType($Uint8);
+ Stream.init([{prop: "XORKeyStream", name: "XORKeyStream", pkg: "", typ: $funcType([sliceType$1, sliceType$1], [], false)}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = subtle.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ errOpen = errors.New("cipher: message authentication failed");
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["encoding/binary"] = (function() {
+ var $pkg = {}, $init, errors, io, math, reflect, ByteOrder, littleEndian, bigEndian, decoder, encoder, arrayType, sliceType, ptrType, ptrType$1, ptrType$2, ptrType$3, ptrType$4, ptrType$5, ptrType$6, ptrType$7, ptrType$8, sliceType$1, sliceType$2, sliceType$3, sliceType$4, sliceType$5, sliceType$6, sliceType$7, sliceType$8, ptrType$9, ptrType$10, overflow, Read, Write, dataSize, sizeof, intDataSize, PutUvarint, Uvarint;
+ errors = $packages["errors"];
+ io = $packages["io"];
+ math = $packages["math"];
+ reflect = $packages["reflect"];
+ ByteOrder = $pkg.ByteOrder = $newType(8, $kindInterface, "binary.ByteOrder", true, "encoding/binary", true, null);
+ littleEndian = $pkg.littleEndian = $newType(0, $kindStruct, "binary.littleEndian", true, "encoding/binary", false, function() {
+ this.$val = this;
+ if (arguments.length === 0) {
+ return;
+ }
+ });
+ bigEndian = $pkg.bigEndian = $newType(0, $kindStruct, "binary.bigEndian", true, "encoding/binary", false, function() {
+ this.$val = this;
+ if (arguments.length === 0) {
+ return;
+ }
+ });
+ decoder = $pkg.decoder = $newType(0, $kindStruct, "binary.decoder", true, "encoding/binary", false, function(order_, buf_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.order = $ifaceNil;
+ this.buf = sliceType.nil;
+ return;
+ }
+ this.order = order_;
+ this.buf = buf_;
+ });
+ encoder = $pkg.encoder = $newType(0, $kindStruct, "binary.encoder", true, "encoding/binary", false, function(order_, buf_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.order = $ifaceNil;
+ this.buf = sliceType.nil;
+ return;
+ }
+ this.order = order_;
+ this.buf = buf_;
+ });
+ arrayType = $arrayType($Uint8, 8);
+ sliceType = $sliceType($Uint8);
+ ptrType = $ptrType($Bool);
+ ptrType$1 = $ptrType($Int8);
+ ptrType$2 = $ptrType($Uint8);
+ ptrType$3 = $ptrType($Int16);
+ ptrType$4 = $ptrType($Uint16);
+ ptrType$5 = $ptrType($Int32);
+ ptrType$6 = $ptrType($Uint32);
+ ptrType$7 = $ptrType($Int64);
+ ptrType$8 = $ptrType($Uint64);
+ sliceType$1 = $sliceType($Bool);
+ sliceType$2 = $sliceType($Int8);
+ sliceType$3 = $sliceType($Int16);
+ sliceType$4 = $sliceType($Uint16);
+ sliceType$5 = $sliceType($Int32);
+ sliceType$6 = $sliceType($Uint32);
+ sliceType$7 = $sliceType($Int64);
+ sliceType$8 = $sliceType($Uint64);
+ ptrType$9 = $ptrType(decoder);
+ ptrType$10 = $ptrType(encoder);
+ littleEndian.ptr.prototype.Uint16 = function(b) {
+ var $ptr, b;
+ $unused((1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]));
+ return ((((0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0]) << 16 >>> 16)) | ((((1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]) << 16 >>> 16)) << 8 << 16 >>> 16)) >>> 0;
+ };
+ littleEndian.prototype.Uint16 = function(b) { return this.$val.Uint16(b); };
+ littleEndian.ptr.prototype.PutUint16 = function(b, v) {
+ var $ptr, b, v;
+ $unused((1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]));
+ (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0] = ((v << 24 >>> 24)));
+ (1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1] = (((v >>> 8 << 16 >>> 16) << 24 >>> 24)));
+ };
+ littleEndian.prototype.PutUint16 = function(b, v) { return this.$val.PutUint16(b, v); };
+ littleEndian.ptr.prototype.Uint32 = function(b) {
+ var $ptr, b;
+ $unused((3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3]));
+ return ((((((((0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0]) >>> 0)) | ((((1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]) >>> 0)) << 8 >>> 0)) >>> 0) | ((((2 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 2]) >>> 0)) << 16 >>> 0)) >>> 0) | ((((3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3]) >>> 0)) << 24 >>> 0)) >>> 0;
+ };
+ littleEndian.prototype.Uint32 = function(b) { return this.$val.Uint32(b); };
+ littleEndian.ptr.prototype.PutUint32 = function(b, v) {
+ var $ptr, b, v;
+ $unused((3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3]));
+ (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0] = ((v << 24 >>> 24)));
+ (1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1] = (((v >>> 8 >>> 0) << 24 >>> 24)));
+ (2 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 2] = (((v >>> 16 >>> 0) << 24 >>> 24)));
+ (3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3] = (((v >>> 24 >>> 0) << 24 >>> 24)));
+ };
+ littleEndian.prototype.PutUint32 = function(b, v) { return this.$val.PutUint32(b, v); };
+ littleEndian.ptr.prototype.Uint64 = function(b) {
+ var $ptr, b, x, x$1, x$10, x$11, x$12, x$13, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ $unused((7 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 7]));
+ return (x = (x$1 = (x$2 = (x$3 = (x$4 = (x$5 = (x$6 = (new $Uint64(0, (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0]))), x$7 = $shiftLeft64((new $Uint64(0, (1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]))), 8), new $Uint64(x$6.$high | x$7.$high, (x$6.$low | x$7.$low) >>> 0)), x$8 = $shiftLeft64((new $Uint64(0, (2 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 2]))), 16), new $Uint64(x$5.$high | x$8.$high, (x$5.$low | x$8.$low) >>> 0)), x$9 = $shiftLeft64((new $Uint64(0, (3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3]))), 24), new $Uint64(x$4.$high | x$9.$high, (x$4.$low | x$9.$low) >>> 0)), x$10 = $shiftLeft64((new $Uint64(0, (4 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 4]))), 32), new $Uint64(x$3.$high | x$10.$high, (x$3.$low | x$10.$low) >>> 0)), x$11 = $shiftLeft64((new $Uint64(0, (5 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 5]))), 40), new $Uint64(x$2.$high | x$11.$high, (x$2.$low | x$11.$low) >>> 0)), x$12 = $shiftLeft64((new $Uint64(0, (6 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 6]))), 48), new $Uint64(x$1.$high | x$12.$high, (x$1.$low | x$12.$low) >>> 0)), x$13 = $shiftLeft64((new $Uint64(0, (7 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 7]))), 56), new $Uint64(x.$high | x$13.$high, (x.$low | x$13.$low) >>> 0));
+ };
+ littleEndian.prototype.Uint64 = function(b) { return this.$val.Uint64(b); };
+ littleEndian.ptr.prototype.PutUint64 = function(b, v) {
+ var $ptr, b, v;
+ $unused((7 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 7]));
+ (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0] = ((v.$low << 24 >>> 24)));
+ (1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1] = (($shiftRightUint64(v, 8).$low << 24 >>> 24)));
+ (2 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 2] = (($shiftRightUint64(v, 16).$low << 24 >>> 24)));
+ (3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3] = (($shiftRightUint64(v, 24).$low << 24 >>> 24)));
+ (4 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 4] = (($shiftRightUint64(v, 32).$low << 24 >>> 24)));
+ (5 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 5] = (($shiftRightUint64(v, 40).$low << 24 >>> 24)));
+ (6 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 6] = (($shiftRightUint64(v, 48).$low << 24 >>> 24)));
+ (7 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 7] = (($shiftRightUint64(v, 56).$low << 24 >>> 24)));
+ };
+ littleEndian.prototype.PutUint64 = function(b, v) { return this.$val.PutUint64(b, v); };
+ littleEndian.ptr.prototype.String = function() {
+ var $ptr;
+ return "LittleEndian";
+ };
+ littleEndian.prototype.String = function() { return this.$val.String(); };
+ littleEndian.ptr.prototype.GoString = function() {
+ var $ptr;
+ return "binary.LittleEndian";
+ };
+ littleEndian.prototype.GoString = function() { return this.$val.GoString(); };
+ bigEndian.ptr.prototype.Uint16 = function(b) {
+ var $ptr, b;
+ $unused((1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]));
+ return ((((1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]) << 16 >>> 16)) | ((((0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0]) << 16 >>> 16)) << 8 << 16 >>> 16)) >>> 0;
+ };
+ bigEndian.prototype.Uint16 = function(b) { return this.$val.Uint16(b); };
+ bigEndian.ptr.prototype.PutUint16 = function(b, v) {
+ var $ptr, b, v;
+ $unused((1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]));
+ (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0] = (((v >>> 8 << 16 >>> 16) << 24 >>> 24)));
+ (1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1] = ((v << 24 >>> 24)));
+ };
+ bigEndian.prototype.PutUint16 = function(b, v) { return this.$val.PutUint16(b, v); };
+ bigEndian.ptr.prototype.Uint32 = function(b) {
+ var $ptr, b;
+ $unused((3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3]));
+ return ((((((((3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3]) >>> 0)) | ((((2 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 2]) >>> 0)) << 8 >>> 0)) >>> 0) | ((((1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]) >>> 0)) << 16 >>> 0)) >>> 0) | ((((0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0]) >>> 0)) << 24 >>> 0)) >>> 0;
+ };
+ bigEndian.prototype.Uint32 = function(b) { return this.$val.Uint32(b); };
+ bigEndian.ptr.prototype.PutUint32 = function(b, v) {
+ var $ptr, b, v;
+ $unused((3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3]));
+ (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0] = (((v >>> 24 >>> 0) << 24 >>> 24)));
+ (1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1] = (((v >>> 16 >>> 0) << 24 >>> 24)));
+ (2 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 2] = (((v >>> 8 >>> 0) << 24 >>> 24)));
+ (3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3] = ((v << 24 >>> 24)));
+ };
+ bigEndian.prototype.PutUint32 = function(b, v) { return this.$val.PutUint32(b, v); };
+ bigEndian.ptr.prototype.Uint64 = function(b) {
+ var $ptr, b, x, x$1, x$10, x$11, x$12, x$13, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ $unused((7 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 7]));
+ return (x = (x$1 = (x$2 = (x$3 = (x$4 = (x$5 = (x$6 = (new $Uint64(0, (7 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 7]))), x$7 = $shiftLeft64((new $Uint64(0, (6 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 6]))), 8), new $Uint64(x$6.$high | x$7.$high, (x$6.$low | x$7.$low) >>> 0)), x$8 = $shiftLeft64((new $Uint64(0, (5 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 5]))), 16), new $Uint64(x$5.$high | x$8.$high, (x$5.$low | x$8.$low) >>> 0)), x$9 = $shiftLeft64((new $Uint64(0, (4 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 4]))), 24), new $Uint64(x$4.$high | x$9.$high, (x$4.$low | x$9.$low) >>> 0)), x$10 = $shiftLeft64((new $Uint64(0, (3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3]))), 32), new $Uint64(x$3.$high | x$10.$high, (x$3.$low | x$10.$low) >>> 0)), x$11 = $shiftLeft64((new $Uint64(0, (2 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 2]))), 40), new $Uint64(x$2.$high | x$11.$high, (x$2.$low | x$11.$low) >>> 0)), x$12 = $shiftLeft64((new $Uint64(0, (1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]))), 48), new $Uint64(x$1.$high | x$12.$high, (x$1.$low | x$12.$low) >>> 0)), x$13 = $shiftLeft64((new $Uint64(0, (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0]))), 56), new $Uint64(x.$high | x$13.$high, (x.$low | x$13.$low) >>> 0));
+ };
+ bigEndian.prototype.Uint64 = function(b) { return this.$val.Uint64(b); };
+ bigEndian.ptr.prototype.PutUint64 = function(b, v) {
+ var $ptr, b, v;
+ $unused((7 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 7]));
+ (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0] = (($shiftRightUint64(v, 56).$low << 24 >>> 24)));
+ (1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1] = (($shiftRightUint64(v, 48).$low << 24 >>> 24)));
+ (2 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 2] = (($shiftRightUint64(v, 40).$low << 24 >>> 24)));
+ (3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3] = (($shiftRightUint64(v, 32).$low << 24 >>> 24)));
+ (4 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 4] = (($shiftRightUint64(v, 24).$low << 24 >>> 24)));
+ (5 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 5] = (($shiftRightUint64(v, 16).$low << 24 >>> 24)));
+ (6 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 6] = (($shiftRightUint64(v, 8).$low << 24 >>> 24)));
+ (7 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 7] = ((v.$low << 24 >>> 24)));
+ };
+ bigEndian.prototype.PutUint64 = function(b, v) { return this.$val.PutUint64(b, v); };
+ bigEndian.ptr.prototype.String = function() {
+ var $ptr;
+ return "BigEndian";
+ };
+ bigEndian.prototype.String = function() { return this.$val.String(); };
+ bigEndian.ptr.prototype.GoString = function() {
+ var $ptr;
+ return "binary.BigEndian";
+ };
+ bigEndian.prototype.GoString = function() { return this.$val.GoString(); };
+ Read = function(r, order, data) {
+ var $ptr, _1, _i, _i$1, _i$2, _i$3, _i$4, _i$5, _i$6, _i$7, _r, _r$1, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$19, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _ref, _ref$1, _ref$2, _ref$3, _ref$4, _ref$5, _ref$6, _ref$7, _ref$8, _tuple, _tuple$1, b, bs, d, data, data$1, data$10, data$11, data$12, data$13, data$14, data$15, data$16, data$17, data$18, data$2, data$3, data$4, data$5, data$6, data$7, data$8, data$9, err, err$1, i, i$1, i$2, i$3, i$4, i$5, i$6, i$7, n, order, r, size, v, x, x$1, x$2, x$3, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _i = $f._i; _i$1 = $f._i$1; _i$2 = $f._i$2; _i$3 = $f._i$3; _i$4 = $f._i$4; _i$5 = $f._i$5; _i$6 = $f._i$6; _i$7 = $f._i$7; _r = $f._r; _r$1 = $f._r$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$19 = $f._r$19; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _ref = $f._ref; _ref$1 = $f._ref$1; _ref$2 = $f._ref$2; _ref$3 = $f._ref$3; _ref$4 = $f._ref$4; _ref$5 = $f._ref$5; _ref$6 = $f._ref$6; _ref$7 = $f._ref$7; _ref$8 = $f._ref$8; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; b = $f.b; bs = $f.bs; d = $f.d; data = $f.data; data$1 = $f.data$1; data$10 = $f.data$10; data$11 = $f.data$11; data$12 = $f.data$12; data$13 = $f.data$13; data$14 = $f.data$14; data$15 = $f.data$15; data$16 = $f.data$16; data$17 = $f.data$17; data$18 = $f.data$18; data$2 = $f.data$2; data$3 = $f.data$3; data$4 = $f.data$4; data$5 = $f.data$5; data$6 = $f.data$6; data$7 = $f.data$7; data$8 = $f.data$8; data$9 = $f.data$9; err = $f.err; err$1 = $f.err$1; i = $f.i; i$1 = $f.i$1; i$2 = $f.i$2; i$3 = $f.i$3; i$4 = $f.i$4; i$5 = $f.i$5; i$6 = $f.i$6; i$7 = $f.i$7; n = $f.n; order = $f.order; r = $f.r; size = $f.size; v = $f.v; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = intDataSize(data);
+ /* */ if (!((n === 0))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!((n === 0))) { */ case 1:
+ b = arrayType.zero();
+ bs = sliceType.nil;
+ if (n > 8) {
+ bs = $makeSlice(sliceType, n);
+ } else {
+ bs = $subslice(new sliceType(b), 0, n);
+ }
+ _r = io.ReadFull(r, bs); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ _ref = data;
+ /* */ if ($assertType(_ref, ptrType, true)[1]) { $s = 4; continue; }
+ /* */ if ($assertType(_ref, ptrType$1, true)[1]) { $s = 5; continue; }
+ /* */ if ($assertType(_ref, ptrType$2, true)[1]) { $s = 6; continue; }
+ /* */ if ($assertType(_ref, ptrType$3, true)[1]) { $s = 7; continue; }
+ /* */ if ($assertType(_ref, ptrType$4, true)[1]) { $s = 8; continue; }
+ /* */ if ($assertType(_ref, ptrType$5, true)[1]) { $s = 9; continue; }
+ /* */ if ($assertType(_ref, ptrType$6, true)[1]) { $s = 10; continue; }
+ /* */ if ($assertType(_ref, ptrType$7, true)[1]) { $s = 11; continue; }
+ /* */ if ($assertType(_ref, ptrType$8, true)[1]) { $s = 12; continue; }
+ /* */ if ($assertType(_ref, sliceType$1, true)[1]) { $s = 13; continue; }
+ /* */ if ($assertType(_ref, sliceType$2, true)[1]) { $s = 14; continue; }
+ /* */ if ($assertType(_ref, sliceType, true)[1]) { $s = 15; continue; }
+ /* */ if ($assertType(_ref, sliceType$3, true)[1]) { $s = 16; continue; }
+ /* */ if ($assertType(_ref, sliceType$4, true)[1]) { $s = 17; continue; }
+ /* */ if ($assertType(_ref, sliceType$5, true)[1]) { $s = 18; continue; }
+ /* */ if ($assertType(_ref, sliceType$6, true)[1]) { $s = 19; continue; }
+ /* */ if ($assertType(_ref, sliceType$7, true)[1]) { $s = 20; continue; }
+ /* */ if ($assertType(_ref, sliceType$8, true)[1]) { $s = 21; continue; }
+ /* */ $s = 22; continue;
+ /* if ($assertType(_ref, ptrType, true)[1]) { */ case 4:
+ data$1 = _ref.$val;
+ data$1.$set(!((b[0] === 0)));
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, ptrType$1, true)[1]) { */ case 5:
+ data$2 = _ref.$val;
+ data$2.$set(((b[0] << 24 >> 24)));
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, ptrType$2, true)[1]) { */ case 6:
+ data$3 = _ref.$val;
+ data$3.$set(b[0]);
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, ptrType$3, true)[1]) { */ case 7:
+ data$4 = _ref.$val;
+ _r$1 = order.Uint16(bs); /* */ $s = 23; case 23: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ data$4.$set(((_r$1 << 16 >> 16)));
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, ptrType$4, true)[1]) { */ case 8:
+ data$5 = _ref.$val;
+ _r$2 = order.Uint16(bs); /* */ $s = 24; case 24: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ data$5.$set(_r$2);
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, ptrType$5, true)[1]) { */ case 9:
+ data$6 = _ref.$val;
+ _r$3 = order.Uint32(bs); /* */ $s = 25; case 25: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ data$6.$set(((_r$3 >> 0)));
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, ptrType$6, true)[1]) { */ case 10:
+ data$7 = _ref.$val;
+ _r$4 = order.Uint32(bs); /* */ $s = 26; case 26: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ data$7.$set(_r$4);
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, ptrType$7, true)[1]) { */ case 11:
+ data$8 = _ref.$val;
+ _r$5 = order.Uint64(bs); /* */ $s = 27; case 27: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ data$8.$set(((x = _r$5, new $Int64(x.$high, x.$low))));
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, ptrType$8, true)[1]) { */ case 12:
+ data$9 = _ref.$val;
+ _r$6 = order.Uint64(bs); /* */ $s = 28; case 28: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ data$9.$set(_r$6);
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, sliceType$1, true)[1]) { */ case 13:
+ data$10 = _ref.$val;
+ _ref$1 = bs;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref$1.$length)) { break; }
+ i = _i;
+ x$1 = ((_i < 0 || _i >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i]);
+ ((i < 0 || i >= data$10.$length) ? ($throwRuntimeError("index out of range"), undefined) : data$10.$array[data$10.$offset + i] = !((x$1 === 0)));
+ _i++;
+ }
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, sliceType$2, true)[1]) { */ case 14:
+ data$11 = _ref.$val;
+ _ref$2 = bs;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$2.$length)) { break; }
+ i$1 = _i$1;
+ x$2 = ((_i$1 < 0 || _i$1 >= _ref$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$2.$array[_ref$2.$offset + _i$1]);
+ ((i$1 < 0 || i$1 >= data$11.$length) ? ($throwRuntimeError("index out of range"), undefined) : data$11.$array[data$11.$offset + i$1] = ((x$2 << 24 >> 24)));
+ _i$1++;
+ }
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, sliceType, true)[1]) { */ case 15:
+ data$12 = _ref.$val;
+ $copySlice(data$12, bs);
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, sliceType$3, true)[1]) { */ case 16:
+ data$13 = _ref.$val;
+ _ref$3 = data$13;
+ _i$2 = 0;
+ /* while (true) { */ case 29:
+ /* if (!(_i$2 < _ref$3.$length)) { break; } */ if(!(_i$2 < _ref$3.$length)) { $s = 30; continue; }
+ i$2 = _i$2;
+ _r$7 = order.Uint16($subslice(bs, ($imul(2, i$2)))); /* */ $s = 31; case 31: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ ((i$2 < 0 || i$2 >= data$13.$length) ? ($throwRuntimeError("index out of range"), undefined) : data$13.$array[data$13.$offset + i$2] = ((_r$7 << 16 >> 16)));
+ _i$2++;
+ /* } */ $s = 29; continue; case 30:
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, sliceType$4, true)[1]) { */ case 17:
+ data$14 = _ref.$val;
+ _ref$4 = data$14;
+ _i$3 = 0;
+ /* while (true) { */ case 32:
+ /* if (!(_i$3 < _ref$4.$length)) { break; } */ if(!(_i$3 < _ref$4.$length)) { $s = 33; continue; }
+ i$3 = _i$3;
+ _r$8 = order.Uint16($subslice(bs, ($imul(2, i$3)))); /* */ $s = 34; case 34: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ ((i$3 < 0 || i$3 >= data$14.$length) ? ($throwRuntimeError("index out of range"), undefined) : data$14.$array[data$14.$offset + i$3] = _r$8);
+ _i$3++;
+ /* } */ $s = 32; continue; case 33:
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, sliceType$5, true)[1]) { */ case 18:
+ data$15 = _ref.$val;
+ _ref$5 = data$15;
+ _i$4 = 0;
+ /* while (true) { */ case 35:
+ /* if (!(_i$4 < _ref$5.$length)) { break; } */ if(!(_i$4 < _ref$5.$length)) { $s = 36; continue; }
+ i$4 = _i$4;
+ _r$9 = order.Uint32($subslice(bs, ($imul(4, i$4)))); /* */ $s = 37; case 37: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ ((i$4 < 0 || i$4 >= data$15.$length) ? ($throwRuntimeError("index out of range"), undefined) : data$15.$array[data$15.$offset + i$4] = ((_r$9 >> 0)));
+ _i$4++;
+ /* } */ $s = 35; continue; case 36:
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, sliceType$6, true)[1]) { */ case 19:
+ data$16 = _ref.$val;
+ _ref$6 = data$16;
+ _i$5 = 0;
+ /* while (true) { */ case 38:
+ /* if (!(_i$5 < _ref$6.$length)) { break; } */ if(!(_i$5 < _ref$6.$length)) { $s = 39; continue; }
+ i$5 = _i$5;
+ _r$10 = order.Uint32($subslice(bs, ($imul(4, i$5)))); /* */ $s = 40; case 40: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ ((i$5 < 0 || i$5 >= data$16.$length) ? ($throwRuntimeError("index out of range"), undefined) : data$16.$array[data$16.$offset + i$5] = _r$10);
+ _i$5++;
+ /* } */ $s = 38; continue; case 39:
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, sliceType$7, true)[1]) { */ case 20:
+ data$17 = _ref.$val;
+ _ref$7 = data$17;
+ _i$6 = 0;
+ /* while (true) { */ case 41:
+ /* if (!(_i$6 < _ref$7.$length)) { break; } */ if(!(_i$6 < _ref$7.$length)) { $s = 42; continue; }
+ i$6 = _i$6;
+ _r$11 = order.Uint64($subslice(bs, ($imul(8, i$6)))); /* */ $s = 43; case 43: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ ((i$6 < 0 || i$6 >= data$17.$length) ? ($throwRuntimeError("index out of range"), undefined) : data$17.$array[data$17.$offset + i$6] = ((x$3 = _r$11, new $Int64(x$3.$high, x$3.$low))));
+ _i$6++;
+ /* } */ $s = 41; continue; case 42:
+ $s = 22; continue;
+ /* } else if ($assertType(_ref, sliceType$8, true)[1]) { */ case 21:
+ data$18 = _ref.$val;
+ _ref$8 = data$18;
+ _i$7 = 0;
+ /* while (true) { */ case 44:
+ /* if (!(_i$7 < _ref$8.$length)) { break; } */ if(!(_i$7 < _ref$8.$length)) { $s = 45; continue; }
+ i$7 = _i$7;
+ _r$12 = order.Uint64($subslice(bs, ($imul(8, i$7)))); /* */ $s = 46; case 46: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ ((i$7 < 0 || i$7 >= data$18.$length) ? ($throwRuntimeError("index out of range"), undefined) : data$18.$array[data$18.$offset + i$7] = _r$12);
+ _i$7++;
+ /* } */ $s = 44; continue; case 45:
+ /* } */ case 22:
+ $s = -1; return $ifaceNil;
+ /* } */ case 2:
+ _r$13 = reflect.ValueOf(data); /* */ $s = 47; case 47: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ v = _r$13;
+ size = -1;
+ _1 = $clone(v, reflect.Value).Kind();
+ /* */ if (_1 === (22)) { $s = 49; continue; }
+ /* */ if (_1 === (23)) { $s = 50; continue; }
+ /* */ $s = 51; continue;
+ /* if (_1 === (22)) { */ case 49:
+ _r$14 = $clone(v, reflect.Value).Elem(); /* */ $s = 52; case 52: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ v = _r$14;
+ _r$15 = dataSize($clone(v, reflect.Value)); /* */ $s = 53; case 53: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ size = _r$15;
+ $s = 51; continue;
+ /* } else if (_1 === (23)) { */ case 50:
+ _r$16 = dataSize($clone(v, reflect.Value)); /* */ $s = 54; case 54: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ size = _r$16;
+ /* } */ case 51:
+ case 48:
+ /* */ if (size < 0) { $s = 55; continue; }
+ /* */ $s = 56; continue;
+ /* if (size < 0) { */ case 55:
+ _r$17 = reflect.TypeOf(data).String(); /* */ $s = 57; case 57: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ _r$18 = errors.New("binary.Read: invalid type " + _r$17); /* */ $s = 58; case 58: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ $s = -1; return _r$18;
+ /* } */ case 56:
+ d = new decoder.ptr(order, $makeSlice(sliceType, size));
+ _r$19 = io.ReadFull(r, d.buf); /* */ $s = 59; case 59: if($c) { $c = false; _r$19 = _r$19.$blk(); } if (_r$19 && _r$19.$blk !== undefined) { break s; }
+ _tuple$1 = _r$19;
+ err$1 = _tuple$1[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ $r = d.value($clone(v, reflect.Value)); /* */ $s = 60; case 60: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Read }; } $f.$ptr = $ptr; $f._1 = _1; $f._i = _i; $f._i$1 = _i$1; $f._i$2 = _i$2; $f._i$3 = _i$3; $f._i$4 = _i$4; $f._i$5 = _i$5; $f._i$6 = _i$6; $f._i$7 = _i$7; $f._r = _r; $f._r$1 = _r$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$19 = _r$19; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._ref = _ref; $f._ref$1 = _ref$1; $f._ref$2 = _ref$2; $f._ref$3 = _ref$3; $f._ref$4 = _ref$4; $f._ref$5 = _ref$5; $f._ref$6 = _ref$6; $f._ref$7 = _ref$7; $f._ref$8 = _ref$8; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.b = b; $f.bs = bs; $f.d = d; $f.data = data; $f.data$1 = data$1; $f.data$10 = data$10; $f.data$11 = data$11; $f.data$12 = data$12; $f.data$13 = data$13; $f.data$14 = data$14; $f.data$15 = data$15; $f.data$16 = data$16; $f.data$17 = data$17; $f.data$18 = data$18; $f.data$2 = data$2; $f.data$3 = data$3; $f.data$4 = data$4; $f.data$5 = data$5; $f.data$6 = data$6; $f.data$7 = data$7; $f.data$8 = data$8; $f.data$9 = data$9; $f.err = err; $f.err$1 = err$1; $f.i = i; $f.i$1 = i$1; $f.i$2 = i$2; $f.i$3 = i$3; $f.i$4 = i$4; $f.i$5 = i$5; $f.i$6 = i$6; $f.i$7 = i$7; $f.n = n; $f.order = order; $f.r = r; $f.size = size; $f.v = v; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Read = Read;
+ Write = function(w, order, data) {
+ var $ptr, _i, _i$1, _i$2, _i$3, _i$4, _i$5, _i$6, _i$7, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _ref, _ref$1, _ref$2, _ref$3, _ref$4, _ref$5, _ref$6, _ref$7, _ref$8, _tuple, _tuple$1, b, bs, buf, data, e, err, err$1, i, i$1, i$2, i$3, i$4, i$5, i$6, i$7, n, order, size, v, v$1, v$10, v$11, v$12, v$13, v$14, v$15, v$16, v$17, v$18, v$19, v$2, v$20, v$21, v$22, v$23, v$24, v$25, v$26, v$27, v$3, v$4, v$5, v$6, v$7, v$8, v$9, w, x, x$1, x$2, x$3, x$4, x$5, x$6, x$7, x$8, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _i$1 = $f._i$1; _i$2 = $f._i$2; _i$3 = $f._i$3; _i$4 = $f._i$4; _i$5 = $f._i$5; _i$6 = $f._i$6; _i$7 = $f._i$7; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _ref = $f._ref; _ref$1 = $f._ref$1; _ref$2 = $f._ref$2; _ref$3 = $f._ref$3; _ref$4 = $f._ref$4; _ref$5 = $f._ref$5; _ref$6 = $f._ref$6; _ref$7 = $f._ref$7; _ref$8 = $f._ref$8; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; b = $f.b; bs = $f.bs; buf = $f.buf; data = $f.data; e = $f.e; err = $f.err; err$1 = $f.err$1; i = $f.i; i$1 = $f.i$1; i$2 = $f.i$2; i$3 = $f.i$3; i$4 = $f.i$4; i$5 = $f.i$5; i$6 = $f.i$6; i$7 = $f.i$7; n = $f.n; order = $f.order; size = $f.size; v = $f.v; v$1 = $f.v$1; v$10 = $f.v$10; v$11 = $f.v$11; v$12 = $f.v$12; v$13 = $f.v$13; v$14 = $f.v$14; v$15 = $f.v$15; v$16 = $f.v$16; v$17 = $f.v$17; v$18 = $f.v$18; v$19 = $f.v$19; v$2 = $f.v$2; v$20 = $f.v$20; v$21 = $f.v$21; v$22 = $f.v$22; v$23 = $f.v$23; v$24 = $f.v$24; v$25 = $f.v$25; v$26 = $f.v$26; v$27 = $f.v$27; v$3 = $f.v$3; v$4 = $f.v$4; v$5 = $f.v$5; v$6 = $f.v$6; v$7 = $f.v$7; v$8 = $f.v$8; v$9 = $f.v$9; w = $f.w; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; x$8 = $f.x$8; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = intDataSize(data);
+ /* */ if (!((n === 0))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!((n === 0))) { */ case 1:
+ b = arrayType.zero();
+ bs = sliceType.nil;
+ if (n > 8) {
+ bs = $makeSlice(sliceType, n);
+ } else {
+ bs = $subslice(new sliceType(b), 0, n);
+ }
+ _ref = data;
+ /* */ if ($assertType(_ref, ptrType, true)[1]) { $s = 3; continue; }
+ /* */ if ($assertType(_ref, $Bool, true)[1]) { $s = 4; continue; }
+ /* */ if ($assertType(_ref, sliceType$1, true)[1]) { $s = 5; continue; }
+ /* */ if ($assertType(_ref, ptrType$1, true)[1]) { $s = 6; continue; }
+ /* */ if ($assertType(_ref, $Int8, true)[1]) { $s = 7; continue; }
+ /* */ if ($assertType(_ref, sliceType$2, true)[1]) { $s = 8; continue; }
+ /* */ if ($assertType(_ref, ptrType$2, true)[1]) { $s = 9; continue; }
+ /* */ if ($assertType(_ref, $Uint8, true)[1]) { $s = 10; continue; }
+ /* */ if ($assertType(_ref, sliceType, true)[1]) { $s = 11; continue; }
+ /* */ if ($assertType(_ref, ptrType$3, true)[1]) { $s = 12; continue; }
+ /* */ if ($assertType(_ref, $Int16, true)[1]) { $s = 13; continue; }
+ /* */ if ($assertType(_ref, sliceType$3, true)[1]) { $s = 14; continue; }
+ /* */ if ($assertType(_ref, ptrType$4, true)[1]) { $s = 15; continue; }
+ /* */ if ($assertType(_ref, $Uint16, true)[1]) { $s = 16; continue; }
+ /* */ if ($assertType(_ref, sliceType$4, true)[1]) { $s = 17; continue; }
+ /* */ if ($assertType(_ref, ptrType$5, true)[1]) { $s = 18; continue; }
+ /* */ if ($assertType(_ref, $Int32, true)[1]) { $s = 19; continue; }
+ /* */ if ($assertType(_ref, sliceType$5, true)[1]) { $s = 20; continue; }
+ /* */ if ($assertType(_ref, ptrType$6, true)[1]) { $s = 21; continue; }
+ /* */ if ($assertType(_ref, $Uint32, true)[1]) { $s = 22; continue; }
+ /* */ if ($assertType(_ref, sliceType$6, true)[1]) { $s = 23; continue; }
+ /* */ if ($assertType(_ref, ptrType$7, true)[1]) { $s = 24; continue; }
+ /* */ if ($assertType(_ref, $Int64, true)[1]) { $s = 25; continue; }
+ /* */ if ($assertType(_ref, sliceType$7, true)[1]) { $s = 26; continue; }
+ /* */ if ($assertType(_ref, ptrType$8, true)[1]) { $s = 27; continue; }
+ /* */ if ($assertType(_ref, $Uint64, true)[1]) { $s = 28; continue; }
+ /* */ if ($assertType(_ref, sliceType$8, true)[1]) { $s = 29; continue; }
+ /* */ $s = 30; continue;
+ /* if ($assertType(_ref, ptrType, true)[1]) { */ case 3:
+ v = _ref.$val;
+ if (v.$get()) {
+ b[0] = 1;
+ } else {
+ b[0] = 0;
+ }
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, $Bool, true)[1]) { */ case 4:
+ v$1 = _ref.$val;
+ if (v$1) {
+ b[0] = 1;
+ } else {
+ b[0] = 0;
+ }
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, sliceType$1, true)[1]) { */ case 5:
+ v$2 = _ref.$val;
+ _ref$1 = v$2;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref$1.$length)) { break; }
+ i = _i;
+ x = ((_i < 0 || _i >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i]);
+ if (x) {
+ ((i < 0 || i >= bs.$length) ? ($throwRuntimeError("index out of range"), undefined) : bs.$array[bs.$offset + i] = 1);
+ } else {
+ ((i < 0 || i >= bs.$length) ? ($throwRuntimeError("index out of range"), undefined) : bs.$array[bs.$offset + i] = 0);
+ }
+ _i++;
+ }
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, ptrType$1, true)[1]) { */ case 6:
+ v$3 = _ref.$val;
+ b[0] = ((v$3.$get() << 24 >>> 24));
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, $Int8, true)[1]) { */ case 7:
+ v$4 = _ref.$val;
+ b[0] = ((v$4 << 24 >>> 24));
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, sliceType$2, true)[1]) { */ case 8:
+ v$5 = _ref.$val;
+ _ref$2 = v$5;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$2.$length)) { break; }
+ i$1 = _i$1;
+ x$1 = ((_i$1 < 0 || _i$1 >= _ref$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$2.$array[_ref$2.$offset + _i$1]);
+ ((i$1 < 0 || i$1 >= bs.$length) ? ($throwRuntimeError("index out of range"), undefined) : bs.$array[bs.$offset + i$1] = ((x$1 << 24 >>> 24)));
+ _i$1++;
+ }
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, ptrType$2, true)[1]) { */ case 9:
+ v$6 = _ref.$val;
+ b[0] = v$6.$get();
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, $Uint8, true)[1]) { */ case 10:
+ v$7 = _ref.$val;
+ b[0] = v$7;
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, sliceType, true)[1]) { */ case 11:
+ v$8 = _ref.$val;
+ bs = v$8;
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, ptrType$3, true)[1]) { */ case 12:
+ v$9 = _ref.$val;
+ $r = order.PutUint16(bs, ((v$9.$get() << 16 >>> 16))); /* */ $s = 31; case 31: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, $Int16, true)[1]) { */ case 13:
+ v$10 = _ref.$val;
+ $r = order.PutUint16(bs, ((v$10 << 16 >>> 16))); /* */ $s = 32; case 32: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, sliceType$3, true)[1]) { */ case 14:
+ v$11 = _ref.$val;
+ _ref$3 = v$11;
+ _i$2 = 0;
+ /* while (true) { */ case 33:
+ /* if (!(_i$2 < _ref$3.$length)) { break; } */ if(!(_i$2 < _ref$3.$length)) { $s = 34; continue; }
+ i$2 = _i$2;
+ x$2 = ((_i$2 < 0 || _i$2 >= _ref$3.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$3.$array[_ref$3.$offset + _i$2]);
+ $r = order.PutUint16($subslice(bs, ($imul(2, i$2))), ((x$2 << 16 >>> 16))); /* */ $s = 35; case 35: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _i$2++;
+ /* } */ $s = 33; continue; case 34:
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, ptrType$4, true)[1]) { */ case 15:
+ v$12 = _ref.$val;
+ $r = order.PutUint16(bs, v$12.$get()); /* */ $s = 36; case 36: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, $Uint16, true)[1]) { */ case 16:
+ v$13 = _ref.$val;
+ $r = order.PutUint16(bs, v$13); /* */ $s = 37; case 37: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, sliceType$4, true)[1]) { */ case 17:
+ v$14 = _ref.$val;
+ _ref$4 = v$14;
+ _i$3 = 0;
+ /* while (true) { */ case 38:
+ /* if (!(_i$3 < _ref$4.$length)) { break; } */ if(!(_i$3 < _ref$4.$length)) { $s = 39; continue; }
+ i$3 = _i$3;
+ x$3 = ((_i$3 < 0 || _i$3 >= _ref$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$4.$array[_ref$4.$offset + _i$3]);
+ $r = order.PutUint16($subslice(bs, ($imul(2, i$3))), x$3); /* */ $s = 40; case 40: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _i$3++;
+ /* } */ $s = 38; continue; case 39:
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, ptrType$5, true)[1]) { */ case 18:
+ v$15 = _ref.$val;
+ $r = order.PutUint32(bs, ((v$15.$get() >>> 0))); /* */ $s = 41; case 41: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, $Int32, true)[1]) { */ case 19:
+ v$16 = _ref.$val;
+ $r = order.PutUint32(bs, ((v$16 >>> 0))); /* */ $s = 42; case 42: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, sliceType$5, true)[1]) { */ case 20:
+ v$17 = _ref.$val;
+ _ref$5 = v$17;
+ _i$4 = 0;
+ /* while (true) { */ case 43:
+ /* if (!(_i$4 < _ref$5.$length)) { break; } */ if(!(_i$4 < _ref$5.$length)) { $s = 44; continue; }
+ i$4 = _i$4;
+ x$4 = ((_i$4 < 0 || _i$4 >= _ref$5.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$5.$array[_ref$5.$offset + _i$4]);
+ $r = order.PutUint32($subslice(bs, ($imul(4, i$4))), ((x$4 >>> 0))); /* */ $s = 45; case 45: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _i$4++;
+ /* } */ $s = 43; continue; case 44:
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, ptrType$6, true)[1]) { */ case 21:
+ v$18 = _ref.$val;
+ $r = order.PutUint32(bs, v$18.$get()); /* */ $s = 46; case 46: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, $Uint32, true)[1]) { */ case 22:
+ v$19 = _ref.$val;
+ $r = order.PutUint32(bs, v$19); /* */ $s = 47; case 47: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, sliceType$6, true)[1]) { */ case 23:
+ v$20 = _ref.$val;
+ _ref$6 = v$20;
+ _i$5 = 0;
+ /* while (true) { */ case 48:
+ /* if (!(_i$5 < _ref$6.$length)) { break; } */ if(!(_i$5 < _ref$6.$length)) { $s = 49; continue; }
+ i$5 = _i$5;
+ x$5 = ((_i$5 < 0 || _i$5 >= _ref$6.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$6.$array[_ref$6.$offset + _i$5]);
+ $r = order.PutUint32($subslice(bs, ($imul(4, i$5))), x$5); /* */ $s = 50; case 50: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _i$5++;
+ /* } */ $s = 48; continue; case 49:
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, ptrType$7, true)[1]) { */ case 24:
+ v$21 = _ref.$val;
+ $r = order.PutUint64(bs, ((x$6 = v$21.$get(), new $Uint64(x$6.$high, x$6.$low)))); /* */ $s = 51; case 51: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, $Int64, true)[1]) { */ case 25:
+ v$22 = _ref.$val;
+ $r = order.PutUint64(bs, (new $Uint64(v$22.$high, v$22.$low))); /* */ $s = 52; case 52: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, sliceType$7, true)[1]) { */ case 26:
+ v$23 = _ref.$val;
+ _ref$7 = v$23;
+ _i$6 = 0;
+ /* while (true) { */ case 53:
+ /* if (!(_i$6 < _ref$7.$length)) { break; } */ if(!(_i$6 < _ref$7.$length)) { $s = 54; continue; }
+ i$6 = _i$6;
+ x$7 = ((_i$6 < 0 || _i$6 >= _ref$7.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$7.$array[_ref$7.$offset + _i$6]);
+ $r = order.PutUint64($subslice(bs, ($imul(8, i$6))), (new $Uint64(x$7.$high, x$7.$low))); /* */ $s = 55; case 55: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _i$6++;
+ /* } */ $s = 53; continue; case 54:
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, ptrType$8, true)[1]) { */ case 27:
+ v$24 = _ref.$val;
+ $r = order.PutUint64(bs, v$24.$get()); /* */ $s = 56; case 56: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, $Uint64, true)[1]) { */ case 28:
+ v$25 = _ref.$val;
+ $r = order.PutUint64(bs, v$25); /* */ $s = 57; case 57: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 30; continue;
+ /* } else if ($assertType(_ref, sliceType$8, true)[1]) { */ case 29:
+ v$26 = _ref.$val;
+ _ref$8 = v$26;
+ _i$7 = 0;
+ /* while (true) { */ case 58:
+ /* if (!(_i$7 < _ref$8.$length)) { break; } */ if(!(_i$7 < _ref$8.$length)) { $s = 59; continue; }
+ i$7 = _i$7;
+ x$8 = ((_i$7 < 0 || _i$7 >= _ref$8.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$8.$array[_ref$8.$offset + _i$7]);
+ $r = order.PutUint64($subslice(bs, ($imul(8, i$7))), x$8); /* */ $s = 60; case 60: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _i$7++;
+ /* } */ $s = 58; continue; case 59:
+ /* } */ case 30:
+ _r = w.Write(bs); /* */ $s = 61; case 61: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ err = _tuple[1];
+ $s = -1; return err;
+ /* } */ case 2:
+ _r$1 = reflect.ValueOf(data); /* */ $s = 62; case 62: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = reflect.Indirect($clone(_r$1, reflect.Value)); /* */ $s = 63; case 63: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ v$27 = _r$2;
+ _r$3 = dataSize($clone(v$27, reflect.Value)); /* */ $s = 64; case 64: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ size = _r$3;
+ /* */ if (size < 0) { $s = 65; continue; }
+ /* */ $s = 66; continue;
+ /* if (size < 0) { */ case 65:
+ _r$4 = reflect.TypeOf(data).String(); /* */ $s = 67; case 67: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$5 = errors.New("binary.Write: invalid type " + _r$4); /* */ $s = 68; case 68: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $s = -1; return _r$5;
+ /* } */ case 66:
+ buf = $makeSlice(sliceType, size);
+ e = new encoder.ptr(order, buf);
+ $r = e.value($clone(v$27, reflect.Value)); /* */ $s = 69; case 69: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$6 = w.Write(buf); /* */ $s = 70; case 70: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple$1 = _r$6;
+ err$1 = _tuple$1[1];
+ $s = -1; return err$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Write }; } $f.$ptr = $ptr; $f._i = _i; $f._i$1 = _i$1; $f._i$2 = _i$2; $f._i$3 = _i$3; $f._i$4 = _i$4; $f._i$5 = _i$5; $f._i$6 = _i$6; $f._i$7 = _i$7; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._ref = _ref; $f._ref$1 = _ref$1; $f._ref$2 = _ref$2; $f._ref$3 = _ref$3; $f._ref$4 = _ref$4; $f._ref$5 = _ref$5; $f._ref$6 = _ref$6; $f._ref$7 = _ref$7; $f._ref$8 = _ref$8; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.b = b; $f.bs = bs; $f.buf = buf; $f.data = data; $f.e = e; $f.err = err; $f.err$1 = err$1; $f.i = i; $f.i$1 = i$1; $f.i$2 = i$2; $f.i$3 = i$3; $f.i$4 = i$4; $f.i$5 = i$5; $f.i$6 = i$6; $f.i$7 = i$7; $f.n = n; $f.order = order; $f.size = size; $f.v = v; $f.v$1 = v$1; $f.v$10 = v$10; $f.v$11 = v$11; $f.v$12 = v$12; $f.v$13 = v$13; $f.v$14 = v$14; $f.v$15 = v$15; $f.v$16 = v$16; $f.v$17 = v$17; $f.v$18 = v$18; $f.v$19 = v$19; $f.v$2 = v$2; $f.v$20 = v$20; $f.v$21 = v$21; $f.v$22 = v$22; $f.v$23 = v$23; $f.v$24 = v$24; $f.v$25 = v$25; $f.v$26 = v$26; $f.v$27 = v$27; $f.v$3 = v$3; $f.v$4 = v$4; $f.v$5 = v$5; $f.v$6 = v$6; $f.v$7 = v$7; $f.v$8 = v$8; $f.v$9 = v$9; $f.w = w; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.x$8 = x$8; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Write = Write;
+ dataSize = function(v) {
+ var $ptr, _r, _r$1, _r$2, s, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; s = $f.s; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ if ($clone(v, reflect.Value).Kind() === 23) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ($clone(v, reflect.Value).Kind() === 23) { */ case 1:
+ _r = $clone(v, reflect.Value).Type().Elem(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = sizeof(_r); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ s = _r$1;
+ if (s >= 0) {
+ $s = -1; return $imul(s, $clone(v, reflect.Value).Len());
+ }
+ $s = -1; return -1;
+ /* } */ case 2:
+ _r$2 = sizeof($clone(v, reflect.Value).Type()); /* */ $s = 5; case 5: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return _r$2;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: dataSize }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.s = s; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ sizeof = function(t) {
+ var $ptr, _1, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _tmp, _tmp$1, i, n, s, s$1, sum, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; i = $f.i; n = $f.n; s = $f.s; s$1 = $f.s$1; sum = $f.sum; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = t.Kind(); /* */ $s = 2; case 2: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _1 = _r;
+ /* */ if (_1 === (17)) { $s = 3; continue; }
+ /* */ if (_1 === (25)) { $s = 4; continue; }
+ /* */ if ((_1 === (1)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6)) || (_1 === (13)) || (_1 === (14)) || (_1 === (15)) || (_1 === (16))) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (_1 === (17)) { */ case 3:
+ _r$1 = t.Elem(); /* */ $s = 7; case 7: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = sizeof(_r$1); /* */ $s = 8; case 8: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ s = _r$2;
+ /* */ if (s >= 0) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (s >= 0) { */ case 9:
+ _r$3 = t.Len(); /* */ $s = 11; case 11: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $s = -1; return $imul(s, _r$3);
+ /* } */ case 10:
+ $s = 6; continue;
+ /* } else if (_1 === (25)) { */ case 4:
+ sum = 0;
+ _tmp = 0;
+ _r$4 = t.NumField(); /* */ $s = 12; case 12: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _tmp$1 = _r$4;
+ i = _tmp;
+ n = _tmp$1;
+ /* while (true) { */ case 13:
+ /* if (!(i < n)) { break; } */ if(!(i < n)) { $s = 14; continue; }
+ _r$5 = t.Field(i); /* */ $s = 15; case 15: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _r$6 = sizeof(_r$5.Type); /* */ $s = 16; case 16: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ s$1 = _r$6;
+ if (s$1 < 0) {
+ $s = -1; return -1;
+ }
+ sum = sum + (s$1) >> 0;
+ i = i + (1) >> 0;
+ /* } */ $s = 13; continue; case 14:
+ $s = -1; return sum;
+ /* } else if ((_1 === (1)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6)) || (_1 === (13)) || (_1 === (14)) || (_1 === (15)) || (_1 === (16))) { */ case 5:
+ _r$7 = t.Size(); /* */ $s = 17; case 17: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $s = -1; return ((_r$7 >> 0));
+ /* } */ case 6:
+ case 1:
+ $s = -1; return -1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: sizeof }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f.i = i; $f.n = n; $f.s = s; $f.s$1 = s$1; $f.sum = sum; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.ptr.prototype.bool = function() {
+ var $ptr, d, x, x$1;
+ d = this;
+ x$1 = (x = d.buf, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0]));
+ d.buf = $subslice(d.buf, 1);
+ return !((x$1 === 0));
+ };
+ decoder.prototype.bool = function() { return this.$val.bool(); };
+ encoder.ptr.prototype.bool = function(x) {
+ var $ptr, e, x, x$1, x$2;
+ e = this;
+ if (x) {
+ (x$1 = e.buf, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0] = 1));
+ } else {
+ (x$2 = e.buf, (0 >= x$2.$length ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + 0] = 0));
+ }
+ e.buf = $subslice(e.buf, 1);
+ };
+ encoder.prototype.bool = function(x) { return this.$val.bool(x); };
+ decoder.ptr.prototype.uint8 = function() {
+ var $ptr, d, x, x$1;
+ d = this;
+ x$1 = (x = d.buf, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0]));
+ d.buf = $subslice(d.buf, 1);
+ return x$1;
+ };
+ decoder.prototype.uint8 = function() { return this.$val.uint8(); };
+ encoder.ptr.prototype.uint8 = function(x) {
+ var $ptr, e, x, x$1;
+ e = this;
+ (x$1 = e.buf, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0] = x));
+ e.buf = $subslice(e.buf, 1);
+ };
+ encoder.prototype.uint8 = function(x) { return this.$val.uint8(x); };
+ decoder.ptr.prototype.uint16 = function() {
+ var $ptr, _r, d, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; d = $f.d; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ _r = d.order.Uint16($subslice(d.buf, 0, 2)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ x = _r;
+ d.buf = $subslice(d.buf, 2);
+ $s = -1; return x;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decoder.ptr.prototype.uint16 }; } $f.$ptr = $ptr; $f._r = _r; $f.d = d; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.prototype.uint16 = function() { return this.$val.uint16(); };
+ encoder.ptr.prototype.uint16 = function(x) {
+ var $ptr, e, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; e = $f.e; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ $r = e.order.PutUint16($subslice(e.buf, 0, 2), x); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ e.buf = $subslice(e.buf, 2);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: encoder.ptr.prototype.uint16 }; } $f.$ptr = $ptr; $f.e = e; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ encoder.prototype.uint16 = function(x) { return this.$val.uint16(x); };
+ decoder.ptr.prototype.uint32 = function() {
+ var $ptr, _r, d, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; d = $f.d; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ _r = d.order.Uint32($subslice(d.buf, 0, 4)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ x = _r;
+ d.buf = $subslice(d.buf, 4);
+ $s = -1; return x;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decoder.ptr.prototype.uint32 }; } $f.$ptr = $ptr; $f._r = _r; $f.d = d; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.prototype.uint32 = function() { return this.$val.uint32(); };
+ encoder.ptr.prototype.uint32 = function(x) {
+ var $ptr, e, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; e = $f.e; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ $r = e.order.PutUint32($subslice(e.buf, 0, 4), x); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ e.buf = $subslice(e.buf, 4);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: encoder.ptr.prototype.uint32 }; } $f.$ptr = $ptr; $f.e = e; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ encoder.prototype.uint32 = function(x) { return this.$val.uint32(x); };
+ decoder.ptr.prototype.uint64 = function() {
+ var $ptr, _r, d, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; d = $f.d; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ _r = d.order.Uint64($subslice(d.buf, 0, 8)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ x = _r;
+ d.buf = $subslice(d.buf, 8);
+ $s = -1; return x;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decoder.ptr.prototype.uint64 }; } $f.$ptr = $ptr; $f._r = _r; $f.d = d; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.prototype.uint64 = function() { return this.$val.uint64(); };
+ encoder.ptr.prototype.uint64 = function(x) {
+ var $ptr, e, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; e = $f.e; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ $r = e.order.PutUint64($subslice(e.buf, 0, 8), x); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ e.buf = $subslice(e.buf, 8);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: encoder.ptr.prototype.uint64 }; } $f.$ptr = $ptr; $f.e = e; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ encoder.prototype.uint64 = function(x) { return this.$val.uint64(x); };
+ decoder.ptr.prototype.int8 = function() {
+ var $ptr, d;
+ d = this;
+ return ((d.uint8() << 24 >> 24));
+ };
+ decoder.prototype.int8 = function() { return this.$val.int8(); };
+ encoder.ptr.prototype.int8 = function(x) {
+ var $ptr, e, x;
+ e = this;
+ e.uint8(((x << 24 >>> 24)));
+ };
+ encoder.prototype.int8 = function(x) { return this.$val.int8(x); };
+ decoder.ptr.prototype.int16 = function() {
+ var $ptr, _r, d, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; d = $f.d; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ _r = d.uint16(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return ((_r << 16 >> 16));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decoder.ptr.prototype.int16 }; } $f.$ptr = $ptr; $f._r = _r; $f.d = d; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.prototype.int16 = function() { return this.$val.int16(); };
+ encoder.ptr.prototype.int16 = function(x) {
+ var $ptr, e, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; e = $f.e; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ $r = e.uint16(((x << 16 >>> 16))); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: encoder.ptr.prototype.int16 }; } $f.$ptr = $ptr; $f.e = e; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ encoder.prototype.int16 = function(x) { return this.$val.int16(x); };
+ decoder.ptr.prototype.int32 = function() {
+ var $ptr, _r, d, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; d = $f.d; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ _r = d.uint32(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return ((_r >> 0));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decoder.ptr.prototype.int32 }; } $f.$ptr = $ptr; $f._r = _r; $f.d = d; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.prototype.int32 = function() { return this.$val.int32(); };
+ encoder.ptr.prototype.int32 = function(x) {
+ var $ptr, e, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; e = $f.e; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ $r = e.uint32(((x >>> 0))); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: encoder.ptr.prototype.int32 }; } $f.$ptr = $ptr; $f.e = e; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ encoder.prototype.int32 = function(x) { return this.$val.int32(x); };
+ decoder.ptr.prototype.int64 = function() {
+ var $ptr, _r, d, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; d = $f.d; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ _r = d.uint64(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return ((x = _r, new $Int64(x.$high, x.$low)));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decoder.ptr.prototype.int64 }; } $f.$ptr = $ptr; $f._r = _r; $f.d = d; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.prototype.int64 = function() { return this.$val.int64(); };
+ encoder.ptr.prototype.int64 = function(x) {
+ var $ptr, e, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; e = $f.e; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ $r = e.uint64((new $Uint64(x.$high, x.$low))); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: encoder.ptr.prototype.int64 }; } $f.$ptr = $ptr; $f.e = e; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ encoder.prototype.int64 = function(x) { return this.$val.int64(x); };
+ decoder.ptr.prototype.value = function(v) {
+ var $ptr, _1, _arg, _arg$1, _arg$2, _arg$3, _r, _r$1, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$19, _r$2, _r$20, _r$21, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _v, d, i, i$1, i$2, l, l$1, l$2, t, v, v$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _arg$3 = $f._arg$3; _r = $f._r; _r$1 = $f._r$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$19 = $f._r$19; _r$2 = $f._r$2; _r$20 = $f._r$20; _r$21 = $f._r$21; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _v = $f._v; d = $f.d; i = $f.i; i$1 = $f.i$1; i$2 = $f.i$2; l = $f.l; l$1 = $f.l$1; l$2 = $f.l$2; t = $f.t; v = $f.v; v$1 = $f.v$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ _1 = $clone(v, reflect.Value).Kind();
+ /* */ if (_1 === (17)) { $s = 2; continue; }
+ /* */ if (_1 === (25)) { $s = 3; continue; }
+ /* */ if (_1 === (23)) { $s = 4; continue; }
+ /* */ if (_1 === (1)) { $s = 5; continue; }
+ /* */ if (_1 === (3)) { $s = 6; continue; }
+ /* */ if (_1 === (4)) { $s = 7; continue; }
+ /* */ if (_1 === (5)) { $s = 8; continue; }
+ /* */ if (_1 === (6)) { $s = 9; continue; }
+ /* */ if (_1 === (8)) { $s = 10; continue; }
+ /* */ if (_1 === (9)) { $s = 11; continue; }
+ /* */ if (_1 === (10)) { $s = 12; continue; }
+ /* */ if (_1 === (11)) { $s = 13; continue; }
+ /* */ if (_1 === (13)) { $s = 14; continue; }
+ /* */ if (_1 === (14)) { $s = 15; continue; }
+ /* */ if (_1 === (15)) { $s = 16; continue; }
+ /* */ if (_1 === (16)) { $s = 17; continue; }
+ /* */ $s = 18; continue;
+ /* if (_1 === (17)) { */ case 2:
+ l = $clone(v, reflect.Value).Len();
+ i = 0;
+ /* while (true) { */ case 19:
+ /* if (!(i < l)) { break; } */ if(!(i < l)) { $s = 20; continue; }
+ _r = $clone(v, reflect.Value).Index(i); /* */ $s = 21; case 21: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $r = d.value($clone(_r, reflect.Value)); /* */ $s = 22; case 22: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i = i + (1) >> 0;
+ /* } */ $s = 19; continue; case 20:
+ $s = 18; continue;
+ /* } else if (_1 === (25)) { */ case 3:
+ t = $clone(v, reflect.Value).Type();
+ l$1 = $clone(v, reflect.Value).NumField();
+ i$1 = 0;
+ /* while (true) { */ case 23:
+ /* if (!(i$1 < l$1)) { break; } */ if(!(i$1 < l$1)) { $s = 24; continue; }
+ _r$1 = $clone(v, reflect.Value).Field(i$1); /* */ $s = 25; case 25: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ v$1 = _r$1;
+ if ($clone(v$1, reflect.Value).CanSet()) { _v = true; $s = 29; continue s; }
+ _r$2 = t.Field(i$1); /* */ $s = 30; case 30: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _v = !(_r$2.Name === "_"); case 29:
+ /* */ if (_v) { $s = 26; continue; }
+ /* */ $s = 27; continue;
+ /* if (_v) { */ case 26:
+ $r = d.value($clone(v$1, reflect.Value)); /* */ $s = 31; case 31: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 28; continue;
+ /* } else { */ case 27:
+ $r = d.skip($clone(v$1, reflect.Value)); /* */ $s = 32; case 32: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 28:
+ i$1 = i$1 + (1) >> 0;
+ /* } */ $s = 23; continue; case 24:
+ $s = 18; continue;
+ /* } else if (_1 === (23)) { */ case 4:
+ l$2 = $clone(v, reflect.Value).Len();
+ i$2 = 0;
+ /* while (true) { */ case 33:
+ /* if (!(i$2 < l$2)) { break; } */ if(!(i$2 < l$2)) { $s = 34; continue; }
+ _r$3 = $clone(v, reflect.Value).Index(i$2); /* */ $s = 35; case 35: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $r = d.value($clone(_r$3, reflect.Value)); /* */ $s = 36; case 36: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i$2 = i$2 + (1) >> 0;
+ /* } */ $s = 33; continue; case 34:
+ $s = 18; continue;
+ /* } else if (_1 === (1)) { */ case 5:
+ $clone(v, reflect.Value).SetBool(d.bool());
+ $s = 18; continue;
+ /* } else if (_1 === (3)) { */ case 6:
+ $clone(v, reflect.Value).SetInt((new $Int64(0, d.int8())));
+ $s = 18; continue;
+ /* } else if (_1 === (4)) { */ case 7:
+ _r$4 = d.int16(); /* */ $s = 37; case 37: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ $r = $clone(v, reflect.Value).SetInt((new $Int64(0, _r$4))); /* */ $s = 38; case 38: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 18; continue;
+ /* } else if (_1 === (5)) { */ case 8:
+ _r$5 = d.int32(); /* */ $s = 39; case 39: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $r = $clone(v, reflect.Value).SetInt((new $Int64(0, _r$5))); /* */ $s = 40; case 40: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 18; continue;
+ /* } else if (_1 === (6)) { */ case 9:
+ _r$6 = d.int64(); /* */ $s = 41; case 41: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $r = $clone(v, reflect.Value).SetInt(_r$6); /* */ $s = 42; case 42: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 18; continue;
+ /* } else if (_1 === (8)) { */ case 10:
+ $clone(v, reflect.Value).SetUint((new $Uint64(0, d.uint8())));
+ $s = 18; continue;
+ /* } else if (_1 === (9)) { */ case 11:
+ _r$7 = d.uint16(); /* */ $s = 43; case 43: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $r = $clone(v, reflect.Value).SetUint((new $Uint64(0, _r$7))); /* */ $s = 44; case 44: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 18; continue;
+ /* } else if (_1 === (10)) { */ case 12:
+ _r$8 = d.uint32(); /* */ $s = 45; case 45: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $r = $clone(v, reflect.Value).SetUint((new $Uint64(0, _r$8))); /* */ $s = 46; case 46: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 18; continue;
+ /* } else if (_1 === (11)) { */ case 13:
+ _r$9 = d.uint64(); /* */ $s = 47; case 47: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ $r = $clone(v, reflect.Value).SetUint(_r$9); /* */ $s = 48; case 48: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 18; continue;
+ /* } else if (_1 === (13)) { */ case 14:
+ _r$10 = d.uint32(); /* */ $s = 49; case 49: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _r$11 = math.Float32frombits(_r$10); /* */ $s = 50; case 50: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ $r = $clone(v, reflect.Value).SetFloat((_r$11)); /* */ $s = 51; case 51: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 18; continue;
+ /* } else if (_1 === (14)) { */ case 15:
+ _r$12 = d.uint64(); /* */ $s = 52; case 52: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _r$13 = math.Float64frombits(_r$12); /* */ $s = 53; case 53: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ $r = $clone(v, reflect.Value).SetFloat(_r$13); /* */ $s = 54; case 54: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 18; continue;
+ /* } else if (_1 === (15)) { */ case 16:
+ _r$14 = d.uint32(); /* */ $s = 55; case 55: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ _r$15 = math.Float32frombits(_r$14); /* */ $s = 56; case 56: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ _arg = (_r$15);
+ _r$16 = d.uint32(); /* */ $s = 57; case 57: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ _r$17 = math.Float32frombits(_r$16); /* */ $s = 58; case 58: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ _arg$1 = (_r$17);
+ $r = $clone(v, reflect.Value).SetComplex(new $Complex128(_arg, _arg$1)); /* */ $s = 59; case 59: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 18; continue;
+ /* } else if (_1 === (16)) { */ case 17:
+ _r$18 = d.uint64(); /* */ $s = 60; case 60: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ _r$19 = math.Float64frombits(_r$18); /* */ $s = 61; case 61: if($c) { $c = false; _r$19 = _r$19.$blk(); } if (_r$19 && _r$19.$blk !== undefined) { break s; }
+ _arg$2 = _r$19;
+ _r$20 = d.uint64(); /* */ $s = 62; case 62: if($c) { $c = false; _r$20 = _r$20.$blk(); } if (_r$20 && _r$20.$blk !== undefined) { break s; }
+ _r$21 = math.Float64frombits(_r$20); /* */ $s = 63; case 63: if($c) { $c = false; _r$21 = _r$21.$blk(); } if (_r$21 && _r$21.$blk !== undefined) { break s; }
+ _arg$3 = _r$21;
+ $r = $clone(v, reflect.Value).SetComplex(new $Complex128(_arg$2, _arg$3)); /* */ $s = 64; case 64: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 18:
+ case 1:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decoder.ptr.prototype.value }; } $f.$ptr = $ptr; $f._1 = _1; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._arg$3 = _arg$3; $f._r = _r; $f._r$1 = _r$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$19 = _r$19; $f._r$2 = _r$2; $f._r$20 = _r$20; $f._r$21 = _r$21; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._v = _v; $f.d = d; $f.i = i; $f.i$1 = i$1; $f.i$2 = i$2; $f.l = l; $f.l$1 = l$1; $f.l$2 = l$2; $f.t = t; $f.v = v; $f.v$1 = v$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.prototype.value = function(v) { return this.$val.value(v); };
+ encoder.ptr.prototype.value = function(v) {
+ var $ptr, _1, _2, _3, _4, _5, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _v, e, i, i$1, i$2, l, l$1, l$2, t, v, v$1, x, x$1, x$2, x$3, x$4, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _2 = $f._2; _3 = $f._3; _4 = $f._4; _5 = $f._5; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _v = $f._v; e = $f.e; i = $f.i; i$1 = $f.i$1; i$2 = $f.i$2; l = $f.l; l$1 = $f.l$1; l$2 = $f.l$2; t = $f.t; v = $f.v; v$1 = $f.v$1; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ _1 = $clone(v, reflect.Value).Kind();
+ /* */ if (_1 === (17)) { $s = 2; continue; }
+ /* */ if (_1 === (25)) { $s = 3; continue; }
+ /* */ if (_1 === (23)) { $s = 4; continue; }
+ /* */ if (_1 === (1)) { $s = 5; continue; }
+ /* */ if ((_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6))) { $s = 6; continue; }
+ /* */ if ((_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12))) { $s = 7; continue; }
+ /* */ if ((_1 === (13)) || (_1 === (14))) { $s = 8; continue; }
+ /* */ if ((_1 === (15)) || (_1 === (16))) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (_1 === (17)) { */ case 2:
+ l = $clone(v, reflect.Value).Len();
+ i = 0;
+ /* while (true) { */ case 11:
+ /* if (!(i < l)) { break; } */ if(!(i < l)) { $s = 12; continue; }
+ _r = $clone(v, reflect.Value).Index(i); /* */ $s = 13; case 13: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $r = e.value($clone(_r, reflect.Value)); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i = i + (1) >> 0;
+ /* } */ $s = 11; continue; case 12:
+ $s = 10; continue;
+ /* } else if (_1 === (25)) { */ case 3:
+ t = $clone(v, reflect.Value).Type();
+ l$1 = $clone(v, reflect.Value).NumField();
+ i$1 = 0;
+ /* while (true) { */ case 15:
+ /* if (!(i$1 < l$1)) { break; } */ if(!(i$1 < l$1)) { $s = 16; continue; }
+ _r$1 = $clone(v, reflect.Value).Field(i$1); /* */ $s = 17; case 17: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ v$1 = _r$1;
+ if ($clone(v$1, reflect.Value).CanSet()) { _v = true; $s = 21; continue s; }
+ _r$2 = t.Field(i$1); /* */ $s = 22; case 22: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _v = !(_r$2.Name === "_"); case 21:
+ /* */ if (_v) { $s = 18; continue; }
+ /* */ $s = 19; continue;
+ /* if (_v) { */ case 18:
+ $r = e.value($clone(v$1, reflect.Value)); /* */ $s = 23; case 23: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 20; continue;
+ /* } else { */ case 19:
+ $r = e.skip($clone(v$1, reflect.Value)); /* */ $s = 24; case 24: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 20:
+ i$1 = i$1 + (1) >> 0;
+ /* } */ $s = 15; continue; case 16:
+ $s = 10; continue;
+ /* } else if (_1 === (23)) { */ case 4:
+ l$2 = $clone(v, reflect.Value).Len();
+ i$2 = 0;
+ /* while (true) { */ case 25:
+ /* if (!(i$2 < l$2)) { break; } */ if(!(i$2 < l$2)) { $s = 26; continue; }
+ _r$3 = $clone(v, reflect.Value).Index(i$2); /* */ $s = 27; case 27: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $r = e.value($clone(_r$3, reflect.Value)); /* */ $s = 28; case 28: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i$2 = i$2 + (1) >> 0;
+ /* } */ $s = 25; continue; case 26:
+ $s = 10; continue;
+ /* } else if (_1 === (1)) { */ case 5:
+ e.bool($clone(v, reflect.Value).Bool());
+ $s = 10; continue;
+ /* } else if ((_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6))) { */ case 6:
+ _r$4 = $clone(v, reflect.Value).Type().Kind(); /* */ $s = 30; case 30: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _2 = _r$4;
+ /* */ if (_2 === (3)) { $s = 31; continue; }
+ /* */ if (_2 === (4)) { $s = 32; continue; }
+ /* */ if (_2 === (5)) { $s = 33; continue; }
+ /* */ if (_2 === (6)) { $s = 34; continue; }
+ /* */ $s = 35; continue;
+ /* if (_2 === (3)) { */ case 31:
+ e.int8((((x = $clone(v, reflect.Value).Int(), x.$low + ((x.$high >> 31) * 4294967296)) << 24 >> 24)));
+ $s = 35; continue;
+ /* } else if (_2 === (4)) { */ case 32:
+ $r = e.int16((((x$1 = $clone(v, reflect.Value).Int(), x$1.$low + ((x$1.$high >> 31) * 4294967296)) << 16 >> 16))); /* */ $s = 36; case 36: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 35; continue;
+ /* } else if (_2 === (5)) { */ case 33:
+ $r = e.int32((((x$2 = $clone(v, reflect.Value).Int(), x$2.$low + ((x$2.$high >> 31) * 4294967296)) >> 0))); /* */ $s = 37; case 37: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 35; continue;
+ /* } else if (_2 === (6)) { */ case 34:
+ $r = e.int64($clone(v, reflect.Value).Int()); /* */ $s = 38; case 38: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 35:
+ case 29:
+ $s = 10; continue;
+ /* } else if ((_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12))) { */ case 7:
+ _r$5 = $clone(v, reflect.Value).Type().Kind(); /* */ $s = 40; case 40: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _3 = _r$5;
+ /* */ if (_3 === (8)) { $s = 41; continue; }
+ /* */ if (_3 === (9)) { $s = 42; continue; }
+ /* */ if (_3 === (10)) { $s = 43; continue; }
+ /* */ if (_3 === (11)) { $s = 44; continue; }
+ /* */ $s = 45; continue;
+ /* if (_3 === (8)) { */ case 41:
+ e.uint8((($clone(v, reflect.Value).Uint().$low << 24 >>> 24)));
+ $s = 45; continue;
+ /* } else if (_3 === (9)) { */ case 42:
+ $r = e.uint16((($clone(v, reflect.Value).Uint().$low << 16 >>> 16))); /* */ $s = 46; case 46: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 45; continue;
+ /* } else if (_3 === (10)) { */ case 43:
+ $r = e.uint32((($clone(v, reflect.Value).Uint().$low >>> 0))); /* */ $s = 47; case 47: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 45; continue;
+ /* } else if (_3 === (11)) { */ case 44:
+ $r = e.uint64($clone(v, reflect.Value).Uint()); /* */ $s = 48; case 48: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 45:
+ case 39:
+ $s = 10; continue;
+ /* } else if ((_1 === (13)) || (_1 === (14))) { */ case 8:
+ _r$6 = $clone(v, reflect.Value).Type().Kind(); /* */ $s = 50; case 50: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _4 = _r$6;
+ /* */ if (_4 === (13)) { $s = 51; continue; }
+ /* */ if (_4 === (14)) { $s = 52; continue; }
+ /* */ $s = 53; continue;
+ /* if (_4 === (13)) { */ case 51:
+ $r = e.uint32(math.Float32bits(($fround($clone(v, reflect.Value).Float())))); /* */ $s = 54; case 54: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 53; continue;
+ /* } else if (_4 === (14)) { */ case 52:
+ $r = e.uint64(math.Float64bits($clone(v, reflect.Value).Float())); /* */ $s = 55; case 55: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 53:
+ case 49:
+ $s = 10; continue;
+ /* } else if ((_1 === (15)) || (_1 === (16))) { */ case 9:
+ _r$7 = $clone(v, reflect.Value).Type().Kind(); /* */ $s = 57; case 57: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _5 = _r$7;
+ /* */ if (_5 === (15)) { $s = 58; continue; }
+ /* */ if (_5 === (16)) { $s = 59; continue; }
+ /* */ $s = 60; continue;
+ /* if (_5 === (15)) { */ case 58:
+ x$3 = $clone(v, reflect.Value).Complex();
+ $r = e.uint32(math.Float32bits(($fround(x$3.$real)))); /* */ $s = 61; case 61: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = e.uint32(math.Float32bits(($fround(x$3.$imag)))); /* */ $s = 62; case 62: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 60; continue;
+ /* } else if (_5 === (16)) { */ case 59:
+ x$4 = $clone(v, reflect.Value).Complex();
+ $r = e.uint64(math.Float64bits(x$4.$real)); /* */ $s = 63; case 63: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = e.uint64(math.Float64bits(x$4.$imag)); /* */ $s = 64; case 64: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 60:
+ case 56:
+ /* } */ case 10:
+ case 1:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: encoder.ptr.prototype.value }; } $f.$ptr = $ptr; $f._1 = _1; $f._2 = _2; $f._3 = _3; $f._4 = _4; $f._5 = _5; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._v = _v; $f.e = e; $f.i = i; $f.i$1 = i$1; $f.i$2 = i$2; $f.l = l; $f.l$1 = l$1; $f.l$2 = l$2; $f.t = t; $f.v = v; $f.v$1 = v$1; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ encoder.prototype.value = function(v) { return this.$val.value(v); };
+ decoder.ptr.prototype.skip = function(v) {
+ var $ptr, _r, d, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; d = $f.d; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ _r = dataSize($clone(v, reflect.Value)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ d.buf = $subslice(d.buf, _r);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decoder.ptr.prototype.skip }; } $f.$ptr = $ptr; $f._r = _r; $f.d = d; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.prototype.skip = function(v) { return this.$val.skip(v); };
+ encoder.ptr.prototype.skip = function(v) {
+ var $ptr, _i, _r, _ref, e, i, n, v, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _ref = $f._ref; e = $f.e; i = $f.i; n = $f.n; v = $f.v; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ _r = dataSize($clone(v, reflect.Value)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ n = _r;
+ _ref = $subslice(e.buf, 0, n);
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ (x = e.buf, ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i] = 0));
+ _i++;
+ }
+ e.buf = $subslice(e.buf, n);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: encoder.ptr.prototype.skip }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._ref = _ref; $f.e = e; $f.i = i; $f.n = n; $f.v = v; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ encoder.prototype.skip = function(v) { return this.$val.skip(v); };
+ intDataSize = function(data) {
+ var $ptr, _ref, data, data$1, data$10, data$11, data$12, data$2, data$3, data$4, data$5, data$6, data$7, data$8, data$9;
+ _ref = data;
+ if ($assertType(_ref, $Bool, true)[1] || $assertType(_ref, $Int8, true)[1] || $assertType(_ref, $Uint8, true)[1] || $assertType(_ref, ptrType, true)[1] || $assertType(_ref, ptrType$1, true)[1] || $assertType(_ref, ptrType$2, true)[1]) {
+ data$1 = _ref;
+ return 1;
+ } else if ($assertType(_ref, sliceType$2, true)[1]) {
+ data$2 = _ref.$val;
+ return data$2.$length;
+ } else if ($assertType(_ref, sliceType, true)[1]) {
+ data$3 = _ref.$val;
+ return data$3.$length;
+ } else if ($assertType(_ref, $Int16, true)[1] || $assertType(_ref, $Uint16, true)[1] || $assertType(_ref, ptrType$3, true)[1] || $assertType(_ref, ptrType$4, true)[1]) {
+ data$4 = _ref;
+ return 2;
+ } else if ($assertType(_ref, sliceType$3, true)[1]) {
+ data$5 = _ref.$val;
+ return $imul(2, data$5.$length);
+ } else if ($assertType(_ref, sliceType$4, true)[1]) {
+ data$6 = _ref.$val;
+ return $imul(2, data$6.$length);
+ } else if ($assertType(_ref, $Int32, true)[1] || $assertType(_ref, $Uint32, true)[1] || $assertType(_ref, ptrType$5, true)[1] || $assertType(_ref, ptrType$6, true)[1]) {
+ data$7 = _ref;
+ return 4;
+ } else if ($assertType(_ref, sliceType$5, true)[1]) {
+ data$8 = _ref.$val;
+ return $imul(4, data$8.$length);
+ } else if ($assertType(_ref, sliceType$6, true)[1]) {
+ data$9 = _ref.$val;
+ return $imul(4, data$9.$length);
+ } else if ($assertType(_ref, $Int64, true)[1] || $assertType(_ref, $Uint64, true)[1] || $assertType(_ref, ptrType$7, true)[1] || $assertType(_ref, ptrType$8, true)[1]) {
+ data$10 = _ref;
+ return 8;
+ } else if ($assertType(_ref, sliceType$7, true)[1]) {
+ data$11 = _ref.$val;
+ return $imul(8, data$11.$length);
+ } else if ($assertType(_ref, sliceType$8, true)[1]) {
+ data$12 = _ref.$val;
+ return $imul(8, data$12.$length);
+ }
+ return 0;
+ };
+ PutUvarint = function(buf, x) {
+ var $ptr, buf, i, x;
+ i = 0;
+ while (true) {
+ if (!((x.$high > 0 || (x.$high === 0 && x.$low >= 128)))) { break; }
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = ((((x.$low << 24 >>> 24)) | 128) >>> 0));
+ x = $shiftRightUint64(x, (7));
+ i = i + (1) >> 0;
+ }
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = ((x.$low << 24 >>> 24)));
+ return i + 1 >> 0;
+ };
+ $pkg.PutUvarint = PutUvarint;
+ Uvarint = function(buf) {
+ var $ptr, _i, _ref, b, buf, i, s, x, x$1, x$2;
+ x = new $Uint64(0, 0);
+ s = 0;
+ _ref = buf;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ b = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (b < 128) {
+ if (i > 9 || (i === 9) && b > 1) {
+ return [new $Uint64(0, 0), -((i + 1 >> 0))];
+ }
+ return [(x$1 = $shiftLeft64((new $Uint64(0, b)), s), new $Uint64(x.$high | x$1.$high, (x.$low | x$1.$low) >>> 0)), i + 1 >> 0];
+ }
+ x = (x$2 = $shiftLeft64((new $Uint64(0, ((b & 127) >>> 0))), s), new $Uint64(x.$high | x$2.$high, (x.$low | x$2.$low) >>> 0));
+ s = s + (7) >>> 0;
+ _i++;
+ }
+ return [new $Uint64(0, 0), 0];
+ };
+ $pkg.Uvarint = Uvarint;
+ littleEndian.methods = [{prop: "Uint16", name: "Uint16", pkg: "", typ: $funcType([sliceType], [$Uint16], false)}, {prop: "PutUint16", name: "PutUint16", pkg: "", typ: $funcType([sliceType, $Uint16], [], false)}, {prop: "Uint32", name: "Uint32", pkg: "", typ: $funcType([sliceType], [$Uint32], false)}, {prop: "PutUint32", name: "PutUint32", pkg: "", typ: $funcType([sliceType, $Uint32], [], false)}, {prop: "Uint64", name: "Uint64", pkg: "", typ: $funcType([sliceType], [$Uint64], false)}, {prop: "PutUint64", name: "PutUint64", pkg: "", typ: $funcType([sliceType, $Uint64], [], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "GoString", name: "GoString", pkg: "", typ: $funcType([], [$String], false)}];
+ bigEndian.methods = [{prop: "Uint16", name: "Uint16", pkg: "", typ: $funcType([sliceType], [$Uint16], false)}, {prop: "PutUint16", name: "PutUint16", pkg: "", typ: $funcType([sliceType, $Uint16], [], false)}, {prop: "Uint32", name: "Uint32", pkg: "", typ: $funcType([sliceType], [$Uint32], false)}, {prop: "PutUint32", name: "PutUint32", pkg: "", typ: $funcType([sliceType, $Uint32], [], false)}, {prop: "Uint64", name: "Uint64", pkg: "", typ: $funcType([sliceType], [$Uint64], false)}, {prop: "PutUint64", name: "PutUint64", pkg: "", typ: $funcType([sliceType, $Uint64], [], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "GoString", name: "GoString", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$9.methods = [{prop: "bool", name: "bool", pkg: "encoding/binary", typ: $funcType([], [$Bool], false)}, {prop: "uint8", name: "uint8", pkg: "encoding/binary", typ: $funcType([], [$Uint8], false)}, {prop: "uint16", name: "uint16", pkg: "encoding/binary", typ: $funcType([], [$Uint16], false)}, {prop: "uint32", name: "uint32", pkg: "encoding/binary", typ: $funcType([], [$Uint32], false)}, {prop: "uint64", name: "uint64", pkg: "encoding/binary", typ: $funcType([], [$Uint64], false)}, {prop: "int8", name: "int8", pkg: "encoding/binary", typ: $funcType([], [$Int8], false)}, {prop: "int16", name: "int16", pkg: "encoding/binary", typ: $funcType([], [$Int16], false)}, {prop: "int32", name: "int32", pkg: "encoding/binary", typ: $funcType([], [$Int32], false)}, {prop: "int64", name: "int64", pkg: "encoding/binary", typ: $funcType([], [$Int64], false)}, {prop: "value", name: "value", pkg: "encoding/binary", typ: $funcType([reflect.Value], [], false)}, {prop: "skip", name: "skip", pkg: "encoding/binary", typ: $funcType([reflect.Value], [], false)}];
+ ptrType$10.methods = [{prop: "bool", name: "bool", pkg: "encoding/binary", typ: $funcType([$Bool], [], false)}, {prop: "uint8", name: "uint8", pkg: "encoding/binary", typ: $funcType([$Uint8], [], false)}, {prop: "uint16", name: "uint16", pkg: "encoding/binary", typ: $funcType([$Uint16], [], false)}, {prop: "uint32", name: "uint32", pkg: "encoding/binary", typ: $funcType([$Uint32], [], false)}, {prop: "uint64", name: "uint64", pkg: "encoding/binary", typ: $funcType([$Uint64], [], false)}, {prop: "int8", name: "int8", pkg: "encoding/binary", typ: $funcType([$Int8], [], false)}, {prop: "int16", name: "int16", pkg: "encoding/binary", typ: $funcType([$Int16], [], false)}, {prop: "int32", name: "int32", pkg: "encoding/binary", typ: $funcType([$Int32], [], false)}, {prop: "int64", name: "int64", pkg: "encoding/binary", typ: $funcType([$Int64], [], false)}, {prop: "value", name: "value", pkg: "encoding/binary", typ: $funcType([reflect.Value], [], false)}, {prop: "skip", name: "skip", pkg: "encoding/binary", typ: $funcType([reflect.Value], [], false)}];
+ ByteOrder.init([{prop: "PutUint16", name: "PutUint16", pkg: "", typ: $funcType([sliceType, $Uint16], [], false)}, {prop: "PutUint32", name: "PutUint32", pkg: "", typ: $funcType([sliceType, $Uint32], [], false)}, {prop: "PutUint64", name: "PutUint64", pkg: "", typ: $funcType([sliceType, $Uint64], [], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Uint16", name: "Uint16", pkg: "", typ: $funcType([sliceType], [$Uint16], false)}, {prop: "Uint32", name: "Uint32", pkg: "", typ: $funcType([sliceType], [$Uint32], false)}, {prop: "Uint64", name: "Uint64", pkg: "", typ: $funcType([sliceType], [$Uint64], false)}]);
+ littleEndian.init("", []);
+ bigEndian.init("", []);
+ decoder.init("encoding/binary", [{prop: "order", name: "order", exported: false, typ: ByteOrder, tag: ""}, {prop: "buf", name: "buf", exported: false, typ: sliceType, tag: ""}]);
+ encoder.init("encoding/binary", [{prop: "order", name: "order", exported: false, typ: ByteOrder, tag: ""}, {prop: "buf", name: "buf", exported: false, typ: sliceType, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = errors.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = math.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = reflect.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $pkg.LittleEndian = new littleEndian.ptr();
+ $pkg.BigEndian = new bigEndian.ptr();
+ overflow = errors.New("binary: varint overflows a 64-bit integer");
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/crypto.v0/subtle"] = (function() {
+ var $pkg = {}, $init, subtle, ConstantTimeAllEq;
+ subtle = $packages["crypto/subtle"];
+ ConstantTimeAllEq = function(x, y) {
+ var $ptr, _i, _ref, b, x, y, z;
+ z = 0;
+ _ref = x;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ b = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ z = (z | (((b ^ y) << 24 >>> 24))) >>> 0;
+ _i++;
+ }
+ return subtle.ConstantTimeByteEq(z, 0);
+ };
+ $pkg.ConstantTimeAllEq = ConstantTimeAllEq;
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = subtle.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["path/filepath"] = (function() {
+ var $pkg = {}, $init, errors, os, runtime, sort, strings, utf8;
+ errors = $packages["errors"];
+ os = $packages["os"];
+ runtime = $packages["runtime"];
+ sort = $packages["sort"];
+ strings = $packages["strings"];
+ utf8 = $packages["unicode/utf8"];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = errors.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = os.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sort.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = utf8.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $pkg.ErrBadPattern = errors.New("syntax error in pattern");
+ $pkg.SkipDir = errors.New("skip this directory");
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["io/ioutil"] = (function() {
+ var $pkg = {}, $init, bytes, io, os, filepath, sort, strconv, sync, time, sliceType, sliceType$1, ptrType, blackHolePool;
+ bytes = $packages["bytes"];
+ io = $packages["io"];
+ os = $packages["os"];
+ filepath = $packages["path/filepath"];
+ sort = $packages["sort"];
+ strconv = $packages["strconv"];
+ sync = $packages["sync"];
+ time = $packages["time"];
+ sliceType = $sliceType($emptyInterface);
+ sliceType$1 = $sliceType($Uint8);
+ ptrType = $ptrType(sliceType$1);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = os.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = filepath.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sort.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = time.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ blackHolePool = new sync.Pool.ptr(0, 0, sliceType.nil, (function() {
+ var $ptr, b, b$24ptr;
+ b = $makeSlice(sliceType$1, 8192);
+ return (b$24ptr || (b$24ptr = new ptrType(function() { return b; }, function($v) { b = $subslice(new sliceType$1($v.$array), $v.$offset, $v.$offset + $v.$length); })));
+ }));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/crypto.v0/util"] = (function() {
+ var $pkg = {}, $init, errors, ioutil, os, filepath, sliceType, raceErr, Grow, Reverse;
+ errors = $packages["errors"];
+ ioutil = $packages["io/ioutil"];
+ os = $packages["os"];
+ filepath = $packages["path/filepath"];
+ sliceType = $sliceType($Uint8);
+ Grow = function(s, n) {
+ var $ptr, l, n, nl, ns, s;
+ l = s.$length;
+ nl = l + n >> 0;
+ if (nl > s.$capacity) {
+ ns = $makeSlice(sliceType, nl, ($imul(((nl + 1 >> 0)), 2)));
+ $copySlice(ns, s);
+ s = ns;
+ }
+ return [$subslice(s, 0, nl), $subslice(s, l, nl)];
+ };
+ $pkg.Grow = Grow;
+ Reverse = function(dst, src) {
+ var $ptr, _q, _tmp, _tmp$1, _tmp$2, _tmp$3, dst, i, j, l, src;
+ if (dst === sliceType.nil) {
+ dst = $makeSlice(sliceType, src.$length);
+ } else if (!((src.$length === dst.$length))) {
+ $panic(new $String("Reverse requires equal-length slices"));
+ }
+ l = dst.$length;
+ _tmp = 0;
+ _tmp$1 = l - 1 >> 0;
+ i = _tmp;
+ j = _tmp$1;
+ while (true) {
+ if (!(i < (_q = ((l + 1 >> 0)) / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")))) { break; }
+ _tmp$2 = ((j < 0 || j >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + j]);
+ _tmp$3 = ((i < 0 || i >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + i]);
+ ((i < 0 || i >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + i] = _tmp$2);
+ ((j < 0 || j >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + j] = _tmp$3);
+ i = i + (1) >> 0;
+ j = j - (1) >> 0;
+ }
+ return dst;
+ };
+ $pkg.Reverse = Reverse;
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = errors.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = ioutil.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = os.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = filepath.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ raceErr = errors.New("File was concurrently modified");
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["hash"] = (function() {
+ var $pkg = {}, $init, io, Hash, sliceType;
+ io = $packages["io"];
+ Hash = $pkg.Hash = $newType(8, $kindInterface, "hash.Hash", true, "hash", true, null);
+ sliceType = $sliceType($Uint8);
+ Hash.init([{prop: "BlockSize", name: "BlockSize", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Reset", name: "Reset", pkg: "", typ: $funcType([], [], false)}, {prop: "Size", name: "Size", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Sum", name: "Sum", pkg: "", typ: $funcType([sliceType], [sliceType], false)}, {prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = io.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/crypto.v0/abstract"] = (function() {
+ var $pkg = {}, $init, cipher, encoding, binary, errors, fmt, subtle, util, hash, io, reflect, strings, CipherState, Cipher, Marshaling, Constructor, BinaryEncoding, decoder, encoder, Scalar, Point, Suite, sliceType, ptrType, ptrType$1, ptrType$2, sliceType$1, ptrType$3, structType, ptrType$5, ptrType$6, aScalar, aScalar$24ptr, aPoint, aPoint$24ptr, tScalar, tPoint, int32Type, _r, _r$1, SuiteNew, SuiteRead, SuiteWrite;
+ cipher = $packages["crypto/cipher"];
+ encoding = $packages["encoding"];
+ binary = $packages["encoding/binary"];
+ errors = $packages["errors"];
+ fmt = $packages["fmt"];
+ subtle = $packages["gopkg.in/dedis/crypto.v0/subtle"];
+ util = $packages["gopkg.in/dedis/crypto.v0/util"];
+ hash = $packages["hash"];
+ io = $packages["io"];
+ reflect = $packages["reflect"];
+ strings = $packages["strings"];
+ CipherState = $pkg.CipherState = $newType(8, $kindInterface, "abstract.CipherState", true, "gopkg.in/dedis/crypto.v0/abstract", true, null);
+ Cipher = $pkg.Cipher = $newType(0, $kindStruct, "abstract.Cipher", true, "gopkg.in/dedis/crypto.v0/abstract", true, function(CipherState_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.CipherState = $ifaceNil;
+ return;
+ }
+ this.CipherState = CipherState_;
+ });
+ Marshaling = $pkg.Marshaling = $newType(8, $kindInterface, "abstract.Marshaling", true, "gopkg.in/dedis/crypto.v0/abstract", true, null);
+ Constructor = $pkg.Constructor = $newType(8, $kindInterface, "abstract.Constructor", true, "gopkg.in/dedis/crypto.v0/abstract", true, null);
+ BinaryEncoding = $pkg.BinaryEncoding = $newType(0, $kindStruct, "abstract.BinaryEncoding", true, "gopkg.in/dedis/crypto.v0/abstract", true, function(Constructor_, hidden_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Constructor = $ifaceNil;
+ this.hidden = new structType.ptr();
+ return;
+ }
+ this.Constructor = Constructor_;
+ this.hidden = hidden_;
+ });
+ decoder = $pkg.decoder = $newType(0, $kindStruct, "abstract.decoder", true, "gopkg.in/dedis/crypto.v0/abstract", false, function(c_, r_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.c = $ifaceNil;
+ this.r = $ifaceNil;
+ return;
+ }
+ this.c = c_;
+ this.r = r_;
+ });
+ encoder = $pkg.encoder = $newType(0, $kindStruct, "abstract.encoder", true, "gopkg.in/dedis/crypto.v0/abstract", false, function(w_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.w = $ifaceNil;
+ return;
+ }
+ this.w = w_;
+ });
+ Scalar = $pkg.Scalar = $newType(8, $kindInterface, "abstract.Scalar", true, "gopkg.in/dedis/crypto.v0/abstract", true, null);
+ Point = $pkg.Point = $newType(8, $kindInterface, "abstract.Point", true, "gopkg.in/dedis/crypto.v0/abstract", true, null);
+ Suite = $pkg.Suite = $newType(8, $kindInterface, "abstract.Suite", true, "gopkg.in/dedis/crypto.v0/abstract", true, null);
+ sliceType = $sliceType($Uint8);
+ ptrType = $ptrType(Scalar);
+ ptrType$1 = $ptrType(Point);
+ ptrType$2 = $ptrType($Uint8);
+ sliceType$1 = $sliceType($emptyInterface);
+ ptrType$3 = $ptrType($Int32);
+ structType = $structType("", []);
+ ptrType$5 = $ptrType(decoder);
+ ptrType$6 = $ptrType(encoder);
+ Cipher.ptr.prototype.Message = function(dst, src, key) {
+ var $ptr, c, dst, key, src, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; c = $f.c; dst = $f.dst; key = $f.key; src = $f.src; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ $r = c.CipherState.Message(dst, src, key); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return c;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Cipher.ptr.prototype.Message }; } $f.$ptr = $ptr; $f.c = c; $f.dst = dst; $f.key = key; $f.src = src; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Cipher.prototype.Message = function(dst, src, key) { return this.$val.Message(dst, src, key); };
+ Cipher.ptr.prototype.Partial = function(dst, src, key) {
+ var $ptr, c, dst, key, src, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; c = $f.c; dst = $f.dst; key = $f.key; src = $f.src; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ $r = c.CipherState.Partial(dst, src, key); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return c;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Cipher.ptr.prototype.Partial }; } $f.$ptr = $ptr; $f.c = c; $f.dst = dst; $f.key = key; $f.src = src; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Cipher.prototype.Partial = function(dst, src, key) { return this.$val.Partial(dst, src, key); };
+ Cipher.ptr.prototype.Read = function(dst) {
+ var $ptr, _tmp, _tmp$1, c, dst, err, n, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; c = $f.c; dst = $f.dst; err = $f.err; n = $f.n; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ c = this;
+ $r = c.CipherState.Partial(dst, sliceType.nil, sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _tmp = dst.$length;
+ _tmp$1 = $ifaceNil;
+ n = _tmp;
+ err = _tmp$1;
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Cipher.ptr.prototype.Read }; } $f.$ptr = $ptr; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f.c = c; $f.dst = dst; $f.err = err; $f.n = n; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Cipher.prototype.Read = function(dst) { return this.$val.Read(dst); };
+ Cipher.ptr.prototype.Write = function(key) {
+ var $ptr, _tmp, _tmp$1, c, err, key, n, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; c = $f.c; err = $f.err; key = $f.key; n = $f.n; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ c = this;
+ $r = c.CipherState.Partial(sliceType.nil, sliceType.nil, key); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _tmp = key.$length;
+ _tmp$1 = $ifaceNil;
+ n = _tmp;
+ err = _tmp$1;
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Cipher.ptr.prototype.Write }; } $f.$ptr = $ptr; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f.c = c; $f.err = err; $f.key = key; $f.n = n; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Cipher.prototype.Write = function(key) { return this.$val.Write(key); };
+ Cipher.ptr.prototype.EndMessage = function() {
+ var $ptr, c, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; c = $f.c; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ $r = c.CipherState.Message(sliceType.nil, sliceType.nil, sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Cipher.ptr.prototype.EndMessage }; } $f.$ptr = $ptr; $f.c = c; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Cipher.prototype.EndMessage = function() { return this.$val.EndMessage(); };
+ Cipher.ptr.prototype.XORKeyStream = function(dst, src) {
+ var $ptr, c, dst, src, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; c = $f.c; dst = $f.dst; src = $f.src; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ $r = c.CipherState.Partial($subslice(dst, 0, src.$length), src, sliceType.nil); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Cipher.ptr.prototype.XORKeyStream }; } $f.$ptr = $ptr; $f.c = c; $f.dst = dst; $f.src = src; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Cipher.prototype.XORKeyStream = function(dst, src) { return this.$val.XORKeyStream(dst, src); };
+ Cipher.ptr.prototype.Sum = function(dst) {
+ var $ptr, _r$2, _r$3, _tuple, c, dst, h, hash$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$2 = $f._r$2; _r$3 = $f._r$3; _tuple = $f._tuple; c = $f.c; dst = $f.dst; h = $f.h; hash$1 = $f.hash$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ $r = $clone(c, Cipher).EndMessage(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$2 = c.CipherState.HashSize(); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ h = _r$2;
+ _tuple = util.Grow(dst, h);
+ dst = _tuple[0];
+ hash$1 = _tuple[1];
+ _r$3 = $clone(c, Cipher).Message(hash$1, sliceType.nil, sliceType.nil); /* */ $s = 3; case 3: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$3;
+ $s = -1; return dst;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Cipher.ptr.prototype.Sum }; } $f.$ptr = $ptr; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._tuple = _tuple; $f.c = c; $f.dst = dst; $f.h = h; $f.hash$1 = hash$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Cipher.prototype.Sum = function(dst) { return this.$val.Sum(dst); };
+ Cipher.ptr.prototype.Seal = function(dst, src) {
+ var $ptr, _r$2, _r$3, _r$4, _tuple, buf, c, ctx, dst, l, m, mac, src, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _tuple = $f._tuple; buf = $f.buf; c = $f.c; ctx = $f.ctx; dst = $f.dst; l = $f.l; m = $f.m; mac = $f.mac; src = $f.src; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ l = src.$length;
+ _r$2 = c.CipherState.KeySize(); /* */ $s = 1; case 1: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ m = _r$2;
+ _tuple = util.Grow(dst, l + m >> 0);
+ dst = _tuple[0];
+ buf = _tuple[1];
+ ctx = $subslice(buf, 0, l);
+ mac = $subslice(buf, l);
+ _r$3 = $clone(c, Cipher).Message(ctx, src, ctx); /* */ $s = 2; case 2: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$3;
+ _r$4 = $clone(c, Cipher).Message(mac, sliceType.nil, sliceType.nil); /* */ $s = 3; case 3: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$4;
+ $s = -1; return dst;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Cipher.ptr.prototype.Seal }; } $f.$ptr = $ptr; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._tuple = _tuple; $f.buf = buf; $f.c = c; $f.ctx = ctx; $f.dst = dst; $f.l = l; $f.m = m; $f.mac = mac; $f.src = src; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Cipher.prototype.Seal = function(dst, src) { return this.$val.Seal(dst, src); };
+ Cipher.ptr.prototype.Open = function(dst, src) {
+ var $ptr, _r$2, _r$3, _r$4, _r$5, _tuple, c, ctx, dst, l, m, mac, msg, src, tmp, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _tuple = $f._tuple; c = $f.c; ctx = $f.ctx; dst = $f.dst; l = $f.l; m = $f.m; mac = $f.mac; msg = $f.msg; src = $f.src; tmp = $f.tmp; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ _r$2 = c.CipherState.KeySize(); /* */ $s = 1; case 1: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ m = _r$2;
+ l = src.$length - m >> 0;
+ if (l < 0) {
+ $s = -1; return [sliceType.nil, errors.New("sealed ciphertext too short")];
+ }
+ ctx = $subslice(src, 0, l);
+ mac = $subslice(src, l);
+ _tuple = util.Grow(dst, l);
+ dst = _tuple[0];
+ msg = _tuple[1];
+ /* */ if (!($indexPtr(msg.$array, msg.$offset + 0, ptrType$2) === $indexPtr(ctx.$array, ctx.$offset + 0, ptrType$2))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!($indexPtr(msg.$array, msg.$offset + 0, ptrType$2) === $indexPtr(ctx.$array, ctx.$offset + 0, ptrType$2))) { */ case 2:
+ _r$3 = $clone(c, Cipher).Message(msg, ctx, ctx); /* */ $s = 5; case 5: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$3;
+ $s = 4; continue;
+ /* } else { */ case 3:
+ tmp = $makeSlice(sliceType, l);
+ _r$4 = $clone(c, Cipher).Message(tmp, ctx, ctx); /* */ $s = 6; case 6: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$4;
+ $copySlice(msg, tmp);
+ /* } */ case 4:
+ _r$5 = $clone(c, Cipher).Message(mac, mac, sliceType.nil); /* */ $s = 7; case 7: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _r$5;
+ if (subtle.ConstantTimeAllEq(mac, 0) === 0) {
+ $s = -1; return [sliceType.nil, errors.New("ciphertext authentication failed")];
+ }
+ $s = -1; return [dst, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Cipher.ptr.prototype.Open }; } $f.$ptr = $ptr; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._tuple = _tuple; $f.c = c; $f.ctx = ctx; $f.dst = dst; $f.l = l; $f.m = m; $f.mac = mac; $f.msg = msg; $f.src = src; $f.tmp = tmp; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Cipher.prototype.Open = function(dst, src) { return this.$val.Open(dst, src); };
+ Cipher.ptr.prototype.Clone = function() {
+ var $ptr, _r$2, c, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$2 = $f._r$2; c = $f.c; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ _r$2 = c.CipherState.Clone(); /* */ $s = 1; case 1: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return new Cipher.ptr(_r$2);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Cipher.ptr.prototype.Clone }; } $f.$ptr = $ptr; $f._r$2 = _r$2; $f.c = c; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Cipher.prototype.Clone = function() { return this.$val.Clone(); };
+ BinaryEncoding.ptr.prototype.Read = function(r, objs) {
+ var $ptr, _r$2, _r$3, de, e, err, i, objs, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$2 = $f._r$2; _r$3 = $f._r$3; de = $f.de; e = $f.e; err = $f.err; i = $f.i; objs = $f.objs; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ de = new decoder.ptr(e.Constructor, r);
+ i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(i < objs.$length)) { break; } */ if(!(i < objs.$length)) { $s = 2; continue; }
+ _r$2 = reflect.ValueOf(((i < 0 || i >= objs.$length) ? ($throwRuntimeError("index out of range"), undefined) : objs.$array[objs.$offset + i])); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$3 = de.value($clone(_r$2, reflect.Value), 0); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ err = _r$3;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ i = i + (1) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: BinaryEncoding.ptr.prototype.Read }; } $f.$ptr = $ptr; $f._r$2 = _r$2; $f._r$3 = _r$3; $f.de = de; $f.e = e; $f.err = err; $f.i = i; $f.objs = objs; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ BinaryEncoding.prototype.Read = function(r, objs) { return this.$val.Read(r, objs); };
+ decoder.ptr.prototype.value = function(v, depth) {
+ var $ptr, _1, _arg, _arg$1, _arg$2, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$19, _r$2, _r$20, _r$21, _r$22, _r$23, _r$24, _r$25, _r$26, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tuple, _tuple$1, b, de, depth, e, err, err$1, err$2, err$3, i, i$1, i$2, l, l$1, o, obj, ok, t, v, x, x$1, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$19 = $f._r$19; _r$2 = $f._r$2; _r$20 = $f._r$20; _r$21 = $f._r$21; _r$22 = $f._r$22; _r$23 = $f._r$23; _r$24 = $f._r$24; _r$25 = $f._r$25; _r$26 = $f._r$26; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; b = $f.b; de = $f.de; depth = $f.depth; e = $f.e; err = $f.err; err$1 = $f.err$1; err$2 = $f.err$2; err$3 = $f.err$3; i = $f.i; i$1 = $f.i$1; i$2 = $f.i$2; l = $f.l; l$1 = $f.l$1; o = $f.o; obj = $f.obj; ok = $f.ok; t = $f.t; v = $f.v; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = [b];
+ i = [i];
+ de = this;
+ _r$2 = $clone(v, reflect.Value).Interface(); /* */ $s = 1; case 1: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ obj = _r$2;
+ _tuple = $assertType(obj, Marshaling, true);
+ e = _tuple[0];
+ ok = _tuple[1];
+ /* */ if (ok) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (ok) { */ case 2:
+ _r$3 = e.UnmarshalFrom(de.r); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _tuple$1 = _r$3;
+ err = _tuple$1[1];
+ $s = -1; return err;
+ /* } */ case 3:
+ err$1 = $ifaceNil;
+ _1 = $clone(v, reflect.Value).Kind();
+ /* */ if (_1 === (20)) { $s = 6; continue; }
+ /* */ if (_1 === (22)) { $s = 7; continue; }
+ /* */ if (_1 === (25)) { $s = 8; continue; }
+ /* */ if (_1 === (23)) { $s = 9; continue; }
+ /* */ if (_1 === (17)) { $s = 10; continue; }
+ /* */ if (_1 === (2)) { $s = 11; continue; }
+ /* */ if (_1 === (1)) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if (_1 === (20)) { */ case 6:
+ /* */ if ($clone(v, reflect.Value).IsNil()) { $s = 15; continue; }
+ /* */ $s = 16; continue;
+ /* if ($clone(v, reflect.Value).IsNil()) { */ case 15:
+ t = $clone(v, reflect.Value).Type();
+ _r$4 = de.c.New(t); /* */ $s = 17; case 17: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ o = _r$4;
+ /* */ if ($interfaceIsEqual(o, $ifaceNil)) { $s = 18; continue; }
+ /* */ $s = 19; continue;
+ /* if ($interfaceIsEqual(o, $ifaceNil)) { */ case 18:
+ _r$5 = t.String(); /* */ $s = 20; case 20: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $panic(new $String("unsupported null pointer type: " + _r$5));
+ /* } */ case 19:
+ _r$6 = reflect.ValueOf(o); /* */ $s = 21; case 21: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $r = $clone(v, reflect.Value).Set($clone(_r$6, reflect.Value)); /* */ $s = 22; case 22: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 16:
+ /* */ if ($clone(v, reflect.Value).IsNil()) { $s = 23; continue; }
+ /* */ $s = 24; continue;
+ /* if ($clone(v, reflect.Value).IsNil()) { */ case 23:
+ _r$7 = $clone(v, reflect.Value).Type().Elem(); /* */ $s = 25; case 25: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _r$8 = reflect.New(_r$7); /* */ $s = 26; case 26: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $r = $clone(v, reflect.Value).Set($clone(_r$8, reflect.Value)); /* */ $s = 27; case 27: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 24:
+ _r$9 = $clone(v, reflect.Value).Elem(); /* */ $s = 28; case 28: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _r$10 = de.value($clone(_r$9, reflect.Value), depth + 1 >> 0); /* */ $s = 29; case 29: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ $s = -1; return _r$10;
+ /* } else if (_1 === (22)) { */ case 7:
+ /* */ if ($clone(v, reflect.Value).IsNil()) { $s = 30; continue; }
+ /* */ $s = 31; continue;
+ /* if ($clone(v, reflect.Value).IsNil()) { */ case 30:
+ _r$11 = $clone(v, reflect.Value).Type().Elem(); /* */ $s = 32; case 32: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _r$12 = reflect.New(_r$11); /* */ $s = 33; case 33: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ $r = $clone(v, reflect.Value).Set($clone(_r$12, reflect.Value)); /* */ $s = 34; case 34: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 31:
+ _r$13 = $clone(v, reflect.Value).Elem(); /* */ $s = 35; case 35: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _r$14 = de.value($clone(_r$13, reflect.Value), depth + 1 >> 0); /* */ $s = 36; case 36: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ $s = -1; return _r$14;
+ /* } else if (_1 === (25)) { */ case 8:
+ l = $clone(v, reflect.Value).NumField();
+ i$1 = 0;
+ /* while (true) { */ case 37:
+ /* if (!(i$1 < l)) { break; } */ if(!(i$1 < l)) { $s = 38; continue; }
+ _r$15 = $clone(v, reflect.Value).Field(i$1); /* */ $s = 39; case 39: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ _r$16 = de.value($clone(_r$15, reflect.Value), depth + 1 >> 0); /* */ $s = 40; case 40: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ err$1 = _r$16;
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ i$1 = i$1 + (1) >> 0;
+ /* } */ $s = 37; continue; case 38:
+ $s = 14; continue;
+ /* } else if (_1 === (23)) { */ case 9:
+ if ($clone(v, reflect.Value).IsNil()) {
+ $panic(new $String("slices must be initialized to correct length before decoding"));
+ }
+ l$1 = $clone(v, reflect.Value).Len();
+ i$2 = 0;
+ /* while (true) { */ case 41:
+ /* if (!(i$2 < l$1)) { break; } */ if(!(i$2 < l$1)) { $s = 42; continue; }
+ _r$17 = $clone(v, reflect.Value).Index(i$2); /* */ $s = 43; case 43: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ _r$18 = de.value($clone(_r$17, reflect.Value), depth + 1 >> 0); /* */ $s = 44; case 44: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ err$1 = _r$18;
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ i$2 = i$2 + (1) >> 0;
+ /* } */ $s = 41; continue; case 42:
+ $s = 14; continue;
+ /* } else if (_1 === (17)) { */ case 10:
+ l$1 = $clone(v, reflect.Value).Len();
+ i$2 = 0;
+ /* while (true) { */ case 45:
+ /* if (!(i$2 < l$1)) { break; } */ if(!(i$2 < l$1)) { $s = 46; continue; }
+ _r$19 = $clone(v, reflect.Value).Index(i$2); /* */ $s = 47; case 47: if($c) { $c = false; _r$19 = _r$19.$blk(); } if (_r$19 && _r$19.$blk !== undefined) { break s; }
+ _r$20 = de.value($clone(_r$19, reflect.Value), depth + 1 >> 0); /* */ $s = 48; case 48: if($c) { $c = false; _r$20 = _r$20.$blk(); } if (_r$20 && _r$20.$blk !== undefined) { break s; }
+ err$1 = _r$20;
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ i$2 = i$2 + (1) >> 0;
+ /* } */ $s = 45; continue; case 46:
+ $s = 14; continue;
+ /* } else if (_1 === (2)) { */ case 11:
+ i[0] = 0;
+ _r$21 = binary.Read(de.r, (x = binary.BigEndian, new x.constructor.elem(x)), (i.$ptr || (i.$ptr = new ptrType$3(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, i)))); /* */ $s = 49; case 49: if($c) { $c = false; _r$21 = _r$21.$blk(); } if (_r$21 && _r$21.$blk !== undefined) { break s; }
+ err$2 = _r$21;
+ /* */ if (!($interfaceIsEqual(err$2, $ifaceNil))) { $s = 50; continue; }
+ /* */ $s = 51; continue;
+ /* if (!($interfaceIsEqual(err$2, $ifaceNil))) { */ case 50:
+ _r$22 = fmt.Sprintf("Error converting int to int32 ( %v )", new sliceType$1([err$2])); /* */ $s = 52; case 52: if($c) { $c = false; _r$22 = _r$22.$blk(); } if (_r$22 && _r$22.$blk !== undefined) { break s; }
+ _r$23 = errors.New(_r$22); /* */ $s = 53; case 53: if($c) { $c = false; _r$23 = _r$23.$blk(); } if (_r$23 && _r$23.$blk !== undefined) { break s; }
+ $s = -1; return _r$23;
+ /* } */ case 51:
+ $clone(v, reflect.Value).SetInt((new $Int64(0, i[0])));
+ $s = -1; return err$2;
+ /* } else if (_1 === (1)) { */ case 12:
+ b[0] = 0;
+ _r$24 = binary.Read(de.r, (x$1 = binary.BigEndian, new x$1.constructor.elem(x$1)), (b.$ptr || (b.$ptr = new ptrType$2(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, b)))); /* */ $s = 54; case 54: if($c) { $c = false; _r$24 = _r$24.$blk(); } if (_r$24 && _r$24.$blk !== undefined) { break s; }
+ err$3 = _r$24;
+ $clone(v, reflect.Value).SetBool(!((b[0] === 0)));
+ $s = -1; return err$3;
+ /* } else { */ case 13:
+ _arg = de.r;
+ _arg$1 = (x$2 = binary.BigEndian, new x$2.constructor.elem(x$2));
+ _r$25 = $clone($clone(v, reflect.Value).Addr(), reflect.Value).Interface(); /* */ $s = 55; case 55: if($c) { $c = false; _r$25 = _r$25.$blk(); } if (_r$25 && _r$25.$blk !== undefined) { break s; }
+ _arg$2 = _r$25;
+ _r$26 = binary.Read(_arg, _arg$1, _arg$2); /* */ $s = 56; case 56: if($c) { $c = false; _r$26 = _r$26.$blk(); } if (_r$26 && _r$26.$blk !== undefined) { break s; }
+ $s = -1; return _r$26;
+ /* } */ case 14:
+ case 5:
+ $s = -1; return err$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decoder.ptr.prototype.value }; } $f.$ptr = $ptr; $f._1 = _1; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$19 = _r$19; $f._r$2 = _r$2; $f._r$20 = _r$20; $f._r$21 = _r$21; $f._r$22 = _r$22; $f._r$23 = _r$23; $f._r$24 = _r$24; $f._r$25 = _r$25; $f._r$26 = _r$26; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.b = b; $f.de = de; $f.depth = depth; $f.e = e; $f.err = err; $f.err$1 = err$1; $f.err$2 = err$2; $f.err$3 = err$3; $f.i = i; $f.i$1 = i$1; $f.i$2 = i$2; $f.l = l; $f.l$1 = l$1; $f.o = o; $f.obj = obj; $f.ok = ok; $f.t = t; $f.v = v; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.prototype.value = function(v, depth) { return this.$val.value(v, depth); };
+ BinaryEncoding.ptr.prototype.Write = function(w, objs) {
+ var $ptr, _r$2, e, en, err, i, objs, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$2 = $f._r$2; e = $f.e; en = $f.en; err = $f.err; i = $f.i; objs = $f.objs; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ en = new encoder.ptr(w);
+ i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(i < objs.$length)) { break; } */ if(!(i < objs.$length)) { $s = 2; continue; }
+ _r$2 = en.value(((i < 0 || i >= objs.$length) ? ($throwRuntimeError("index out of range"), undefined) : objs.$array[objs.$offset + i]), 0); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ err = _r$2;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ i = i + (1) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: BinaryEncoding.ptr.prototype.Write }; } $f.$ptr = $ptr; $f._r$2 = _r$2; $f.e = e; $f.en = en; $f.err = err; $f.i = i; $f.objs = objs; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ BinaryEncoding.prototype.Write = function(w, objs) { return this.$val.Write(w, objs); };
+ encoder.ptr.prototype.value = function(obj, depth) {
+ var $ptr, _1, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tuple, _tuple$1, b, depth, e, en, err, err$1, err$2, i, i$1, i$2, l, l$1, obj, ok, v, x, x$1, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; b = $f.b; depth = $f.depth; e = $f.e; en = $f.en; err = $f.err; err$1 = $f.err$1; err$2 = $f.err$2; i = $f.i; i$1 = $f.i$1; i$2 = $f.i$2; l = $f.l; l$1 = $f.l$1; obj = $f.obj; ok = $f.ok; v = $f.v; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ en = this;
+ _tuple = $assertType(obj, Marshaling, true);
+ e = _tuple[0];
+ ok = _tuple[1];
+ /* */ if (ok) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (ok) { */ case 1:
+ _r$2 = e.MarshalTo(en.w); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$1 = _r$2;
+ err = _tuple$1[1];
+ $s = -1; return err;
+ /* } */ case 2:
+ _r$3 = reflect.ValueOf(obj); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ v = _r$3;
+ _1 = $clone(v, reflect.Value).Kind();
+ /* */ if (_1 === (20)) { $s = 6; continue; }
+ /* */ if (_1 === (22)) { $s = 7; continue; }
+ /* */ if (_1 === (25)) { $s = 8; continue; }
+ /* */ if ((_1 === (23)) || (_1 === (17))) { $s = 9; continue; }
+ /* */ if (_1 === (2)) { $s = 10; continue; }
+ /* */ if (_1 === (1)) { $s = 11; continue; }
+ /* */ $s = 12; continue;
+ /* if (_1 === (20)) { */ case 6:
+ $s = 13; continue;
+ /* } else if (_1 === (22)) { */ case 7:
+ _r$4 = $clone(v, reflect.Value).Elem(); /* */ $s = 14; case 14: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$5 = $clone(_r$4, reflect.Value).Interface(); /* */ $s = 15; case 15: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _r$6 = en.value(_r$5, depth + 1 >> 0); /* */ $s = 16; case 16: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return _r$6;
+ /* } else if (_1 === (25)) { */ case 8:
+ l = $clone(v, reflect.Value).NumField();
+ i = 0;
+ /* while (true) { */ case 17:
+ /* if (!(i < l)) { break; } */ if(!(i < l)) { $s = 18; continue; }
+ _r$7 = $clone(v, reflect.Value).Field(i); /* */ $s = 19; case 19: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _r$8 = $clone(_r$7, reflect.Value).Interface(); /* */ $s = 20; case 20: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _r$9 = en.value(_r$8, depth + 1 >> 0); /* */ $s = 21; case 21: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ err$1 = _r$9;
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ i = i + (1) >> 0;
+ /* } */ $s = 17; continue; case 18:
+ $s = 13; continue;
+ /* } else if ((_1 === (23)) || (_1 === (17))) { */ case 9:
+ l$1 = $clone(v, reflect.Value).Len();
+ i$1 = 0;
+ /* while (true) { */ case 22:
+ /* if (!(i$1 < l$1)) { break; } */ if(!(i$1 < l$1)) { $s = 23; continue; }
+ _r$10 = $clone(v, reflect.Value).Index(i$1); /* */ $s = 24; case 24: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _r$11 = $clone(_r$10, reflect.Value).Interface(); /* */ $s = 25; case 25: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _r$12 = en.value(_r$11, depth + 1 >> 0); /* */ $s = 26; case 26: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ err$2 = _r$12;
+ if (!($interfaceIsEqual(err$2, $ifaceNil))) {
+ $s = -1; return err$2;
+ }
+ i$1 = i$1 + (1) >> 0;
+ /* } */ $s = 22; continue; case 23:
+ $s = 13; continue;
+ /* } else if (_1 === (2)) { */ case 10:
+ i$2 = (($assertType(obj, $Int) >> 0));
+ if (!((((i$2 >> 0)) === $assertType(obj, $Int)))) {
+ $panic(new $String("Int does not fit into int32"));
+ }
+ _r$13 = binary.Write(en.w, (x = binary.BigEndian, new x.constructor.elem(x)), new $Int32(i$2)); /* */ $s = 27; case 27: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ $s = -1; return _r$13;
+ /* } else if (_1 === (1)) { */ case 11:
+ b = 0;
+ if ($clone(v, reflect.Value).Bool()) {
+ b = 1;
+ }
+ _r$14 = binary.Write(en.w, (x$1 = binary.BigEndian, new x$1.constructor.elem(x$1)), new $Uint8(b)); /* */ $s = 28; case 28: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ $s = -1; return _r$14;
+ /* } else { */ case 12:
+ _r$15 = binary.Write(en.w, (x$2 = binary.BigEndian, new x$2.constructor.elem(x$2)), obj); /* */ $s = 29; case 29: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ $s = -1; return _r$15;
+ /* } */ case 13:
+ case 5:
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: encoder.ptr.prototype.value }; } $f.$ptr = $ptr; $f._1 = _1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.b = b; $f.depth = depth; $f.e = e; $f.en = en; $f.err = err; $f.err$1 = err$1; $f.err$2 = err$2; $f.i = i; $f.i$1 = i$1; $f.i$2 = i$2; $f.l = l; $f.l$1 = l$1; $f.obj = obj; $f.ok = ok; $f.v = v; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ encoder.prototype.value = function(obj, depth) { return this.$val.value(obj, depth); };
+ SuiteNew = function(s, t) {
+ var $ptr, _1, _r$2, _r$3, s, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r$2 = $f._r$2; _r$3 = $f._r$3; s = $f.s; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _1 = t;
+ /* */ if ($interfaceIsEqual(_1, (tScalar))) { $s = 2; continue; }
+ /* */ if ($interfaceIsEqual(_1, (tPoint))) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if ($interfaceIsEqual(_1, (tScalar))) { */ case 2:
+ _r$2 = s.Scalar(); /* */ $s = 5; case 5: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return _r$2;
+ /* } else if ($interfaceIsEqual(_1, (tPoint))) { */ case 3:
+ _r$3 = s.Point(); /* */ $s = 6; case 6: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $s = -1; return _r$3;
+ /* } */ case 4:
+ case 1:
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: SuiteNew }; } $f.$ptr = $ptr; $f._1 = _1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f.s = s; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.SuiteNew = SuiteNew;
+ SuiteRead = function(s, r, objs) {
+ var $ptr, _r$2, objs, r, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$2 = $f._r$2; objs = $f.objs; r = $f.r; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$2 = new BinaryEncoding.ptr(s, new structType.ptr()).Read(r, new sliceType$1([objs])); /* */ $s = 1; case 1: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return _r$2;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: SuiteRead }; } $f.$ptr = $ptr; $f._r$2 = _r$2; $f.objs = objs; $f.r = r; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.SuiteRead = SuiteRead;
+ SuiteWrite = function(s, w, objs) {
+ var $ptr, _r$2, objs, s, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$2 = $f._r$2; objs = $f.objs; s = $f.s; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$2 = new BinaryEncoding.ptr(s, new structType.ptr()).Write(w, new sliceType$1([objs])); /* */ $s = 1; case 1: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return _r$2;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: SuiteWrite }; } $f.$ptr = $ptr; $f._r$2 = _r$2; $f.objs = objs; $f.s = s; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.SuiteWrite = SuiteWrite;
+ Cipher.methods = [{prop: "Message", name: "Message", pkg: "", typ: $funcType([sliceType, sliceType, sliceType], [Cipher], false)}, {prop: "Partial", name: "Partial", pkg: "", typ: $funcType([sliceType, sliceType, sliceType], [Cipher], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}, {prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}, {prop: "EndMessage", name: "EndMessage", pkg: "", typ: $funcType([], [], false)}, {prop: "XORKeyStream", name: "XORKeyStream", pkg: "", typ: $funcType([sliceType, sliceType], [], false)}, {prop: "Sum", name: "Sum", pkg: "", typ: $funcType([sliceType], [sliceType], false)}, {prop: "Seal", name: "Seal", pkg: "", typ: $funcType([sliceType, sliceType], [sliceType], false)}, {prop: "Open", name: "Open", pkg: "", typ: $funcType([sliceType, sliceType], [sliceType, $error], false)}, {prop: "Clone", name: "Clone", pkg: "", typ: $funcType([], [Cipher], false)}];
+ BinaryEncoding.methods = [{prop: "Read", name: "Read", pkg: "", typ: $funcType([io.Reader, sliceType$1], [$error], true)}, {prop: "Write", name: "Write", pkg: "", typ: $funcType([io.Writer, sliceType$1], [$error], true)}];
+ ptrType$5.methods = [{prop: "value", name: "value", pkg: "gopkg.in/dedis/crypto.v0/abstract", typ: $funcType([reflect.Value, $Int], [$error], false)}];
+ ptrType$6.methods = [{prop: "value", name: "value", pkg: "gopkg.in/dedis/crypto.v0/abstract", typ: $funcType([$emptyInterface, $Int], [$error], false)}];
+ CipherState.init([{prop: "Clone", name: "Clone", pkg: "", typ: $funcType([], [CipherState], false)}, {prop: "HashSize", name: "HashSize", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "KeySize", name: "KeySize", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Message", name: "Message", pkg: "", typ: $funcType([sliceType, sliceType, sliceType], [], false)}, {prop: "Partial", name: "Partial", pkg: "", typ: $funcType([sliceType, sliceType, sliceType], [], false)}]);
+ Cipher.init("", [{prop: "CipherState", name: "", exported: true, typ: CipherState, tag: ""}]);
+ Marshaling.init([{prop: "MarshalBinary", name: "MarshalBinary", pkg: "", typ: $funcType([], [sliceType, $error], false)}, {prop: "MarshalSize", name: "MarshalSize", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "MarshalTo", name: "MarshalTo", pkg: "", typ: $funcType([io.Writer], [$Int, $error], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "UnmarshalBinary", name: "UnmarshalBinary", pkg: "", typ: $funcType([sliceType], [$error], false)}, {prop: "UnmarshalFrom", name: "UnmarshalFrom", pkg: "", typ: $funcType([io.Reader], [$Int, $error], false)}]);
+ Constructor.init([{prop: "New", name: "New", pkg: "", typ: $funcType([reflect.Type], [$emptyInterface], false)}]);
+ BinaryEncoding.init("gopkg.in/dedis/crypto.v0/abstract", [{prop: "Constructor", name: "", exported: true, typ: Constructor, tag: ""}, {prop: "hidden", name: "hidden", exported: false, typ: structType, tag: ""}]);
+ decoder.init("gopkg.in/dedis/crypto.v0/abstract", [{prop: "c", name: "c", exported: false, typ: Constructor, tag: ""}, {prop: "r", name: "r", exported: false, typ: io.Reader, tag: ""}]);
+ encoder.init("gopkg.in/dedis/crypto.v0/abstract", [{prop: "w", name: "w", exported: false, typ: io.Writer, tag: ""}]);
+ Scalar.init([{prop: "Add", name: "Add", pkg: "", typ: $funcType([Scalar, Scalar], [Scalar], false)}, {prop: "Bytes", name: "Bytes", pkg: "", typ: $funcType([], [sliceType], false)}, {prop: "Clone", name: "Clone", pkg: "", typ: $funcType([], [Scalar], false)}, {prop: "Div", name: "Div", pkg: "", typ: $funcType([Scalar, Scalar], [Scalar], false)}, {prop: "Equal", name: "Equal", pkg: "", typ: $funcType([Scalar], [$Bool], false)}, {prop: "Inv", name: "Inv", pkg: "", typ: $funcType([Scalar], [Scalar], false)}, {prop: "MarshalBinary", name: "MarshalBinary", pkg: "", typ: $funcType([], [sliceType, $error], false)}, {prop: "MarshalSize", name: "MarshalSize", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "MarshalTo", name: "MarshalTo", pkg: "", typ: $funcType([io.Writer], [$Int, $error], false)}, {prop: "Mul", name: "Mul", pkg: "", typ: $funcType([Scalar, Scalar], [Scalar], false)}, {prop: "Neg", name: "Neg", pkg: "", typ: $funcType([Scalar], [Scalar], false)}, {prop: "One", name: "One", pkg: "", typ: $funcType([], [Scalar], false)}, {prop: "Pick", name: "Pick", pkg: "", typ: $funcType([cipher.Stream], [Scalar], false)}, {prop: "Set", name: "Set", pkg: "", typ: $funcType([Scalar], [Scalar], false)}, {prop: "SetBytes", name: "SetBytes", pkg: "", typ: $funcType([sliceType], [Scalar], false)}, {prop: "SetInt64", name: "SetInt64", pkg: "", typ: $funcType([$Int64], [Scalar], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Sub", name: "Sub", pkg: "", typ: $funcType([Scalar, Scalar], [Scalar], false)}, {prop: "UnmarshalBinary", name: "UnmarshalBinary", pkg: "", typ: $funcType([sliceType], [$error], false)}, {prop: "UnmarshalFrom", name: "UnmarshalFrom", pkg: "", typ: $funcType([io.Reader], [$Int, $error], false)}, {prop: "Zero", name: "Zero", pkg: "", typ: $funcType([], [Scalar], false)}]);
+ Point.init([{prop: "Add", name: "Add", pkg: "", typ: $funcType([Point, Point], [Point], false)}, {prop: "Base", name: "Base", pkg: "", typ: $funcType([], [Point], false)}, {prop: "Clone", name: "Clone", pkg: "", typ: $funcType([], [Point], false)}, {prop: "Data", name: "Data", pkg: "", typ: $funcType([], [sliceType, $error], false)}, {prop: "Equal", name: "Equal", pkg: "", typ: $funcType([Point], [$Bool], false)}, {prop: "MarshalBinary", name: "MarshalBinary", pkg: "", typ: $funcType([], [sliceType, $error], false)}, {prop: "MarshalSize", name: "MarshalSize", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "MarshalTo", name: "MarshalTo", pkg: "", typ: $funcType([io.Writer], [$Int, $error], false)}, {prop: "Mul", name: "Mul", pkg: "", typ: $funcType([Point, Scalar], [Point], false)}, {prop: "Neg", name: "Neg", pkg: "", typ: $funcType([Point], [Point], false)}, {prop: "Null", name: "Null", pkg: "", typ: $funcType([], [Point], false)}, {prop: "Pick", name: "Pick", pkg: "", typ: $funcType([sliceType, cipher.Stream], [Point, sliceType], false)}, {prop: "PickLen", name: "PickLen", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Set", name: "Set", pkg: "", typ: $funcType([Point], [Point], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Sub", name: "Sub", pkg: "", typ: $funcType([Point, Point], [Point], false)}, {prop: "UnmarshalBinary", name: "UnmarshalBinary", pkg: "", typ: $funcType([sliceType], [$error], false)}, {prop: "UnmarshalFrom", name: "UnmarshalFrom", pkg: "", typ: $funcType([io.Reader], [$Int, $error], false)}]);
+ Suite.init([{prop: "Cipher", name: "Cipher", pkg: "", typ: $funcType([sliceType, sliceType$1], [Cipher], true)}, {prop: "Hash", name: "Hash", pkg: "", typ: $funcType([], [hash.Hash], false)}, {prop: "New", name: "New", pkg: "", typ: $funcType([reflect.Type], [$emptyInterface], false)}, {prop: "NewKey", name: "NewKey", pkg: "", typ: $funcType([cipher.Stream], [Scalar], false)}, {prop: "Point", name: "Point", pkg: "", typ: $funcType([], [Point], false)}, {prop: "PointLen", name: "PointLen", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "PrimeOrder", name: "PrimeOrder", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([io.Reader, sliceType$1], [$error], true)}, {prop: "Scalar", name: "Scalar", pkg: "", typ: $funcType([], [Scalar], false)}, {prop: "ScalarLen", name: "ScalarLen", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Write", name: "Write", pkg: "", typ: $funcType([io.Writer, sliceType$1], [$error], true)}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = cipher.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = encoding.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = binary.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = subtle.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = util.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hash.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = reflect.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ aScalar = $ifaceNil;
+ aPoint = $ifaceNil;
+ $pkg.NoKey = new sliceType([]);
+ _r = reflect.TypeOf((aScalar$24ptr || (aScalar$24ptr = new ptrType(function() { return aScalar; }, function($v) { aScalar = $v; })))).Elem(); /* */ $s = 12; case 12: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ tScalar = _r;
+ _r$1 = reflect.TypeOf((aPoint$24ptr || (aPoint$24ptr = new ptrType$1(function() { return aPoint; }, function($v) { aPoint = $v; })))).Elem(); /* */ $s = 13; case 13: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ tPoint = _r$1;
+ int32Type = reflect.TypeOf(new $Int32(0));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["crypto/hmac"] = (function() {
+ var $pkg = {}, $init, subtle, hash;
+ subtle = $packages["crypto/subtle"];
+ hash = $packages["hash"];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = subtle.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hash.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/crypto.v0/ints"] = (function() {
+ var $pkg = {}, $init, Max, Min;
+ Max = function(x, y) {
+ var $ptr, _i, _ref, x, y, z;
+ _ref = y;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ z = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (z > x) {
+ x = z;
+ }
+ _i++;
+ }
+ return x;
+ };
+ $pkg.Max = Max;
+ Min = function(x, y) {
+ var $ptr, _i, _ref, x, y, z;
+ _ref = y;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ z = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (z < x) {
+ x = z;
+ }
+ _i++;
+ }
+ return x;
+ };
+ $pkg.Min = Min;
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["math/big"] = (function() {
+ var $pkg = {}, $init, bytes, binary, errors, fmt, nosync, io, math, rand, strconv, strings, Word, Int, byteReader, nat, divisor, sliceType, arrayType, structType, sliceType$1, sliceType$2, ptrType$1, ptrType$3, ptrType$4, arrayType$1, sliceType$3, ptrType$6, intOne, natOne, natTwo, karatsubaThreshold, natPool, deBruijn32Lookup, deBruijn64Lookup, leafSize, cacheBase10, mulWW, divWW, addVV, subVV, addVW, subVW, shlVU, shrVU, mulAddVWW, addMulVVW, divWVW, bitLen, addWW_g, subWW_g, mulWW_g, mulAddWWW_g, bitLen_g, nlz, divWW_g, addVV_g, subVV_g, addVW_g, subVW_g, shlVU_g, shrVU_g, mulAddVWW_g, addMulVVW_g, divWVW_g, NewInt, low64, Jacobi, writeMultiple, scanSign, basicMul, karatsubaAdd, karatsubaSub, karatsuba, alias, addAt, max, karatsubaLen, getNat, putNat, trailingZeroBits, greaterThan, maxPow, pow, divisors;
+ bytes = $packages["bytes"];
+ binary = $packages["encoding/binary"];
+ errors = $packages["errors"];
+ fmt = $packages["fmt"];
+ nosync = $packages["github.com/gopherjs/gopherjs/nosync"];
+ io = $packages["io"];
+ math = $packages["math"];
+ rand = $packages["math/rand"];
+ strconv = $packages["strconv"];
+ strings = $packages["strings"];
+ Word = $pkg.Word = $newType(4, $kindUintptr, "big.Word", true, "math/big", true, null);
+ Int = $pkg.Int = $newType(0, $kindStruct, "big.Int", true, "math/big", true, function(neg_, abs_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.neg = false;
+ this.abs = nat.nil;
+ return;
+ }
+ this.neg = neg_;
+ this.abs = abs_;
+ });
+ byteReader = $pkg.byteReader = $newType(0, $kindStruct, "big.byteReader", true, "math/big", false, function(ScanState_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.ScanState = $ifaceNil;
+ return;
+ }
+ this.ScanState = ScanState_;
+ });
+ nat = $pkg.nat = $newType(12, $kindSlice, "big.nat", true, "math/big", false, null);
+ divisor = $pkg.divisor = $newType(0, $kindStruct, "big.divisor", true, "math/big", false, function(bbb_, nbits_, ndigits_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.bbb = nat.nil;
+ this.nbits = 0;
+ this.ndigits = 0;
+ return;
+ }
+ this.bbb = bbb_;
+ this.nbits = nbits_;
+ this.ndigits = ndigits_;
+ });
+ sliceType = $sliceType($emptyInterface);
+ arrayType = $arrayType(divisor, 64);
+ structType = $structType("math/big", [{prop: "Mutex", name: "", exported: true, typ: nosync.Mutex, tag: ""}, {prop: "table", name: "table", exported: false, typ: arrayType, tag: ""}]);
+ sliceType$1 = $sliceType($Uint8);
+ sliceType$2 = $sliceType(Word);
+ ptrType$1 = $ptrType(Int);
+ ptrType$3 = $ptrType(Word);
+ ptrType$4 = $ptrType(nat);
+ arrayType$1 = $arrayType(nat, 16);
+ sliceType$3 = $sliceType(divisor);
+ ptrType$6 = $ptrType(rand.Rand);
+ mulWW = function(x, y) {
+ var $ptr, _tuple, x, y, z0, z1;
+ z1 = 0;
+ z0 = 0;
+ _tuple = mulWW_g(x, y);
+ z1 = _tuple[0];
+ z0 = _tuple[1];
+ return [z1, z0];
+ };
+ divWW = function(x1, x0, y) {
+ var $ptr, _tuple, q, r, x0, x1, y;
+ q = 0;
+ r = 0;
+ _tuple = divWW_g(x1, x0, y);
+ q = _tuple[0];
+ r = _tuple[1];
+ return [q, r];
+ };
+ addVV = function(z, x, y) {
+ var $ptr, c, x, y, z;
+ c = 0;
+ c = addVV_g(z, x, y);
+ return c;
+ };
+ subVV = function(z, x, y) {
+ var $ptr, c, x, y, z;
+ c = 0;
+ c = subVV_g(z, x, y);
+ return c;
+ };
+ addVW = function(z, x, y) {
+ var $ptr, c, x, y, z;
+ c = 0;
+ c = addVW_g(z, x, y);
+ return c;
+ };
+ subVW = function(z, x, y) {
+ var $ptr, c, x, y, z;
+ c = 0;
+ c = subVW_g(z, x, y);
+ return c;
+ };
+ shlVU = function(z, x, s) {
+ var $ptr, c, s, x, z;
+ c = 0;
+ c = shlVU_g(z, x, s);
+ return c;
+ };
+ shrVU = function(z, x, s) {
+ var $ptr, c, s, x, z;
+ c = 0;
+ c = shrVU_g(z, x, s);
+ return c;
+ };
+ mulAddVWW = function(z, x, y, r) {
+ var $ptr, c, r, x, y, z;
+ c = 0;
+ c = mulAddVWW_g(z, x, y, r);
+ return c;
+ };
+ addMulVVW = function(z, x, y) {
+ var $ptr, c, x, y, z;
+ c = 0;
+ c = addMulVVW_g(z, x, y);
+ return c;
+ };
+ divWVW = function(z, xn, x, y) {
+ var $ptr, r, x, xn, y, z;
+ r = 0;
+ r = divWVW_g(z, xn, x, y);
+ return r;
+ };
+ bitLen = function(x) {
+ var $ptr, n, x;
+ n = 0;
+ n = bitLen_g(x);
+ return n;
+ };
+ addWW_g = function(x, y, c) {
+ var $ptr, c, x, y, yc, z0, z1;
+ z1 = 0;
+ z0 = 0;
+ yc = y + c >>> 0;
+ z0 = x + yc >>> 0;
+ if (z0 < x || yc < y) {
+ z1 = 1;
+ }
+ return [z1, z0];
+ };
+ subWW_g = function(x, y, c) {
+ var $ptr, c, x, y, yc, z0, z1;
+ z1 = 0;
+ z0 = 0;
+ yc = y + c >>> 0;
+ z0 = x - yc >>> 0;
+ if (z0 > x || yc < y) {
+ z1 = 1;
+ }
+ return [z1, z0];
+ };
+ mulWW_g = function(x, y) {
+ var $ptr, t, w0, w1, w2, x, x0, x1, y, y0, y1, z0, z1;
+ z1 = 0;
+ z0 = 0;
+ x0 = (x & 65535) >>> 0;
+ x1 = x >>> 16 >>> 0;
+ y0 = (y & 65535) >>> 0;
+ y1 = y >>> 16 >>> 0;
+ w0 = $imul(x0, y0) >>> 0;
+ t = ($imul(x1, y0) >>> 0) + (w0 >>> 16 >>> 0) >>> 0;
+ w1 = (t & 65535) >>> 0;
+ w2 = t >>> 16 >>> 0;
+ w1 = w1 + (($imul(x0, y1) >>> 0)) >>> 0;
+ z1 = (($imul(x1, y1) >>> 0) + w2 >>> 0) + (w1 >>> 16 >>> 0) >>> 0;
+ z0 = $imul(x, y) >>> 0;
+ return [z1, z0];
+ };
+ mulAddWWW_g = function(x, y, c) {
+ var $ptr, _tuple, c, x, y, z0, z1, zz0;
+ z1 = 0;
+ z0 = 0;
+ _tuple = mulWW_g(x, y);
+ z1 = _tuple[0];
+ zz0 = _tuple[1];
+ z0 = zz0 + c >>> 0;
+ if (z0 < zz0) {
+ z1 = z1 + (1) >>> 0;
+ }
+ return [z1, z0];
+ };
+ bitLen_g = function(x) {
+ var $ptr, n, x, y, y$1, y$2, y$3;
+ n = 0;
+ while (true) {
+ if (!(x >= 32768)) { break; }
+ n = n + (16) >> 0;
+ x = (y = (16), y < 32 ? (x >>> y) : 0) >>> 0;
+ }
+ if (x >= 128) {
+ x = (y$1 = (8), y$1 < 32 ? (x >>> y$1) : 0) >>> 0;
+ n = n + (8) >> 0;
+ }
+ if (x >= 8) {
+ x = (y$2 = (4), y$2 < 32 ? (x >>> y$2) : 0) >>> 0;
+ n = n + (4) >> 0;
+ }
+ if (x >= 2) {
+ x = (y$3 = (2), y$3 < 32 ? (x >>> y$3) : 0) >>> 0;
+ n = n + (2) >> 0;
+ }
+ if (x >= 1) {
+ n = n + (1) >> 0;
+ }
+ return n;
+ };
+ nlz = function(x) {
+ var $ptr, x;
+ return (((32 - bitLen(x) >> 0) >>> 0));
+ };
+ divWW_g = function(u1, u0, v) {
+ var $ptr, _q, _q$1, _tmp, _tmp$1, _tmp$2, _tmp$3, q, q0, q1, r, rhat, s, u0, u1, un0, un1, un10, un21, un32, v, vn0, vn1, y, y$1, y$2, y$3, y$4;
+ q = 0;
+ r = 0;
+ if (u1 >= v) {
+ _tmp = 4294967295;
+ _tmp$1 = 4294967295;
+ q = _tmp;
+ r = _tmp$1;
+ return [q, r];
+ }
+ s = nlz(v);
+ v = (y = (s), y < 32 ? (v << y) : 0) >>> 0;
+ vn1 = v >>> 16 >>> 0;
+ vn0 = (v & 65535) >>> 0;
+ un32 = (((y$1 = s, y$1 < 32 ? (u1 << y$1) : 0) >>> 0) | ((y$2 = ((32 - s >>> 0)), y$2 < 32 ? (u0 >>> y$2) : 0) >>> 0)) >>> 0;
+ un10 = (y$3 = s, y$3 < 32 ? (u0 << y$3) : 0) >>> 0;
+ un1 = un10 >>> 16 >>> 0;
+ un0 = (un10 & 65535) >>> 0;
+ q1 = (_q = un32 / vn1, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero"));
+ rhat = un32 - ($imul(q1, vn1) >>> 0) >>> 0;
+ while (true) {
+ if (!(q1 >= 65536 || ($imul(q1, vn0) >>> 0) > (($imul(65536, rhat) >>> 0) + un1 >>> 0))) { break; }
+ q1 = q1 - (1) >>> 0;
+ rhat = rhat + (vn1) >>> 0;
+ if (rhat >= 65536) {
+ break;
+ }
+ }
+ un21 = (($imul(un32, 65536) >>> 0) + un1 >>> 0) - ($imul(q1, v) >>> 0) >>> 0;
+ q0 = (_q$1 = un21 / vn1, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >>> 0 : $throwRuntimeError("integer divide by zero"));
+ rhat = un21 - ($imul(q0, vn1) >>> 0) >>> 0;
+ while (true) {
+ if (!(q0 >= 65536 || ($imul(q0, vn0) >>> 0) > (($imul(65536, rhat) >>> 0) + un0 >>> 0))) { break; }
+ q0 = q0 - (1) >>> 0;
+ rhat = rhat + (vn1) >>> 0;
+ if (rhat >= 65536) {
+ break;
+ }
+ }
+ _tmp$2 = ($imul(q1, 65536) >>> 0) + q0 >>> 0;
+ _tmp$3 = (y$4 = s, y$4 < 32 ? ((((($imul(un21, 65536) >>> 0) + un0 >>> 0) - ($imul(q0, v) >>> 0) >>> 0)) >>> y$4) : 0) >>> 0;
+ q = _tmp$2;
+ r = _tmp$3;
+ return [q, r];
+ };
+ addVV_g = function(z, x, y) {
+ var $ptr, _i, _i$1, _ref, _ref$1, _tuple, c, i, i$1, x, xi, y, yi, z, zi;
+ c = 0;
+ if (false) {
+ _ref = z;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ _tuple = addWW_g(((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]), ((i < 0 || i >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + i]), c);
+ c = _tuple[0];
+ ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i] = _tuple[1]);
+ _i++;
+ }
+ return c;
+ }
+ _ref$1 = $subslice(x, 0, z.$length);
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ i$1 = _i$1;
+ xi = ((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]);
+ yi = ((i$1 < 0 || i$1 >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + i$1]);
+ zi = (xi + yi >>> 0) + c >>> 0;
+ ((i$1 < 0 || i$1 >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i$1] = zi);
+ c = (((((xi & yi) >>> 0) | (((((xi | yi) >>> 0)) & ~zi) >>> 0)) >>> 0)) >>> 31 >>> 0;
+ _i$1++;
+ }
+ return c;
+ };
+ subVV_g = function(z, x, y) {
+ var $ptr, _i, _i$1, _ref, _ref$1, _tuple, c, i, i$1, x, xi, y, yi, z, zi;
+ c = 0;
+ if (false) {
+ _ref = z;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ _tuple = subWW_g(((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]), ((i < 0 || i >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + i]), c);
+ c = _tuple[0];
+ ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i] = _tuple[1]);
+ _i++;
+ }
+ return c;
+ }
+ _ref$1 = $subslice(x, 0, z.$length);
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ i$1 = _i$1;
+ xi = ((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]);
+ yi = ((i$1 < 0 || i$1 >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + i$1]);
+ zi = (xi - yi >>> 0) - c >>> 0;
+ ((i$1 < 0 || i$1 >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i$1] = zi);
+ c = (((((yi & ~xi) >>> 0) | (((((yi | (~xi >>> 0)) >>> 0)) & zi) >>> 0)) >>> 0)) >>> 31 >>> 0;
+ _i$1++;
+ }
+ return c;
+ };
+ addVW_g = function(z, x, y) {
+ var $ptr, _i, _i$1, _ref, _ref$1, _tuple, c, i, i$1, x, xi, y, z, zi;
+ c = 0;
+ if (false) {
+ c = y;
+ _ref = z;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ _tuple = addWW_g(((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]), c, 0);
+ c = _tuple[0];
+ ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i] = _tuple[1]);
+ _i++;
+ }
+ return c;
+ }
+ c = y;
+ _ref$1 = $subslice(x, 0, z.$length);
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ i$1 = _i$1;
+ xi = ((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]);
+ zi = xi + c >>> 0;
+ ((i$1 < 0 || i$1 >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i$1] = zi);
+ c = ((xi & ~zi) >>> 0) >>> 31 >>> 0;
+ _i$1++;
+ }
+ return c;
+ };
+ subVW_g = function(z, x, y) {
+ var $ptr, _i, _i$1, _ref, _ref$1, _tuple, c, i, i$1, x, xi, y, z, zi;
+ c = 0;
+ if (false) {
+ c = y;
+ _ref = z;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ _tuple = subWW_g(((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]), c, 0);
+ c = _tuple[0];
+ ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i] = _tuple[1]);
+ _i++;
+ }
+ return c;
+ }
+ c = y;
+ _ref$1 = $subslice(x, 0, z.$length);
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ i$1 = _i$1;
+ xi = ((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]);
+ zi = xi - c >>> 0;
+ ((i$1 < 0 || i$1 >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i$1] = zi);
+ c = (((zi & ~xi) >>> 0)) >>> 31 >>> 0;
+ _i$1++;
+ }
+ return c;
+ };
+ shlVU_g = function(z, x, s) {
+ var $C5$9D, $ptr, c, i, n, s, w, w1, x, x$1, x$2, y, y$1, y$2, y$3, z;
+ c = 0;
+ n = z.$length;
+ if (n > 0) {
+ $C5$9D = 32 - s >>> 0;
+ w1 = (x$1 = n - 1 >> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ c = (y = $C5$9D, y < 32 ? (w1 >>> y) : 0) >>> 0;
+ i = n - 1 >> 0;
+ while (true) {
+ if (!(i > 0)) { break; }
+ w = w1;
+ w1 = (x$2 = i - 1 >> 0, ((x$2 < 0 || x$2 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$2]));
+ ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i] = ((((y$1 = s, y$1 < 32 ? (w << y$1) : 0) >>> 0) | ((y$2 = $C5$9D, y$2 < 32 ? (w1 >>> y$2) : 0) >>> 0)) >>> 0));
+ i = i - (1) >> 0;
+ }
+ (0 >= z.$length ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + 0] = ((y$3 = s, y$3 < 32 ? (w1 << y$3) : 0) >>> 0));
+ }
+ return c;
+ };
+ shrVU_g = function(z, x, s) {
+ var $C5$9D, $ptr, c, i, n, s, w, w1, x, x$1, x$2, y, y$1, y$2, y$3, z;
+ c = 0;
+ n = z.$length;
+ if (n > 0) {
+ $C5$9D = 32 - s >>> 0;
+ w1 = (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0]);
+ c = (y = $C5$9D, y < 32 ? (w1 << y) : 0) >>> 0;
+ i = 0;
+ while (true) {
+ if (!(i < (n - 1 >> 0))) { break; }
+ w = w1;
+ w1 = (x$1 = i + 1 >> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i] = ((((y$1 = s, y$1 < 32 ? (w >>> y$1) : 0) >>> 0) | ((y$2 = $C5$9D, y$2 < 32 ? (w1 << y$2) : 0) >>> 0)) >>> 0));
+ i = i + (1) >> 0;
+ }
+ (x$2 = n - 1 >> 0, ((x$2 < 0 || x$2 >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + x$2] = ((y$3 = s, y$3 < 32 ? (w1 >>> y$3) : 0) >>> 0)));
+ }
+ return c;
+ };
+ mulAddVWW_g = function(z, x, y, r) {
+ var $ptr, _i, _ref, _tuple, c, i, r, x, y, z;
+ c = 0;
+ c = r;
+ _ref = z;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ _tuple = mulAddWWW_g(((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]), y, c);
+ c = _tuple[0];
+ ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i] = _tuple[1]);
+ _i++;
+ }
+ return c;
+ };
+ addMulVVW_g = function(z, x, y) {
+ var $ptr, _i, _ref, _tuple, _tuple$1, c, i, x, y, z, z0, z1;
+ c = 0;
+ _ref = z;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ _tuple = mulAddWWW_g(((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]), y, ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i]));
+ z1 = _tuple[0];
+ z0 = _tuple[1];
+ _tuple$1 = addWW_g(z0, c, 0);
+ c = _tuple$1[0];
+ ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i] = _tuple$1[1]);
+ c = c + (z1) >>> 0;
+ _i++;
+ }
+ return c;
+ };
+ divWVW_g = function(z, xn, x, y) {
+ var $ptr, _tuple, i, r, x, xn, y, z;
+ r = 0;
+ r = xn;
+ i = z.$length - 1 >> 0;
+ while (true) {
+ if (!(i >= 0)) { break; }
+ _tuple = divWW_g(r, ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]), y);
+ ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i] = _tuple[0]);
+ r = _tuple[1];
+ i = i - (1) >> 0;
+ }
+ return r;
+ };
+ Int.ptr.prototype.Sign = function() {
+ var $ptr, x;
+ x = this;
+ if (x.abs.$length === 0) {
+ return 0;
+ }
+ if (x.neg) {
+ return -1;
+ }
+ return 1;
+ };
+ Int.prototype.Sign = function() { return this.$val.Sign(); };
+ Int.ptr.prototype.SetInt64 = function(x) {
+ var $ptr, neg, x, z;
+ z = this;
+ neg = false;
+ if ((x.$high < 0 || (x.$high === 0 && x.$low < 0))) {
+ neg = true;
+ x = new $Int64(-x.$high, -x.$low);
+ }
+ z.abs = z.abs.setUint64((new $Uint64(x.$high, x.$low)));
+ z.neg = neg;
+ return z;
+ };
+ Int.prototype.SetInt64 = function(x) { return this.$val.SetInt64(x); };
+ Int.ptr.prototype.SetUint64 = function(x) {
+ var $ptr, x, z;
+ z = this;
+ z.abs = z.abs.setUint64(x);
+ z.neg = false;
+ return z;
+ };
+ Int.prototype.SetUint64 = function(x) { return this.$val.SetUint64(x); };
+ NewInt = function(x) {
+ var $ptr, x;
+ return new Int.ptr(false, nat.nil).SetInt64(x);
+ };
+ $pkg.NewInt = NewInt;
+ Int.ptr.prototype.Set = function(x) {
+ var $ptr, x, z;
+ z = this;
+ if (!(z === x)) {
+ z.abs = z.abs.set(x.abs);
+ z.neg = x.neg;
+ }
+ return z;
+ };
+ Int.prototype.Set = function(x) { return this.$val.Set(x); };
+ Int.ptr.prototype.Bits = function() {
+ var $ptr, x, x$1;
+ x = this;
+ return (x$1 = x.abs, $subslice(new sliceType$2(x$1.$array), x$1.$offset, x$1.$offset + x$1.$length));
+ };
+ Int.prototype.Bits = function() { return this.$val.Bits(); };
+ Int.ptr.prototype.SetBits = function(abs) {
+ var $ptr, abs, z;
+ z = this;
+ z.abs = ($subslice(new nat(abs.$array), abs.$offset, abs.$offset + abs.$length)).norm();
+ z.neg = false;
+ return z;
+ };
+ Int.prototype.SetBits = function(abs) { return this.$val.SetBits(abs); };
+ Int.ptr.prototype.Abs = function(x) {
+ var $ptr, x, z;
+ z = this;
+ z.Set(x);
+ z.neg = false;
+ return z;
+ };
+ Int.prototype.Abs = function(x) { return this.$val.Abs(x); };
+ Int.ptr.prototype.Neg = function(x) {
+ var $ptr, x, z;
+ z = this;
+ z.Set(x);
+ z.neg = z.abs.$length > 0 && !z.neg;
+ return z;
+ };
+ Int.prototype.Neg = function(x) { return this.$val.Neg(x); };
+ Int.ptr.prototype.Add = function(x, y) {
+ var $ptr, neg, x, y, z;
+ z = this;
+ neg = x.neg;
+ if (x.neg === y.neg) {
+ z.abs = z.abs.add(x.abs, y.abs);
+ } else {
+ if (x.abs.cmp(y.abs) >= 0) {
+ z.abs = z.abs.sub(x.abs, y.abs);
+ } else {
+ neg = !neg;
+ z.abs = z.abs.sub(y.abs, x.abs);
+ }
+ }
+ z.neg = z.abs.$length > 0 && neg;
+ return z;
+ };
+ Int.prototype.Add = function(x, y) { return this.$val.Add(x, y); };
+ Int.ptr.prototype.Sub = function(x, y) {
+ var $ptr, neg, x, y, z;
+ z = this;
+ neg = x.neg;
+ if (!(x.neg === y.neg)) {
+ z.abs = z.abs.add(x.abs, y.abs);
+ } else {
+ if (x.abs.cmp(y.abs) >= 0) {
+ z.abs = z.abs.sub(x.abs, y.abs);
+ } else {
+ neg = !neg;
+ z.abs = z.abs.sub(y.abs, x.abs);
+ }
+ }
+ z.neg = z.abs.$length > 0 && neg;
+ return z;
+ };
+ Int.prototype.Sub = function(x, y) { return this.$val.Sub(x, y); };
+ Int.ptr.prototype.Mul = function(x, y) {
+ var $ptr, x, y, z;
+ z = this;
+ z.abs = z.abs.mul(x.abs, y.abs);
+ z.neg = z.abs.$length > 0 && !(x.neg === y.neg);
+ return z;
+ };
+ Int.prototype.Mul = function(x, y) { return this.$val.Mul(x, y); };
+ Int.ptr.prototype.MulRange = function(a, b) {
+ var $ptr, _tmp, _tmp$1, a, b, neg, x, x$1, z;
+ z = this;
+ if ((a.$high > b.$high || (a.$high === b.$high && a.$low > b.$low))) {
+ return z.SetInt64(new $Int64(0, 1));
+ } else if ((a.$high < 0 || (a.$high === 0 && a.$low <= 0)) && (b.$high > 0 || (b.$high === 0 && b.$low >= 0))) {
+ return z.SetInt64(new $Int64(0, 0));
+ }
+ neg = false;
+ if ((a.$high < 0 || (a.$high === 0 && a.$low < 0))) {
+ neg = (x = (x$1 = new $Int64(b.$high - a.$high, b.$low - a.$low), new $Int64(x$1.$high & 0, (x$1.$low & 1) >>> 0)), (x.$high === 0 && x.$low === 0));
+ _tmp = new $Int64(-b.$high, -b.$low);
+ _tmp$1 = new $Int64(-a.$high, -a.$low);
+ a = _tmp;
+ b = _tmp$1;
+ }
+ z.abs = z.abs.mulRange((new $Uint64(a.$high, a.$low)), (new $Uint64(b.$high, b.$low)));
+ z.neg = neg;
+ return z;
+ };
+ Int.prototype.MulRange = function(a, b) { return this.$val.MulRange(a, b); };
+ Int.ptr.prototype.Binomial = function(n, k) {
+ var $ptr, _r, _tmp, _tmp$1, a, b, k, n, x, x$1, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; a = $f.a; b = $f.b; k = $f.k; n = $f.n; x = $f.x; x$1 = $f.x$1; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ a = [a];
+ b = [b];
+ z = this;
+ if ((x = $div64(n, new $Int64(0, 2), false), (x.$high < k.$high || (x.$high === k.$high && x.$low < k.$low))) && (k.$high < n.$high || (k.$high === n.$high && k.$low <= n.$low))) {
+ k = new $Int64(n.$high - k.$high, n.$low - k.$low);
+ }
+ _tmp = new Int.ptr(false, nat.nil);
+ _tmp$1 = new Int.ptr(false, nat.nil);
+ a[0] = $clone(_tmp, Int);
+ b[0] = $clone(_tmp$1, Int);
+ a[0].MulRange((x$1 = new $Int64(n.$high - k.$high, n.$low - k.$low), new $Int64(x$1.$high + 0, x$1.$low + 1)), n);
+ b[0].MulRange(new $Int64(0, 1), k);
+ _r = z.Quo(a[0], b[0]); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Binomial }; } $f.$ptr = $ptr; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f.a = a; $f.b = b; $f.k = k; $f.n = n; $f.x = x; $f.x$1 = x$1; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Binomial = function(n, k) { return this.$val.Binomial(n, k); };
+ Int.ptr.prototype.Quo = function(x, y) {
+ var $ptr, _r, _tuple, x, y, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; x = $f.x; y = $f.y; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ _r = z.abs.div(nat.nil, x.abs, y.abs); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ z.abs = _tuple[0];
+ z.neg = z.abs.$length > 0 && !(x.neg === y.neg);
+ $s = -1; return z;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Quo }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.x = x; $f.y = y; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Quo = function(x, y) { return this.$val.Quo(x, y); };
+ Int.ptr.prototype.Rem = function(x, y) {
+ var $ptr, _r, _tuple, x, y, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; x = $f.x; y = $f.y; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ _r = (nat.nil).div(z.abs, x.abs, y.abs); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ z.abs = _tuple[1];
+ z.neg = z.abs.$length > 0 && x.neg;
+ $s = -1; return z;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Rem }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.x = x; $f.y = y; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Rem = function(x, y) { return this.$val.Rem(x, y); };
+ Int.ptr.prototype.QuoRem = function(x, y, r) {
+ var $ptr, _r, _tmp, _tmp$1, _tuple, r, x, y, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tuple = $f._tuple; r = $f.r; x = $f.x; y = $f.y; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ _r = z.abs.div(r.abs, x.abs, y.abs); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ z.abs = _tuple[0];
+ r.abs = _tuple[1];
+ _tmp = z.abs.$length > 0 && !(x.neg === y.neg);
+ _tmp$1 = r.abs.$length > 0 && x.neg;
+ z.neg = _tmp;
+ r.neg = _tmp$1;
+ $s = -1; return [z, r];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.QuoRem }; } $f.$ptr = $ptr; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tuple = _tuple; $f.r = r; $f.x = x; $f.y = y; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.QuoRem = function(x, y, r) { return this.$val.QuoRem(x, y, r); };
+ Int.ptr.prototype.Div = function(x, y) {
+ var $ptr, _r, r, x, y, y_neg, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; r = $f.r; x = $f.x; y = $f.y; y_neg = $f.y_neg; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = [r];
+ z = this;
+ y_neg = y.neg;
+ r[0] = new Int.ptr(false, nat.nil);
+ _r = z.QuoRem(x, y, r[0]); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ if (r[0].neg) {
+ if (y_neg) {
+ z.Add(z, intOne);
+ } else {
+ z.Sub(z, intOne);
+ }
+ }
+ $s = -1; return z;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Div }; } $f.$ptr = $ptr; $f._r = _r; $f.r = r; $f.x = x; $f.y = y; $f.y_neg = y_neg; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Div = function(x, y) { return this.$val.Div(x, y); };
+ Int.ptr.prototype.Mod = function(x, y) {
+ var $ptr, _r, q, x, y, y0, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; q = $f.q; x = $f.x; y = $f.y; y0 = $f.y0; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ y0 = y;
+ if (z === y || alias(z.abs, y.abs)) {
+ y0 = new Int.ptr(false, nat.nil).Set(y);
+ }
+ q = new Int.ptr(false, nat.nil);
+ _r = q.QuoRem(x, y, z); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ if (z.neg) {
+ if (y0.neg) {
+ z.Sub(z, y0);
+ } else {
+ z.Add(z, y0);
+ }
+ }
+ $s = -1; return z;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Mod }; } $f.$ptr = $ptr; $f._r = _r; $f.q = q; $f.x = x; $f.y = y; $f.y0 = y0; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Mod = function(x, y) { return this.$val.Mod(x, y); };
+ Int.ptr.prototype.DivMod = function(x, y, m) {
+ var $ptr, _r, m, x, y, y0, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; m = $f.m; x = $f.x; y = $f.y; y0 = $f.y0; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ y0 = y;
+ if (z === y || alias(z.abs, y.abs)) {
+ y0 = new Int.ptr(false, nat.nil).Set(y);
+ }
+ _r = z.QuoRem(x, y, m); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ if (m.neg) {
+ if (y0.neg) {
+ z.Add(z, intOne);
+ m.Sub(m, y0);
+ } else {
+ z.Sub(z, intOne);
+ m.Add(m, y0);
+ }
+ }
+ $s = -1; return [z, m];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.DivMod }; } $f.$ptr = $ptr; $f._r = _r; $f.m = m; $f.x = x; $f.y = y; $f.y0 = y0; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.DivMod = function(x, y, m) { return this.$val.DivMod(x, y, m); };
+ Int.ptr.prototype.Cmp = function(y) {
+ var $ptr, r, x, y;
+ r = 0;
+ x = this;
+ if (x.neg === y.neg) {
+ r = x.abs.cmp(y.abs);
+ if (x.neg) {
+ r = -r;
+ }
+ } else if (x.neg) {
+ r = -1;
+ } else {
+ r = 1;
+ }
+ return r;
+ };
+ Int.prototype.Cmp = function(y) { return this.$val.Cmp(y); };
+ low64 = function(z) {
+ var $ptr, v, x, x$1, x$2, z;
+ if (z.$length === 0) {
+ return new $Uint64(0, 0);
+ }
+ v = ((x = (0 >= z.$length ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + 0]), new $Uint64(0, x.constructor === Number ? x : 1)));
+ if (true && z.$length > 1) {
+ v = (x$1 = $shiftLeft64(((x$2 = (1 >= z.$length ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + 1]), new $Uint64(0, x$2.constructor === Number ? x$2 : 1))), 32), new $Uint64(v.$high | x$1.$high, (v.$low | x$1.$low) >>> 0));
+ }
+ return v;
+ };
+ Int.ptr.prototype.Int64 = function() {
+ var $ptr, v, x, x$1;
+ x = this;
+ v = ((x$1 = low64(x.abs), new $Int64(x$1.$high, x$1.$low)));
+ if (x.neg) {
+ v = new $Int64(-v.$high, -v.$low);
+ }
+ return v;
+ };
+ Int.prototype.Int64 = function() { return this.$val.Int64(); };
+ Int.ptr.prototype.Uint64 = function() {
+ var $ptr, x;
+ x = this;
+ return low64(x.abs);
+ };
+ Int.prototype.Uint64 = function() { return this.$val.Uint64(); };
+ Int.ptr.prototype.SetString = function(s, base) {
+ var $ptr, _r, _tuple, _tuple$1, base, err, err$1, r, s, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; base = $f.base; err = $f.err; err$1 = $f.err$1; r = $f.r; s = $f.s; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ r = strings.NewReader(s);
+ _r = z.scan(r, base); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ err = _tuple[2];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [ptrType$1.nil, false];
+ }
+ _tuple$1 = r.ReadByte();
+ err$1 = _tuple$1[1];
+ if (!($interfaceIsEqual(err$1, io.EOF))) {
+ $s = -1; return [ptrType$1.nil, false];
+ }
+ $s = -1; return [z, true];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.SetString }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.base = base; $f.err = err; $f.err$1 = err$1; $f.r = r; $f.s = s; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.SetString = function(s, base) { return this.$val.SetString(s, base); };
+ Int.ptr.prototype.SetBytes = function(buf) {
+ var $ptr, buf, z;
+ z = this;
+ z.abs = z.abs.setBytes(buf);
+ z.neg = false;
+ return z;
+ };
+ Int.prototype.SetBytes = function(buf) { return this.$val.SetBytes(buf); };
+ Int.ptr.prototype.Bytes = function() {
+ var $ptr, buf, x;
+ x = this;
+ buf = $makeSlice(sliceType$1, ($imul(x.abs.$length, 4)));
+ return $subslice(buf, x.abs.bytes(buf));
+ };
+ Int.prototype.Bytes = function() { return this.$val.Bytes(); };
+ Int.ptr.prototype.BitLen = function() {
+ var $ptr, x;
+ x = this;
+ return x.abs.bitLen();
+ };
+ Int.prototype.BitLen = function() { return this.$val.BitLen(); };
+ Int.ptr.prototype.Exp = function(x, y, m) {
+ var $ptr, _r, m, mWords, x, y, yWords, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; m = $f.m; mWords = $f.mWords; x = $f.x; y = $f.y; yWords = $f.yWords; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ yWords = nat.nil;
+ if (!y.neg) {
+ yWords = y.abs;
+ }
+ mWords = nat.nil;
+ if (!(m === ptrType$1.nil)) {
+ mWords = m.abs;
+ }
+ _r = z.abs.expNN(x.abs, yWords, mWords); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ z.abs = _r;
+ z.neg = z.abs.$length > 0 && x.neg && yWords.$length > 0 && ((((0 >= yWords.$length ? ($throwRuntimeError("index out of range"), undefined) : yWords.$array[yWords.$offset + 0]) & 1) >>> 0) === 1);
+ if (z.neg && mWords.$length > 0) {
+ z.abs = z.abs.sub(mWords, z.abs);
+ z.neg = false;
+ }
+ $s = -1; return z;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Exp }; } $f.$ptr = $ptr; $f._r = _r; $f.m = m; $f.mWords = mWords; $f.x = x; $f.y = y; $f.yWords = yWords; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Exp = function(x, y, m) { return this.$val.Exp(x, y, m); };
+ Int.ptr.prototype.GCD = function(x, y, a, b) {
+ var $ptr, A, B, X, Y, _r, _r$1, _tmp, _tmp$1, _tmp$2, _tuple, a, b, lastX, lastY, q, r, temp, x, y, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; A = $f.A; B = $f.B; X = $f.X; Y = $f.Y; _r = $f._r; _r$1 = $f._r$1; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tuple = $f._tuple; a = $f.a; b = $f.b; lastX = $f.lastX; lastY = $f.lastY; q = $f.q; r = $f.r; temp = $f.temp; x = $f.x; y = $f.y; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ if (a.Sign() <= 0 || b.Sign() <= 0) {
+ z.SetInt64(new $Int64(0, 0));
+ if (!(x === ptrType$1.nil)) {
+ x.SetInt64(new $Int64(0, 0));
+ }
+ if (!(y === ptrType$1.nil)) {
+ y.SetInt64(new $Int64(0, 0));
+ }
+ $s = -1; return z;
+ }
+ /* */ if (x === ptrType$1.nil && y === ptrType$1.nil) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (x === ptrType$1.nil && y === ptrType$1.nil) { */ case 1:
+ _r = z.binaryGCD(a, b); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* } */ case 2:
+ A = new Int.ptr(false, nat.nil).Set(a);
+ B = new Int.ptr(false, nat.nil).Set(b);
+ X = new Int.ptr(false, nat.nil);
+ Y = new Int.ptr(false, nat.nil).SetInt64(new $Int64(0, 1));
+ lastX = new Int.ptr(false, nat.nil).SetInt64(new $Int64(0, 1));
+ lastY = new Int.ptr(false, nat.nil);
+ q = new Int.ptr(false, nat.nil);
+ temp = new Int.ptr(false, nat.nil);
+ r = new Int.ptr(false, nat.nil);
+ /* while (true) { */ case 4:
+ /* if (!(B.abs.$length > 0)) { break; } */ if(!(B.abs.$length > 0)) { $s = 5; continue; }
+ _r$1 = q.QuoRem(A, B, r); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple = _r$1;
+ q = _tuple[0];
+ r = _tuple[1];
+ _tmp = B;
+ _tmp$1 = r;
+ _tmp$2 = A;
+ A = _tmp;
+ B = _tmp$1;
+ r = _tmp$2;
+ temp.Set(X);
+ X.Mul(X, q);
+ X.neg = !X.neg;
+ X.Add(X, lastX);
+ lastX.Set(temp);
+ temp.Set(Y);
+ Y.Mul(Y, q);
+ Y.neg = !Y.neg;
+ Y.Add(Y, lastY);
+ lastY.Set(temp);
+ /* } */ $s = 4; continue; case 5:
+ if (!(x === ptrType$1.nil)) {
+ Int.copy(x, lastX);
+ }
+ if (!(y === ptrType$1.nil)) {
+ Int.copy(y, lastY);
+ }
+ Int.copy(z, A);
+ $s = -1; return z;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.GCD }; } $f.$ptr = $ptr; $f.A = A; $f.B = B; $f.X = X; $f.Y = Y; $f._r = _r; $f._r$1 = _r$1; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tuple = _tuple; $f.a = a; $f.b = b; $f.lastX = lastX; $f.lastY = lastY; $f.q = q; $f.r = r; $f.temp = temp; $f.x = x; $f.y = y; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.GCD = function(x, y, a, b) { return this.$val.GCD(x, y, a, b); };
+ Int.ptr.prototype.binaryGCD = function(a, b) {
+ var $ptr, _r, _r$1, _tmp, _tmp$1, _tmp$2, _tmp$3, a, b, k, t, u, v, vk, x, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; a = $f.a; b = $f.b; k = $f.k; t = $f.t; u = $f.u; v = $f.v; vk = $f.vk; x = $f.x; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ u = z;
+ v = new Int.ptr(false, nat.nil);
+ /* */ if (a.abs.$length > b.abs.$length) { $s = 2; continue; }
+ /* */ if (a.abs.$length < b.abs.$length) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (a.abs.$length > b.abs.$length) { */ case 2:
+ _r = v.Rem(a, b); /* */ $s = 6; case 6: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ u.Set(b);
+ $s = 5; continue;
+ /* } else if (a.abs.$length < b.abs.$length) { */ case 3:
+ _r$1 = v.Rem(b, a); /* */ $s = 7; case 7: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ u.Set(a);
+ $s = 5; continue;
+ /* } else { */ case 4:
+ v.Set(b);
+ u.Set(a);
+ /* } */ case 5:
+ case 1:
+ if (v.abs.$length === 0) {
+ $s = -1; return u;
+ }
+ k = u.abs.trailingZeroBits();
+ vk = v.abs.trailingZeroBits();
+ if (vk < k) {
+ k = vk;
+ }
+ u.Rsh(u, k);
+ v.Rsh(v, k);
+ t = new Int.ptr(false, nat.nil);
+ if (!(((((x = u.abs, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0])) & 1) >>> 0) === 0))) {
+ t.Neg(v);
+ } else {
+ t.Set(u);
+ }
+ while (true) {
+ if (!(t.abs.$length > 0)) { break; }
+ t.Rsh(t, t.abs.trailingZeroBits());
+ if (t.neg) {
+ _tmp = t;
+ _tmp$1 = v;
+ v = _tmp;
+ t = _tmp$1;
+ v.neg = v.abs.$length > 0 && !v.neg;
+ } else {
+ _tmp$2 = t;
+ _tmp$3 = u;
+ u = _tmp$2;
+ t = _tmp$3;
+ }
+ t.Sub(u, v);
+ }
+ $s = -1; return z.Lsh(u, k);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.binaryGCD }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f.a = a; $f.b = b; $f.k = k; $f.t = t; $f.u = u; $f.v = v; $f.vk = vk; $f.x = x; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.binaryGCD = function(a, b) { return this.$val.binaryGCD(a, b); };
+ Int.ptr.prototype.Rand = function(rnd, n) {
+ var $ptr, _r, n, rnd, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; n = $f.n; rnd = $f.rnd; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ z.neg = false;
+ if (n.neg || (n.abs.$length === 0)) {
+ z.abs = nat.nil;
+ $s = -1; return z;
+ }
+ _r = z.abs.random(rnd, n.abs, n.abs.bitLen()); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ z.abs = _r;
+ $s = -1; return z;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Rand }; } $f.$ptr = $ptr; $f._r = _r; $f.n = n; $f.rnd = rnd; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Rand = function(rnd, n) { return this.$val.Rand(rnd, n); };
+ Int.ptr.prototype.ModInverse = function(g, n) {
+ var $ptr, _r, _r$1, d, g, g2, n, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; d = $f.d; g = $f.g; g2 = $f.g2; n = $f.n; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ /* */ if (g.neg) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (g.neg) { */ case 1:
+ g2 = new Int.ptr(false, nat.nil);
+ _r = g2.Mod(g, n); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ g = _r;
+ /* } */ case 2:
+ d = new Int.ptr(false, nat.nil);
+ _r$1 = d.GCD(z, ptrType$1.nil, g, n); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ if (z.neg) {
+ z.Add(z, n);
+ }
+ $s = -1; return z;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.ModInverse }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.d = d; $f.g = g; $f.g2 = g2; $f.n = n; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.ModInverse = function(g, n) { return this.$val.ModInverse(g, n); };
+ Jacobi = function(x, y) {
+ var $ptr, _r, _r$1, _tmp, _tmp$1, _tmp$2, a, b, bmod8, c, j, s, x, x$1, x$2, x$3, x$4, y, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; a = $f.a; b = $f.b; bmod8 = $f.bmod8; c = $f.c; j = $f.j; s = $f.s; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; y = $f.y; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ a = [a];
+ b = [b];
+ c = [c];
+ /* */ if ((y.abs.$length === 0) || ((((x$1 = y.abs, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0])) & 1) >>> 0) === 0)) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ((y.abs.$length === 0) || ((((x$1 = y.abs, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0])) & 1) >>> 0) === 0)) { */ case 1:
+ _r = fmt.Sprintf("big: invalid 2nd argument to Int.Jacobi: need odd integer but got %s", new sliceType([y])); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $panic(new $String(_r));
+ /* } */ case 2:
+ _tmp = new Int.ptr(false, nat.nil);
+ _tmp$1 = new Int.ptr(false, nat.nil);
+ _tmp$2 = new Int.ptr(false, nat.nil);
+ a[0] = $clone(_tmp, Int);
+ b[0] = $clone(_tmp$1, Int);
+ c[0] = $clone(_tmp$2, Int);
+ a[0].Set(x);
+ b[0].Set(y);
+ j = 1;
+ if (b[0].neg) {
+ if (a[0].neg) {
+ j = -1;
+ }
+ b[0].neg = false;
+ }
+ /* while (true) { */ case 4:
+ if (b[0].Cmp(intOne) === 0) {
+ $s = -1; return j;
+ }
+ if (a[0].abs.$length === 0) {
+ $s = -1; return 0;
+ }
+ _r$1 = a[0].Mod(a[0], b[0]); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ if (a[0].abs.$length === 0) {
+ $s = -1; return 0;
+ }
+ s = a[0].abs.trailingZeroBits();
+ if (!((((s & 1) >>> 0) === 0))) {
+ bmod8 = ((x$2 = b[0].abs, (0 >= x$2.$length ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + 0])) & 7) >>> 0;
+ if ((bmod8 === 3) || (bmod8 === 5)) {
+ j = -j;
+ }
+ }
+ c[0].Rsh(a[0], s);
+ if (((((x$3 = b[0].abs, (0 >= x$3.$length ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + 0])) & 3) >>> 0) === 3) && ((((x$4 = c[0].abs, (0 >= x$4.$length ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + 0])) & 3) >>> 0) === 3)) {
+ j = -j;
+ }
+ a[0].Set(b[0]);
+ b[0].Set(c[0]);
+ /* } */ $s = 4; continue; case 5:
+ $s = -1; return 0;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Jacobi }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f.a = a; $f.b = b; $f.bmod8 = bmod8; $f.c = c; $f.j = j; $f.s = s; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.y = y; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Jacobi = Jacobi;
+ Int.ptr.prototype.modSqrt3Mod4Prime = function(x, p) {
+ var $ptr, _r, p, x, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; p = $f.p; x = $f.x; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ z.Set(p);
+ z.Add(z, intOne);
+ z.Rsh(z, 2);
+ _r = z.Exp(x, z, p); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return z;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.modSqrt3Mod4Prime }; } $f.$ptr = $ptr; $f._r = _r; $f.p = p; $f.x = x; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.modSqrt3Mod4Prime = function(x, p) { return this.$val.modSqrt3Mod4Prime(x, p); };
+ Int.ptr.prototype.modSqrtTonelliShanks = function(x, p) {
+ var $ptr, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _tmp, _tmp$1, _tmp$2, _tmp$3, b, e, g, m, n, p, r, s, t, x, y, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; b = $f.b; e = $f.e; g = $f.g; m = $f.m; n = $f.n; p = $f.p; r = $f.r; s = $f.s; t = $f.t; x = $f.x; y = $f.y; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = [b];
+ g = [g];
+ n = [n];
+ s = [s];
+ t = [t];
+ y = [y];
+ z = this;
+ s[0] = new Int.ptr(false, nat.nil);
+ s[0].Sub(p, intOne);
+ e = s[0].abs.trailingZeroBits();
+ s[0].Rsh(s[0], e);
+ n[0] = new Int.ptr(false, nat.nil);
+ n[0].SetInt64(new $Int64(0, 2));
+ /* while (true) { */ case 1:
+ _r = Jacobi(n[0], p); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* if (!(!((_r === -1)))) { break; } */ if(!(!((_r === -1)))) { $s = 2; continue; }
+ n[0].Add(n[0], intOne);
+ /* } */ $s = 1; continue; case 2:
+ _tmp = new Int.ptr(false, nat.nil);
+ _tmp$1 = new Int.ptr(false, nat.nil);
+ _tmp$2 = new Int.ptr(false, nat.nil);
+ _tmp$3 = new Int.ptr(false, nat.nil);
+ y[0] = $clone(_tmp, Int);
+ b[0] = $clone(_tmp$1, Int);
+ g[0] = $clone(_tmp$2, Int);
+ t[0] = $clone(_tmp$3, Int);
+ y[0].Add(s[0], intOne);
+ y[0].Rsh(y[0], 1);
+ _r$1 = y[0].Exp(x, y[0], p); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ _r$2 = b[0].Exp(x, s[0], p); /* */ $s = 5; case 5: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ _r$3 = g[0].Exp(n[0], s[0], p); /* */ $s = 6; case 6: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$3;
+ r = e;
+ /* while (true) { */ case 7:
+ m = 0;
+ t[0].Set(b[0]);
+ /* while (true) { */ case 9:
+ /* if (!(!((t[0].Cmp(intOne) === 0)))) { break; } */ if(!(!((t[0].Cmp(intOne) === 0)))) { $s = 10; continue; }
+ _r$4 = t[0].Mul(t[0], t[0]).Mod(t[0], p); /* */ $s = 11; case 11: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$4;
+ m = m + (1) >>> 0;
+ /* } */ $s = 9; continue; case 10:
+ if (m === 0) {
+ $s = -1; return z.Set(y[0]);
+ }
+ _r$5 = t[0].SetInt64(new $Int64(0, 0)).SetBit(t[0], ((((r - m >>> 0) - 1 >>> 0) >> 0)), 1).Exp(g[0], t[0], p); /* */ $s = 12; case 12: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _r$5;
+ _r$6 = g[0].Mul(t[0], t[0]).Mod(g[0], p); /* */ $s = 13; case 13: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$6;
+ _r$7 = y[0].Mul(y[0], t[0]).Mod(y[0], p); /* */ $s = 14; case 14: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _r$7;
+ _r$8 = b[0].Mul(b[0], g[0]).Mod(b[0], p); /* */ $s = 15; case 15: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _r$8;
+ r = m;
+ /* } */ $s = 7; continue; case 8:
+ $s = -1; return ptrType$1.nil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.modSqrtTonelliShanks }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f.b = b; $f.e = e; $f.g = g; $f.m = m; $f.n = n; $f.p = p; $f.r = r; $f.s = s; $f.t = t; $f.x = x; $f.y = y; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.modSqrtTonelliShanks = function(x, p) { return this.$val.modSqrtTonelliShanks(x, p); };
+ Int.ptr.prototype.ModSqrt = function(x, p) {
+ var $ptr, _1, _r, _r$1, _r$2, _r$3, _r$4, p, x, x$1, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; p = $f.p; x = $f.x; x$1 = $f.x$1; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ _r = Jacobi(x, p); /* */ $s = 2; case 2: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _1 = _r;
+ if (_1 === (-1)) {
+ $s = -1; return ptrType$1.nil;
+ } else if (_1 === (0)) {
+ $s = -1; return z.SetInt64(new $Int64(0, 0));
+ } else if (_1 === (1)) {
+ /* break; */ $s = 1; continue;
+ }
+ case 1:
+ /* */ if (x.neg || x.Cmp(p) >= 0) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (x.neg || x.Cmp(p) >= 0) { */ case 3:
+ _r$1 = new Int.ptr(false, nat.nil).Mod(x, p); /* */ $s = 5; case 5: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ x = _r$1;
+ /* } */ case 4:
+ /* */ if (p.abs.$length > 0 && ((_r$2 = (x$1 = p.abs, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0])) % 4, _r$2 === _r$2 ? _r$2 : $throwRuntimeError("integer divide by zero")) === 3)) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (p.abs.$length > 0 && ((_r$2 = (x$1 = p.abs, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0])) % 4, _r$2 === _r$2 ? _r$2 : $throwRuntimeError("integer divide by zero")) === 3)) { */ case 6:
+ _r$3 = z.modSqrt3Mod4Prime(x, p); /* */ $s = 8; case 8: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $s = -1; return _r$3;
+ /* } */ case 7:
+ _r$4 = z.modSqrtTonelliShanks(x, p); /* */ $s = 9; case 9: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ $s = -1; return _r$4;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.ModSqrt }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f.p = p; $f.x = x; $f.x$1 = x$1; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.ModSqrt = function(x, p) { return this.$val.ModSqrt(x, p); };
+ Int.ptr.prototype.Lsh = function(x, n) {
+ var $ptr, n, x, z;
+ z = this;
+ z.abs = z.abs.shl(x.abs, n);
+ z.neg = x.neg;
+ return z;
+ };
+ Int.prototype.Lsh = function(x, n) { return this.$val.Lsh(x, n); };
+ Int.ptr.prototype.Rsh = function(x, n) {
+ var $ptr, n, t, x, z;
+ z = this;
+ if (x.neg) {
+ t = z.abs.sub(x.abs, natOne);
+ t = t.shr(t, n);
+ z.abs = t.add(t, natOne);
+ z.neg = true;
+ return z;
+ }
+ z.abs = z.abs.shr(x.abs, n);
+ z.neg = false;
+ return z;
+ };
+ Int.prototype.Rsh = function(x, n) { return this.$val.Rsh(x, n); };
+ Int.ptr.prototype.Bit = function(i) {
+ var $ptr, i, t, x, x$1;
+ x = this;
+ if (i === 0) {
+ if (x.abs.$length > 0) {
+ return (((((x$1 = x.abs, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0])) & 1) >>> 0) >>> 0));
+ }
+ return 0;
+ }
+ if (i < 0) {
+ $panic(new $String("negative bit index"));
+ }
+ if (x.neg) {
+ t = (nat.nil).sub(x.abs, natOne);
+ return (t.bit(((i >>> 0))) ^ 1) >>> 0;
+ }
+ return x.abs.bit(((i >>> 0)));
+ };
+ Int.prototype.Bit = function(i) { return this.$val.Bit(i); };
+ Int.ptr.prototype.SetBit = function(x, i, b) {
+ var $ptr, b, i, t, x, z;
+ z = this;
+ if (i < 0) {
+ $panic(new $String("negative bit index"));
+ }
+ if (x.neg) {
+ t = z.abs.sub(x.abs, natOne);
+ t = t.setBit(t, ((i >>> 0)), (b ^ 1) >>> 0);
+ z.abs = t.add(t, natOne);
+ z.neg = z.abs.$length > 0;
+ return z;
+ }
+ z.abs = z.abs.setBit(x.abs, ((i >>> 0)), b);
+ z.neg = false;
+ return z;
+ };
+ Int.prototype.SetBit = function(x, i, b) { return this.$val.SetBit(x, i, b); };
+ Int.ptr.prototype.And = function(x, y) {
+ var $ptr, _tmp, _tmp$1, x, x1, y, y1, y1$1, z;
+ z = this;
+ if (x.neg === y.neg) {
+ if (x.neg) {
+ x1 = (nat.nil).sub(x.abs, natOne);
+ y1 = (nat.nil).sub(y.abs, natOne);
+ z.abs = z.abs.add(z.abs.or(x1, y1), natOne);
+ z.neg = true;
+ return z;
+ }
+ z.abs = z.abs.and(x.abs, y.abs);
+ z.neg = false;
+ return z;
+ }
+ if (x.neg) {
+ _tmp = y;
+ _tmp$1 = x;
+ x = _tmp;
+ y = _tmp$1;
+ }
+ y1$1 = (nat.nil).sub(y.abs, natOne);
+ z.abs = z.abs.andNot(x.abs, y1$1);
+ z.neg = false;
+ return z;
+ };
+ Int.prototype.And = function(x, y) { return this.$val.And(x, y); };
+ Int.ptr.prototype.AndNot = function(x, y) {
+ var $ptr, x, x1, x1$1, y, y1, y1$1, z;
+ z = this;
+ if (x.neg === y.neg) {
+ if (x.neg) {
+ x1 = (nat.nil).sub(x.abs, natOne);
+ y1 = (nat.nil).sub(y.abs, natOne);
+ z.abs = z.abs.andNot(y1, x1);
+ z.neg = false;
+ return z;
+ }
+ z.abs = z.abs.andNot(x.abs, y.abs);
+ z.neg = false;
+ return z;
+ }
+ if (x.neg) {
+ x1$1 = (nat.nil).sub(x.abs, natOne);
+ z.abs = z.abs.add(z.abs.or(x1$1, y.abs), natOne);
+ z.neg = true;
+ return z;
+ }
+ y1$1 = (nat.nil).sub(y.abs, natOne);
+ z.abs = z.abs.and(x.abs, y1$1);
+ z.neg = false;
+ return z;
+ };
+ Int.prototype.AndNot = function(x, y) { return this.$val.AndNot(x, y); };
+ Int.ptr.prototype.Or = function(x, y) {
+ var $ptr, _tmp, _tmp$1, x, x1, y, y1, y1$1, z;
+ z = this;
+ if (x.neg === y.neg) {
+ if (x.neg) {
+ x1 = (nat.nil).sub(x.abs, natOne);
+ y1 = (nat.nil).sub(y.abs, natOne);
+ z.abs = z.abs.add(z.abs.and(x1, y1), natOne);
+ z.neg = true;
+ return z;
+ }
+ z.abs = z.abs.or(x.abs, y.abs);
+ z.neg = false;
+ return z;
+ }
+ if (x.neg) {
+ _tmp = y;
+ _tmp$1 = x;
+ x = _tmp;
+ y = _tmp$1;
+ }
+ y1$1 = (nat.nil).sub(y.abs, natOne);
+ z.abs = z.abs.add(z.abs.andNot(y1$1, x.abs), natOne);
+ z.neg = true;
+ return z;
+ };
+ Int.prototype.Or = function(x, y) { return this.$val.Or(x, y); };
+ Int.ptr.prototype.Xor = function(x, y) {
+ var $ptr, _tmp, _tmp$1, x, x1, y, y1, y1$1, z;
+ z = this;
+ if (x.neg === y.neg) {
+ if (x.neg) {
+ x1 = (nat.nil).sub(x.abs, natOne);
+ y1 = (nat.nil).sub(y.abs, natOne);
+ z.abs = z.abs.xor(x1, y1);
+ z.neg = false;
+ return z;
+ }
+ z.abs = z.abs.xor(x.abs, y.abs);
+ z.neg = false;
+ return z;
+ }
+ if (x.neg) {
+ _tmp = y;
+ _tmp$1 = x;
+ x = _tmp;
+ y = _tmp$1;
+ }
+ y1$1 = (nat.nil).sub(y.abs, natOne);
+ z.abs = z.abs.add(z.abs.xor(x.abs, y1$1), natOne);
+ z.neg = true;
+ return z;
+ };
+ Int.prototype.Xor = function(x, y) { return this.$val.Xor(x, y); };
+ Int.ptr.prototype.Not = function(x) {
+ var $ptr, x, z;
+ z = this;
+ if (x.neg) {
+ z.abs = z.abs.sub(x.abs, natOne);
+ z.neg = false;
+ return z;
+ }
+ z.abs = z.abs.add(x.abs, natOne);
+ z.neg = true;
+ return z;
+ };
+ Int.prototype.Not = function(x) { return this.$val.Not(x); };
+ Int.ptr.prototype.Sqrt = function(x) {
+ var $ptr, _r, x, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; x = $f.x; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ if (x.neg) {
+ $panic(new $String("square root of negative number"));
+ }
+ z.neg = false;
+ _r = z.abs.sqrt(x.abs); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ z.abs = _r;
+ $s = -1; return z;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Sqrt }; } $f.$ptr = $ptr; $f._r = _r; $f.x = x; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Sqrt = function(x) { return this.$val.Sqrt(x); };
+ Int.ptr.prototype.Text = function(base) {
+ var $ptr, _r, base, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; base = $f.base; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ x = this;
+ if (x === ptrType$1.nil) {
+ $s = -1; return "<nil>";
+ }
+ _r = x.abs.itoa(x.neg, base); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return ($bytesToString(_r));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Text }; } $f.$ptr = $ptr; $f._r = _r; $f.base = base; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Text = function(base) { return this.$val.Text(base); };
+ Int.ptr.prototype.Append = function(buf, base) {
+ var $ptr, _arg, _arg$1, _r, base, buf, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _r = $f._r; base = $f.base; buf = $f.buf; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ x = this;
+ if (x === ptrType$1.nil) {
+ $s = -1; return $appendSlice(buf, "<nil>");
+ }
+ _arg = buf;
+ _r = x.abs.itoa(x.neg, base); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg$1 = _r;
+ $s = -1; return $appendSlice(_arg, _arg$1);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Append }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._r = _r; $f.base = base; $f.buf = buf; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Append = function(buf, base) { return this.$val.Append(buf, base); };
+ Int.ptr.prototype.String = function() {
+ var $ptr, _r, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ x = this;
+ _r = x.Text(10); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.String }; } $f.$ptr = $ptr; $f._r = _r; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.String = function() { return this.$val.String(); };
+ writeMultiple = function(s, text, count) {
+ var $ptr, _r, b, count, s, text, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; b = $f.b; count = $f.count; s = $f.s; text = $f.text; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ if (text.length > 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (text.length > 0) { */ case 1:
+ b = (new sliceType$1($stringToBytes(text)));
+ /* while (true) { */ case 3:
+ /* if (!(count > 0)) { break; } */ if(!(count > 0)) { $s = 4; continue; }
+ _r = s.Write(b); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ count = count - (1) >> 0;
+ /* } */ $s = 3; continue; case 4:
+ /* } */ case 2:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: writeMultiple }; } $f.$ptr = $ptr; $f._r = _r; $f.b = b; $f.count = count; $f.s = s; $f.text = text; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.ptr.prototype.Format = function(s, ch) {
+ var $ptr, _1, _2, _arg, _arg$1, _arg$2, _i, _r, _r$1, _r$10, _r$11, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _ref, _tuple, _tuple$1, base, ch, d, d$1, digits, i, left, length, precision, precisionSet, prefix, right, s, sign, width, widthSet, x, zeros, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _2 = $f._2; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _ref = $f._ref; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; base = $f.base; ch = $f.ch; d = $f.d; d$1 = $f.d$1; digits = $f.digits; i = $f.i; left = $f.left; length = $f.length; precision = $f.precision; precisionSet = $f.precisionSet; prefix = $f.prefix; right = $f.right; s = $f.s; sign = $f.sign; width = $f.width; widthSet = $f.widthSet; x = $f.x; zeros = $f.zeros; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ x = this;
+ base = 0;
+ _1 = ch;
+ /* */ if (_1 === (98)) { $s = 2; continue; }
+ /* */ if (_1 === (111)) { $s = 3; continue; }
+ /* */ if ((_1 === (100)) || (_1 === (115)) || (_1 === (118))) { $s = 4; continue; }
+ /* */ if ((_1 === (120)) || (_1 === (88))) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (_1 === (98)) { */ case 2:
+ base = 2;
+ $s = 7; continue;
+ /* } else if (_1 === (111)) { */ case 3:
+ base = 8;
+ $s = 7; continue;
+ /* } else if ((_1 === (100)) || (_1 === (115)) || (_1 === (118))) { */ case 4:
+ base = 10;
+ $s = 7; continue;
+ /* } else if ((_1 === (120)) || (_1 === (88))) { */ case 5:
+ base = 16;
+ $s = 7; continue;
+ /* } else { */ case 6:
+ _arg = s;
+ _arg$1 = new $Int32(ch);
+ _r = x.String(); /* */ $s = 8; case 8: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg$2 = new $String(_r);
+ _r$1 = fmt.Fprintf(_arg, "%%!%c(big.Int=%s)", new sliceType([_arg$1, _arg$2])); /* */ $s = 9; case 9: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $s = -1; return;
+ /* } */ case 7:
+ case 1:
+ /* */ if (x === ptrType$1.nil) { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if (x === ptrType$1.nil) { */ case 10:
+ _r$2 = fmt.Fprint(s, new sliceType([new $String("<nil>")])); /* */ $s = 12; case 12: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ $s = -1; return;
+ /* } */ case 11:
+ sign = "";
+ /* */ if (x.neg) { $s = 14; continue; }
+ _r$3 = s.Flag(43); /* */ $s = 18; case 18: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ /* */ if (_r$3) { $s = 15; continue; }
+ _r$4 = s.Flag(32); /* */ $s = 19; case 19: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ /* */ if (_r$4) { $s = 16; continue; }
+ /* */ $s = 17; continue;
+ /* if (x.neg) { */ case 14:
+ sign = "-";
+ $s = 17; continue;
+ /* } else if (_r$3) { */ case 15:
+ sign = "+";
+ $s = 17; continue;
+ /* } else if (_r$4) { */ case 16:
+ sign = " ";
+ /* } */ case 17:
+ case 13:
+ prefix = "";
+ _r$5 = s.Flag(35); /* */ $s = 22; case 22: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ /* */ if (_r$5) { $s = 20; continue; }
+ /* */ $s = 21; continue;
+ /* if (_r$5) { */ case 20:
+ _2 = ch;
+ if (_2 === (111)) {
+ prefix = "0";
+ } else if (_2 === (120)) {
+ prefix = "0x";
+ } else if (_2 === (88)) {
+ prefix = "0X";
+ }
+ /* } */ case 21:
+ _r$6 = x.abs.utoa(base); /* */ $s = 23; case 23: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ digits = _r$6;
+ if (ch === 88) {
+ _ref = digits;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ d = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (97 <= d && d <= 122) {
+ ((i < 0 || i >= digits.$length) ? ($throwRuntimeError("index out of range"), undefined) : digits.$array[digits.$offset + i] = (65 + ((d - 97 << 24 >>> 24)) << 24 >>> 24));
+ }
+ _i++;
+ }
+ }
+ left = 0;
+ zeros = 0;
+ right = 0;
+ _r$7 = s.Precision(); /* */ $s = 24; case 24: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _tuple = _r$7;
+ precision = _tuple[0];
+ precisionSet = _tuple[1];
+ if (precisionSet) {
+ if (digits.$length < precision) {
+ zeros = precision - digits.$length >> 0;
+ } else if ((digits.$length === 1) && ((0 >= digits.$length ? ($throwRuntimeError("index out of range"), undefined) : digits.$array[digits.$offset + 0]) === 48) && (precision === 0)) {
+ $s = -1; return;
+ }
+ }
+ length = ((sign.length + prefix.length >> 0) + zeros >> 0) + digits.$length >> 0;
+ _r$8 = s.Width(); /* */ $s = 25; case 25: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _tuple$1 = _r$8;
+ width = _tuple$1[0];
+ widthSet = _tuple$1[1];
+ /* */ if (widthSet && length < width) { $s = 26; continue; }
+ /* */ $s = 27; continue;
+ /* if (widthSet && length < width) { */ case 26:
+ d$1 = width - length >> 0;
+ _r$9 = s.Flag(45); /* */ $s = 33; case 33: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ /* */ if (_r$9) { $s = 29; continue; }
+ _r$10 = s.Flag(48); /* */ $s = 34; case 34: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ /* */ if (_r$10 && !precisionSet) { $s = 30; continue; }
+ /* */ $s = 31; continue;
+ /* if (_r$9) { */ case 29:
+ right = d$1;
+ $s = 32; continue;
+ /* } else if (_r$10 && !precisionSet) { */ case 30:
+ zeros = d$1;
+ $s = 32; continue;
+ /* } else { */ case 31:
+ left = d$1;
+ /* } */ case 32:
+ case 28:
+ /* } */ case 27:
+ $r = writeMultiple(s, " ", left); /* */ $s = 35; case 35: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = writeMultiple(s, sign, 1); /* */ $s = 36; case 36: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = writeMultiple(s, prefix, 1); /* */ $s = 37; case 37: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = writeMultiple(s, "0", zeros); /* */ $s = 38; case 38: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$11 = s.Write(digits); /* */ $s = 39; case 39: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _r$11;
+ $r = writeMultiple(s, " ", right); /* */ $s = 40; case 40: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Format }; } $f.$ptr = $ptr; $f._1 = _1; $f._2 = _2; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._ref = _ref; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.base = base; $f.ch = ch; $f.d = d; $f.d$1 = d$1; $f.digits = digits; $f.i = i; $f.left = left; $f.length = length; $f.precision = precision; $f.precisionSet = precisionSet; $f.prefix = prefix; $f.right = right; $f.s = s; $f.sign = sign; $f.width = width; $f.widthSet = widthSet; $f.x = x; $f.zeros = zeros; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Format = function(s, ch) { return this.$val.Format(s, ch); };
+ Int.ptr.prototype.scan = function(r, base) {
+ var $ptr, _r, _r$1, _tuple, _tuple$1, base, err, neg, r, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; base = $f.base; err = $f.err; neg = $f.neg; r = $f.r; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ _r = scanSign(r); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ neg = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [ptrType$1.nil, 0, err];
+ }
+ _r$1 = z.abs.scan(r, base, false); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ z.abs = _tuple$1[0];
+ base = _tuple$1[1];
+ err = _tuple$1[3];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [ptrType$1.nil, base, err];
+ }
+ z.neg = z.abs.$length > 0 && neg;
+ $s = -1; return [z, base, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.scan }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.base = base; $f.err = err; $f.neg = neg; $f.r = r; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.scan = function(r, base) { return this.$val.scan(r, base); };
+ scanSign = function(r) {
+ var $ptr, _1, _r, _r$1, _tmp, _tmp$1, _tuple, ch, err, neg, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; _r$1 = $f._r$1; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tuple = $f._tuple; ch = $f.ch; err = $f.err; neg = $f.neg; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ neg = false;
+ err = $ifaceNil;
+ ch = 0;
+ _r = r.ReadByte(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ ch = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ _tmp = false;
+ _tmp$1 = err;
+ neg = _tmp;
+ err = _tmp$1;
+ $s = -1; return [neg, err];
+ }
+ _1 = ch;
+ /* */ if (_1 === (45)) { $s = 3; continue; }
+ /* */ if (_1 === (43)) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (_1 === (45)) { */ case 3:
+ neg = true;
+ $s = 6; continue;
+ /* } else if (_1 === (43)) { */ case 4:
+ $s = 6; continue;
+ /* } else { */ case 5:
+ _r$1 = r.UnreadByte(); /* */ $s = 7; case 7: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ /* } */ case 6:
+ case 2:
+ $s = -1; return [neg, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: scanSign }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f._r$1 = _r$1; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tuple = _tuple; $f.ch = ch; $f.err = err; $f.neg = neg; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ byteReader.ptr.prototype.ReadByte = function() {
+ var $ptr, _r, _r$1, _tuple, ch, err, r, size, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; ch = $f.ch; err = $f.err; r = $f.r; size = $f.size; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ _r = r.ScanState.ReadRune(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ ch = _tuple[0];
+ size = _tuple[1];
+ err = _tuple[2];
+ /* */ if (!((size === 1)) && $interfaceIsEqual(err, $ifaceNil)) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!((size === 1)) && $interfaceIsEqual(err, $ifaceNil)) { */ case 2:
+ _r$1 = fmt.Errorf("invalid rune %#U", new sliceType([new $Int32(ch)])); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ err = _r$1;
+ /* } */ case 3:
+ $s = -1; return [((ch << 24 >>> 24)), err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: byteReader.ptr.prototype.ReadByte }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.ch = ch; $f.err = err; $f.r = r; $f.size = size; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ byteReader.prototype.ReadByte = function() { return this.$val.ReadByte(); };
+ byteReader.ptr.prototype.UnreadByte = function() {
+ var $ptr, _r, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ _r = r.ScanState.UnreadRune(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: byteReader.ptr.prototype.UnreadByte }; } $f.$ptr = $ptr; $f._r = _r; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ byteReader.prototype.UnreadByte = function() { return this.$val.UnreadByte(); };
+ Int.ptr.prototype.Scan = function(s, ch) {
+ var $ptr, _1, _r, _tuple, base, ch, err, s, x, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; _tuple = $f._tuple; base = $f.base; ch = $f.ch; err = $f.err; s = $f.s; x = $f.x; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ $r = s.SkipSpace(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ base = 0;
+ _1 = ch;
+ if (_1 === (98)) {
+ base = 2;
+ } else if (_1 === (111)) {
+ base = 8;
+ } else if (_1 === (100)) {
+ base = 10;
+ } else if ((_1 === (120)) || (_1 === (88))) {
+ base = 16;
+ } else if ((_1 === (115)) || (_1 === (118))) {
+ } else {
+ $s = -1; return errors.New("Int.Scan: invalid verb");
+ }
+ _r = z.scan((x = new byteReader.ptr(s), new x.constructor.elem(x)), base); /* */ $s = 2; case 2: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ err = _tuple[2];
+ $s = -1; return err;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Scan }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f._tuple = _tuple; $f.base = base; $f.ch = ch; $f.err = err; $f.s = s; $f.x = x; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Scan = function(s, ch) { return this.$val.Scan(s, ch); };
+ Int.ptr.prototype.GobEncode = function() {
+ var $ptr, b, buf, i, x;
+ x = this;
+ if (x === ptrType$1.nil) {
+ return [sliceType$1.nil, $ifaceNil];
+ }
+ buf = $makeSlice(sliceType$1, (1 + ($imul(x.abs.$length, 4)) >> 0));
+ i = x.abs.bytes(buf) - 1 >> 0;
+ b = 2;
+ if (x.neg) {
+ b = (b | (1)) >>> 0;
+ }
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = b);
+ return [$subslice(buf, i), $ifaceNil];
+ };
+ Int.prototype.GobEncode = function() { return this.$val.GobEncode(); };
+ Int.ptr.prototype.GobDecode = function(buf) {
+ var $ptr, _r, b, buf, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; b = $f.b; buf = $f.buf; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ if (buf.$length === 0) {
+ Int.copy(z, new Int.ptr(false, nat.nil));
+ $s = -1; return $ifaceNil;
+ }
+ b = (0 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 0]);
+ /* */ if (!(((b >>> 1 << 24 >>> 24) === 1))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!(((b >>> 1 << 24 >>> 24) === 1))) { */ case 1:
+ _r = fmt.Errorf("Int.GobDecode: encoding version %d not supported", new sliceType([new $Uint8((b >>> 1 << 24 >>> 24))])); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* } */ case 2:
+ z.neg = !((((b & 1) >>> 0) === 0));
+ z.abs = z.abs.setBytes($subslice(buf, 1));
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.GobDecode }; } $f.$ptr = $ptr; $f._r = _r; $f.b = b; $f.buf = buf; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.GobDecode = function(buf) { return this.$val.GobDecode(buf); };
+ Int.ptr.prototype.MarshalText = function() {
+ var $ptr, _r, _tmp, _tmp$1, _tmp$2, _tmp$3, err, text, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; err = $f.err; text = $f.text; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ text = sliceType$1.nil;
+ err = $ifaceNil;
+ x = this;
+ if (x === ptrType$1.nil) {
+ _tmp = (new sliceType$1($stringToBytes("<nil>")));
+ _tmp$1 = $ifaceNil;
+ text = _tmp;
+ err = _tmp$1;
+ $s = -1; return [text, err];
+ }
+ _r = x.abs.itoa(x.neg, 10); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tmp$2 = _r;
+ _tmp$3 = $ifaceNil;
+ text = _tmp$2;
+ err = _tmp$3;
+ $s = -1; return [text, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.MarshalText }; } $f.$ptr = $ptr; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f.err = err; $f.text = text; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.MarshalText = function() { return this.$val.MarshalText(); };
+ Int.ptr.prototype.UnmarshalText = function(text) {
+ var $ptr, _r, _r$1, _tuple, ok, text, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; ok = $f.ok; text = $f.text; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ _r = z.SetString(($bytesToString(text)), 0); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ ok = _tuple[1];
+ /* */ if (!ok) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!ok) { */ case 2:
+ _r$1 = fmt.Errorf("math/big: cannot unmarshal %q into a *big.Int", new sliceType([text])); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* } */ case 3:
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.UnmarshalText }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.ok = ok; $f.text = text; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.UnmarshalText = function(text) { return this.$val.UnmarshalText(text); };
+ Int.ptr.prototype.MarshalJSON = function() {
+ var $ptr, _r, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ x = this;
+ _r = x.MarshalText(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.MarshalJSON }; } $f.$ptr = $ptr; $f._r = _r; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.MarshalJSON = function() { return this.$val.MarshalJSON(); };
+ Int.ptr.prototype.UnmarshalJSON = function(text) {
+ var $ptr, _r, text, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; text = $f.text; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ if (($bytesToString(text)) === "null") {
+ $s = -1; return $ifaceNil;
+ }
+ _r = z.UnmarshalText(text); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.UnmarshalJSON }; } $f.$ptr = $ptr; $f._r = _r; $f.text = text; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.UnmarshalJSON = function(text) { return this.$val.UnmarshalJSON(text); };
+ nat.prototype.clear = function() {
+ var $ptr, _i, _ref, i, z;
+ z = this;
+ _ref = z;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i] = 0);
+ _i++;
+ }
+ };
+ $ptrType(nat).prototype.clear = function() { return this.$get().clear(); };
+ nat.prototype.norm = function() {
+ var $ptr, i, x, z;
+ z = this;
+ i = z.$length;
+ while (true) {
+ if (!(i > 0 && ((x = i - 1 >> 0, ((x < 0 || x >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + x])) === 0))) { break; }
+ i = i - (1) >> 0;
+ }
+ return $subslice(z, 0, i);
+ };
+ $ptrType(nat).prototype.norm = function() { return this.$get().norm(); };
+ nat.prototype.make = function(n) {
+ var $ptr, n, z;
+ z = this;
+ if (n <= z.$capacity) {
+ return $subslice(z, 0, n);
+ }
+ return $makeSlice(nat, n, (n + 4 >> 0));
+ };
+ $ptrType(nat).prototype.make = function(n) { return this.$get().make(n); };
+ nat.prototype.setWord = function(x) {
+ var $ptr, x, z;
+ z = this;
+ if (x === 0) {
+ return $subslice(z, 0, 0);
+ }
+ z = z.make(1);
+ (0 >= z.$length ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + 0] = x);
+ return z;
+ };
+ $ptrType(nat).prototype.setWord = function(x) { return this.$get().setWord(x); };
+ nat.prototype.setUint64 = function(x) {
+ var $ptr, _i, _ref, i, n, t, w, x, x$1, z;
+ z = this;
+ w = ((x.$low >>> 0));
+ if ((x$1 = (new $Uint64(0, w.constructor === Number ? w : 1)), (x$1.$high === x.$high && x$1.$low === x.$low))) {
+ return z.setWord(w);
+ }
+ n = 0;
+ t = x;
+ while (true) {
+ if (!((t.$high > 0 || (t.$high === 0 && t.$low > 0)))) { break; }
+ n = n + (1) >> 0;
+ t = $shiftRightUint64(t, (32));
+ }
+ z = z.make(n);
+ _ref = z;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i] = ((new $Uint64(x.$high & 0, (x.$low & 4294967295) >>> 0).$low >>> 0)));
+ x = $shiftRightUint64(x, (32));
+ _i++;
+ }
+ return z;
+ };
+ $ptrType(nat).prototype.setUint64 = function(x) { return this.$get().setUint64(x); };
+ nat.prototype.set = function(x) {
+ var $ptr, x, z;
+ z = this;
+ z = z.make(x.$length);
+ $copySlice(z, x);
+ return z;
+ };
+ $ptrType(nat).prototype.set = function(x) { return this.$get().set(x); };
+ nat.prototype.add = function(x, y) {
+ var $ptr, c, m, n, x, x$1, x$2, x$3, y, z;
+ z = this;
+ m = x.$length;
+ n = y.$length;
+ if (m < n) {
+ return z.add(y, x);
+ } else if ((m === 0)) {
+ return $subslice(z, 0, 0);
+ } else if ((n === 0)) {
+ return z.set(x);
+ }
+ z = z.make(m + 1 >> 0);
+ c = addVV((x$1 = $subslice(z, 0, n), $subslice(new sliceType$2(x$1.$array), x$1.$offset, x$1.$offset + x$1.$length)), $subslice(new sliceType$2(x.$array), x.$offset, x.$offset + x.$length), $subslice(new sliceType$2(y.$array), y.$offset, y.$offset + y.$length));
+ if (m > n) {
+ c = addVW((x$2 = $subslice(z, n, m), $subslice(new sliceType$2(x$2.$array), x$2.$offset, x$2.$offset + x$2.$length)), (x$3 = $subslice(x, n), $subslice(new sliceType$2(x$3.$array), x$3.$offset, x$3.$offset + x$3.$length)), c);
+ }
+ ((m < 0 || m >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + m] = c);
+ return z.norm();
+ };
+ $ptrType(nat).prototype.add = function(x, y) { return this.$get().add(x, y); };
+ nat.prototype.sub = function(x, y) {
+ var $ptr, c, m, n, x, x$1, x$2, x$3, y, z;
+ z = this;
+ m = x.$length;
+ n = y.$length;
+ if (m < n) {
+ $panic(new $String("underflow"));
+ } else if ((m === 0)) {
+ return $subslice(z, 0, 0);
+ } else if ((n === 0)) {
+ return z.set(x);
+ }
+ z = z.make(m);
+ c = subVV((x$1 = $subslice(z, 0, n), $subslice(new sliceType$2(x$1.$array), x$1.$offset, x$1.$offset + x$1.$length)), $subslice(new sliceType$2(x.$array), x.$offset, x.$offset + x.$length), $subslice(new sliceType$2(y.$array), y.$offset, y.$offset + y.$length));
+ if (m > n) {
+ c = subVW((x$2 = $subslice(z, n), $subslice(new sliceType$2(x$2.$array), x$2.$offset, x$2.$offset + x$2.$length)), (x$3 = $subslice(x, n), $subslice(new sliceType$2(x$3.$array), x$3.$offset, x$3.$offset + x$3.$length)), c);
+ }
+ if (!((c === 0))) {
+ $panic(new $String("underflow"));
+ }
+ return z.norm();
+ };
+ $ptrType(nat).prototype.sub = function(x, y) { return this.$get().sub(x, y); };
+ nat.prototype.cmp = function(y) {
+ var $ptr, i, m, n, r, x, y;
+ r = 0;
+ x = this;
+ m = x.$length;
+ n = y.$length;
+ if (!((m === n)) || (m === 0)) {
+ if (m < n) {
+ r = -1;
+ } else if (m > n) {
+ r = 1;
+ }
+ return r;
+ }
+ i = m - 1 >> 0;
+ while (true) {
+ if (!(i > 0 && (((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]) === ((i < 0 || i >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + i])))) { break; }
+ i = i - (1) >> 0;
+ }
+ if (((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]) < ((i < 0 || i >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + i])) {
+ r = -1;
+ } else if (((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]) > ((i < 0 || i >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + i])) {
+ r = 1;
+ }
+ return r;
+ };
+ $ptrType(nat).prototype.cmp = function(y) { return this.$get().cmp(y); };
+ nat.prototype.mulAddWW = function(x, y, r) {
+ var $ptr, m, r, x, x$1, y, z;
+ z = this;
+ m = x.$length;
+ if ((m === 0) || (y === 0)) {
+ return z.setWord(r);
+ }
+ z = z.make(m + 1 >> 0);
+ ((m < 0 || m >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + m] = mulAddVWW((x$1 = $subslice(z, 0, m), $subslice(new sliceType$2(x$1.$array), x$1.$offset, x$1.$offset + x$1.$length)), $subslice(new sliceType$2(x.$array), x.$offset, x.$offset + x.$length), y, r));
+ return z.norm();
+ };
+ $ptrType(nat).prototype.mulAddWW = function(x, y, r) { return this.$get().mulAddWW(x, y, r); };
+ basicMul = function(z, x, y) {
+ var $ptr, _i, _ref, d, i, x, x$1, x$2, y, z;
+ $subslice(z, 0, (x.$length + y.$length >> 0)).clear();
+ _ref = y;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ d = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (!((d === 0))) {
+ (x$2 = x.$length + i >> 0, ((x$2 < 0 || x$2 >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + x$2] = addMulVVW((x$1 = $subslice(z, i, (i + x.$length >> 0)), $subslice(new sliceType$2(x$1.$array), x$1.$offset, x$1.$offset + x$1.$length)), $subslice(new sliceType$2(x.$array), x.$offset, x.$offset + x.$length), d)));
+ }
+ _i++;
+ }
+ };
+ nat.prototype.montgomery = function(x, y, m, k, n) {
+ var $ptr, c, c2, c3, cx, cy, d, i, k, m, n, t, x, x$1, y, z;
+ z = this;
+ if (!((x.$length === n)) || !((y.$length === n)) || !((m.$length === n))) {
+ $panic(new $String("math/big: mismatched montgomery number lengths"));
+ }
+ z = z.make(n);
+ z.clear();
+ c = 0;
+ i = 0;
+ while (true) {
+ if (!(i < n)) { break; }
+ d = ((i < 0 || i >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + i]);
+ c2 = addMulVVW($subslice(new sliceType$2(z.$array), z.$offset, z.$offset + z.$length), $subslice(new sliceType$2(x.$array), x.$offset, x.$offset + x.$length), d);
+ t = $imul((0 >= z.$length ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + 0]), k) >>> 0;
+ c3 = addMulVVW($subslice(new sliceType$2(z.$array), z.$offset, z.$offset + z.$length), $subslice(new sliceType$2(m.$array), m.$offset, m.$offset + m.$length), t);
+ $copySlice(z, $subslice(z, 1));
+ cx = c + c2 >>> 0;
+ cy = cx + c3 >>> 0;
+ (x$1 = n - 1 >> 0, ((x$1 < 0 || x$1 >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + x$1] = cy));
+ if (cx < c2 || cy < c3) {
+ c = 1;
+ } else {
+ c = 0;
+ }
+ i = i + (1) >> 0;
+ }
+ if (!((c === 0))) {
+ subVV($subslice(new sliceType$2(z.$array), z.$offset, z.$offset + z.$length), $subslice(new sliceType$2(z.$array), z.$offset, z.$offset + z.$length), $subslice(new sliceType$2(m.$array), m.$offset, m.$offset + m.$length));
+ }
+ return z;
+ };
+ $ptrType(nat).prototype.montgomery = function(x, y, m, k, n) { return this.$get().montgomery(x, y, m, k, n); };
+ karatsubaAdd = function(z, x, n) {
+ var $ptr, c, n, x, x$1, x$2, x$3, z;
+ c = addVV((x$1 = $subslice(z, 0, n), $subslice(new sliceType$2(x$1.$array), x$1.$offset, x$1.$offset + x$1.$length)), $subslice(new sliceType$2(z.$array), z.$offset, z.$offset + z.$length), $subslice(new sliceType$2(x.$array), x.$offset, x.$offset + x.$length));
+ if (!((c === 0))) {
+ addVW((x$2 = $subslice(z, n, (n + (n >> 1 >> 0) >> 0)), $subslice(new sliceType$2(x$2.$array), x$2.$offset, x$2.$offset + x$2.$length)), (x$3 = $subslice(z, n), $subslice(new sliceType$2(x$3.$array), x$3.$offset, x$3.$offset + x$3.$length)), c);
+ }
+ };
+ karatsubaSub = function(z, x, n) {
+ var $ptr, c, n, x, x$1, x$2, x$3, z;
+ c = subVV((x$1 = $subslice(z, 0, n), $subslice(new sliceType$2(x$1.$array), x$1.$offset, x$1.$offset + x$1.$length)), $subslice(new sliceType$2(z.$array), z.$offset, z.$offset + z.$length), $subslice(new sliceType$2(x.$array), x.$offset, x.$offset + x.$length));
+ if (!((c === 0))) {
+ subVW((x$2 = $subslice(z, n, (n + (n >> 1 >> 0) >> 0)), $subslice(new sliceType$2(x$2.$array), x$2.$offset, x$2.$offset + x$2.$length)), (x$3 = $subslice(z, n), $subslice(new sliceType$2(x$3.$array), x$3.$offset, x$3.$offset + x$3.$length)), c);
+ }
+ };
+ karatsuba = function(z, x, y) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, n, n2, p, r, s, x, x0, x1, xd, y, y0, y1, yd, z;
+ n = y.$length;
+ if (!(((n & 1) === 0)) || n < karatsubaThreshold || n < 2) {
+ basicMul(z, x, y);
+ return;
+ }
+ n2 = n >> 1 >> 0;
+ _tmp = $subslice(x, n2);
+ _tmp$1 = $subslice(x, 0, n2);
+ x1 = _tmp;
+ x0 = _tmp$1;
+ _tmp$2 = $subslice(y, n2);
+ _tmp$3 = $subslice(y, 0, n2);
+ y1 = _tmp$2;
+ y0 = _tmp$3;
+ karatsuba(z, x0, y0);
+ karatsuba($subslice(z, n), x1, y1);
+ s = 1;
+ xd = $subslice(z, ($imul(2, n)), (($imul(2, n)) + n2 >> 0));
+ if (!((subVV($subslice(new sliceType$2(xd.$array), xd.$offset, xd.$offset + xd.$length), $subslice(new sliceType$2(x1.$array), x1.$offset, x1.$offset + x1.$length), $subslice(new sliceType$2(x0.$array), x0.$offset, x0.$offset + x0.$length)) === 0))) {
+ s = -s;
+ subVV($subslice(new sliceType$2(xd.$array), xd.$offset, xd.$offset + xd.$length), $subslice(new sliceType$2(x0.$array), x0.$offset, x0.$offset + x0.$length), $subslice(new sliceType$2(x1.$array), x1.$offset, x1.$offset + x1.$length));
+ }
+ yd = $subslice(z, (($imul(2, n)) + n2 >> 0), ($imul(3, n)));
+ if (!((subVV($subslice(new sliceType$2(yd.$array), yd.$offset, yd.$offset + yd.$length), $subslice(new sliceType$2(y0.$array), y0.$offset, y0.$offset + y0.$length), $subslice(new sliceType$2(y1.$array), y1.$offset, y1.$offset + y1.$length)) === 0))) {
+ s = -s;
+ subVV($subslice(new sliceType$2(yd.$array), yd.$offset, yd.$offset + yd.$length), $subslice(new sliceType$2(y1.$array), y1.$offset, y1.$offset + y1.$length), $subslice(new sliceType$2(y0.$array), y0.$offset, y0.$offset + y0.$length));
+ }
+ p = $subslice(z, ($imul(n, 3)));
+ karatsuba(p, xd, yd);
+ r = $subslice(z, ($imul(n, 4)));
+ $copySlice(r, $subslice(z, 0, ($imul(n, 2))));
+ karatsubaAdd($subslice(z, n2), r, n);
+ karatsubaAdd($subslice(z, n2), $subslice(r, n), n);
+ if (s > 0) {
+ karatsubaAdd($subslice(z, n2), p, n);
+ } else {
+ karatsubaSub($subslice(z, n2), p, n);
+ }
+ };
+ alias = function(x, y) {
+ var $ptr, x, x$1, x$2, y;
+ return x.$capacity > 0 && y.$capacity > 0 && (x$1 = $subslice(x, 0, x.$capacity), $indexPtr(x$1.$array, x$1.$offset + (x.$capacity - 1 >> 0), ptrType$3)) === (x$2 = $subslice(y, 0, y.$capacity), $indexPtr(x$2.$array, x$2.$offset + (y.$capacity - 1 >> 0), ptrType$3));
+ };
+ addAt = function(z, x, i) {
+ var $ptr, c, i, j, n, x, x$1, x$2, x$3, x$4, z;
+ n = x.$length;
+ if (n > 0) {
+ c = addVV((x$1 = $subslice(z, i, (i + n >> 0)), $subslice(new sliceType$2(x$1.$array), x$1.$offset, x$1.$offset + x$1.$length)), (x$2 = $subslice(z, i), $subslice(new sliceType$2(x$2.$array), x$2.$offset, x$2.$offset + x$2.$length)), $subslice(new sliceType$2(x.$array), x.$offset, x.$offset + x.$length));
+ if (!((c === 0))) {
+ j = i + n >> 0;
+ if (j < z.$length) {
+ addVW((x$3 = $subslice(z, j), $subslice(new sliceType$2(x$3.$array), x$3.$offset, x$3.$offset + x$3.$length)), (x$4 = $subslice(z, j), $subslice(new sliceType$2(x$4.$array), x$4.$offset, x$4.$offset + x$4.$length)), c);
+ }
+ }
+ }
+ };
+ max = function(x, y) {
+ var $ptr, x, y;
+ if (x > y) {
+ return x;
+ }
+ return y;
+ };
+ karatsubaLen = function(n) {
+ var $ptr, i, n, y;
+ i = 0;
+ while (true) {
+ if (!(n > karatsubaThreshold)) { break; }
+ n = (n >> $min((1), 31)) >> 0;
+ i = i + (1) >>> 0;
+ }
+ return (y = i, y < 32 ? (n << y) : 0) >> 0;
+ };
+ nat.prototype.mul = function(x, y) {
+ var $ptr, i, k, m, n, t, x, x0, x0$1, xi, y, y0, y0$1, y1, z;
+ z = this;
+ m = x.$length;
+ n = y.$length;
+ if (m < n) {
+ return z.mul(y, x);
+ } else if ((m === 0) || (n === 0)) {
+ return $subslice(z, 0, 0);
+ } else if ((n === 1)) {
+ return z.mulAddWW(x, (0 >= y.$length ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + 0]), 0);
+ }
+ if (alias(z, x) || alias(z, y)) {
+ z = nat.nil;
+ }
+ if (n < karatsubaThreshold) {
+ z = z.make(m + n >> 0);
+ basicMul(z, x, y);
+ return z.norm();
+ }
+ k = karatsubaLen(n);
+ x0 = $subslice(x, 0, k);
+ y0 = $subslice(y, 0, k);
+ z = z.make(max($imul(6, k), m + n >> 0));
+ karatsuba(z, x0, y0);
+ z = $subslice(z, 0, (m + n >> 0));
+ $subslice(z, ($imul(2, k))).clear();
+ if (k < n || !((m === n))) {
+ t = nat.nil;
+ x0$1 = x0.norm();
+ y1 = $subslice(y, k);
+ t = t.mul(x0$1, y1);
+ addAt(z, t, k);
+ y0$1 = y0.norm();
+ i = k;
+ while (true) {
+ if (!(i < x.$length)) { break; }
+ xi = $subslice(x, i);
+ if (xi.$length > k) {
+ xi = $subslice(xi, 0, k);
+ }
+ xi = xi.norm();
+ t = t.mul(xi, y0$1);
+ addAt(z, t, i);
+ t = t.mul(xi, y1);
+ addAt(z, t, i + k >> 0);
+ i = i + (k) >> 0;
+ }
+ }
+ return z.norm();
+ };
+ $ptrType(nat).prototype.mul = function(x, y) { return this.$get().mul(x, y); };
+ nat.prototype.mulRange = function(a, b) {
+ var $ptr, a, b, m, x, z;
+ z = this;
+ if ((a.$high === 0 && a.$low === 0)) {
+ return z.setUint64(new $Uint64(0, 0));
+ } else if ((a.$high > b.$high || (a.$high === b.$high && a.$low > b.$low))) {
+ return z.setUint64(new $Uint64(0, 1));
+ } else if ((a.$high === b.$high && a.$low === b.$low)) {
+ return z.setUint64(a);
+ } else if ((x = new $Uint64(a.$high + 0, a.$low + 1), (x.$high === b.$high && x.$low === b.$low))) {
+ return z.mul((nat.nil).setUint64(a), (nat.nil).setUint64(b));
+ }
+ m = $div64((new $Uint64(a.$high + b.$high, a.$low + b.$low)), new $Uint64(0, 2), false);
+ return z.mul((nat.nil).mulRange(a, m), (nat.nil).mulRange(new $Uint64(m.$high + 0, m.$low + 1), b));
+ };
+ $ptrType(nat).prototype.mulRange = function(a, b) { return this.$get().mulRange(a, b); };
+ nat.prototype.divW = function(x, y) {
+ var $ptr, m, q, r, x, y, z;
+ q = nat.nil;
+ r = 0;
+ z = this;
+ m = x.$length;
+ if ((y === 0)) {
+ $panic(new $String("division by zero"));
+ } else if ((y === 1)) {
+ q = z.set(x);
+ return [q, r];
+ } else if ((m === 0)) {
+ q = $subslice(z, 0, 0);
+ return [q, r];
+ }
+ z = z.make(m);
+ r = divWVW($subslice(new sliceType$2(z.$array), z.$offset, z.$offset + z.$length), 0, $subslice(new sliceType$2(x.$array), x.$offset, x.$offset + x.$length), y);
+ q = z.norm();
+ return [q, r];
+ };
+ $ptrType(nat).prototype.divW = function(x, y) { return this.$get().divW(x, y); };
+ nat.prototype.div = function(z2, u, v) {
+ var $ptr, _r, _tuple, _tuple$1, q, r, r2, u, v, z, z2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; q = $f.q; r = $f.r; r2 = $f.r2; u = $f.u; v = $f.v; z = $f.z; z2 = $f.z2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ q = nat.nil;
+ r = nat.nil;
+ z = this;
+ if (v.$length === 0) {
+ $panic(new $String("division by zero"));
+ }
+ if (u.cmp(v) < 0) {
+ q = $subslice(z, 0, 0);
+ r = z2.set(u);
+ $s = -1; return [q, r];
+ }
+ if (v.$length === 1) {
+ r2 = 0;
+ _tuple = z.divW(u, (0 >= v.$length ? ($throwRuntimeError("index out of range"), undefined) : v.$array[v.$offset + 0]));
+ q = _tuple[0];
+ r2 = _tuple[1];
+ r = z2.setWord(r2);
+ $s = -1; return [q, r];
+ }
+ _r = z.divLarge(z2, u, v); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple$1 = _r;
+ q = _tuple$1[0];
+ r = _tuple$1[1];
+ $s = -1; return [q, r];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: nat.prototype.div }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.q = q; $f.r = r; $f.r2 = r2; $f.u = u; $f.v = v; $f.z = z; $f.z2 = z2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(nat).prototype.div = function(z2, u, v) { return this.$get().div(z2, u, v); };
+ getNat = function(n) {
+ var $ptr, _r, n, v, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; n = $f.n; v = $f.v; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = ptrType$4.nil;
+ _r = natPool.Get(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ v = _r;
+ if (!($interfaceIsEqual(v, $ifaceNil))) {
+ z = $assertType(v, ptrType$4);
+ }
+ if (z === ptrType$4.nil) {
+ z = $newDataPointer(nat.nil, ptrType$4);
+ }
+ z.$set(z.make(n));
+ $s = -1; return z;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: getNat }; } $f.$ptr = $ptr; $f._r = _r; $f.n = n; $f.v = v; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ putNat = function(x) {
+ var $ptr, x;
+ natPool.Put(x);
+ };
+ nat.prototype.divLarge = function(u, uIn, v) {
+ var $ptr, _index, _r, _r$1, _tmp, _tmp$1, _tuple, _tuple$1, _tuple$2, c, c$1, j, m, n, prevRhat, q, qhat, qhatv, qhatvp, r, rhat, shift, u, uIn, ujn, ujn2, v, v1, v1p, vn1, vn2, x, x$1, x$10, x$11, x$12, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, x1, x2, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _index = $f._index; _r = $f._r; _r$1 = $f._r$1; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; c = $f.c; c$1 = $f.c$1; j = $f.j; m = $f.m; n = $f.n; prevRhat = $f.prevRhat; q = $f.q; qhat = $f.qhat; qhatv = $f.qhatv; qhatvp = $f.qhatvp; r = $f.r; rhat = $f.rhat; shift = $f.shift; u = $f.u; uIn = $f.uIn; ujn = $f.ujn; ujn2 = $f.ujn2; v = $f.v; v1 = $f.v1; v1p = $f.v1p; vn1 = $f.vn1; vn2 = $f.vn2; x = $f.x; x$1 = $f.x$1; x$10 = $f.x$10; x$11 = $f.x$11; x$12 = $f.x$12; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; x$8 = $f.x$8; x$9 = $f.x$9; x1 = $f.x1; x2 = $f.x2; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ q = nat.nil;
+ r = nat.nil;
+ z = this;
+ n = v.$length;
+ m = uIn.$length - n >> 0;
+ if (alias(z, uIn) || alias(z, v)) {
+ z = nat.nil;
+ }
+ q = z.make(m + 1 >> 0);
+ _r = getNat(n + 1 >> 0); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ qhatvp = _r;
+ qhatv = qhatvp.$get();
+ if (alias(u, uIn) || alias(u, v)) {
+ u = nat.nil;
+ }
+ u = u.make(uIn.$length + 1 >> 0);
+ u.clear();
+ v1p = ptrType$4.nil;
+ shift = nlz((x = n - 1 >> 0, ((x < 0 || x >= v.$length) ? ($throwRuntimeError("index out of range"), undefined) : v.$array[v.$offset + x])));
+ /* */ if (shift > 0) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (shift > 0) { */ case 2:
+ _r$1 = getNat(n); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ v1p = _r$1;
+ v1 = v1p.$get();
+ shlVU($subslice(new sliceType$2(v1.$array), v1.$offset, v1.$offset + v1.$length), $subslice(new sliceType$2(v.$array), v.$offset, v.$offset + v.$length), shift);
+ v = v1;
+ /* } */ case 3:
+ (x$2 = uIn.$length, ((x$2 < 0 || x$2 >= u.$length) ? ($throwRuntimeError("index out of range"), undefined) : u.$array[u.$offset + x$2] = shlVU((x$1 = $subslice(u, 0, uIn.$length), $subslice(new sliceType$2(x$1.$array), x$1.$offset, x$1.$offset + x$1.$length)), $subslice(new sliceType$2(uIn.$array), uIn.$offset, uIn.$offset + uIn.$length), shift)));
+ vn1 = (x$3 = n - 1 >> 0, ((x$3 < 0 || x$3 >= v.$length) ? ($throwRuntimeError("index out of range"), undefined) : v.$array[v.$offset + x$3]));
+ j = m;
+ while (true) {
+ if (!(j >= 0)) { break; }
+ qhat = 4294967295;
+ ujn = (x$4 = j + n >> 0, ((x$4 < 0 || x$4 >= u.$length) ? ($throwRuntimeError("index out of range"), undefined) : u.$array[u.$offset + x$4]));
+ if (!((ujn === vn1))) {
+ rhat = 0;
+ _tuple = divWW(ujn, (x$5 = (j + n >> 0) - 1 >> 0, ((x$5 < 0 || x$5 >= u.$length) ? ($throwRuntimeError("index out of range"), undefined) : u.$array[u.$offset + x$5])), vn1);
+ qhat = _tuple[0];
+ rhat = _tuple[1];
+ vn2 = (x$6 = n - 2 >> 0, ((x$6 < 0 || x$6 >= v.$length) ? ($throwRuntimeError("index out of range"), undefined) : v.$array[v.$offset + x$6]));
+ _tuple$1 = mulWW(qhat, vn2);
+ x1 = _tuple$1[0];
+ x2 = _tuple$1[1];
+ ujn2 = (x$7 = (j + n >> 0) - 2 >> 0, ((x$7 < 0 || x$7 >= u.$length) ? ($throwRuntimeError("index out of range"), undefined) : u.$array[u.$offset + x$7]));
+ while (true) {
+ if (!(greaterThan(x1, x2, rhat, ujn2))) { break; }
+ qhat = qhat - (1) >>> 0;
+ prevRhat = rhat;
+ rhat = rhat + (vn1) >>> 0;
+ if (rhat < prevRhat) {
+ break;
+ }
+ _tuple$2 = mulWW(qhat, vn2);
+ x1 = _tuple$2[0];
+ x2 = _tuple$2[1];
+ }
+ }
+ ((n < 0 || n >= qhatv.$length) ? ($throwRuntimeError("index out of range"), undefined) : qhatv.$array[qhatv.$offset + n] = mulAddVWW((x$8 = $subslice(qhatv, 0, n), $subslice(new sliceType$2(x$8.$array), x$8.$offset, x$8.$offset + x$8.$length)), $subslice(new sliceType$2(v.$array), v.$offset, v.$offset + v.$length), qhat, 0));
+ c = subVV((x$9 = $subslice(u, j, (j + qhatv.$length >> 0)), $subslice(new sliceType$2(x$9.$array), x$9.$offset, x$9.$offset + x$9.$length)), (x$10 = $subslice(u, j), $subslice(new sliceType$2(x$10.$array), x$10.$offset, x$10.$offset + x$10.$length)), $subslice(new sliceType$2(qhatv.$array), qhatv.$offset, qhatv.$offset + qhatv.$length));
+ if (!((c === 0))) {
+ c$1 = addVV((x$11 = $subslice(u, j, (j + n >> 0)), $subslice(new sliceType$2(x$11.$array), x$11.$offset, x$11.$offset + x$11.$length)), (x$12 = $subslice(u, j), $subslice(new sliceType$2(x$12.$array), x$12.$offset, x$12.$offset + x$12.$length)), $subslice(new sliceType$2(v.$array), v.$offset, v.$offset + v.$length));
+ _index = j + n >> 0;
+ ((_index < 0 || _index >= u.$length) ? ($throwRuntimeError("index out of range"), undefined) : u.$array[u.$offset + _index] = (((_index < 0 || _index >= u.$length) ? ($throwRuntimeError("index out of range"), undefined) : u.$array[u.$offset + _index]) + (c$1) >>> 0));
+ qhat = qhat - (1) >>> 0;
+ }
+ ((j < 0 || j >= q.$length) ? ($throwRuntimeError("index out of range"), undefined) : q.$array[q.$offset + j] = qhat);
+ j = j - (1) >> 0;
+ }
+ if (!(v1p === ptrType$4.nil)) {
+ putNat(v1p);
+ }
+ putNat(qhatvp);
+ q = q.norm();
+ shrVU($subslice(new sliceType$2(u.$array), u.$offset, u.$offset + u.$length), $subslice(new sliceType$2(u.$array), u.$offset, u.$offset + u.$length), shift);
+ r = u.norm();
+ _tmp = q;
+ _tmp$1 = r;
+ q = _tmp;
+ r = _tmp$1;
+ $s = -1; return [q, r];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: nat.prototype.divLarge }; } $f.$ptr = $ptr; $f._index = _index; $f._r = _r; $f._r$1 = _r$1; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f.c = c; $f.c$1 = c$1; $f.j = j; $f.m = m; $f.n = n; $f.prevRhat = prevRhat; $f.q = q; $f.qhat = qhat; $f.qhatv = qhatv; $f.qhatvp = qhatvp; $f.r = r; $f.rhat = rhat; $f.shift = shift; $f.u = u; $f.uIn = uIn; $f.ujn = ujn; $f.ujn2 = ujn2; $f.v = v; $f.v1 = v1; $f.v1p = v1p; $f.vn1 = vn1; $f.vn2 = vn2; $f.x = x; $f.x$1 = x$1; $f.x$10 = x$10; $f.x$11 = x$11; $f.x$12 = x$12; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.x$8 = x$8; $f.x$9 = x$9; $f.x1 = x1; $f.x2 = x2; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(nat).prototype.divLarge = function(u, uIn, v) { return this.$get().divLarge(u, uIn, v); };
+ nat.prototype.bitLen = function() {
+ var $ptr, i, x;
+ x = this;
+ i = x.$length - 1 >> 0;
+ if (i >= 0) {
+ return ($imul(i, 32)) + bitLen(((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i])) >> 0;
+ }
+ return 0;
+ };
+ $ptrType(nat).prototype.bitLen = function() { return this.$get().bitLen(); };
+ trailingZeroBits = function(x) {
+ var $ptr, _1, x, x$1, x$2;
+ _1 = 32;
+ if (_1 === (32)) {
+ return (((x$1 = (($imul((((x & (-x >>> 0)) >>> 0)), 125613361) >>> 0)) >>> 27 >>> 0, ((x$1 < 0 || x$1 >= deBruijn32Lookup.length) ? ($throwRuntimeError("index out of range"), undefined) : deBruijn32Lookup[x$1])) >>> 0));
+ } else if (_1 === (64)) {
+ return (((x$2 = 0, ((x$2 < 0 || x$2 >= deBruijn64Lookup.length) ? ($throwRuntimeError("index out of range"), undefined) : deBruijn64Lookup[x$2])) >>> 0));
+ } else {
+ $panic(new $String("unknown word size"));
+ }
+ };
+ nat.prototype.trailingZeroBits = function() {
+ var $ptr, i, x;
+ x = this;
+ if (x.$length === 0) {
+ return 0;
+ }
+ i = 0;
+ while (true) {
+ if (!(((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]) === 0)) { break; }
+ i = i + (1) >>> 0;
+ }
+ return (i * 32 >>> 0) + trailingZeroBits(((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i])) >>> 0;
+ };
+ $ptrType(nat).prototype.trailingZeroBits = function() { return this.$get().trailingZeroBits(); };
+ nat.prototype.shl = function(x, s) {
+ var $ptr, _q, _r, m, n, s, x, x$1, z;
+ z = this;
+ m = x.$length;
+ if (m === 0) {
+ return $subslice(z, 0, 0);
+ }
+ n = m + (((_q = s / 32, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero")) >> 0)) >> 0;
+ z = z.make(n + 1 >> 0);
+ ((n < 0 || n >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + n] = shlVU((x$1 = $subslice(z, (n - m >> 0), n), $subslice(new sliceType$2(x$1.$array), x$1.$offset, x$1.$offset + x$1.$length)), $subslice(new sliceType$2(x.$array), x.$offset, x.$offset + x.$length), (_r = s % 32, _r === _r ? _r : $throwRuntimeError("integer divide by zero"))));
+ $subslice(z, 0, (n - m >> 0)).clear();
+ return z.norm();
+ };
+ $ptrType(nat).prototype.shl = function(x, s) { return this.$get().shl(x, s); };
+ nat.prototype.shr = function(x, s) {
+ var $ptr, _q, _r, m, n, s, x, x$1, z;
+ z = this;
+ m = x.$length;
+ n = m - (((_q = s / 32, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero")) >> 0)) >> 0;
+ if (n <= 0) {
+ return $subslice(z, 0, 0);
+ }
+ z = z.make(n);
+ shrVU($subslice(new sliceType$2(z.$array), z.$offset, z.$offset + z.$length), (x$1 = $subslice(x, (m - n >> 0)), $subslice(new sliceType$2(x$1.$array), x$1.$offset, x$1.$offset + x$1.$length)), (_r = s % 32, _r === _r ? _r : $throwRuntimeError("integer divide by zero")));
+ return z.norm();
+ };
+ $ptrType(nat).prototype.shr = function(x, s) { return this.$get().shr(x, s); };
+ nat.prototype.setBit = function(x, i, b) {
+ var $ptr, _1, _q, _r, b, i, j, m, n, x, y, z;
+ z = this;
+ j = (((_q = i / 32, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero")) >> 0));
+ m = (y = ((_r = i % 32, _r === _r ? _r : $throwRuntimeError("integer divide by zero"))), y < 32 ? (1 << y) : 0) >>> 0;
+ n = x.$length;
+ _1 = b;
+ if (_1 === (0)) {
+ z = z.make(n);
+ $copySlice(z, x);
+ if (j >= n) {
+ return z;
+ }
+ ((j < 0 || j >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + j] = ((((j < 0 || j >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + j]) & ~(m)) >>> 0));
+ return z.norm();
+ } else if (_1 === (1)) {
+ if (j >= n) {
+ z = z.make(j + 1 >> 0);
+ $subslice(z, n).clear();
+ } else {
+ z = z.make(n);
+ }
+ $copySlice(z, x);
+ ((j < 0 || j >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + j] = ((((j < 0 || j >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + j]) | (m)) >>> 0));
+ return z;
+ }
+ $panic(new $String("set bit is not 0 or 1"));
+ };
+ $ptrType(nat).prototype.setBit = function(x, i, b) { return this.$get().setBit(x, i, b); };
+ nat.prototype.bit = function(i) {
+ var $ptr, _q, _r, i, j, x, y;
+ x = this;
+ j = (_q = i / 32, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero"));
+ if (j >= ((x.$length >>> 0))) {
+ return 0;
+ }
+ return ((((((y = ((_r = i % 32, _r === _r ? _r : $throwRuntimeError("integer divide by zero"))), y < 32 ? (((j < 0 || j >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + j]) >>> y) : 0) >>> 0) & 1) >>> 0) >>> 0));
+ };
+ $ptrType(nat).prototype.bit = function(i) { return this.$get().bit(i); };
+ nat.prototype.and = function(x, y) {
+ var $ptr, i, m, n, x, y, z;
+ z = this;
+ m = x.$length;
+ n = y.$length;
+ if (m > n) {
+ m = n;
+ }
+ z = z.make(m);
+ i = 0;
+ while (true) {
+ if (!(i < m)) { break; }
+ ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i] = ((((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]) & ((i < 0 || i >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + i])) >>> 0));
+ i = i + (1) >> 0;
+ }
+ return z.norm();
+ };
+ $ptrType(nat).prototype.and = function(x, y) { return this.$get().and(x, y); };
+ nat.prototype.andNot = function(x, y) {
+ var $ptr, i, m, n, x, y, z;
+ z = this;
+ m = x.$length;
+ n = y.$length;
+ if (n > m) {
+ n = m;
+ }
+ z = z.make(m);
+ i = 0;
+ while (true) {
+ if (!(i < n)) { break; }
+ ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i] = ((((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]) & ~((i < 0 || i >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + i])) >>> 0));
+ i = i + (1) >> 0;
+ }
+ $copySlice($subslice(z, n, m), $subslice(x, n, m));
+ return z.norm();
+ };
+ $ptrType(nat).prototype.andNot = function(x, y) { return this.$get().andNot(x, y); };
+ nat.prototype.or = function(x, y) {
+ var $ptr, _tmp, _tmp$1, i, m, n, s, x, y, z;
+ z = this;
+ m = x.$length;
+ n = y.$length;
+ s = x;
+ if (m < n) {
+ _tmp = m;
+ _tmp$1 = n;
+ n = _tmp;
+ m = _tmp$1;
+ s = y;
+ }
+ z = z.make(m);
+ i = 0;
+ while (true) {
+ if (!(i < n)) { break; }
+ ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i] = ((((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]) | ((i < 0 || i >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + i])) >>> 0));
+ i = i + (1) >> 0;
+ }
+ $copySlice($subslice(z, n, m), $subslice(s, n, m));
+ return z.norm();
+ };
+ $ptrType(nat).prototype.or = function(x, y) { return this.$get().or(x, y); };
+ nat.prototype.xor = function(x, y) {
+ var $ptr, _tmp, _tmp$1, i, m, n, s, x, y, z;
+ z = this;
+ m = x.$length;
+ n = y.$length;
+ s = x;
+ if (m < n) {
+ _tmp = m;
+ _tmp$1 = n;
+ n = _tmp;
+ m = _tmp$1;
+ s = y;
+ }
+ z = z.make(m);
+ i = 0;
+ while (true) {
+ if (!(i < n)) { break; }
+ ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i] = ((((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]) ^ ((i < 0 || i >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + i])) >>> 0));
+ i = i + (1) >> 0;
+ }
+ $copySlice($subslice(z, n, m), $subslice(s, n, m));
+ return z.norm();
+ };
+ $ptrType(nat).prototype.xor = function(x, y) { return this.$get().xor(x, y); };
+ greaterThan = function(x1, x2, y1, y2) {
+ var $ptr, x1, x2, y1, y2;
+ return x1 > y1 || (x1 === y1) && x2 > y2;
+ };
+ nat.prototype.modW = function(d) {
+ var $ptr, d, q, r, x;
+ r = 0;
+ x = this;
+ q = nat.nil;
+ q = q.make(x.$length);
+ r = divWVW($subslice(new sliceType$2(q.$array), q.$offset, q.$offset + q.$length), 0, $subslice(new sliceType$2(x.$array), x.$offset, x.$offset + x.$length), d);
+ return r;
+ };
+ $ptrType(nat).prototype.modW = function(d) { return this.$get().modW(d); };
+ nat.prototype.random = function(rand$1, limit, n) {
+ var $ptr, _1, _i, _i$1, _index, _r, _r$1, _r$2, _ref, _ref$1, bitLengthOfMSW, i, i$1, limit, mask, n, rand$1, y, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _i = $f._i; _i$1 = $f._i$1; _index = $f._index; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _ref = $f._ref; _ref$1 = $f._ref$1; bitLengthOfMSW = $f.bitLengthOfMSW; i = $f.i; i$1 = $f.i$1; limit = $f.limit; mask = $f.mask; n = $f.n; rand$1 = $f.rand$1; y = $f.y; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ if (alias(z, limit)) {
+ z = nat.nil;
+ }
+ z = z.make(limit.$length);
+ bitLengthOfMSW = (((_r = n % 32, _r === _r ? _r : $throwRuntimeError("integer divide by zero")) >>> 0));
+ if (bitLengthOfMSW === 0) {
+ bitLengthOfMSW = 32;
+ }
+ mask = (((((y = bitLengthOfMSW, y < 32 ? (1 << y) : 0) >>> 0)) - 1 >>> 0));
+ /* while (true) { */ case 1:
+ _1 = 32;
+ /* */ if (_1 === (32)) { $s = 4; continue; }
+ /* */ if (_1 === (64)) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (_1 === (32)) { */ case 4:
+ _ref = z;
+ _i = 0;
+ /* while (true) { */ case 8:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 9; continue; }
+ i = _i;
+ _r$1 = rand$1.Uint32(); /* */ $s = 10; case 10: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ ((i < 0 || i >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i] = ((_r$1 >>> 0)));
+ _i++;
+ /* } */ $s = 8; continue; case 9:
+ $s = 7; continue;
+ /* } else if (_1 === (64)) { */ case 5:
+ _ref$1 = z;
+ _i$1 = 0;
+ /* while (true) { */ case 11:
+ /* if (!(_i$1 < _ref$1.$length)) { break; } */ if(!(_i$1 < _ref$1.$length)) { $s = 12; continue; }
+ i$1 = _i$1;
+ _r$2 = rand$1.Uint32(); /* */ $s = 13; case 13: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ ((i$1 < 0 || i$1 >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + i$1] = ((((_r$2 >>> 0)) | 0) >>> 0));
+ _i$1++;
+ /* } */ $s = 11; continue; case 12:
+ $s = 7; continue;
+ /* } else { */ case 6:
+ $panic(new $String("unknown word size"));
+ /* } */ case 7:
+ case 3:
+ _index = limit.$length - 1 >> 0;
+ ((_index < 0 || _index >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + _index] = ((((_index < 0 || _index >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + _index]) & (mask)) >>> 0));
+ if (z.cmp(limit) < 0) {
+ /* break; */ $s = 2; continue;
+ }
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return z.norm();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: nat.prototype.random }; } $f.$ptr = $ptr; $f._1 = _1; $f._i = _i; $f._i$1 = _i$1; $f._index = _index; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._ref = _ref; $f._ref$1 = _ref$1; $f.bitLengthOfMSW = bitLengthOfMSW; $f.i = i; $f.i$1 = i$1; $f.limit = limit; $f.mask = mask; $f.n = n; $f.rand$1 = rand$1; $f.y = y; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(nat).prototype.random = function(rand$1, limit, n) { return this.$get().random(rand$1, limit, n); };
+ nat.prototype.expNN = function(x, y, m) {
+ var $ptr, _r, _r$1, _r$2, _r$3, _r$4, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, _tuple$2, i, j, j$1, m, q, r, shift, v, w, x, x$1, y, y$1, y$2, y$3, z, zz, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$10 = $f._tmp$10; _tmp$11 = $f._tmp$11; _tmp$12 = $f._tmp$12; _tmp$13 = $f._tmp$13; _tmp$14 = $f._tmp$14; _tmp$15 = $f._tmp$15; _tmp$16 = $f._tmp$16; _tmp$17 = $f._tmp$17; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tmp$7 = $f._tmp$7; _tmp$8 = $f._tmp$8; _tmp$9 = $f._tmp$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; i = $f.i; j = $f.j; j$1 = $f.j$1; m = $f.m; q = $f.q; r = $f.r; shift = $f.shift; v = $f.v; w = $f.w; x = $f.x; x$1 = $f.x$1; y = $f.y; y$1 = $f.y$1; y$2 = $f.y$2; y$3 = $f.y$3; z = $f.z; zz = $f.zz; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ if (alias(z, x) || alias(z, y)) {
+ z = nat.nil;
+ }
+ if ((m.$length === 1) && ((0 >= m.$length ? ($throwRuntimeError("index out of range"), undefined) : m.$array[m.$offset + 0]) === 1)) {
+ $s = -1; return z.setWord(0);
+ }
+ if (y.$length === 0) {
+ $s = -1; return z.setWord(1);
+ }
+ /* */ if ((y.$length === 1) && ((0 >= y.$length ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + 0]) === 1) && !((m.$length === 0))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ((y.$length === 1) && ((0 >= y.$length ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + 0]) === 1) && !((m.$length === 0))) { */ case 1:
+ _r = z.div(z, x, m); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ z = _tuple[1];
+ $s = -1; return z;
+ /* } */ case 2:
+ if (!((m.$length === 0))) {
+ z = z.make(m.$length);
+ }
+ z = z.set(x);
+ /* */ if (x.cmp(natOne) > 0 && y.$length > 1 && m.$length > 0) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (x.cmp(natOne) > 0 && y.$length > 1 && m.$length > 0) { */ case 4:
+ /* */ if ((((0 >= m.$length ? ($throwRuntimeError("index out of range"), undefined) : m.$array[m.$offset + 0]) & 1) >>> 0) === 1) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if ((((0 >= m.$length ? ($throwRuntimeError("index out of range"), undefined) : m.$array[m.$offset + 0]) & 1) >>> 0) === 1) { */ case 6:
+ _r$1 = z.expNNMontgomery(x, y, m); /* */ $s = 8; case 8: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* } */ case 7:
+ _r$2 = z.expNNWindowed(x, y, m); /* */ $s = 9; case 9: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return _r$2;
+ /* } */ case 5:
+ v = (x$1 = y.$length - 1 >> 0, ((x$1 < 0 || x$1 >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + x$1]));
+ shift = nlz(v) + 1 >>> 0;
+ v = (y$1 = (shift), y$1 < 32 ? (v << y$1) : 0) >>> 0;
+ q = nat.nil;
+ w = 32 - ((shift >> 0)) >> 0;
+ _tmp = nat.nil;
+ _tmp$1 = nat.nil;
+ zz = _tmp;
+ r = _tmp$1;
+ j = 0;
+ /* while (true) { */ case 10:
+ /* if (!(j < w)) { break; } */ if(!(j < w)) { $s = 11; continue; }
+ zz = zz.mul(z, z);
+ _tmp$2 = z;
+ _tmp$3 = zz;
+ zz = _tmp$2;
+ z = _tmp$3;
+ if (!((((v & 2147483648) >>> 0) === 0))) {
+ zz = zz.mul(z, x);
+ _tmp$4 = z;
+ _tmp$5 = zz;
+ zz = _tmp$4;
+ z = _tmp$5;
+ }
+ /* */ if (!((m.$length === 0))) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if (!((m.$length === 0))) { */ case 12:
+ _r$3 = zz.div(r, z, m); /* */ $s = 14; case 14: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _tuple$1 = _r$3;
+ zz = _tuple$1[0];
+ r = _tuple$1[1];
+ _tmp$6 = q;
+ _tmp$7 = z;
+ _tmp$8 = zz;
+ _tmp$9 = r;
+ zz = _tmp$6;
+ r = _tmp$7;
+ q = _tmp$8;
+ z = _tmp$9;
+ /* } */ case 13:
+ v = (y$2 = (1), y$2 < 32 ? (v << y$2) : 0) >>> 0;
+ j = j + (1) >> 0;
+ /* } */ $s = 10; continue; case 11:
+ i = y.$length - 2 >> 0;
+ /* while (true) { */ case 15:
+ /* if (!(i >= 0)) { break; } */ if(!(i >= 0)) { $s = 16; continue; }
+ v = ((i < 0 || i >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + i]);
+ j$1 = 0;
+ /* while (true) { */ case 17:
+ /* if (!(j$1 < 32)) { break; } */ if(!(j$1 < 32)) { $s = 18; continue; }
+ zz = zz.mul(z, z);
+ _tmp$10 = z;
+ _tmp$11 = zz;
+ zz = _tmp$10;
+ z = _tmp$11;
+ if (!((((v & 2147483648) >>> 0) === 0))) {
+ zz = zz.mul(z, x);
+ _tmp$12 = z;
+ _tmp$13 = zz;
+ zz = _tmp$12;
+ z = _tmp$13;
+ }
+ /* */ if (!((m.$length === 0))) { $s = 19; continue; }
+ /* */ $s = 20; continue;
+ /* if (!((m.$length === 0))) { */ case 19:
+ _r$4 = zz.div(r, z, m); /* */ $s = 21; case 21: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _tuple$2 = _r$4;
+ zz = _tuple$2[0];
+ r = _tuple$2[1];
+ _tmp$14 = q;
+ _tmp$15 = z;
+ _tmp$16 = zz;
+ _tmp$17 = r;
+ zz = _tmp$14;
+ r = _tmp$15;
+ q = _tmp$16;
+ z = _tmp$17;
+ /* } */ case 20:
+ v = (y$3 = (1), y$3 < 32 ? (v << y$3) : 0) >>> 0;
+ j$1 = j$1 + (1) >> 0;
+ /* } */ $s = 17; continue; case 18:
+ i = i - (1) >> 0;
+ /* } */ $s = 15; continue; case 16:
+ $s = -1; return z.norm();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: nat.prototype.expNN }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$10 = _tmp$10; $f._tmp$11 = _tmp$11; $f._tmp$12 = _tmp$12; $f._tmp$13 = _tmp$13; $f._tmp$14 = _tmp$14; $f._tmp$15 = _tmp$15; $f._tmp$16 = _tmp$16; $f._tmp$17 = _tmp$17; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tmp$7 = _tmp$7; $f._tmp$8 = _tmp$8; $f._tmp$9 = _tmp$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f.i = i; $f.j = j; $f.j$1 = j$1; $f.m = m; $f.q = q; $f.r = r; $f.shift = shift; $f.v = v; $f.w = w; $f.x = x; $f.x$1 = x$1; $f.y = y; $f.y$1 = y$1; $f.y$2 = y$2; $f.y$3 = y$3; $f.z = z; $f.zz = zz; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(nat).prototype.expNN = function(x, y, m) { return this.$get().expNN(x, y, m); };
+ nat.prototype.expNNWindowed = function(x, y, m) {
+ var $ptr, _q, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$18, _tmp$19, _tmp$2, _tmp$20, _tmp$21, _tmp$22, _tmp$23, _tmp$24, _tmp$25, _tmp$26, _tmp$27, _tmp$28, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, _tuple$5, _tuple$6, i, i$1, j, m, p, p1, p2, powers, r, x, x$1, y, y$1, yi, z, zz, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$10 = $f._tmp$10; _tmp$11 = $f._tmp$11; _tmp$12 = $f._tmp$12; _tmp$13 = $f._tmp$13; _tmp$14 = $f._tmp$14; _tmp$15 = $f._tmp$15; _tmp$16 = $f._tmp$16; _tmp$17 = $f._tmp$17; _tmp$18 = $f._tmp$18; _tmp$19 = $f._tmp$19; _tmp$2 = $f._tmp$2; _tmp$20 = $f._tmp$20; _tmp$21 = $f._tmp$21; _tmp$22 = $f._tmp$22; _tmp$23 = $f._tmp$23; _tmp$24 = $f._tmp$24; _tmp$25 = $f._tmp$25; _tmp$26 = $f._tmp$26; _tmp$27 = $f._tmp$27; _tmp$28 = $f._tmp$28; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tmp$7 = $f._tmp$7; _tmp$8 = $f._tmp$8; _tmp$9 = $f._tmp$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; _tuple$5 = $f._tuple$5; _tuple$6 = $f._tuple$6; i = $f.i; i$1 = $f.i$1; j = $f.j; m = $f.m; p = $f.p; p1 = $f.p1; p2 = $f.p2; powers = $f.powers; r = $f.r; x = $f.x; x$1 = $f.x$1; y = $f.y; y$1 = $f.y$1; yi = $f.yi; z = $f.z; zz = $f.zz; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ _tmp = nat.nil;
+ _tmp$1 = nat.nil;
+ zz = _tmp;
+ r = _tmp$1;
+ powers = arrayType$1.zero();
+ powers[0] = natOne;
+ powers[1] = x;
+ i = 2;
+ /* while (true) { */ case 1:
+ /* if (!(i < 16)) { break; } */ if(!(i < 16)) { $s = 2; continue; }
+ _tmp$2 = $indexPtr(powers, (_q = i / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")), ptrType$4);
+ _tmp$3 = $indexPtr(powers, i, ptrType$4);
+ _tmp$4 = $indexPtr(powers, (i + 1 >> 0), ptrType$4);
+ p2 = _tmp$2;
+ p = _tmp$3;
+ p1 = _tmp$4;
+ p.$set(p.mul(p2.$get(), p2.$get()));
+ _r = zz.div(r, p.$get(), m); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ zz = _tuple[0];
+ r = _tuple[1];
+ _tmp$5 = r;
+ _tmp$6 = p.$get();
+ p.$set(_tmp$5);
+ r = _tmp$6;
+ p1.$set(p1.mul(p.$get(), x));
+ _r$1 = zz.div(r, p1.$get(), m); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ zz = _tuple$1[0];
+ r = _tuple$1[1];
+ _tmp$7 = r;
+ _tmp$8 = p1.$get();
+ p1.$set(_tmp$7);
+ r = _tmp$8;
+ i = i + (2) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ z = z.setWord(1);
+ i$1 = y.$length - 1 >> 0;
+ /* while (true) { */ case 5:
+ /* if (!(i$1 >= 0)) { break; } */ if(!(i$1 >= 0)) { $s = 6; continue; }
+ yi = ((i$1 < 0 || i$1 >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + i$1]);
+ j = 0;
+ /* while (true) { */ case 7:
+ /* if (!(j < 32)) { break; } */ if(!(j < 32)) { $s = 8; continue; }
+ /* */ if (!((i$1 === (y.$length - 1 >> 0))) || !((j === 0))) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (!((i$1 === (y.$length - 1 >> 0))) || !((j === 0))) { */ case 9:
+ zz = zz.mul(z, z);
+ _tmp$9 = z;
+ _tmp$10 = zz;
+ zz = _tmp$9;
+ z = _tmp$10;
+ _r$2 = zz.div(r, z, m); /* */ $s = 11; case 11: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$2 = _r$2;
+ zz = _tuple$2[0];
+ r = _tuple$2[1];
+ _tmp$11 = r;
+ _tmp$12 = z;
+ z = _tmp$11;
+ r = _tmp$12;
+ zz = zz.mul(z, z);
+ _tmp$13 = z;
+ _tmp$14 = zz;
+ zz = _tmp$13;
+ z = _tmp$14;
+ _r$3 = zz.div(r, z, m); /* */ $s = 12; case 12: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _tuple$3 = _r$3;
+ zz = _tuple$3[0];
+ r = _tuple$3[1];
+ _tmp$15 = r;
+ _tmp$16 = z;
+ z = _tmp$15;
+ r = _tmp$16;
+ zz = zz.mul(z, z);
+ _tmp$17 = z;
+ _tmp$18 = zz;
+ zz = _tmp$17;
+ z = _tmp$18;
+ _r$4 = zz.div(r, z, m); /* */ $s = 13; case 13: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _tuple$4 = _r$4;
+ zz = _tuple$4[0];
+ r = _tuple$4[1];
+ _tmp$19 = r;
+ _tmp$20 = z;
+ z = _tmp$19;
+ r = _tmp$20;
+ zz = zz.mul(z, z);
+ _tmp$21 = z;
+ _tmp$22 = zz;
+ zz = _tmp$21;
+ z = _tmp$22;
+ _r$5 = zz.div(r, z, m); /* */ $s = 14; case 14: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _tuple$5 = _r$5;
+ zz = _tuple$5[0];
+ r = _tuple$5[1];
+ _tmp$23 = r;
+ _tmp$24 = z;
+ z = _tmp$23;
+ r = _tmp$24;
+ /* } */ case 10:
+ zz = zz.mul(z, (x$1 = yi >>> 28 >>> 0, ((x$1 < 0 || x$1 >= powers.length) ? ($throwRuntimeError("index out of range"), undefined) : powers[x$1])));
+ _tmp$25 = z;
+ _tmp$26 = zz;
+ zz = _tmp$25;
+ z = _tmp$26;
+ _r$6 = zz.div(r, z, m); /* */ $s = 15; case 15: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple$6 = _r$6;
+ zz = _tuple$6[0];
+ r = _tuple$6[1];
+ _tmp$27 = r;
+ _tmp$28 = z;
+ z = _tmp$27;
+ r = _tmp$28;
+ yi = (y$1 = (4), y$1 < 32 ? (yi << y$1) : 0) >>> 0;
+ j = j + (4) >> 0;
+ /* } */ $s = 7; continue; case 8:
+ i$1 = i$1 - (1) >> 0;
+ /* } */ $s = 5; continue; case 6:
+ $s = -1; return z.norm();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: nat.prototype.expNNWindowed }; } $f.$ptr = $ptr; $f._q = _q; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$10 = _tmp$10; $f._tmp$11 = _tmp$11; $f._tmp$12 = _tmp$12; $f._tmp$13 = _tmp$13; $f._tmp$14 = _tmp$14; $f._tmp$15 = _tmp$15; $f._tmp$16 = _tmp$16; $f._tmp$17 = _tmp$17; $f._tmp$18 = _tmp$18; $f._tmp$19 = _tmp$19; $f._tmp$2 = _tmp$2; $f._tmp$20 = _tmp$20; $f._tmp$21 = _tmp$21; $f._tmp$22 = _tmp$22; $f._tmp$23 = _tmp$23; $f._tmp$24 = _tmp$24; $f._tmp$25 = _tmp$25; $f._tmp$26 = _tmp$26; $f._tmp$27 = _tmp$27; $f._tmp$28 = _tmp$28; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tmp$7 = _tmp$7; $f._tmp$8 = _tmp$8; $f._tmp$9 = _tmp$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f._tuple$5 = _tuple$5; $f._tuple$6 = _tuple$6; $f.i = i; $f.i$1 = i$1; $f.j = j; $f.m = m; $f.p = p; $f.p1 = p1; $f.p2 = p2; $f.powers = powers; $f.r = r; $f.x = x; $f.x$1 = x$1; $f.y = y; $f.y$1 = y$1; $f.yi = yi; $f.z = z; $f.zz = zz; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(nat).prototype.expNNWindowed = function(x, y, m) { return this.$get().expNNWindowed(x, y, m); };
+ nat.prototype.expNNMontgomery = function(x, y, m) {
+ var $ptr, RR, _r, _r$1, _r$2, _tmp, _tmp$1, _tuple, _tuple$1, _tuple$2, i, i$1, i$2, j, k0, m, numWords, one, powers, rr, t, x, x$1, x$2, y, y$1, y$2, yi, z, zz, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; RR = $f.RR; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; i = $f.i; i$1 = $f.i$1; i$2 = $f.i$2; j = $f.j; k0 = $f.k0; m = $f.m; numWords = $f.numWords; one = $f.one; powers = $f.powers; rr = $f.rr; t = $f.t; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; y = $f.y; y$1 = $f.y$1; y$2 = $f.y$2; yi = $f.yi; z = $f.z; zz = $f.zz; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ numWords = m.$length;
+ /* */ if (x.$length > numWords) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (x.$length > numWords) { */ case 1:
+ _r = (nat.nil).div(nat.nil, x, m); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ x = _tuple[1];
+ /* } */ case 2:
+ if (x.$length < numWords) {
+ rr = $makeSlice(nat, numWords);
+ $copySlice(rr, x);
+ x = rr;
+ }
+ k0 = 2 - (0 >= m.$length ? ($throwRuntimeError("index out of range"), undefined) : m.$array[m.$offset + 0]) >>> 0;
+ t = (0 >= m.$length ? ($throwRuntimeError("index out of range"), undefined) : m.$array[m.$offset + 0]) - 1 >>> 0;
+ i = 1;
+ while (true) {
+ if (!(i < 32)) { break; }
+ t = $imul(t, (t)) >>> 0;
+ k0 = $imul(k0, (((t + 1 >>> 0)))) >>> 0;
+ i = (y$1 = (1), y$1 < 32 ? (i << y$1) : 0) >> 0;
+ }
+ k0 = -k0 >>> 0;
+ RR = (nat.nil).setWord(1);
+ zz = (nat.nil).shl(RR, ((($imul(($imul(2, numWords)), 32)) >>> 0)));
+ _r$1 = RR.div(RR, zz, m); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ RR = _tuple$1[1];
+ if (RR.$length < numWords) {
+ zz = zz.make(numWords);
+ $copySlice(zz, RR);
+ RR = zz;
+ }
+ one = $makeSlice(nat, numWords);
+ (0 >= one.$length ? ($throwRuntimeError("index out of range"), undefined) : one.$array[one.$offset + 0] = 1);
+ powers = arrayType$1.zero();
+ powers[0] = powers[0].montgomery(one, RR, m, k0, numWords);
+ powers[1] = powers[1].montgomery(x, RR, m, k0, numWords);
+ i$1 = 2;
+ while (true) {
+ if (!(i$1 < 16)) { break; }
+ ((i$1 < 0 || i$1 >= powers.length) ? ($throwRuntimeError("index out of range"), undefined) : powers[i$1] = ((i$1 < 0 || i$1 >= powers.length) ? ($throwRuntimeError("index out of range"), undefined) : powers[i$1]).montgomery((x$1 = i$1 - 1 >> 0, ((x$1 < 0 || x$1 >= powers.length) ? ($throwRuntimeError("index out of range"), undefined) : powers[x$1])), powers[1], m, k0, numWords));
+ i$1 = i$1 + (1) >> 0;
+ }
+ z = z.make(numWords);
+ $copySlice(z, powers[0]);
+ zz = zz.make(numWords);
+ i$2 = y.$length - 1 >> 0;
+ while (true) {
+ if (!(i$2 >= 0)) { break; }
+ yi = ((i$2 < 0 || i$2 >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + i$2]);
+ j = 0;
+ while (true) {
+ if (!(j < 32)) { break; }
+ if (!((i$2 === (y.$length - 1 >> 0))) || !((j === 0))) {
+ zz = zz.montgomery(z, z, m, k0, numWords);
+ z = z.montgomery(zz, zz, m, k0, numWords);
+ zz = zz.montgomery(z, z, m, k0, numWords);
+ z = z.montgomery(zz, zz, m, k0, numWords);
+ }
+ zz = zz.montgomery(z, (x$2 = yi >>> 28 >>> 0, ((x$2 < 0 || x$2 >= powers.length) ? ($throwRuntimeError("index out of range"), undefined) : powers[x$2])), m, k0, numWords);
+ _tmp = zz;
+ _tmp$1 = z;
+ z = _tmp;
+ zz = _tmp$1;
+ yi = (y$2 = (4), y$2 < 32 ? (yi << y$2) : 0) >>> 0;
+ j = j + (4) >> 0;
+ }
+ i$2 = i$2 - (1) >> 0;
+ }
+ zz = zz.montgomery(z, one, m, k0, numWords);
+ /* */ if (zz.cmp(m) >= 0) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (zz.cmp(m) >= 0) { */ case 5:
+ zz = zz.sub(zz, m);
+ /* */ if (zz.cmp(m) >= 0) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (zz.cmp(m) >= 0) { */ case 7:
+ _r$2 = (nat.nil).div(nat.nil, zz, m); /* */ $s = 9; case 9: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$2 = _r$2;
+ zz = _tuple$2[1];
+ /* } */ case 8:
+ /* } */ case 6:
+ $s = -1; return zz.norm();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: nat.prototype.expNNMontgomery }; } $f.$ptr = $ptr; $f.RR = RR; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f.i = i; $f.i$1 = i$1; $f.i$2 = i$2; $f.j = j; $f.k0 = k0; $f.m = m; $f.numWords = numWords; $f.one = one; $f.powers = powers; $f.rr = rr; $f.t = t; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.y = y; $f.y$1 = y$1; $f.y$2 = y$2; $f.yi = yi; $f.z = z; $f.zz = zz; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(nat).prototype.expNNMontgomery = function(x, y, m) { return this.$get().expNNMontgomery(x, y, m); };
+ nat.prototype.bytes = function(buf) {
+ var $ptr, _i, _ref, buf, d, i, j, y, z;
+ i = 0;
+ z = this;
+ i = buf.$length;
+ _ref = z;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ d = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ j = 0;
+ while (true) {
+ if (!(j < 4)) { break; }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i] = ((d << 24 >>> 24)));
+ d = (y = (8), y < 32 ? (d >>> y) : 0) >>> 0;
+ j = j + (1) >> 0;
+ }
+ _i++;
+ }
+ while (true) {
+ if (!(i < buf.$length && (((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i]) === 0))) { break; }
+ i = i + (1) >> 0;
+ }
+ return i;
+ };
+ $ptrType(nat).prototype.bytes = function(buf) { return this.$get().bytes(buf); };
+ nat.prototype.setBytes = function(buf) {
+ var $ptr, _q, buf, d, i, k, s, x, y, z;
+ z = this;
+ z = z.make((_q = (((buf.$length + 4 >> 0) - 1 >> 0)) / 4, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")));
+ k = 0;
+ s = 0;
+ d = 0;
+ i = buf.$length;
+ while (true) {
+ if (!(i > 0)) { break; }
+ d = (d | (((y = s, y < 32 ? ((((x = i - 1 >> 0, ((x < 0 || x >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + x])) >>> 0)) << y) : 0) >>> 0))) >>> 0;
+ s = s + (8) >>> 0;
+ if (s === 32) {
+ ((k < 0 || k >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + k] = d);
+ k = k + (1) >> 0;
+ s = 0;
+ d = 0;
+ }
+ i = i - (1) >> 0;
+ }
+ if (k < z.$length) {
+ ((k < 0 || k >= z.$length) ? ($throwRuntimeError("index out of range"), undefined) : z.$array[z.$offset + k] = d);
+ }
+ return z.norm();
+ };
+ $ptrType(nat).prototype.setBytes = function(buf) { return this.$get().setBytes(buf); };
+ nat.prototype.sqrt = function(x) {
+ var $ptr, _q, _r, _tmp, _tmp$1, _tmp$2, _tmp$3, _tuple, n, x, z, z1, z2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tuple = $f._tuple; n = $f.n; x = $f.x; z = $f.z; z1 = $f.z1; z2 = $f.z2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ if (x.cmp(natOne) <= 0) {
+ $s = -1; return z.set(x);
+ }
+ if (alias(z, x)) {
+ z = nat.nil;
+ }
+ _tmp = nat.nil;
+ _tmp$1 = nat.nil;
+ z1 = _tmp;
+ z2 = _tmp$1;
+ z1 = z;
+ z1 = z1.setUint64(new $Uint64(0, 1));
+ z1 = z1.shl(z1, ((((_q = x.bitLen() / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")) + 1 >> 0) >>> 0)));
+ n = 0;
+ /* while (true) { */ case 1:
+ _r = z2.div(nat.nil, x, z1); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ z2 = _tuple[0];
+ z2 = z2.add(z2, z1);
+ z2 = z2.shr(z2, 1);
+ if (z2.cmp(z1) >= 0) {
+ if ((n & 1) === 0) {
+ $s = -1; return z1;
+ }
+ $s = -1; return z.set(z1);
+ }
+ _tmp$2 = z2;
+ _tmp$3 = z1;
+ z1 = _tmp$2;
+ z2 = _tmp$3;
+ n = n + (1) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return nat.nil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: nat.prototype.sqrt }; } $f.$ptr = $ptr; $f._q = _q; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tuple = _tuple; $f.n = n; $f.x = x; $f.z = z; $f.z1 = z1; $f.z2 = z2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(nat).prototype.sqrt = function(x) { return this.$get().sqrt(x); };
+ maxPow = function(b) {
+ var $ptr, _q, _tmp, _tmp$1, b, max$1, n, p;
+ p = 0;
+ n = 0;
+ _tmp = b;
+ _tmp$1 = 1;
+ p = _tmp;
+ n = _tmp$1;
+ max$1 = (_q = 4294967295 / b, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero"));
+ while (true) {
+ if (!(p <= max$1)) { break; }
+ p = $imul(p, (b)) >>> 0;
+ n = n + (1) >> 0;
+ }
+ return [p, n];
+ };
+ pow = function(x, n) {
+ var $ptr, n, p, x;
+ p = 0;
+ p = 1;
+ while (true) {
+ if (!(n > 0)) { break; }
+ if (!(((n & 1) === 0))) {
+ p = $imul(p, (x)) >>> 0;
+ }
+ x = $imul(x, (x)) >>> 0;
+ n = (n >> $min((1), 31)) >> 0;
+ }
+ return p;
+ };
+ nat.prototype.scan = function(r, base, fracOk) {
+ var $ptr, _1, _2, _3, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, _tuple$5, b, b1, base, baseOk, bn, ch, count, d1, di, dp, err, fracOk, i, n, r, res, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _2 = $f._2; _3 = $f._3; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; _tuple$5 = $f._tuple$5; b = $f.b; b1 = $f.b1; base = $f.base; baseOk = $f.baseOk; bn = $f.bn; ch = $f.ch; count = $f.count; d1 = $f.d1; di = $f.di; dp = $f.dp; err = $f.err; fracOk = $f.fracOk; i = $f.i; n = $f.n; r = $f.r; res = $f.res; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ res = nat.nil;
+ b = 0;
+ count = 0;
+ err = $ifaceNil;
+ z = this;
+ baseOk = (base === 0) || !fracOk && 2 <= base && base <= 36 || fracOk && ((base === 2) || (base === 10) || (base === 16));
+ /* */ if (!baseOk) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!baseOk) { */ case 1:
+ _r = fmt.Sprintf("illegal number base %d", new sliceType([new $Int(base)])); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $panic(new $String(_r));
+ /* } */ case 2:
+ _r$1 = r.ReadByte(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple = _r$1;
+ ch = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [res, b, count, err];
+ }
+ b = base;
+ /* */ if (base === 0) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (base === 0) { */ case 5:
+ b = 10;
+ /* */ if (ch === 48) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (ch === 48) { */ case 7:
+ count = 1;
+ _r$2 = r.ReadByte(); /* */ $s = 10; case 10: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$1 = _r$2;
+ ch = _tuple$1[0];
+ err = _tuple$1[1];
+ _1 = err;
+ /* */ if ($interfaceIsEqual(_1, $ifaceNil)) { $s = 11; continue; }
+ /* */ if ($interfaceIsEqual(_1, (io.EOF))) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if ($interfaceIsEqual(_1, $ifaceNil)) { */ case 11:
+ if (!fracOk) {
+ b = 8;
+ }
+ _2 = ch;
+ if ((_2 === (120)) || (_2 === (88))) {
+ b = 16;
+ } else if ((_2 === (98)) || (_2 === (66))) {
+ b = 2;
+ }
+ _3 = b;
+ /* */ if ((_3 === (16)) || (_3 === (2))) { $s = 16; continue; }
+ /* */ if (_3 === (8)) { $s = 17; continue; }
+ /* */ $s = 18; continue;
+ /* if ((_3 === (16)) || (_3 === (2))) { */ case 16:
+ count = 0;
+ _r$3 = r.ReadByte(); /* */ $s = 19; case 19: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _tuple$2 = _r$3;
+ ch = _tuple$2[0];
+ err = _tuple$2[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [res, b, count, err];
+ }
+ $s = 18; continue;
+ /* } else if (_3 === (8)) { */ case 17:
+ count = 0;
+ /* } */ case 18:
+ case 15:
+ $s = 14; continue;
+ /* } else if ($interfaceIsEqual(_1, (io.EOF))) { */ case 12:
+ res = $subslice(z, 0, 0);
+ err = $ifaceNil;
+ $s = -1; return [res, b, count, err];
+ /* } else { */ case 13:
+ $s = -1; return [res, b, count, err];
+ /* } */ case 14:
+ case 9:
+ /* } */ case 8:
+ /* } */ case 6:
+ z = $subslice(z, 0, 0);
+ b1 = ((b >>> 0));
+ _tuple$3 = maxPow(b1);
+ bn = _tuple$3[0];
+ n = _tuple$3[1];
+ di = 0;
+ i = 0;
+ dp = -1;
+ /* while (true) { */ case 20:
+ /* */ if (fracOk && (ch === 46)) { $s = 22; continue; }
+ /* */ $s = 23; continue;
+ /* if (fracOk && (ch === 46)) { */ case 22:
+ fracOk = false;
+ dp = count;
+ _r$4 = r.ReadByte(); /* */ $s = 24; case 24: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _tuple$4 = _r$4;
+ ch = _tuple$4[0];
+ err = _tuple$4[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ if ($interfaceIsEqual(err, io.EOF)) {
+ err = $ifaceNil;
+ /* break; */ $s = 21; continue;
+ }
+ $s = -1; return [res, b, count, err];
+ }
+ /* } */ case 23:
+ d1 = 0;
+ if (48 <= ch && ch <= 57) {
+ d1 = (((ch - 48 << 24 >>> 24) >>> 0));
+ } else if (97 <= ch && ch <= 122) {
+ d1 = ((((ch - 97 << 24 >>> 24) + 10 << 24 >>> 24) >>> 0));
+ } else if (65 <= ch && ch <= 90) {
+ d1 = ((((ch - 65 << 24 >>> 24) + 10 << 24 >>> 24) >>> 0));
+ } else {
+ d1 = 37;
+ }
+ /* */ if (d1 >= b1) { $s = 25; continue; }
+ /* */ $s = 26; continue;
+ /* if (d1 >= b1) { */ case 25:
+ _r$5 = r.UnreadByte(); /* */ $s = 27; case 27: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _r$5;
+ /* break; */ $s = 21; continue;
+ /* } */ case 26:
+ count = count + (1) >> 0;
+ di = ($imul(di, b1) >>> 0) + d1 >>> 0;
+ i = i + (1) >> 0;
+ if (i === n) {
+ z = z.mulAddWW(z, bn, di);
+ di = 0;
+ i = 0;
+ }
+ _r$6 = r.ReadByte(); /* */ $s = 28; case 28: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple$5 = _r$6;
+ ch = _tuple$5[0];
+ err = _tuple$5[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ if ($interfaceIsEqual(err, io.EOF)) {
+ err = $ifaceNil;
+ /* break; */ $s = 21; continue;
+ }
+ $s = -1; return [res, b, count, err];
+ }
+ /* } */ $s = 20; continue; case 21:
+ if (count === 0) {
+ if ((base === 0) && (b === 8)) {
+ count = 1;
+ b = 10;
+ } else if (!((base === 0)) || !((b === 8))) {
+ err = errors.New("syntax error scanning number");
+ }
+ $s = -1; return [res, b, count, err];
+ }
+ if (i > 0) {
+ z = z.mulAddWW(z, pow(b1, i), di);
+ }
+ res = z.norm();
+ if (dp >= 0) {
+ count = dp - count >> 0;
+ }
+ $s = -1; return [res, b, count, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: nat.prototype.scan }; } $f.$ptr = $ptr; $f._1 = _1; $f._2 = _2; $f._3 = _3; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f._tuple$5 = _tuple$5; $f.b = b; $f.b1 = b1; $f.base = base; $f.baseOk = baseOk; $f.bn = bn; $f.ch = ch; $f.count = count; $f.d1 = d1; $f.di = di; $f.dp = dp; $f.err = err; $f.fracOk = fracOk; $f.i = i; $f.n = n; $f.r = r; $f.res = res; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(nat).prototype.scan = function(r, base, fracOk) { return this.$get().scan(r, base, fracOk); };
+ nat.prototype.utoa = function(base) {
+ var $ptr, _r, base, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; base = $f.base; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ x = this;
+ _r = x.itoa(false, base); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: nat.prototype.utoa }; } $f.$ptr = $ptr; $f._r = _r; $f.base = base; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(nat).prototype.utoa = function(base) { return this.$get().utoa(base); };
+ nat.prototype.itoa = function(neg, base) {
+ var $ptr, _r, _tuple, b, base, bb, i, k, mask, nbits, ndigits, neg, q, s, shift, table, w, x, y, y$1, y$2, y$3, y$4, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; b = $f.b; base = $f.base; bb = $f.bb; i = $f.i; k = $f.k; mask = $f.mask; nbits = $f.nbits; ndigits = $f.ndigits; neg = $f.neg; q = $f.q; s = $f.s; shift = $f.shift; table = $f.table; w = $f.w; x = $f.x; y = $f.y; y$1 = $f.y$1; y$2 = $f.y$2; y$3 = $f.y$3; y$4 = $f.y$4; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ x = this;
+ if (base < 2 || base > 36) {
+ $panic(new $String("invalid base"));
+ }
+ if (x.$length === 0) {
+ $s = -1; return (new sliceType$1($stringToBytes("0")));
+ }
+ i = (((x.bitLen()) / math.Log2((base)) >> 0)) + 1 >> 0;
+ if (neg) {
+ i = i + (1) >> 0;
+ }
+ s = $makeSlice(sliceType$1, i);
+ b = ((base >>> 0));
+ /* */ if (b === ((b & (-b >>> 0)) >>> 0)) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (b === ((b & (-b >>> 0)) >>> 0)) { */ case 1:
+ shift = trailingZeroBits(b);
+ mask = ((((y = shift, y < 32 ? (1 << y) : 0) >>> 0) - 1 >>> 0));
+ w = (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0]);
+ nbits = 32;
+ k = 1;
+ while (true) {
+ if (!(k < x.$length)) { break; }
+ while (true) {
+ if (!(nbits >= shift)) { break; }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= s.$length) ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + i] = "0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((w & mask) >>> 0)));
+ w = (y$1 = (shift), y$1 < 32 ? (w >>> y$1) : 0) >>> 0;
+ nbits = nbits - (shift) >>> 0;
+ }
+ if (nbits === 0) {
+ w = ((k < 0 || k >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + k]);
+ nbits = 32;
+ } else {
+ w = (w | (((y$2 = nbits, y$2 < 32 ? (((k < 0 || k >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + k]) << y$2) : 0) >>> 0))) >>> 0;
+ i = i - (1) >> 0;
+ ((i < 0 || i >= s.$length) ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + i] = "0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((w & mask) >>> 0)));
+ w = (y$3 = ((shift - nbits >>> 0)), y$3 < 32 ? (((k < 0 || k >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + k]) >>> y$3) : 0) >>> 0;
+ nbits = 32 - ((shift - nbits >>> 0)) >>> 0;
+ }
+ k = k + (1) >> 0;
+ }
+ while (true) {
+ if (!(!((w === 0)))) { break; }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= s.$length) ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + i] = "0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt(((w & mask) >>> 0)));
+ w = (y$4 = (shift), y$4 < 32 ? (w >>> y$4) : 0) >>> 0;
+ }
+ $s = 3; continue;
+ /* } else { */ case 2:
+ _tuple = maxPow(b);
+ bb = _tuple[0];
+ ndigits = _tuple[1];
+ _r = divisors(x.$length, b, ndigits, bb); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ table = _r;
+ q = (nat.nil).set(x);
+ $r = q.convertWords(s, b, ndigits, bb, table); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i = 0;
+ while (true) {
+ if (!(((i < 0 || i >= s.$length) ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + i]) === 48)) { break; }
+ i = i + (1) >> 0;
+ }
+ /* } */ case 3:
+ if (neg) {
+ i = i - (1) >> 0;
+ ((i < 0 || i >= s.$length) ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + i] = 45);
+ }
+ $s = -1; return $subslice(s, i);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: nat.prototype.itoa }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.b = b; $f.base = base; $f.bb = bb; $f.i = i; $f.k = k; $f.mask = mask; $f.nbits = nbits; $f.ndigits = ndigits; $f.neg = neg; $f.q = q; $f.s = s; $f.shift = shift; $f.table = table; $f.w = w; $f.x = x; $f.y = y; $f.y$1 = y$1; $f.y$2 = y$2; $f.y$3 = y$3; $f.y$4 = y$4; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(nat).prototype.itoa = function(neg, base) { return this.$get().itoa(neg, base); };
+ nat.prototype.convertWords = function(s, b, ndigits, bb, table) {
+ var $ptr, _q, _q$1, _r, _r$1, _tuple, _tuple$1, _tuple$2, b, bb, h, i, index, j, j$1, maxLength, minLength, ndigits, q, r, r$1, s, t, table, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; _q$1 = $f._q$1; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; b = $f.b; bb = $f.bb; h = $f.h; i = $f.i; index = $f.index; j = $f.j; j$1 = $f.j$1; maxLength = $f.maxLength; minLength = $f.minLength; ndigits = $f.ndigits; q = $f.q; r = $f.r; r$1 = $f.r$1; s = $f.s; t = $f.t; table = $f.table; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ q = this;
+ /* */ if (!(table === sliceType$3.nil)) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!(table === sliceType$3.nil)) { */ case 1:
+ r = nat.nil;
+ index = table.$length - 1 >> 0;
+ /* while (true) { */ case 3:
+ /* if (!(q.$length > leafSize)) { break; } */ if(!(q.$length > leafSize)) { $s = 4; continue; }
+ maxLength = q.bitLen();
+ minLength = maxLength >> 1 >> 0;
+ while (true) {
+ if (!(index > 0 && (x = index - 1 >> 0, ((x < 0 || x >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + x])).nbits > minLength)) { break; }
+ index = index - (1) >> 0;
+ }
+ if (((index < 0 || index >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + index]).nbits >= maxLength && ((index < 0 || index >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + index]).bbb.cmp(q) >= 0) {
+ index = index - (1) >> 0;
+ if (index < 0) {
+ $panic(new $String("internal inconsistency"));
+ }
+ }
+ _r = q.div(r, q, ((index < 0 || index >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + index]).bbb); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ q = _tuple[0];
+ r = _tuple[1];
+ h = s.$length - ((index < 0 || index >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + index]).ndigits >> 0;
+ $r = r.convertWords($subslice(s, h), b, ndigits, bb, $subslice(table, 0, index)); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ s = $subslice(s, 0, h);
+ /* } */ $s = 3; continue; case 4:
+ /* } */ case 2:
+ i = s.$length;
+ r$1 = 0;
+ if (b === 10) {
+ while (true) {
+ if (!(q.$length > 0)) { break; }
+ _tuple$1 = q.divW(q, bb);
+ q = _tuple$1[0];
+ r$1 = _tuple$1[1];
+ j = 0;
+ while (true) {
+ if (!(j < ndigits && i > 0)) { break; }
+ i = i - (1) >> 0;
+ t = (_q = r$1 / 10, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero"));
+ ((i < 0 || i >= s.$length) ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + i] = (48 + (((r$1 - ($imul(t, 10) >>> 0) >>> 0) << 24 >>> 24)) << 24 >>> 24));
+ r$1 = t;
+ j = j + (1) >> 0;
+ }
+ }
+ } else {
+ while (true) {
+ if (!(q.$length > 0)) { break; }
+ _tuple$2 = q.divW(q, bb);
+ q = _tuple$2[0];
+ r$1 = _tuple$2[1];
+ j$1 = 0;
+ while (true) {
+ if (!(j$1 < ndigits && i > 0)) { break; }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= s.$length) ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + i] = "0123456789abcdefghijklmnopqrstuvwxyz".charCodeAt((_r$1 = r$1 % b, _r$1 === _r$1 ? _r$1 : $throwRuntimeError("integer divide by zero"))));
+ r$1 = (_q$1 = r$1 / (b), (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >>> 0 : $throwRuntimeError("integer divide by zero"));
+ j$1 = j$1 + (1) >> 0;
+ }
+ }
+ }
+ while (true) {
+ if (!(i > 0)) { break; }
+ i = i - (1) >> 0;
+ ((i < 0 || i >= s.$length) ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + i] = 48);
+ }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: nat.prototype.convertWords }; } $f.$ptr = $ptr; $f._q = _q; $f._q$1 = _q$1; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f.b = b; $f.bb = bb; $f.h = h; $f.i = i; $f.index = index; $f.j = j; $f.j$1 = j$1; $f.maxLength = maxLength; $f.minLength = minLength; $f.ndigits = ndigits; $f.q = q; $f.r = r; $f.r$1 = r$1; $f.s = s; $f.t = t; $f.table = table; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(nat).prototype.convertWords = function(s, b, ndigits, bb, table) { return this.$get().convertWords(s, b, ndigits, bb, table); };
+ nat.prototype.expWW = function(x, y) {
+ var $ptr, _r, x, y, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; x = $f.x; y = $f.y; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ z = this;
+ _r = z.expNN((nat.nil).setWord(x), (nat.nil).setWord(y), nat.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: nat.prototype.expWW }; } $f.$ptr = $ptr; $f._r = _r; $f.x = x; $f.y = y; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(nat).prototype.expWW = function(x, y) { return this.$get().expWW(x, y); };
+ divisors = function(m, b, ndigits, bb) {
+ var $ptr, _r, b, bb, i, k, larger, m, ndigits, table, words, x, x$1, x$2, x$3, y, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; b = $f.b; bb = $f.bb; i = $f.i; k = $f.k; larger = $f.larger; m = $f.m; ndigits = $f.ndigits; table = $f.table; words = $f.words; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; y = $f.y; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ if ((leafSize === 0) || m <= leafSize) {
+ $s = -1; return sliceType$3.nil;
+ }
+ k = 1;
+ words = leafSize;
+ while (true) {
+ if (!(words < (m >> 1 >> 0) && k < 64)) { break; }
+ k = k + (1) >> 0;
+ words = (y = (1), y < 32 ? (words << y) : 0) >> 0;
+ }
+ table = sliceType$3.nil;
+ if (b === 10) {
+ cacheBase10.Mutex.Lock();
+ table = $subslice(new sliceType$3(cacheBase10.table), 0, k);
+ } else {
+ table = $makeSlice(sliceType$3, k);
+ }
+ /* */ if ((x = k - 1 >> 0, ((x < 0 || x >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + x])).ndigits === 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ((x = k - 1 >> 0, ((x < 0 || x >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + x])).ndigits === 0) { */ case 1:
+ larger = nat.nil;
+ i = 0;
+ /* while (true) { */ case 3:
+ /* if (!(i < k)) { break; } */ if(!(i < k)) { $s = 4; continue; }
+ /* */ if (((i < 0 || i >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + i]).ndigits === 0) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (((i < 0 || i >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + i]).ndigits === 0) { */ case 5:
+ /* */ if (i === 0) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (i === 0) { */ case 7:
+ _r = (nat.nil).expWW(bb, ((leafSize >>> 0))); /* */ $s = 10; case 10: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ (0 >= table.$length ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + 0]).bbb = _r;
+ (0 >= table.$length ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + 0]).ndigits = $imul(ndigits, leafSize);
+ $s = 9; continue;
+ /* } else { */ case 8:
+ ((i < 0 || i >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + i]).bbb = (nat.nil).mul((x$1 = i - 1 >> 0, ((x$1 < 0 || x$1 >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + x$1])).bbb, (x$2 = i - 1 >> 0, ((x$2 < 0 || x$2 >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + x$2])).bbb);
+ ((i < 0 || i >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + i]).ndigits = $imul(2, (x$3 = i - 1 >> 0, ((x$3 < 0 || x$3 >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + x$3])).ndigits);
+ /* } */ case 9:
+ larger = (nat.nil).set(((i < 0 || i >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + i]).bbb);
+ while (true) {
+ if (!(mulAddVWW($subslice(new sliceType$2(larger.$array), larger.$offset, larger.$offset + larger.$length), $subslice(new sliceType$2(larger.$array), larger.$offset, larger.$offset + larger.$length), b, 0) === 0)) { break; }
+ ((i < 0 || i >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + i]).bbb = ((i < 0 || i >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + i]).bbb.set(larger);
+ ((i < 0 || i >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + i]).ndigits = ((i < 0 || i >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + i]).ndigits + (1) >> 0;
+ }
+ ((i < 0 || i >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + i]).nbits = ((i < 0 || i >= table.$length) ? ($throwRuntimeError("index out of range"), undefined) : table.$array[table.$offset + i]).bbb.bitLen();
+ /* } */ case 6:
+ i = i + (1) >> 0;
+ /* } */ $s = 3; continue; case 4:
+ /* } */ case 2:
+ if (b === 10) {
+ cacheBase10.Mutex.Unlock();
+ }
+ $s = -1; return table;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: divisors }; } $f.$ptr = $ptr; $f._r = _r; $f.b = b; $f.bb = bb; $f.i = i; $f.k = k; $f.larger = larger; $f.m = m; $f.ndigits = ndigits; $f.table = table; $f.words = words; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.y = y; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.ptr.prototype.ProbablyPrime = function(n) {
+ var $ptr, _1, _r, _r$1, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tmp, _tmp$1, _v, n, r, rA, rB, w, x, x$1, x$2, x$3, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; _r$1 = $f._r$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _v = $f._v; n = $f.n; r = $f.r; rA = $f.rA; rB = $f.rB; w = $f.w; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ x = this;
+ if (n < 0) {
+ $panic(new $String("negative n for ProbablyPrime"));
+ }
+ if (x.neg || (x.abs.$length === 0)) {
+ $s = -1; return false;
+ }
+ w = (x$1 = x.abs, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0]));
+ if ((x.abs.$length === 1) && w < 64) {
+ $s = -1; return !((x$2 = (x$3 = $shiftLeft64(new $Uint64(0, 1), w), new $Uint64(673221152 & x$3.$high, (2693408940 & x$3.$low) >>> 0)), (x$2.$high === 0 && x$2.$low === 0)));
+ }
+ if (((w & 1) >>> 0) === 0) {
+ $s = -1; return false;
+ }
+ _tmp = 0;
+ _tmp$1 = 0;
+ rA = _tmp;
+ rB = _tmp$1;
+ _1 = 32;
+ if (_1 === (32)) {
+ rA = ((x.abs.modW(4127218095) >>> 0));
+ rB = ((x.abs.modW(3948078067) >>> 0));
+ } else if (_1 === (64)) {
+ r = x.abs.modW(820596253);
+ rA = (((_r = r % 4127218095, _r === _r ? _r : $throwRuntimeError("integer divide by zero")) >>> 0));
+ rB = (((_r$1 = r % 3948078067, _r$1 === _r$1 ? _r$1 : $throwRuntimeError("integer divide by zero")) >>> 0));
+ } else {
+ $panic(new $String("math/big: invalid word size"));
+ }
+ if (((_r$2 = rA % 3, _r$2 === _r$2 ? _r$2 : $throwRuntimeError("integer divide by zero")) === 0) || ((_r$3 = rA % 5, _r$3 === _r$3 ? _r$3 : $throwRuntimeError("integer divide by zero")) === 0) || ((_r$4 = rA % 7, _r$4 === _r$4 ? _r$4 : $throwRuntimeError("integer divide by zero")) === 0) || ((_r$5 = rA % 11, _r$5 === _r$5 ? _r$5 : $throwRuntimeError("integer divide by zero")) === 0) || ((_r$6 = rA % 13, _r$6 === _r$6 ? _r$6 : $throwRuntimeError("integer divide by zero")) === 0) || ((_r$7 = rA % 17, _r$7 === _r$7 ? _r$7 : $throwRuntimeError("integer divide by zero")) === 0) || ((_r$8 = rA % 19, _r$8 === _r$8 ? _r$8 : $throwRuntimeError("integer divide by zero")) === 0) || ((_r$9 = rA % 23, _r$9 === _r$9 ? _r$9 : $throwRuntimeError("integer divide by zero")) === 0) || ((_r$10 = rA % 37, _r$10 === _r$10 ? _r$10 : $throwRuntimeError("integer divide by zero")) === 0) || ((_r$11 = rB % 29, _r$11 === _r$11 ? _r$11 : $throwRuntimeError("integer divide by zero")) === 0) || ((_r$12 = rB % 31, _r$12 === _r$12 ? _r$12 : $throwRuntimeError("integer divide by zero")) === 0) || ((_r$13 = rB % 41, _r$13 === _r$13 ? _r$13 : $throwRuntimeError("integer divide by zero")) === 0) || ((_r$14 = rB % 43, _r$14 === _r$14 ? _r$14 : $throwRuntimeError("integer divide by zero")) === 0) || ((_r$15 = rB % 47, _r$15 === _r$15 ? _r$15 : $throwRuntimeError("integer divide by zero")) === 0) || ((_r$16 = rB % 53, _r$16 === _r$16 ? _r$16 : $throwRuntimeError("integer divide by zero")) === 0)) {
+ $s = -1; return false;
+ }
+ _r$17 = x.abs.probablyPrimeMillerRabin(n + 1 >> 0, true); /* */ $s = 2; case 2: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ if (!(_r$17)) { _v = false; $s = 1; continue s; }
+ _r$18 = x.abs.probablyPrimeLucas(); /* */ $s = 3; case 3: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ _v = _r$18; case 1:
+ $s = -1; return _v;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.ProbablyPrime }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f._r$1 = _r$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._v = _v; $f.n = n; $f.r = r; $f.rA = rA; $f.rB = rB; $f.w = w; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.ProbablyPrime = function(n) { return this.$val.ProbablyPrime(n); };
+ nat.prototype.probablyPrimeMillerRabin = function(reps, force2) {
+ var $ptr, _r, _r$1, _r$2, _tmp, _tmp$1, _tmp$2, _tuple, force2, i, j, k, n, nm1, nm3, nm3Len, q, quotient, rand$1, reps, x, x$1, y, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tuple = $f._tuple; force2 = $f.force2; i = $f.i; j = $f.j; k = $f.k; n = $f.n; nm1 = $f.nm1; nm3 = $f.nm3; nm3Len = $f.nm3Len; q = $f.q; quotient = $f.quotient; rand$1 = $f.rand$1; reps = $f.reps; x = $f.x; x$1 = $f.x$1; y = $f.y; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = this;
+ nm1 = (nat.nil).sub(n, natOne);
+ k = nm1.trailingZeroBits();
+ q = (nat.nil).shr(nm1, k);
+ nm3 = (nat.nil).sub(nm1, natTwo);
+ rand$1 = rand.New(rand.NewSource(((x = (0 >= n.$length ? ($throwRuntimeError("index out of range"), undefined) : n.$array[n.$offset + 0]), new $Int64(0, x.constructor === Number ? x : 1)))));
+ _tmp = nat.nil;
+ _tmp$1 = nat.nil;
+ _tmp$2 = nat.nil;
+ x$1 = _tmp;
+ y = _tmp$1;
+ quotient = _tmp$2;
+ nm3Len = nm3.bitLen();
+ i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(i < reps)) { break; } */ if(!(i < reps)) { $s = 2; continue; }
+ /* */ if ((i === (reps - 1 >> 0)) && force2) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if ((i === (reps - 1 >> 0)) && force2) { */ case 3:
+ x$1 = x$1.set(natTwo);
+ $s = 5; continue;
+ /* } else { */ case 4:
+ _r = x$1.random(rand$1, nm3, nm3Len); /* */ $s = 6; case 6: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ x$1 = _r;
+ x$1 = x$1.add(x$1, natTwo);
+ /* } */ case 5:
+ _r$1 = y.expNN(x$1, q, n); /* */ $s = 7; case 7: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ y = _r$1;
+ /* */ if ((y.cmp(natOne) === 0) || (y.cmp(nm1) === 0)) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if ((y.cmp(natOne) === 0) || (y.cmp(nm1) === 0)) { */ case 8:
+ i = i + (1) >> 0;
+ /* continue; */ $s = 1; continue;
+ /* } */ case 9:
+ j = 1;
+ /* while (true) { */ case 10:
+ /* if (!(j < k)) { break; } */ if(!(j < k)) { $s = 11; continue; }
+ y = y.mul(y, y);
+ _r$2 = quotient.div(y, y, n); /* */ $s = 12; case 12: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple = _r$2;
+ quotient = _tuple[0];
+ y = _tuple[1];
+ if (y.cmp(nm1) === 0) {
+ i = i + (1) >> 0;
+ /* continue NextRandom; */ $s = 1; continue s;
+ }
+ if (y.cmp(natOne) === 0) {
+ $s = -1; return false;
+ }
+ j = j + (1) >>> 0;
+ /* } */ $s = 10; continue; case 11:
+ $s = -1; return false;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return true;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: nat.prototype.probablyPrimeMillerRabin }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tuple = _tuple; $f.force2 = force2; $f.i = i; $f.j = j; $f.k = k; $f.n = n; $f.nm1 = nm1; $f.nm3 = nm3; $f.nm3Len = nm3Len; $f.q = q; $f.quotient = quotient; $f.rand$1 = rand$1; $f.reps = reps; $f.x = x; $f.x$1 = x$1; $f.y = y; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(nat).prototype.probablyPrimeMillerRabin = function(reps, force2) { return this.$get().probablyPrimeMillerRabin(reps, force2); };
+ nat.prototype.probablyPrimeLucas = function() {
+ var $ptr, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _tmp, _tmp$1, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, _tuple$5, d, i, intD, intN, j, n, natP, nm2, p, r, s, t, t1, t1$1, t2, t2$1, t3, vk, vk1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; _tuple$5 = $f._tuple$5; d = $f.d; i = $f.i; intD = $f.intD; intN = $f.intN; j = $f.j; n = $f.n; natP = $f.natP; nm2 = $f.nm2; p = $f.p; r = $f.r; s = $f.s; t = $f.t; t1 = $f.t1; t1$1 = $f.t1$1; t2 = $f.t2; t2$1 = $f.t2$1; t3 = $f.t3; vk = $f.vk; vk1 = $f.vk1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = this;
+ if ((n.$length === 0) || (n.cmp(natOne) === 0)) {
+ $s = -1; return false;
+ }
+ if ((((0 >= n.$length ? ($throwRuntimeError("index out of range"), undefined) : n.$array[n.$offset + 0]) & 1) >>> 0) === 0) {
+ $s = -1; return n.cmp(natTwo) === 0;
+ }
+ p = 3;
+ d = new nat([1]);
+ t1 = (nat.nil);
+ intD = new Int.ptr(false, d);
+ intN = new Int.ptr(false, n);
+ /* while (true) { */ case 1:
+ /* */ if (p > 10000) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (p > 10000) { */ case 3:
+ _r = intN.String(); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $panic(new $String("math/big: internal error: cannot find (D/n) = -1 for " + _r));
+ /* } */ case 4:
+ (0 >= d.$length ? ($throwRuntimeError("index out of range"), undefined) : d.$array[d.$offset + 0] = (($imul(p, p) >>> 0) - 4 >>> 0));
+ _r$1 = Jacobi(intD, intN); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ j = _r$1;
+ if (j === -1) {
+ /* break; */ $s = 2; continue;
+ }
+ if (j === 0) {
+ $s = -1; return (n.$length === 1) && ((0 >= n.$length ? ($throwRuntimeError("index out of range"), undefined) : n.$array[n.$offset + 0]) === (p + 2 >>> 0));
+ }
+ /* */ if (p === 40) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (p === 40) { */ case 7:
+ _r$2 = t1.sqrt(n); /* */ $s = 9; case 9: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ t1 = _r$2;
+ t1 = t1.mul(t1, t1);
+ if (t1.cmp(n) === 0) {
+ $s = -1; return false;
+ }
+ /* } */ case 8:
+ p = p + (1) >>> 0;
+ /* } */ $s = 1; continue; case 2:
+ s = (nat.nil).add(n, natOne);
+ r = ((s.trailingZeroBits() >> 0));
+ s = s.shr(s, ((r >>> 0)));
+ nm2 = (nat.nil).sub(n, natTwo);
+ natP = (nat.nil).setWord(p);
+ vk = (nat.nil).setWord(2);
+ vk1 = (nat.nil).setWord(p);
+ t2 = (nat.nil);
+ i = (s.bitLen());
+ /* while (true) { */ case 10:
+ /* if (!(i >= 0)) { break; } */ if(!(i >= 0)) { $s = 11; continue; }
+ /* */ if (!((s.bit(((i >>> 0))) === 0))) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if (!((s.bit(((i >>> 0))) === 0))) { */ case 12:
+ t1 = t1.mul(vk, vk1);
+ t1 = t1.add(t1, n);
+ t1 = t1.sub(t1, natP);
+ _r$3 = t2.div(vk, t1, n); /* */ $s = 15; case 15: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _tuple = _r$3;
+ t2 = _tuple[0];
+ vk = _tuple[1];
+ t1 = t1.mul(vk1, vk1);
+ t1 = t1.add(t1, nm2);
+ _r$4 = t2.div(vk1, t1, n); /* */ $s = 16; case 16: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _tuple$1 = _r$4;
+ t2 = _tuple$1[0];
+ vk1 = _tuple$1[1];
+ $s = 14; continue;
+ /* } else { */ case 13:
+ t1 = t1.mul(vk, vk1);
+ t1 = t1.add(t1, n);
+ t1 = t1.sub(t1, natP);
+ _r$5 = t2.div(vk1, t1, n); /* */ $s = 17; case 17: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _tuple$2 = _r$5;
+ t2 = _tuple$2[0];
+ vk1 = _tuple$2[1];
+ t1 = t1.mul(vk, vk);
+ t1 = t1.add(t1, nm2);
+ _r$6 = t2.div(vk, t1, n); /* */ $s = 18; case 18: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple$3 = _r$6;
+ t2 = _tuple$3[0];
+ vk = _tuple$3[1];
+ /* } */ case 14:
+ i = i - (1) >> 0;
+ /* } */ $s = 10; continue; case 11:
+ /* */ if ((vk.cmp(natTwo) === 0) || (vk.cmp(nm2) === 0)) { $s = 19; continue; }
+ /* */ $s = 20; continue;
+ /* if ((vk.cmp(natTwo) === 0) || (vk.cmp(nm2) === 0)) { */ case 19:
+ t1$1 = t1.mul(vk, natP);
+ t2$1 = t2.shl(vk1, 1);
+ if (t1$1.cmp(t2$1) < 0) {
+ _tmp = t2$1;
+ _tmp$1 = t1$1;
+ t1$1 = _tmp;
+ t2$1 = _tmp$1;
+ }
+ t1$1 = t1$1.sub(t1$1, t2$1);
+ t3 = vk1;
+ vk1 = nat.nil;
+ $unused(vk1);
+ _r$7 = t2$1.div(t3, t1$1, n); /* */ $s = 21; case 21: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _tuple$4 = _r$7;
+ t2$1 = _tuple$4[0];
+ t3 = _tuple$4[1];
+ if (t3.$length === 0) {
+ $s = -1; return true;
+ }
+ /* } */ case 20:
+ t = 0;
+ /* while (true) { */ case 22:
+ /* if (!(t < (r - 1 >> 0))) { break; } */ if(!(t < (r - 1 >> 0))) { $s = 23; continue; }
+ if (vk.$length === 0) {
+ $s = -1; return true;
+ }
+ if ((vk.$length === 1) && ((0 >= vk.$length ? ($throwRuntimeError("index out of range"), undefined) : vk.$array[vk.$offset + 0]) === 2)) {
+ $s = -1; return false;
+ }
+ t1 = t1.mul(vk, vk);
+ t1 = t1.sub(t1, natTwo);
+ _r$8 = t2.div(vk, t1, n); /* */ $s = 24; case 24: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _tuple$5 = _r$8;
+ t2 = _tuple$5[0];
+ vk = _tuple$5[1];
+ t = t + (1) >> 0;
+ /* } */ $s = 22; continue; case 23:
+ $s = -1; return false;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: nat.prototype.probablyPrimeLucas }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f._tuple$5 = _tuple$5; $f.d = d; $f.i = i; $f.intD = intD; $f.intN = intN; $f.j = j; $f.n = n; $f.natP = natP; $f.nm2 = nm2; $f.p = p; $f.r = r; $f.s = s; $f.t = t; $f.t1 = t1; $f.t1$1 = t1$1; $f.t2 = t2; $f.t2$1 = t2$1; $f.t3 = t3; $f.vk = vk; $f.vk1 = vk1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(nat).prototype.probablyPrimeLucas = function() { return this.$get().probablyPrimeLucas(); };
+ ptrType$1.methods = [{prop: "Sign", name: "Sign", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "SetInt64", name: "SetInt64", pkg: "", typ: $funcType([$Int64], [ptrType$1], false)}, {prop: "SetUint64", name: "SetUint64", pkg: "", typ: $funcType([$Uint64], [ptrType$1], false)}, {prop: "Set", name: "Set", pkg: "", typ: $funcType([ptrType$1], [ptrType$1], false)}, {prop: "Bits", name: "Bits", pkg: "", typ: $funcType([], [sliceType$2], false)}, {prop: "SetBits", name: "SetBits", pkg: "", typ: $funcType([sliceType$2], [ptrType$1], false)}, {prop: "Abs", name: "Abs", pkg: "", typ: $funcType([ptrType$1], [ptrType$1], false)}, {prop: "Neg", name: "Neg", pkg: "", typ: $funcType([ptrType$1], [ptrType$1], false)}, {prop: "Add", name: "Add", pkg: "", typ: $funcType([ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "Sub", name: "Sub", pkg: "", typ: $funcType([ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "Mul", name: "Mul", pkg: "", typ: $funcType([ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "MulRange", name: "MulRange", pkg: "", typ: $funcType([$Int64, $Int64], [ptrType$1], false)}, {prop: "Binomial", name: "Binomial", pkg: "", typ: $funcType([$Int64, $Int64], [ptrType$1], false)}, {prop: "Quo", name: "Quo", pkg: "", typ: $funcType([ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "Rem", name: "Rem", pkg: "", typ: $funcType([ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "QuoRem", name: "QuoRem", pkg: "", typ: $funcType([ptrType$1, ptrType$1, ptrType$1], [ptrType$1, ptrType$1], false)}, {prop: "Div", name: "Div", pkg: "", typ: $funcType([ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "Mod", name: "Mod", pkg: "", typ: $funcType([ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "DivMod", name: "DivMod", pkg: "", typ: $funcType([ptrType$1, ptrType$1, ptrType$1], [ptrType$1, ptrType$1], false)}, {prop: "Cmp", name: "Cmp", pkg: "", typ: $funcType([ptrType$1], [$Int], false)}, {prop: "Int64", name: "Int64", pkg: "", typ: $funcType([], [$Int64], false)}, {prop: "Uint64", name: "Uint64", pkg: "", typ: $funcType([], [$Uint64], false)}, {prop: "SetString", name: "SetString", pkg: "", typ: $funcType([$String, $Int], [ptrType$1, $Bool], false)}, {prop: "SetBytes", name: "SetBytes", pkg: "", typ: $funcType([sliceType$1], [ptrType$1], false)}, {prop: "Bytes", name: "Bytes", pkg: "", typ: $funcType([], [sliceType$1], false)}, {prop: "BitLen", name: "BitLen", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Exp", name: "Exp", pkg: "", typ: $funcType([ptrType$1, ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "GCD", name: "GCD", pkg: "", typ: $funcType([ptrType$1, ptrType$1, ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "binaryGCD", name: "binaryGCD", pkg: "math/big", typ: $funcType([ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "Rand", name: "Rand", pkg: "", typ: $funcType([ptrType$6, ptrType$1], [ptrType$1], false)}, {prop: "ModInverse", name: "ModInverse", pkg: "", typ: $funcType([ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "modSqrt3Mod4Prime", name: "modSqrt3Mod4Prime", pkg: "math/big", typ: $funcType([ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "modSqrtTonelliShanks", name: "modSqrtTonelliShanks", pkg: "math/big", typ: $funcType([ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "ModSqrt", name: "ModSqrt", pkg: "", typ: $funcType([ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "Lsh", name: "Lsh", pkg: "", typ: $funcType([ptrType$1, $Uint], [ptrType$1], false)}, {prop: "Rsh", name: "Rsh", pkg: "", typ: $funcType([ptrType$1, $Uint], [ptrType$1], false)}, {prop: "Bit", name: "Bit", pkg: "", typ: $funcType([$Int], [$Uint], false)}, {prop: "SetBit", name: "SetBit", pkg: "", typ: $funcType([ptrType$1, $Int, $Uint], [ptrType$1], false)}, {prop: "And", name: "And", pkg: "", typ: $funcType([ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "AndNot", name: "AndNot", pkg: "", typ: $funcType([ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "Or", name: "Or", pkg: "", typ: $funcType([ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "Xor", name: "Xor", pkg: "", typ: $funcType([ptrType$1, ptrType$1], [ptrType$1], false)}, {prop: "Not", name: "Not", pkg: "", typ: $funcType([ptrType$1], [ptrType$1], false)}, {prop: "Sqrt", name: "Sqrt", pkg: "", typ: $funcType([ptrType$1], [ptrType$1], false)}, {prop: "Text", name: "Text", pkg: "", typ: $funcType([$Int], [$String], false)}, {prop: "Append", name: "Append", pkg: "", typ: $funcType([sliceType$1, $Int], [sliceType$1], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Format", name: "Format", pkg: "", typ: $funcType([fmt.State, $Int32], [], false)}, {prop: "scan", name: "scan", pkg: "math/big", typ: $funcType([io.ByteScanner, $Int], [ptrType$1, $Int, $error], false)}, {prop: "Scan", name: "Scan", pkg: "", typ: $funcType([fmt.ScanState, $Int32], [$error], false)}, {prop: "GobEncode", name: "GobEncode", pkg: "", typ: $funcType([], [sliceType$1, $error], false)}, {prop: "GobDecode", name: "GobDecode", pkg: "", typ: $funcType([sliceType$1], [$error], false)}, {prop: "MarshalText", name: "MarshalText", pkg: "", typ: $funcType([], [sliceType$1, $error], false)}, {prop: "UnmarshalText", name: "UnmarshalText", pkg: "", typ: $funcType([sliceType$1], [$error], false)}, {prop: "MarshalJSON", name: "MarshalJSON", pkg: "", typ: $funcType([], [sliceType$1, $error], false)}, {prop: "UnmarshalJSON", name: "UnmarshalJSON", pkg: "", typ: $funcType([sliceType$1], [$error], false)}, {prop: "ProbablyPrime", name: "ProbablyPrime", pkg: "", typ: $funcType([$Int], [$Bool], false)}];
+ byteReader.methods = [{prop: "ReadByte", name: "ReadByte", pkg: "", typ: $funcType([], [$Uint8, $error], false)}, {prop: "UnreadByte", name: "UnreadByte", pkg: "", typ: $funcType([], [$error], false)}];
+ nat.methods = [{prop: "clear", name: "clear", pkg: "math/big", typ: $funcType([], [], false)}, {prop: "norm", name: "norm", pkg: "math/big", typ: $funcType([], [nat], false)}, {prop: "make", name: "make", pkg: "math/big", typ: $funcType([$Int], [nat], false)}, {prop: "setWord", name: "setWord", pkg: "math/big", typ: $funcType([Word], [nat], false)}, {prop: "setUint64", name: "setUint64", pkg: "math/big", typ: $funcType([$Uint64], [nat], false)}, {prop: "set", name: "set", pkg: "math/big", typ: $funcType([nat], [nat], false)}, {prop: "add", name: "add", pkg: "math/big", typ: $funcType([nat, nat], [nat], false)}, {prop: "sub", name: "sub", pkg: "math/big", typ: $funcType([nat, nat], [nat], false)}, {prop: "cmp", name: "cmp", pkg: "math/big", typ: $funcType([nat], [$Int], false)}, {prop: "mulAddWW", name: "mulAddWW", pkg: "math/big", typ: $funcType([nat, Word, Word], [nat], false)}, {prop: "montgomery", name: "montgomery", pkg: "math/big", typ: $funcType([nat, nat, nat, Word, $Int], [nat], false)}, {prop: "mul", name: "mul", pkg: "math/big", typ: $funcType([nat, nat], [nat], false)}, {prop: "mulRange", name: "mulRange", pkg: "math/big", typ: $funcType([$Uint64, $Uint64], [nat], false)}, {prop: "divW", name: "divW", pkg: "math/big", typ: $funcType([nat, Word], [nat, Word], false)}, {prop: "div", name: "div", pkg: "math/big", typ: $funcType([nat, nat, nat], [nat, nat], false)}, {prop: "divLarge", name: "divLarge", pkg: "math/big", typ: $funcType([nat, nat, nat], [nat, nat], false)}, {prop: "bitLen", name: "bitLen", pkg: "math/big", typ: $funcType([], [$Int], false)}, {prop: "trailingZeroBits", name: "trailingZeroBits", pkg: "math/big", typ: $funcType([], [$Uint], false)}, {prop: "shl", name: "shl", pkg: "math/big", typ: $funcType([nat, $Uint], [nat], false)}, {prop: "shr", name: "shr", pkg: "math/big", typ: $funcType([nat, $Uint], [nat], false)}, {prop: "setBit", name: "setBit", pkg: "math/big", typ: $funcType([nat, $Uint, $Uint], [nat], false)}, {prop: "bit", name: "bit", pkg: "math/big", typ: $funcType([$Uint], [$Uint], false)}, {prop: "sticky", name: "sticky", pkg: "math/big", typ: $funcType([$Uint], [$Uint], false)}, {prop: "and", name: "and", pkg: "math/big", typ: $funcType([nat, nat], [nat], false)}, {prop: "andNot", name: "andNot", pkg: "math/big", typ: $funcType([nat, nat], [nat], false)}, {prop: "or", name: "or", pkg: "math/big", typ: $funcType([nat, nat], [nat], false)}, {prop: "xor", name: "xor", pkg: "math/big", typ: $funcType([nat, nat], [nat], false)}, {prop: "modW", name: "modW", pkg: "math/big", typ: $funcType([Word], [Word], false)}, {prop: "random", name: "random", pkg: "math/big", typ: $funcType([ptrType$6, nat, $Int], [nat], false)}, {prop: "expNN", name: "expNN", pkg: "math/big", typ: $funcType([nat, nat, nat], [nat], false)}, {prop: "expNNWindowed", name: "expNNWindowed", pkg: "math/big", typ: $funcType([nat, nat, nat], [nat], false)}, {prop: "expNNMontgomery", name: "expNNMontgomery", pkg: "math/big", typ: $funcType([nat, nat, nat], [nat], false)}, {prop: "bytes", name: "bytes", pkg: "math/big", typ: $funcType([sliceType$1], [$Int], false)}, {prop: "setBytes", name: "setBytes", pkg: "math/big", typ: $funcType([sliceType$1], [nat], false)}, {prop: "sqrt", name: "sqrt", pkg: "math/big", typ: $funcType([nat], [nat], false)}, {prop: "scan", name: "scan", pkg: "math/big", typ: $funcType([io.ByteScanner, $Int, $Bool], [nat, $Int, $Int, $error], false)}, {prop: "utoa", name: "utoa", pkg: "math/big", typ: $funcType([$Int], [sliceType$1], false)}, {prop: "itoa", name: "itoa", pkg: "math/big", typ: $funcType([$Bool, $Int], [sliceType$1], false)}, {prop: "convertWords", name: "convertWords", pkg: "math/big", typ: $funcType([sliceType$1, Word, $Int, Word, sliceType$3], [], false)}, {prop: "expWW", name: "expWW", pkg: "math/big", typ: $funcType([Word, Word], [nat], false)}, {prop: "probablyPrimeMillerRabin", name: "probablyPrimeMillerRabin", pkg: "math/big", typ: $funcType([$Int, $Bool], [$Bool], false)}, {prop: "probablyPrimeLucas", name: "probablyPrimeLucas", pkg: "math/big", typ: $funcType([], [$Bool], false)}];
+ Int.init("math/big", [{prop: "neg", name: "neg", exported: false, typ: $Bool, tag: ""}, {prop: "abs", name: "abs", exported: false, typ: nat, tag: ""}]);
+ byteReader.init("", [{prop: "ScanState", name: "", exported: true, typ: fmt.ScanState, tag: ""}]);
+ nat.init(Word);
+ divisor.init("math/big", [{prop: "bbb", name: "bbb", exported: false, typ: nat, tag: ""}, {prop: "nbits", name: "nbits", exported: false, typ: $Int, tag: ""}, {prop: "ndigits", name: "ndigits", exported: false, typ: $Int, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = binary.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = nosync.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = math.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = rand.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ natPool = new nosync.Pool.ptr(sliceType.nil, $throwNilPointerError);
+ cacheBase10 = new structType.ptr(new nosync.Mutex.ptr(false), arrayType.zero());
+ natOne = new nat([1]);
+ intOne = new Int.ptr(false, natOne);
+ natTwo = new nat([2]);
+ karatsubaThreshold = 40;
+ deBruijn32Lookup = $toNativeArray($kindUint8, [0, 1, 28, 2, 29, 14, 24, 3, 30, 22, 20, 15, 25, 17, 4, 8, 31, 27, 13, 23, 21, 19, 16, 7, 26, 12, 18, 6, 11, 5, 10, 9]);
+ deBruijn64Lookup = $toNativeArray($kindUint8, [0, 1, 56, 2, 57, 49, 28, 3, 61, 58, 42, 50, 38, 29, 17, 4, 62, 47, 59, 36, 45, 43, 51, 22, 53, 39, 33, 30, 24, 18, 12, 5, 63, 55, 48, 27, 60, 41, 37, 16, 46, 35, 44, 21, 52, 32, 23, 11, 54, 26, 40, 15, 34, 20, 31, 10, 25, 14, 19, 9, 13, 8, 7, 6]);
+ leafSize = 8;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["crypto/rand"] = (function() {
+ var $pkg = {}, $init, errors, js, io, big, rngReader, sliceType, ptrType$1, smallPrimesProduct, init, Read;
+ errors = $packages["errors"];
+ js = $packages["github.com/gopherjs/gopherjs/js"];
+ io = $packages["io"];
+ big = $packages["math/big"];
+ rngReader = $pkg.rngReader = $newType(0, $kindStruct, "rand.rngReader", true, "crypto/rand", false, function() {
+ this.$val = this;
+ if (arguments.length === 0) {
+ return;
+ }
+ });
+ sliceType = $sliceType($Uint8);
+ ptrType$1 = $ptrType(rngReader);
+ init = function() {
+ var $ptr;
+ $pkg.Reader = new rngReader.ptr();
+ };
+ rngReader.ptr.prototype.Read = function(b) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, array, b, crypto, err, n, offset, r, randomBytes, require;
+ n = 0;
+ err = $ifaceNil;
+ r = this;
+ array = b.$array;
+ offset = $parseInt(b.$offset) >> 0;
+ crypto = $global.crypto;
+ if (crypto === undefined) {
+ crypto = $global.msCrypto;
+ }
+ if (!(crypto === undefined)) {
+ if (!(crypto.getRandomValues === undefined)) {
+ n = b.$length;
+ if (n > 65536) {
+ n = 65536;
+ }
+ crypto.getRandomValues(array.subarray(offset, offset + n >> 0));
+ _tmp = n;
+ _tmp$1 = $ifaceNil;
+ n = _tmp;
+ err = _tmp$1;
+ return [n, err];
+ }
+ }
+ require = $global.require;
+ if (!(require === undefined)) {
+ randomBytes = require($externalize("crypto", $String)).randomBytes;
+ if (!(randomBytes === undefined)) {
+ array.set(randomBytes(b.$length), offset);
+ _tmp$2 = b.$length;
+ _tmp$3 = $ifaceNil;
+ n = _tmp$2;
+ err = _tmp$3;
+ return [n, err];
+ }
+ }
+ _tmp$4 = 0;
+ _tmp$5 = errors.New("crypto/rand not available in this environment");
+ n = _tmp$4;
+ err = _tmp$5;
+ return [n, err];
+ };
+ rngReader.prototype.Read = function(b) { return this.$val.Read(b); };
+ Read = function(b) {
+ var $ptr, _r, _tuple, b, err, n, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; b = $f.b; err = $f.err; n = $f.n; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ n = 0;
+ err = $ifaceNil;
+ _r = io.ReadFull($pkg.Reader, b); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ n = _tuple[0];
+ err = _tuple[1];
+ $s = -1; return [n, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Read }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.b = b; $f.err = err; $f.n = n; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Read = Read;
+ ptrType$1.methods = [{prop: "Read", name: "Read", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}];
+ rngReader.init("", []);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = errors.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = js.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = big.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $pkg.Reader = $ifaceNil;
+ smallPrimesProduct = new big.Int.ptr(false, big.nat.nil).SetUint64(new $Uint64(3793877372, 820596253));
+ init();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/crypto.v0/random"] = (function() {
+ var $pkg = {}, $init, cipher, rand, binary, big, randstream, sliceType, ptrType, ptrType$1, Bits, Int, Bytes, NonZeroBytes;
+ cipher = $packages["crypto/cipher"];
+ rand = $packages["crypto/rand"];
+ binary = $packages["encoding/binary"];
+ big = $packages["math/big"];
+ randstream = $pkg.randstream = $newType(0, $kindStruct, "random.randstream", true, "gopkg.in/dedis/crypto.v0/random", false, function() {
+ this.$val = this;
+ if (arguments.length === 0) {
+ return;
+ }
+ });
+ sliceType = $sliceType($Uint8);
+ ptrType = $ptrType(big.Int);
+ ptrType$1 = $ptrType(randstream);
+ Bits = function(bitlen, exact, rand$1) {
+ var $ptr, _q, b, bitlen, exact, highbits, rand$1, y, y$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; b = $f.b; bitlen = $f.bitlen; exact = $f.exact; highbits = $f.highbits; rand$1 = $f.rand$1; y = $f.y; y$1 = $f.y$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = $makeSlice(sliceType, (_q = ((bitlen + 7 >>> 0)) / 8, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero")));
+ $r = rand$1.XORKeyStream(b, b); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ highbits = (bitlen & 7) >>> 0;
+ if (!((highbits === 0))) {
+ (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0] = (((0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0]) & ((~(((y = highbits, y < 32 ? (255 << y) : 0) << 24 >>> 24)) << 24 >>> 24))) >>> 0));
+ }
+ if (exact) {
+ if (!((highbits === 0))) {
+ (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0] = (((0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0]) | (((y$1 = ((highbits - 1 >>> 0)), y$1 < 32 ? (1 << y$1) : 0) << 24 >>> 24))) >>> 0));
+ } else {
+ (0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0] = (((0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0]) | (128)) >>> 0));
+ }
+ }
+ $s = -1; return b;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Bits }; } $f.$ptr = $ptr; $f._q = _q; $f.b = b; $f.bitlen = bitlen; $f.exact = exact; $f.highbits = highbits; $f.rand$1 = rand$1; $f.y = y; $f.y$1 = y$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Bits = Bits;
+ Int = function(mod, rand$1) {
+ var $ptr, _r, _r$1, bitlen, i, mod, rand$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; bitlen = $f.bitlen; i = $f.i; mod = $f.mod; rand$1 = $f.rand$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ bitlen = ((mod.BitLen() >>> 0));
+ i = new big.Int.ptr(false, big.nat.nil);
+ /* while (true) { */ case 1:
+ _r = Bits(bitlen, false, rand$1); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = i.SetBytes(_r); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ if (i.Sign() > 0 && i.Cmp(mod) < 0) {
+ $s = -1; return i;
+ }
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return ptrType.nil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.bitlen = bitlen; $f.i = i; $f.mod = mod; $f.rand$1 = rand$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Int = Int;
+ Bytes = function(n, rand$1) {
+ var $ptr, b, n, rand$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; b = $f.b; n = $f.n; rand$1 = $f.rand$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = $makeSlice(sliceType, n);
+ $r = rand$1.XORKeyStream(b, b); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return b;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Bytes }; } $f.$ptr = $ptr; $f.b = b; $f.n = n; $f.rand$1 = rand$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Bytes = Bytes;
+ NonZeroBytes = function(n, rand$1) {
+ var $ptr, _i, _r, _ref, b, n, rand$1, randoms, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _ref = $f._ref; b = $f.b; n = $f.n; rand$1 = $f.rand$1; randoms = $f.randoms; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ randoms = sliceType.nil;
+ /* while (true) { */ case 1:
+ _r = Bytes(n, rand$1); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ randoms = _r;
+ _ref = randoms;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ b = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (!((b === 0))) {
+ $s = -1; return randoms;
+ }
+ _i++;
+ }
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return randoms;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: NonZeroBytes }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._ref = _ref; $f.b = b; $f.n = n; $f.rand$1 = rand$1; $f.randoms = randoms; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.NonZeroBytes = NonZeroBytes;
+ randstream.ptr.prototype.XORKeyStream = function(dst, src) {
+ var $ptr, _r, _tuple, buf, dst, err, i, l, n, r, src, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; buf = $f.buf; dst = $f.dst; err = $f.err; i = $f.i; l = $f.l; n = $f.n; r = $f.r; src = $f.src; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = this;
+ l = dst.$length;
+ if (!((src.$length === l))) {
+ $panic(new $String("XORKeyStream: mismatched buffer lengths"));
+ }
+ buf = $makeSlice(sliceType, l);
+ _r = rand.Read(buf); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ n = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $panic(err);
+ }
+ if (n < buf.$length) {
+ $panic(new $String("short read on infinite random stream!?"));
+ }
+ i = 0;
+ while (true) {
+ if (!(i < l)) { break; }
+ ((i < 0 || i >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + i] = ((((i < 0 || i >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + i]) ^ ((i < 0 || i >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + i])) << 24 >>> 24));
+ i = i + (1) >> 0;
+ }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: randstream.ptr.prototype.XORKeyStream }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.buf = buf; $f.dst = dst; $f.err = err; $f.i = i; $f.l = l; $f.n = n; $f.r = r; $f.src = src; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ randstream.prototype.XORKeyStream = function(dst, src) { return this.$val.XORKeyStream(dst, src); };
+ ptrType$1.methods = [{prop: "XORKeyStream", name: "XORKeyStream", pkg: "", typ: $funcType([sliceType, sliceType], [], false)}];
+ randstream.init("", []);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = cipher.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = rand.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = binary.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = big.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $pkg.Stream = new randstream.ptr();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["log"] = (function() {
+ var $pkg = {}, $init, fmt, nosync, io, os, runtime, time, Logger, sliceType, arrayType, ptrType, sliceType$1, ptrType$1, std, New, itoa, Panicf;
+ fmt = $packages["fmt"];
+ nosync = $packages["github.com/gopherjs/gopherjs/nosync"];
+ io = $packages["io"];
+ os = $packages["os"];
+ runtime = $packages["runtime"];
+ time = $packages["time"];
+ Logger = $pkg.Logger = $newType(0, $kindStruct, "log.Logger", true, "log", true, function(mu_, prefix_, flag_, out_, buf_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.mu = new nosync.Mutex.ptr(false);
+ this.prefix = "";
+ this.flag = 0;
+ this.out = $ifaceNil;
+ this.buf = sliceType.nil;
+ return;
+ }
+ this.mu = mu_;
+ this.prefix = prefix_;
+ this.flag = flag_;
+ this.out = out_;
+ this.buf = buf_;
+ });
+ sliceType = $sliceType($Uint8);
+ arrayType = $arrayType($Uint8, 20);
+ ptrType = $ptrType(sliceType);
+ sliceType$1 = $sliceType($emptyInterface);
+ ptrType$1 = $ptrType(Logger);
+ New = function(out, prefix, flag) {
+ var $ptr, flag, out, prefix;
+ return new Logger.ptr(new nosync.Mutex.ptr(false), prefix, flag, out, sliceType.nil);
+ };
+ $pkg.New = New;
+ Logger.ptr.prototype.SetOutput = function(w) {
+ var $ptr, l, w, $deferred;
+ /* */ var $err = null; try { $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ l = this;
+ l.mu.Lock();
+ $deferred.push([$methodVal(l.mu, "Unlock"), []]);
+ l.out = w;
+ /* */ } catch(err) { $err = err; } finally { $callDeferred($deferred, $err); }
+ };
+ Logger.prototype.SetOutput = function(w) { return this.$val.SetOutput(w); };
+ itoa = function(buf, i, wid) {
+ var $ptr, _q, b, bp, buf, i, q, wid;
+ b = arrayType.zero();
+ bp = 19;
+ while (true) {
+ if (!(i >= 10 || wid > 1)) { break; }
+ wid = wid - (1) >> 0;
+ q = (_q = i / 10, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ ((bp < 0 || bp >= b.length) ? ($throwRuntimeError("index out of range"), undefined) : b[bp] = ((((48 + i >> 0) - ($imul(q, 10)) >> 0) << 24 >>> 24)));
+ bp = bp - (1) >> 0;
+ i = q;
+ }
+ ((bp < 0 || bp >= b.length) ? ($throwRuntimeError("index out of range"), undefined) : b[bp] = (((48 + i >> 0) << 24 >>> 24)));
+ buf.$set($appendSlice(buf.$get(), $subslice(new sliceType(b), bp)));
+ };
+ Logger.ptr.prototype.formatHeader = function(buf, t, file, line) {
+ var $ptr, _q, _r, _r$1, _tuple, _tuple$1, buf, day, file, hour, i, l, line, min, month, sec, short$1, t, year, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; buf = $f.buf; day = $f.day; file = $f.file; hour = $f.hour; i = $f.i; l = $f.l; line = $f.line; min = $f.min; month = $f.month; sec = $f.sec; short$1 = $f.short$1; t = $f.t; year = $f.year; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ l = this;
+ buf.$set($appendSlice(buf.$get(), l.prefix));
+ if (!(((l.flag & 32) === 0))) {
+ time.Time.copy(t, $clone(t, time.Time).UTC());
+ }
+ /* */ if (!(((l.flag & 7) === 0))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!(((l.flag & 7) === 0))) { */ case 1:
+ /* */ if (!(((l.flag & 1) === 0))) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!(((l.flag & 1) === 0))) { */ case 3:
+ _r = $clone(t, time.Time).Date(); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ year = _tuple[0];
+ month = _tuple[1];
+ day = _tuple[2];
+ itoa(buf, year, 4);
+ buf.$set($append(buf.$get(), 47));
+ itoa(buf, ((month >> 0)), 2);
+ buf.$set($append(buf.$get(), 47));
+ itoa(buf, day, 2);
+ buf.$set($append(buf.$get(), 32));
+ /* } */ case 4:
+ /* */ if (!(((l.flag & 6) === 0))) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (!(((l.flag & 6) === 0))) { */ case 6:
+ _r$1 = $clone(t, time.Time).Clock(); /* */ $s = 8; case 8: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ hour = _tuple$1[0];
+ min = _tuple$1[1];
+ sec = _tuple$1[2];
+ itoa(buf, hour, 2);
+ buf.$set($append(buf.$get(), 58));
+ itoa(buf, min, 2);
+ buf.$set($append(buf.$get(), 58));
+ itoa(buf, sec, 2);
+ if (!(((l.flag & 4) === 0))) {
+ buf.$set($append(buf.$get(), 46));
+ itoa(buf, (_q = $clone(t, time.Time).Nanosecond() / 1000, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")), 6);
+ }
+ buf.$set($append(buf.$get(), 32));
+ /* } */ case 7:
+ /* } */ case 2:
+ if (!(((l.flag & 24) === 0))) {
+ if (!(((l.flag & 16) === 0))) {
+ short$1 = file;
+ i = file.length - 1 >> 0;
+ while (true) {
+ if (!(i > 0)) { break; }
+ if (file.charCodeAt(i) === 47) {
+ short$1 = $substring(file, (i + 1 >> 0));
+ break;
+ }
+ i = i - (1) >> 0;
+ }
+ file = short$1;
+ }
+ buf.$set($appendSlice(buf.$get(), file));
+ buf.$set($append(buf.$get(), 58));
+ itoa(buf, line, -1);
+ buf.$set($appendSlice(buf.$get(), ": "));
+ }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Logger.ptr.prototype.formatHeader }; } $f.$ptr = $ptr; $f._q = _q; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.buf = buf; $f.day = day; $f.file = file; $f.hour = hour; $f.i = i; $f.l = l; $f.line = line; $f.min = min; $f.month = month; $f.sec = sec; $f.short$1 = short$1; $f.t = t; $f.year = year; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Logger.prototype.formatHeader = function(buf, t, file, line) { return this.$val.formatHeader(buf, t, file, line); };
+ Logger.ptr.prototype.Output = function(calldepth, s) {
+ var $ptr, _r, _tuple, _tuple$1, calldepth, err, file, l, line, now, ok, s, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; calldepth = $f.calldepth; err = $f.err; file = $f.file; l = $f.l; line = $f.line; now = $f.now; ok = $f.ok; s = $f.s; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ l = this;
+ now = $clone(time.Now(), time.Time);
+ file = "";
+ line = 0;
+ l.mu.Lock();
+ $deferred.push([$methodVal(l.mu, "Unlock"), []]);
+ if (!(((l.flag & 24) === 0))) {
+ l.mu.Unlock();
+ ok = false;
+ _tuple = runtime.Caller(calldepth);
+ file = _tuple[1];
+ line = _tuple[2];
+ ok = _tuple[3];
+ if (!ok) {
+ file = "???";
+ line = 0;
+ }
+ l.mu.Lock();
+ }
+ l.buf = $subslice(l.buf, 0, 0);
+ $r = l.formatHeader((l.$ptr_buf || (l.$ptr_buf = new ptrType(function() { return this.$target.buf; }, function($v) { this.$target.buf = $v; }, l))), $clone(now, time.Time), file, line); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ l.buf = $appendSlice(l.buf, s);
+ if ((s.length === 0) || !((s.charCodeAt((s.length - 1 >> 0)) === 10))) {
+ l.buf = $append(l.buf, 10);
+ }
+ _r = l.out.Write(l.buf); /* */ $s = 2; case 2: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple$1 = _r;
+ err = _tuple$1[1];
+ $s = -1; return err;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; return $ifaceNil; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: Logger.ptr.prototype.Output }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.calldepth = calldepth; $f.err = err; $f.file = file; $f.l = l; $f.line = line; $f.now = now; $f.ok = ok; $f.s = s; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ Logger.prototype.Output = function(calldepth, s) { return this.$val.Output(calldepth, s); };
+ Logger.ptr.prototype.Printf = function(format, v) {
+ var $ptr, _arg, _r, _r$1, format, l, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _r = $f._r; _r$1 = $f._r$1; format = $f.format; l = $f.l; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ l = this;
+ _r = fmt.Sprintf(format, v); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg = _r;
+ _r$1 = l.Output(2, _arg); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Logger.ptr.prototype.Printf }; } $f.$ptr = $ptr; $f._arg = _arg; $f._r = _r; $f._r$1 = _r$1; $f.format = format; $f.l = l; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Logger.prototype.Printf = function(format, v) { return this.$val.Printf(format, v); };
+ Logger.ptr.prototype.Print = function(v) {
+ var $ptr, _arg, _r, _r$1, l, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _r = $f._r; _r$1 = $f._r$1; l = $f.l; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ l = this;
+ _r = fmt.Sprint(v); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg = _r;
+ _r$1 = l.Output(2, _arg); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Logger.ptr.prototype.Print }; } $f.$ptr = $ptr; $f._arg = _arg; $f._r = _r; $f._r$1 = _r$1; $f.l = l; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Logger.prototype.Print = function(v) { return this.$val.Print(v); };
+ Logger.ptr.prototype.Println = function(v) {
+ var $ptr, _arg, _r, _r$1, l, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _r = $f._r; _r$1 = $f._r$1; l = $f.l; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ l = this;
+ _r = fmt.Sprintln(v); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg = _r;
+ _r$1 = l.Output(2, _arg); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Logger.ptr.prototype.Println }; } $f.$ptr = $ptr; $f._arg = _arg; $f._r = _r; $f._r$1 = _r$1; $f.l = l; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Logger.prototype.Println = function(v) { return this.$val.Println(v); };
+ Logger.ptr.prototype.Fatal = function(v) {
+ var $ptr, _arg, _r, _r$1, l, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _r = $f._r; _r$1 = $f._r$1; l = $f.l; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ l = this;
+ _r = fmt.Sprint(v); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg = _r;
+ _r$1 = l.Output(2, _arg); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ os.Exit(1);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Logger.ptr.prototype.Fatal }; } $f.$ptr = $ptr; $f._arg = _arg; $f._r = _r; $f._r$1 = _r$1; $f.l = l; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Logger.prototype.Fatal = function(v) { return this.$val.Fatal(v); };
+ Logger.ptr.prototype.Fatalf = function(format, v) {
+ var $ptr, _arg, _r, _r$1, format, l, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _r = $f._r; _r$1 = $f._r$1; format = $f.format; l = $f.l; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ l = this;
+ _r = fmt.Sprintf(format, v); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg = _r;
+ _r$1 = l.Output(2, _arg); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ os.Exit(1);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Logger.ptr.prototype.Fatalf }; } $f.$ptr = $ptr; $f._arg = _arg; $f._r = _r; $f._r$1 = _r$1; $f.format = format; $f.l = l; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Logger.prototype.Fatalf = function(format, v) { return this.$val.Fatalf(format, v); };
+ Logger.ptr.prototype.Fatalln = function(v) {
+ var $ptr, _arg, _r, _r$1, l, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _r = $f._r; _r$1 = $f._r$1; l = $f.l; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ l = this;
+ _r = fmt.Sprintln(v); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg = _r;
+ _r$1 = l.Output(2, _arg); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ os.Exit(1);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Logger.ptr.prototype.Fatalln }; } $f.$ptr = $ptr; $f._arg = _arg; $f._r = _r; $f._r$1 = _r$1; $f.l = l; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Logger.prototype.Fatalln = function(v) { return this.$val.Fatalln(v); };
+ Logger.ptr.prototype.Panic = function(v) {
+ var $ptr, _r, _r$1, l, s, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; l = $f.l; s = $f.s; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ l = this;
+ _r = fmt.Sprint(v); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ s = _r;
+ _r$1 = l.Output(2, s); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $panic(new $String(s));
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Logger.ptr.prototype.Panic }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.l = l; $f.s = s; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Logger.prototype.Panic = function(v) { return this.$val.Panic(v); };
+ Logger.ptr.prototype.Panicf = function(format, v) {
+ var $ptr, _r, _r$1, format, l, s, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; format = $f.format; l = $f.l; s = $f.s; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ l = this;
+ _r = fmt.Sprintf(format, v); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ s = _r;
+ _r$1 = l.Output(2, s); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $panic(new $String(s));
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Logger.ptr.prototype.Panicf }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.format = format; $f.l = l; $f.s = s; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Logger.prototype.Panicf = function(format, v) { return this.$val.Panicf(format, v); };
+ Logger.ptr.prototype.Panicln = function(v) {
+ var $ptr, _r, _r$1, l, s, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; l = $f.l; s = $f.s; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ l = this;
+ _r = fmt.Sprintln(v); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ s = _r;
+ _r$1 = l.Output(2, s); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $panic(new $String(s));
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Logger.ptr.prototype.Panicln }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.l = l; $f.s = s; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Logger.prototype.Panicln = function(v) { return this.$val.Panicln(v); };
+ Logger.ptr.prototype.Flags = function() {
+ var $ptr, l, $deferred;
+ /* */ var $err = null; try { $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ l = this;
+ l.mu.Lock();
+ $deferred.push([$methodVal(l.mu, "Unlock"), []]);
+ return l.flag;
+ /* */ } catch(err) { $err = err; return 0; } finally { $callDeferred($deferred, $err); }
+ };
+ Logger.prototype.Flags = function() { return this.$val.Flags(); };
+ Logger.ptr.prototype.SetFlags = function(flag) {
+ var $ptr, flag, l, $deferred;
+ /* */ var $err = null; try { $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ l = this;
+ l.mu.Lock();
+ $deferred.push([$methodVal(l.mu, "Unlock"), []]);
+ l.flag = flag;
+ /* */ } catch(err) { $err = err; } finally { $callDeferred($deferred, $err); }
+ };
+ Logger.prototype.SetFlags = function(flag) { return this.$val.SetFlags(flag); };
+ Logger.ptr.prototype.Prefix = function() {
+ var $ptr, l, $deferred;
+ /* */ var $err = null; try { $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ l = this;
+ l.mu.Lock();
+ $deferred.push([$methodVal(l.mu, "Unlock"), []]);
+ return l.prefix;
+ /* */ } catch(err) { $err = err; return ""; } finally { $callDeferred($deferred, $err); }
+ };
+ Logger.prototype.Prefix = function() { return this.$val.Prefix(); };
+ Logger.ptr.prototype.SetPrefix = function(prefix) {
+ var $ptr, l, prefix, $deferred;
+ /* */ var $err = null; try { $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ l = this;
+ l.mu.Lock();
+ $deferred.push([$methodVal(l.mu, "Unlock"), []]);
+ l.prefix = prefix;
+ /* */ } catch(err) { $err = err; } finally { $callDeferred($deferred, $err); }
+ };
+ Logger.prototype.SetPrefix = function(prefix) { return this.$val.SetPrefix(prefix); };
+ Panicf = function(format, v) {
+ var $ptr, _r, _r$1, format, s, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; format = $f.format; s = $f.s; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = fmt.Sprintf(format, v); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ s = _r;
+ _r$1 = std.Output(2, s); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $panic(new $String(s));
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Panicf }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.format = format; $f.s = s; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Panicf = Panicf;
+ ptrType$1.methods = [{prop: "SetOutput", name: "SetOutput", pkg: "", typ: $funcType([io.Writer], [], false)}, {prop: "formatHeader", name: "formatHeader", pkg: "log", typ: $funcType([ptrType, time.Time, $String, $Int], [], false)}, {prop: "Output", name: "Output", pkg: "", typ: $funcType([$Int, $String], [$error], false)}, {prop: "Printf", name: "Printf", pkg: "", typ: $funcType([$String, sliceType$1], [], true)}, {prop: "Print", name: "Print", pkg: "", typ: $funcType([sliceType$1], [], true)}, {prop: "Println", name: "Println", pkg: "", typ: $funcType([sliceType$1], [], true)}, {prop: "Fatal", name: "Fatal", pkg: "", typ: $funcType([sliceType$1], [], true)}, {prop: "Fatalf", name: "Fatalf", pkg: "", typ: $funcType([$String, sliceType$1], [], true)}, {prop: "Fatalln", name: "Fatalln", pkg: "", typ: $funcType([sliceType$1], [], true)}, {prop: "Panic", name: "Panic", pkg: "", typ: $funcType([sliceType$1], [], true)}, {prop: "Panicf", name: "Panicf", pkg: "", typ: $funcType([$String, sliceType$1], [], true)}, {prop: "Panicln", name: "Panicln", pkg: "", typ: $funcType([sliceType$1], [], true)}, {prop: "Flags", name: "Flags", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "SetFlags", name: "SetFlags", pkg: "", typ: $funcType([$Int], [], false)}, {prop: "Prefix", name: "Prefix", pkg: "", typ: $funcType([], [$String], false)}, {prop: "SetPrefix", name: "SetPrefix", pkg: "", typ: $funcType([$String], [], false)}];
+ Logger.init("log", [{prop: "mu", name: "mu", exported: false, typ: nosync.Mutex, tag: ""}, {prop: "prefix", name: "prefix", exported: false, typ: $String, tag: ""}, {prop: "flag", name: "flag", exported: false, typ: $Int, tag: ""}, {prop: "out", name: "out", exported: false, typ: io.Writer, tag: ""}, {prop: "buf", name: "buf", exported: false, typ: sliceType, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = fmt.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = nosync.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = os.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = time.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ std = New(os.Stderr, "", 3);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/crypto.v0/cipher"] = (function() {
+ var $pkg = {}, $init, cipher, hmac, binary, errors, fmt, abstract$1, ints, random, subtle, util, hash, log, cipherHash, cipherBlockSize, Sponge, Padding, spongeCipher, sliceType, sliceType$1, sliceType$2, ptrType$1, funcType, ptrType$2, zeroBytes, NewHash, FromSponge;
+ cipher = $packages["crypto/cipher"];
+ hmac = $packages["crypto/hmac"];
+ binary = $packages["encoding/binary"];
+ errors = $packages["errors"];
+ fmt = $packages["fmt"];
+ abstract$1 = $packages["gopkg.in/dedis/crypto.v0/abstract"];
+ ints = $packages["gopkg.in/dedis/crypto.v0/ints"];
+ random = $packages["gopkg.in/dedis/crypto.v0/random"];
+ subtle = $packages["gopkg.in/dedis/crypto.v0/subtle"];
+ util = $packages["gopkg.in/dedis/crypto.v0/util"];
+ hash = $packages["hash"];
+ log = $packages["log"];
+ cipherHash = $pkg.cipherHash = $newType(0, $kindStruct, "cipher.cipherHash", true, "gopkg.in/dedis/crypto.v0/cipher", false, function(cipher_, cur_, size_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.cipher = $throwNilPointerError;
+ this.cur = new abstract$1.Cipher.ptr($ifaceNil);
+ this.size = 0;
+ return;
+ }
+ this.cipher = cipher_;
+ this.cur = cur_;
+ this.size = size_;
+ });
+ cipherBlockSize = $pkg.cipherBlockSize = $newType(8, $kindInterface, "cipher.cipherBlockSize", true, "gopkg.in/dedis/crypto.v0/cipher", false, null);
+ Sponge = $pkg.Sponge = $newType(8, $kindInterface, "cipher.Sponge", true, "gopkg.in/dedis/crypto.v0/cipher", true, null);
+ Padding = $pkg.Padding = $newType(1, $kindUint8, "cipher.Padding", true, "gopkg.in/dedis/crypto.v0/cipher", true, null);
+ spongeCipher = $pkg.spongeCipher = $newType(0, $kindStruct, "cipher.spongeCipher", true, "gopkg.in/dedis/crypto.v0/cipher", false, function(sponge_, rate_, cap_, pad_, buf_, pos_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.sponge = $ifaceNil;
+ this.rate = 0;
+ this.cap = 0;
+ this.pad = 0;
+ this.buf = sliceType.nil;
+ this.pos = 0;
+ return;
+ }
+ this.sponge = sponge_;
+ this.rate = rate_;
+ this.cap = cap_;
+ this.pad = pad_;
+ this.buf = buf_;
+ this.pos = pos_;
+ });
+ sliceType = $sliceType($Uint8);
+ sliceType$1 = $sliceType($emptyInterface);
+ sliceType$2 = $sliceType($Int);
+ ptrType$1 = $ptrType(cipherHash);
+ funcType = $funcType([sliceType, sliceType$1], [abstract$1.Cipher], true);
+ ptrType$2 = $ptrType(spongeCipher);
+ NewHash = function(cipher$1, size) {
+ var $ptr, _r, ch, cipher$1, size, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; ch = $f.ch; cipher$1 = $f.cipher$1; size = $f.size; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ ch = new cipherHash.ptr($throwNilPointerError, new abstract$1.Cipher.ptr($ifaceNil), 0);
+ ch.cipher = cipher$1;
+ _r = cipher$1(abstract$1.NoKey, new sliceType$1([])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ abstract$1.Cipher.copy(ch.cur, _r);
+ ch.size = size;
+ $s = -1; return ch;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: NewHash }; } $f.$ptr = $ptr; $f._r = _r; $f.ch = ch; $f.cipher$1 = cipher$1; $f.size = size; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.NewHash = NewHash;
+ cipherHash.ptr.prototype.Write = function(src) {
+ var $ptr, _r, ch, src, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; ch = $f.ch; src = $f.src; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ ch = this;
+ _r = $clone(ch.cur, abstract$1.Cipher).Partial(sliceType.nil, sliceType.nil, src); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return [src.$length, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cipherHash.ptr.prototype.Write }; } $f.$ptr = $ptr; $f._r = _r; $f.ch = ch; $f.src = src; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cipherHash.prototype.Write = function(src) { return this.$val.Write(src); };
+ cipherHash.ptr.prototype.Sum = function(buf) {
+ var $ptr, _r, _r$1, _r$2, _tuple, buf, c, ch, hash$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _tuple = $f._tuple; buf = $f.buf; c = $f.c; ch = $f.ch; hash$1 = $f.hash$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ ch = this;
+ _r = $clone(ch.cur, abstract$1.Cipher).Clone(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ c = $clone(_r, abstract$1.Cipher);
+ _r$1 = $clone(c, abstract$1.Cipher).Message(sliceType.nil, sliceType.nil, sliceType.nil); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ _tuple = util.Grow(buf, ch.size);
+ buf = _tuple[0];
+ hash$1 = _tuple[1];
+ _r$2 = $clone(c, abstract$1.Cipher).Partial(hash$1, sliceType.nil, sliceType.nil); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ $s = -1; return buf;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cipherHash.ptr.prototype.Sum }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tuple = _tuple; $f.buf = buf; $f.c = c; $f.ch = ch; $f.hash$1 = hash$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cipherHash.prototype.Sum = function(buf) { return this.$val.Sum(buf); };
+ cipherHash.ptr.prototype.Reset = function() {
+ var $ptr, _r, ch, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; ch = $f.ch; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ ch = this;
+ _r = ch.cipher(abstract$1.NoKey, new sliceType$1([])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ abstract$1.Cipher.copy(ch.cur, _r);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cipherHash.ptr.prototype.Reset }; } $f.$ptr = $ptr; $f._r = _r; $f.ch = ch; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cipherHash.prototype.Reset = function() { return this.$val.Reset(); };
+ cipherHash.ptr.prototype.Size = function() {
+ var $ptr, ch;
+ ch = this;
+ return ch.size;
+ };
+ cipherHash.prototype.Size = function() { return this.$val.Size(); };
+ cipherHash.ptr.prototype.BlockSize = function() {
+ var $ptr, _r, _tuple, bs, ch, ok, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; bs = $f.bs; ch = $f.ch; ok = $f.ok; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ ch = this;
+ _tuple = $assertType(ch.cur.CipherState, cipherBlockSize, true);
+ bs = _tuple[0];
+ ok = _tuple[1];
+ if (!ok) {
+ $s = -1; return 1;
+ }
+ _r = bs.BlockSize(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cipherHash.ptr.prototype.BlockSize }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.bs = bs; $f.ch = ch; $f.ok = ok; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ cipherHash.prototype.BlockSize = function() { return this.$val.BlockSize(); };
+ Padding.prototype.String = function() {
+ var $ptr, _r, p, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; p = $f.p; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this.$val;
+ _r = fmt.Sprintf("Padding: %x", new sliceType$1([new $Uint8(((p << 24 >>> 24)))])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Padding.prototype.String }; } $f.$ptr = $ptr; $f._r = _r; $f.p = p; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(Padding).prototype.String = function() { return new Padding(this.$get()).String(); };
+ FromSponge = function(sponge, key, options) {
+ var $ptr, _r, _r$1, _r$2, _r$3, _r$4, key, options, sc, sponge, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; key = $f.key; options = $f.options; sc = $f.sc; sponge = $f.sponge; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ sc = [sc];
+ sc[0] = new spongeCipher.ptr($ifaceNil, 0, 0, 0, sliceType.nil, 0);
+ sc[0].sponge = sponge;
+ _r = sponge.Rate(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ sc[0].rate = _r;
+ _r$1 = sponge.Capacity(); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ sc[0].cap = _r$1;
+ sc[0].pad = 127;
+ sc[0].buf = $makeSlice(sliceType, (sc[0].rate + sc[0].cap >> 0));
+ sc[0].pos = 0;
+ _r$2 = sc[0].parseOptions(options); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ /* */ if (key === sliceType.nil) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (key === sliceType.nil) { */ case 4:
+ _r$3 = sponge.Capacity(); /* */ $s = 6; case 6: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$4 = random.Bytes(_r$3, random.Stream); /* */ $s = 7; case 7: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ key = _r$4;
+ /* } */ case 5:
+ /* */ if (key.$length > 0) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if (key.$length > 0) { */ case 8:
+ $r = sc[0].Message(sliceType.nil, sliceType.nil, key); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 9:
+ sc[0].setDomain(2, 0);
+ $s = -1; return new abstract$1.Cipher.ptr(sc[0]);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FromSponge }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f.key = key; $f.options = options; $f.sc = sc; $f.sponge = sponge; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.FromSponge = FromSponge;
+ spongeCipher.ptr.prototype.parseOptions = function(options) {
+ var $ptr, _i, _ref, _ref$1, more, opt, options, sc, v, v$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _ref = $f._ref; _ref$1 = $f._ref$1; more = $f.more; opt = $f.opt; options = $f.options; sc = $f.sc; v = $f.v; v$1 = $f.v$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ sc = this;
+ more = false;
+ _ref = options;
+ _i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 2; continue; }
+ opt = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ _ref$1 = opt;
+ /* */ if ($assertType(_ref$1, Padding, true)[1]) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if ($assertType(_ref$1, Padding, true)[1]) { */ case 3:
+ v = _ref$1.$val;
+ sc.pad = ((v << 24 >>> 24));
+ $s = 5; continue;
+ /* } else { */ case 4:
+ v$1 = _ref$1;
+ $r = log.Panicf("Unsupported option %v", new sliceType$1([opt])); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 5:
+ _i++;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return more;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: spongeCipher.ptr.prototype.parseOptions }; } $f.$ptr = $ptr; $f._i = _i; $f._ref = _ref; $f._ref$1 = _ref$1; $f.more = more; $f.opt = opt; $f.options = options; $f.sc = sc; $f.v = v; $f.v$1 = v$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ spongeCipher.prototype.parseOptions = function(options) { return this.$val.parseOptions(options); };
+ spongeCipher.ptr.prototype.setDomain = function(domain, index) {
+ var $ptr, domain, index, sc, x, x$1;
+ sc = this;
+ (x = sc.buf, x$1 = (sc.rate + sc.cap >> 0) - 1 >> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1] = 2));
+ $clone(binary.LittleEndian, binary.littleEndian).PutUint64($subslice(sc.buf, sc.rate), (new $Uint64(0, index)));
+ };
+ spongeCipher.prototype.setDomain = function(domain, index) { return this.$val.setDomain(domain, index); };
+ spongeCipher.ptr.prototype.padMessage = function() {
+ var $ptr, _index, buf, pos, rate, sc, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _index = $f._index; buf = $f.buf; pos = $f.pos; rate = $f.rate; sc = $f.sc; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ sc = this;
+ rate = sc.rate;
+ pos = sc.pos;
+ buf = sc.buf;
+ /* */ if (pos === rate) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (pos === rate) { */ case 1:
+ $r = sc.sponge.Transform(buf, $subslice(buf, 0, rate)); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ pos = 0;
+ /* } */ case 2:
+ ((pos < 0 || pos >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + pos] = sc.pad);
+ pos = pos + (1) >> 0;
+ while (true) {
+ if (!(pos < rate)) { break; }
+ ((pos < 0 || pos >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + pos] = 0);
+ pos = pos + (1) >> 0;
+ }
+ _index = rate - 1 >> 0;
+ ((_index < 0 || _index >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + _index] = ((((_index < 0 || _index >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + _index]) ^ (128)) << 24 >>> 24));
+ $r = sc.sponge.Transform(buf, $subslice(buf, 0, rate)); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ sc.pos = 0;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: spongeCipher.ptr.prototype.padMessage }; } $f.$ptr = $ptr; $f._index = _index; $f.buf = buf; $f.pos = pos; $f.rate = rate; $f.sc = sc; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ spongeCipher.prototype.padMessage = function() { return this.$val.padMessage(); };
+ spongeCipher.ptr.prototype.Partial = function(dst, src, key) {
+ var $ptr, buf, dst, i, i$1, key, n, ndst, nkey, nsrc, pos, rate, rem, sc, sp, src, x, x$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; buf = $f.buf; dst = $f.dst; i = $f.i; i$1 = $f.i$1; key = $f.key; n = $f.n; ndst = $f.ndst; nkey = $f.nkey; nsrc = $f.nsrc; pos = $f.pos; rate = $f.rate; rem = $f.rem; sc = $f.sc; sp = $f.sp; src = $f.src; x = $f.x; x$1 = $f.x$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ sc = this;
+ sp = sc.sponge;
+ rate = sc.rate;
+ buf = sc.buf;
+ pos = sc.pos;
+ rem = ints.Max(dst.$length, new sliceType$2([src.$length, key.$length]));
+ /* while (true) { */ case 1:
+ /* if (!(rem > 0)) { break; } */ if(!(rem > 0)) { $s = 2; continue; }
+ /* */ if (pos === rate) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (pos === rate) { */ case 3:
+ $r = sp.Transform(buf, $subslice(buf, 0, rate)); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ pos = 0;
+ /* } */ case 4:
+ n = ints.Min(rem, new sliceType$2([rate - pos >> 0]));
+ ndst = ints.Min(n, new sliceType$2([dst.$length]));
+ nsrc = ints.Min(ndst, new sliceType$2([src.$length]));
+ i = 0;
+ while (true) {
+ if (!(i < nsrc)) { break; }
+ ((i < 0 || i >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + i] = ((((i < 0 || i >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + i]) ^ (x = pos + i >> 0, ((x < 0 || x >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + x]))) << 24 >>> 24));
+ i = i + (1) >> 0;
+ }
+ $copySlice($subslice(dst, nsrc, ndst), $subslice(buf, (pos + nsrc >> 0)));
+ dst = $subslice(dst, ndst);
+ src = $subslice(src, nsrc);
+ nkey = ints.Min(n, new sliceType$2([key.$length]));
+ $copySlice($subslice(buf, pos), $subslice(key, 0, nkey));
+ i$1 = nkey;
+ while (true) {
+ if (!(i$1 < n)) { break; }
+ (x$1 = pos + i$1 >> 0, ((x$1 < 0 || x$1 >= buf.$length) ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + x$1] = 0));
+ i$1 = i$1 + (1) >> 0;
+ }
+ key = $subslice(key, nkey);
+ pos = pos + (n) >> 0;
+ rem = rem - (n) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ sc.pos = pos;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: spongeCipher.ptr.prototype.Partial }; } $f.$ptr = $ptr; $f.buf = buf; $f.dst = dst; $f.i = i; $f.i$1 = i$1; $f.key = key; $f.n = n; $f.ndst = ndst; $f.nkey = nkey; $f.nsrc = nsrc; $f.pos = pos; $f.rate = rate; $f.rem = rem; $f.sc = sc; $f.sp = sp; $f.src = src; $f.x = x; $f.x$1 = x$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ spongeCipher.prototype.Partial = function(dst, src, key) { return this.$val.Partial(dst, src, key); };
+ spongeCipher.ptr.prototype.Message = function(dst, src, key) {
+ var $ptr, dst, key, sc, src, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; dst = $f.dst; key = $f.key; sc = $f.sc; src = $f.src; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ sc = this;
+ $r = sc.Partial(dst, src, key); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sc.padMessage(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: spongeCipher.ptr.prototype.Message }; } $f.$ptr = $ptr; $f.dst = dst; $f.key = key; $f.sc = sc; $f.src = src; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ spongeCipher.prototype.Message = function(dst, src, key) { return this.$val.Message(dst, src, key); };
+ spongeCipher.ptr.prototype.clone = function() {
+ var $ptr, _r, nsc, sc, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; nsc = $f.nsc; sc = $f.sc; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ nsc = [nsc];
+ sc = this;
+ nsc[0] = $clone(sc, spongeCipher);
+ _r = sc.sponge.Clone(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ nsc[0].sponge = _r;
+ nsc[0].buf = $makeSlice(sliceType, (sc.rate + sc.cap >> 0));
+ $copySlice(nsc[0].buf, sc.buf);
+ $s = -1; return nsc[0];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: spongeCipher.ptr.prototype.clone }; } $f.$ptr = $ptr; $f._r = _r; $f.nsc = nsc; $f.sc = sc; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ spongeCipher.prototype.clone = function() { return this.$val.clone(); };
+ spongeCipher.ptr.prototype.Clone = function() {
+ var $ptr, _r, sc, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; sc = $f.sc; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ sc = this;
+ _r = sc.clone(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: spongeCipher.ptr.prototype.Clone }; } $f.$ptr = $ptr; $f._r = _r; $f.sc = sc; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ spongeCipher.prototype.Clone = function() { return this.$val.Clone(); };
+ spongeCipher.ptr.prototype.KeySize = function() {
+ var $ptr, _r, sc, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; sc = $f.sc; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ sc = this;
+ _r = sc.sponge.Capacity(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r >> 1 >> 0;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: spongeCipher.ptr.prototype.KeySize }; } $f.$ptr = $ptr; $f._r = _r; $f.sc = sc; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ spongeCipher.prototype.KeySize = function() { return this.$val.KeySize(); };
+ spongeCipher.ptr.prototype.HashSize = function() {
+ var $ptr, _r, sc, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; sc = $f.sc; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ sc = this;
+ _r = sc.sponge.Capacity(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: spongeCipher.ptr.prototype.HashSize }; } $f.$ptr = $ptr; $f._r = _r; $f.sc = sc; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ spongeCipher.prototype.HashSize = function() { return this.$val.HashSize(); };
+ spongeCipher.ptr.prototype.BlockSize = function() {
+ var $ptr, _r, sc, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; sc = $f.sc; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ sc = this;
+ _r = sc.sponge.Rate(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: spongeCipher.ptr.prototype.BlockSize }; } $f.$ptr = $ptr; $f._r = _r; $f.sc = sc; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ spongeCipher.prototype.BlockSize = function() { return this.$val.BlockSize(); };
+ ptrType$1.methods = [{prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}, {prop: "Sum", name: "Sum", pkg: "", typ: $funcType([sliceType], [sliceType], false)}, {prop: "Reset", name: "Reset", pkg: "", typ: $funcType([], [], false)}, {prop: "Size", name: "Size", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "BlockSize", name: "BlockSize", pkg: "", typ: $funcType([], [$Int], false)}];
+ Padding.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$2.methods = [{prop: "parseOptions", name: "parseOptions", pkg: "gopkg.in/dedis/crypto.v0/cipher", typ: $funcType([sliceType$1], [$Bool], false)}, {prop: "setDomain", name: "setDomain", pkg: "gopkg.in/dedis/crypto.v0/cipher", typ: $funcType([$Uint8, $Int], [], false)}, {prop: "padMessage", name: "padMessage", pkg: "gopkg.in/dedis/crypto.v0/cipher", typ: $funcType([], [], false)}, {prop: "Partial", name: "Partial", pkg: "", typ: $funcType([sliceType, sliceType, sliceType], [], false)}, {prop: "Message", name: "Message", pkg: "", typ: $funcType([sliceType, sliceType, sliceType], [], false)}, {prop: "special", name: "special", pkg: "gopkg.in/dedis/crypto.v0/cipher", typ: $funcType([$Uint8, $Int], [], false)}, {prop: "clone", name: "clone", pkg: "gopkg.in/dedis/crypto.v0/cipher", typ: $funcType([], [ptrType$2], false)}, {prop: "Clone", name: "Clone", pkg: "", typ: $funcType([], [abstract$1.CipherState], false)}, {prop: "KeySize", name: "KeySize", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "HashSize", name: "HashSize", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "BlockSize", name: "BlockSize", pkg: "", typ: $funcType([], [$Int], false)}];
+ cipherHash.init("gopkg.in/dedis/crypto.v0/cipher", [{prop: "cipher", name: "cipher", exported: false, typ: funcType, tag: ""}, {prop: "cur", name: "cur", exported: false, typ: abstract$1.Cipher, tag: ""}, {prop: "size", name: "size", exported: false, typ: $Int, tag: ""}]);
+ cipherBlockSize.init([{prop: "BlockSize", name: "BlockSize", pkg: "", typ: $funcType([], [$Int], false)}]);
+ Sponge.init([{prop: "Capacity", name: "Capacity", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Clone", name: "Clone", pkg: "", typ: $funcType([], [Sponge], false)}, {prop: "Rate", name: "Rate", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Transform", name: "Transform", pkg: "", typ: $funcType([sliceType, sliceType], [], false)}]);
+ spongeCipher.init("gopkg.in/dedis/crypto.v0/cipher", [{prop: "sponge", name: "sponge", exported: false, typ: Sponge, tag: ""}, {prop: "rate", name: "rate", exported: false, typ: $Int, tag: ""}, {prop: "cap", name: "cap", exported: false, typ: $Int, tag: ""}, {prop: "pad", name: "pad", exported: false, typ: $Uint8, tag: ""}, {prop: "buf", name: "buf", exported: false, typ: sliceType, tag: ""}, {prop: "pos", name: "pos", exported: false, typ: $Int, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = cipher.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hmac.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = binary.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = abstract$1.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = ints.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = random.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = subtle.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = util.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hash.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = log.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ zeroBytes = $makeSlice(sliceType, 1024);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/crypto.v0/clique"] = (function() {
+ var $pkg = {}, $init, abstract$1;
+ abstract$1 = $packages["gopkg.in/dedis/crypto.v0/abstract"];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = abstract$1.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/crypto.v0/hash"] = (function() {
+ var $pkg = {}, $init, bytes, encoding, errors, hash, io, os, reflect;
+ bytes = $packages["bytes"];
+ encoding = $packages["encoding"];
+ errors = $packages["errors"];
+ hash = $packages["hash"];
+ io = $packages["io"];
+ os = $packages["os"];
+ reflect = $packages["reflect"];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = encoding.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hash.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = os.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = reflect.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/crypto.v0/proof"] = (function() {
+ var $pkg = {}, $init, bytes, errors, abstract$1, clique, hash, random, errorDifferentLengths, errorInvalidProof;
+ bytes = $packages["bytes"];
+ errors = $packages["errors"];
+ abstract$1 = $packages["gopkg.in/dedis/crypto.v0/abstract"];
+ clique = $packages["gopkg.in/dedis/crypto.v0/clique"];
+ hash = $packages["gopkg.in/dedis/crypto.v0/hash"];
+ random = $packages["gopkg.in/dedis/crypto.v0/random"];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = abstract$1.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = clique.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hash.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = random.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ errorDifferentLengths = errors.New("inputs of different lengths");
+ errorInvalidProof = errors.New("invalid proof");
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/crypto.v0/shuffle"] = (function() {
+ var $pkg = {}, $init, cipher, errors, abstract$1, proof, random;
+ cipher = $packages["crypto/cipher"];
+ errors = $packages["errors"];
+ abstract$1 = $packages["gopkg.in/dedis/crypto.v0/abstract"];
+ proof = $packages["gopkg.in/dedis/crypto.v0/proof"];
+ random = $packages["gopkg.in/dedis/crypto.v0/random"];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = cipher.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = abstract$1.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = proof.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = random.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["flag"] = (function() {
+ var $pkg = {}, $init, errors, fmt, io, os, reflect, sort, strconv, time, boolValue, boolFlag, intValue, int64Value, uintValue, uint64Value, stringValue, float64Value, durationValue, Value, ErrorHandling, FlagSet, Flag, sliceType, ptrType, ptrType$1, ptrType$2, ptrType$3, ptrType$4, ptrType$5, ptrType$6, ptrType$7, ptrType$8, ptrType$9, sliceType$1, ptrType$10, ptrType$11, ptrType$12, ptrType$13, ptrType$14, ptrType$15, ptrType$16, ptrType$17, sliceType$2, funcType, ptrType$18, funcType$1, mapType, x, newBoolValue, newIntValue, newInt64Value, newUintValue, newUint64Value, newStringValue, newFloat64Value, newDurationValue, sortFlags, isZeroValue, UnquoteUsage, PrintDefaults, Bool, Int, Uint, String, Duration, init, commandLineUsage, NewFlagSet;
+ errors = $packages["errors"];
+ fmt = $packages["fmt"];
+ io = $packages["io"];
+ os = $packages["os"];
+ reflect = $packages["reflect"];
+ sort = $packages["sort"];
+ strconv = $packages["strconv"];
+ time = $packages["time"];
+ boolValue = $pkg.boolValue = $newType(1, $kindBool, "flag.boolValue", true, "flag", false, null);
+ boolFlag = $pkg.boolFlag = $newType(8, $kindInterface, "flag.boolFlag", true, "flag", false, null);
+ intValue = $pkg.intValue = $newType(4, $kindInt, "flag.intValue", true, "flag", false, null);
+ int64Value = $pkg.int64Value = $newType(8, $kindInt64, "flag.int64Value", true, "flag", false, null);
+ uintValue = $pkg.uintValue = $newType(4, $kindUint, "flag.uintValue", true, "flag", false, null);
+ uint64Value = $pkg.uint64Value = $newType(8, $kindUint64, "flag.uint64Value", true, "flag", false, null);
+ stringValue = $pkg.stringValue = $newType(8, $kindString, "flag.stringValue", true, "flag", false, null);
+ float64Value = $pkg.float64Value = $newType(8, $kindFloat64, "flag.float64Value", true, "flag", false, null);
+ durationValue = $pkg.durationValue = $newType(8, $kindInt64, "flag.durationValue", true, "flag", false, null);
+ Value = $pkg.Value = $newType(8, $kindInterface, "flag.Value", true, "flag", true, null);
+ ErrorHandling = $pkg.ErrorHandling = $newType(4, $kindInt, "flag.ErrorHandling", true, "flag", true, null);
+ FlagSet = $pkg.FlagSet = $newType(0, $kindStruct, "flag.FlagSet", true, "flag", true, function(Usage_, name_, parsed_, actual_, formal_, args_, errorHandling_, output_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Usage = $throwNilPointerError;
+ this.name = "";
+ this.parsed = false;
+ this.actual = false;
+ this.formal = false;
+ this.args = sliceType$2.nil;
+ this.errorHandling = 0;
+ this.output = $ifaceNil;
+ return;
+ }
+ this.Usage = Usage_;
+ this.name = name_;
+ this.parsed = parsed_;
+ this.actual = actual_;
+ this.formal = formal_;
+ this.args = args_;
+ this.errorHandling = errorHandling_;
+ this.output = output_;
+ });
+ Flag = $pkg.Flag = $newType(0, $kindStruct, "flag.Flag", true, "flag", true, function(Name_, Usage_, Value_, DefValue_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Name = "";
+ this.Usage = "";
+ this.Value = $ifaceNil;
+ this.DefValue = "";
+ return;
+ }
+ this.Name = Name_;
+ this.Usage = Usage_;
+ this.Value = Value_;
+ this.DefValue = DefValue_;
+ });
+ sliceType = $sliceType($emptyInterface);
+ ptrType = $ptrType(boolValue);
+ ptrType$1 = $ptrType(intValue);
+ ptrType$2 = $ptrType(int64Value);
+ ptrType$3 = $ptrType(uintValue);
+ ptrType$4 = $ptrType(uint64Value);
+ ptrType$5 = $ptrType(stringValue);
+ ptrType$6 = $ptrType(float64Value);
+ ptrType$7 = $ptrType(durationValue);
+ ptrType$8 = $ptrType(time.Duration);
+ ptrType$9 = $ptrType(Flag);
+ sliceType$1 = $sliceType(ptrType$9);
+ ptrType$10 = $ptrType(reflect.rtype);
+ ptrType$11 = $ptrType($Bool);
+ ptrType$12 = $ptrType($Int);
+ ptrType$13 = $ptrType($Int64);
+ ptrType$14 = $ptrType($Uint);
+ ptrType$15 = $ptrType($Uint64);
+ ptrType$16 = $ptrType($String);
+ ptrType$17 = $ptrType($Float64);
+ sliceType$2 = $sliceType($String);
+ funcType = $funcType([ptrType$9], [], false);
+ ptrType$18 = $ptrType(FlagSet);
+ funcType$1 = $funcType([], [], false);
+ mapType = $mapType($String, ptrType$9);
+ newBoolValue = function(val, p) {
+ var $ptr, _ptr, p, val;
+ p.$set(val);
+ return ((_ptr = p, new ptrType(function() { return _ptr.$get(); }, function($v) { _ptr.$set($v); }, _ptr.$target)));
+ };
+ $ptrType(boolValue).prototype.Set = function(s) {
+ var $ptr, _tuple, b, err, s, v;
+ b = this;
+ _tuple = strconv.ParseBool(s);
+ v = _tuple[0];
+ err = _tuple[1];
+ b.$set((v));
+ return err;
+ };
+ $ptrType(boolValue).prototype.Get = function() {
+ var $ptr, b;
+ b = this;
+ return new $Bool((b.$get()));
+ };
+ $ptrType(boolValue).prototype.String = function() {
+ var $ptr, b;
+ b = this;
+ return strconv.FormatBool((b.$get()));
+ };
+ $ptrType(boolValue).prototype.IsBoolFlag = function() {
+ var $ptr, b;
+ b = this;
+ return true;
+ };
+ newIntValue = function(val, p) {
+ var $ptr, _ptr, p, val;
+ p.$set(val);
+ return ((_ptr = p, new ptrType$1(function() { return (_ptr.$get() >> 0); }, function($v) { _ptr.$set(($v >> 0)); }, _ptr.$target)));
+ };
+ $ptrType(intValue).prototype.Set = function(s) {
+ var $ptr, _tuple, err, i, s, v;
+ i = this;
+ _tuple = strconv.ParseInt(s, 0, 64);
+ v = _tuple[0];
+ err = _tuple[1];
+ i.$set((((v.$low + ((v.$high >> 31) * 4294967296)) >> 0)));
+ return err;
+ };
+ $ptrType(intValue).prototype.Get = function() {
+ var $ptr, i;
+ i = this;
+ return new $Int(((i.$get() >> 0)));
+ };
+ $ptrType(intValue).prototype.String = function() {
+ var $ptr, i;
+ i = this;
+ return strconv.Itoa(((i.$get() >> 0)));
+ };
+ newInt64Value = function(val, p) {
+ var $ptr, _ptr, p, val, x$1;
+ p.$set(val);
+ return ((_ptr = p, new ptrType$2(function() { return (x$1 = _ptr.$get(), new int64Value(x$1.$high, x$1.$low)); }, function($v) { _ptr.$set(new $Int64($v.$high, $v.$low)); }, _ptr.$target)));
+ };
+ $ptrType(int64Value).prototype.Set = function(s) {
+ var $ptr, _tuple, err, i, s, v;
+ i = this;
+ _tuple = strconv.ParseInt(s, 0, 64);
+ v = _tuple[0];
+ err = _tuple[1];
+ i.$set((new int64Value(v.$high, v.$low)));
+ return err;
+ };
+ $ptrType(int64Value).prototype.Get = function() {
+ var $ptr, i, x$1;
+ i = this;
+ return ((x$1 = i.$get(), new $Int64(x$1.$high, x$1.$low)));
+ };
+ $ptrType(int64Value).prototype.String = function() {
+ var $ptr, i, x$1;
+ i = this;
+ return strconv.FormatInt(((x$1 = i.$get(), new $Int64(x$1.$high, x$1.$low))), 10);
+ };
+ newUintValue = function(val, p) {
+ var $ptr, _ptr, p, val;
+ p.$set(val);
+ return ((_ptr = p, new ptrType$3(function() { return (_ptr.$get() >>> 0); }, function($v) { _ptr.$set(($v >>> 0)); }, _ptr.$target)));
+ };
+ $ptrType(uintValue).prototype.Set = function(s) {
+ var $ptr, _tuple, err, i, s, v;
+ i = this;
+ _tuple = strconv.ParseUint(s, 0, 64);
+ v = _tuple[0];
+ err = _tuple[1];
+ i.$set(((v.$low >>> 0)));
+ return err;
+ };
+ $ptrType(uintValue).prototype.Get = function() {
+ var $ptr, i;
+ i = this;
+ return new $Uint(((i.$get() >>> 0)));
+ };
+ $ptrType(uintValue).prototype.String = function() {
+ var $ptr, i;
+ i = this;
+ return strconv.FormatUint((new $Uint64(0, i.$get())), 10);
+ };
+ newUint64Value = function(val, p) {
+ var $ptr, _ptr, p, val, x$1;
+ p.$set(val);
+ return ((_ptr = p, new ptrType$4(function() { return (x$1 = _ptr.$get(), new uint64Value(x$1.$high, x$1.$low)); }, function($v) { _ptr.$set(new $Uint64($v.$high, $v.$low)); }, _ptr.$target)));
+ };
+ $ptrType(uint64Value).prototype.Set = function(s) {
+ var $ptr, _tuple, err, i, s, v;
+ i = this;
+ _tuple = strconv.ParseUint(s, 0, 64);
+ v = _tuple[0];
+ err = _tuple[1];
+ i.$set((new uint64Value(v.$high, v.$low)));
+ return err;
+ };
+ $ptrType(uint64Value).prototype.Get = function() {
+ var $ptr, i, x$1;
+ i = this;
+ return ((x$1 = i.$get(), new $Uint64(x$1.$high, x$1.$low)));
+ };
+ $ptrType(uint64Value).prototype.String = function() {
+ var $ptr, i, x$1;
+ i = this;
+ return strconv.FormatUint(((x$1 = i.$get(), new $Uint64(x$1.$high, x$1.$low))), 10);
+ };
+ newStringValue = function(val, p) {
+ var $ptr, _ptr, p, val;
+ p.$set(val);
+ return ((_ptr = p, new ptrType$5(function() { return _ptr.$get(); }, function($v) { _ptr.$set($v); }, _ptr.$target)));
+ };
+ $ptrType(stringValue).prototype.Set = function(val) {
+ var $ptr, s, val;
+ s = this;
+ s.$set((val));
+ return $ifaceNil;
+ };
+ $ptrType(stringValue).prototype.Get = function() {
+ var $ptr, s;
+ s = this;
+ return new $String((s.$get()));
+ };
+ $ptrType(stringValue).prototype.String = function() {
+ var $ptr, s;
+ s = this;
+ return (s.$get());
+ };
+ newFloat64Value = function(val, p) {
+ var $ptr, _ptr, p, val;
+ p.$set(val);
+ return ((_ptr = p, new ptrType$6(function() { return _ptr.$get(); }, function($v) { _ptr.$set($v); }, _ptr.$target)));
+ };
+ $ptrType(float64Value).prototype.Set = function(s) {
+ var $ptr, _tuple, err, f, s, v;
+ f = this;
+ _tuple = strconv.ParseFloat(s, 64);
+ v = _tuple[0];
+ err = _tuple[1];
+ f.$set((v));
+ return err;
+ };
+ $ptrType(float64Value).prototype.Get = function() {
+ var $ptr, f;
+ f = this;
+ return new $Float64((f.$get()));
+ };
+ $ptrType(float64Value).prototype.String = function() {
+ var $ptr, f;
+ f = this;
+ return strconv.FormatFloat((f.$get()), 103, -1, 64);
+ };
+ newDurationValue = function(val, p) {
+ var $ptr, _ptr, p, val, x$1;
+ p.$set(val);
+ return ((_ptr = p, new ptrType$7(function() { return (x$1 = _ptr.$get(), new durationValue(x$1.$high, x$1.$low)); }, function($v) { _ptr.$set(new time.Duration($v.$high, $v.$low)); }, _ptr.$target)));
+ };
+ $ptrType(durationValue).prototype.Set = function(s) {
+ var $ptr, _tuple, d, err, s, v;
+ d = this;
+ _tuple = time.ParseDuration(s);
+ v = _tuple[0];
+ err = _tuple[1];
+ d.$set((new durationValue(v.$high, v.$low)));
+ return err;
+ };
+ $ptrType(durationValue).prototype.Get = function() {
+ var $ptr, d, x$1;
+ d = this;
+ return ((x$1 = d.$get(), new time.Duration(x$1.$high, x$1.$low)));
+ };
+ $ptrType(durationValue).prototype.String = function() {
+ var $ptr, _ptr, d, x$1;
+ d = this;
+ return ((_ptr = d, new ptrType$8(function() { return (x$1 = _ptr.$get(), new time.Duration(x$1.$high, x$1.$low)); }, function($v) { _ptr.$set(new durationValue($v.$high, $v.$low)); }, _ptr.$target))).String();
+ };
+ sortFlags = function(flags) {
+ var $ptr, _entry, _entry$1, _i, _i$1, _keys, _ref, _ref$1, f, flags, i, i$1, list, name, result, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _entry$1 = $f._entry$1; _i = $f._i; _i$1 = $f._i$1; _keys = $f._keys; _ref = $f._ref; _ref$1 = $f._ref$1; f = $f.f; flags = $f.flags; i = $f.i; i$1 = $f.i$1; list = $f.list; name = $f.name; result = $f.result; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ list = $makeSlice(sort.StringSlice, $keys(flags).length);
+ i = 0;
+ _ref = flags;
+ _i = 0;
+ _keys = $keys(_ref);
+ while (true) {
+ if (!(_i < _keys.length)) { break; }
+ _entry = _ref[_keys[_i]];
+ if (_entry === undefined) {
+ _i++;
+ continue;
+ }
+ f = _entry.v;
+ ((i < 0 || i >= list.$length) ? ($throwRuntimeError("index out of range"), undefined) : list.$array[list.$offset + i] = f.Name);
+ i = i + (1) >> 0;
+ _i++;
+ }
+ $r = list.Sort(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ result = $makeSlice(sliceType$1, list.$length);
+ _ref$1 = list;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ i$1 = _i$1;
+ name = ((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]);
+ ((i$1 < 0 || i$1 >= result.$length) ? ($throwRuntimeError("index out of range"), undefined) : result.$array[result.$offset + i$1] = (_entry$1 = flags[$String.keyFor(name)], _entry$1 !== undefined ? _entry$1.v : ptrType$9.nil));
+ _i$1++;
+ }
+ $s = -1; return result;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: sortFlags }; } $f.$ptr = $ptr; $f._entry = _entry; $f._entry$1 = _entry$1; $f._i = _i; $f._i$1 = _i$1; $f._keys = _keys; $f._ref = _ref; $f._ref$1 = _ref$1; $f.f = f; $f.flags = flags; $f.i = i; $f.i$1 = i$1; $f.list = list; $f.name = name; $f.result = result; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.ptr.prototype.out = function() {
+ var $ptr, f;
+ f = this;
+ if ($interfaceIsEqual(f.output, $ifaceNil)) {
+ return os.Stderr;
+ }
+ return f.output;
+ };
+ FlagSet.prototype.out = function() { return this.$val.out(); };
+ FlagSet.ptr.prototype.SetOutput = function(output) {
+ var $ptr, f, output;
+ f = this;
+ f.output = output;
+ };
+ FlagSet.prototype.SetOutput = function(output) { return this.$val.SetOutput(output); };
+ FlagSet.ptr.prototype.VisitAll = function(fn) {
+ var $ptr, _i, _r, _ref, f, flag, fn, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _ref = $f._ref; f = $f.f; flag = $f.flag; fn = $f.fn; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ _r = sortFlags(f.formal); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _ref = _r;
+ _i = 0;
+ /* while (true) { */ case 2:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 3; continue; }
+ flag = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ $r = fn(flag); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _i++;
+ /* } */ $s = 2; continue; case 3:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.VisitAll }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._ref = _ref; $f.f = f; $f.flag = flag; $f.fn = fn; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.VisitAll = function(fn) { return this.$val.VisitAll(fn); };
+ FlagSet.ptr.prototype.Visit = function(fn) {
+ var $ptr, _i, _r, _ref, f, flag, fn, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _ref = $f._ref; f = $f.f; flag = $f.flag; fn = $f.fn; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ _r = sortFlags(f.actual); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _ref = _r;
+ _i = 0;
+ /* while (true) { */ case 2:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 3; continue; }
+ flag = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ $r = fn(flag); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _i++;
+ /* } */ $s = 2; continue; case 3:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.Visit }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._ref = _ref; $f.f = f; $f.flag = flag; $f.fn = fn; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.Visit = function(fn) { return this.$val.Visit(fn); };
+ FlagSet.ptr.prototype.Lookup = function(name) {
+ var $ptr, _entry, f, name;
+ f = this;
+ return (_entry = f.formal[$String.keyFor(name)], _entry !== undefined ? _entry.v : ptrType$9.nil);
+ };
+ FlagSet.prototype.Lookup = function(name) { return this.$val.Lookup(name); };
+ FlagSet.ptr.prototype.Set = function(name, value) {
+ var $ptr, _entry, _key, _r, _r$1, _tuple, err, f, flag, name, ok, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _key = $f._key; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; err = $f.err; f = $f.f; flag = $f.flag; name = $f.name; ok = $f.ok; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ _tuple = (_entry = f.formal[$String.keyFor(name)], _entry !== undefined ? [_entry.v, true] : [ptrType$9.nil, false]);
+ flag = _tuple[0];
+ ok = _tuple[1];
+ /* */ if (!ok) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!ok) { */ case 1:
+ _r = fmt.Errorf("no such flag -%v", new sliceType([new $String(name)])); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* } */ case 2:
+ _r$1 = flag.Value.Set(value); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ err = _r$1;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ if (f.actual === false) {
+ f.actual = {};
+ }
+ _key = name; (f.actual || $throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(_key)] = { k: _key, v: flag };
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.Set }; } $f.$ptr = $ptr; $f._entry = _entry; $f._key = _key; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.err = err; $f.f = f; $f.flag = flag; $f.name = name; $f.ok = ok; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.Set = function(name, value) { return this.$val.Set(name, value); };
+ isZeroValue = function(flag, value) {
+ var $ptr, _1, _r, _r$1, _r$2, _r$3, _r$4, _r$5, flag, typ, value, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; flag = $f.flag; typ = $f.typ; value = $f.value; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ typ = reflect.TypeOf(flag.Value);
+ z = new reflect.Value.ptr(ptrType$10.nil, 0, 0);
+ _r = typ.Kind(); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (_r === 22) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (_r === 22) { */ case 1:
+ _r$1 = typ.Elem(); /* */ $s = 5; case 5: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = reflect.New(_r$1); /* */ $s = 6; case 6: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ z = _r$2;
+ $s = 3; continue;
+ /* } else { */ case 2:
+ _r$3 = reflect.Zero(typ); /* */ $s = 7; case 7: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ z = _r$3;
+ /* } */ case 3:
+ _r$4 = $clone(z, reflect.Value).Interface(); /* */ $s = 10; case 10: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$5 = $assertType(_r$4, Value).String(); /* */ $s = 11; case 11: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ /* */ if (value === _r$5) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if (value === _r$5) { */ case 8:
+ $s = -1; return true;
+ /* } */ case 9:
+ _1 = value;
+ if (_1 === ("false")) {
+ $s = -1; return true;
+ } else if (_1 === ("")) {
+ $s = -1; return true;
+ } else if (_1 === ("0")) {
+ $s = -1; return true;
+ }
+ $s = -1; return false;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: isZeroValue }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f.flag = flag; $f.typ = typ; $f.value = value; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ UnquoteUsage = function(flag) {
+ var $ptr, _ref, _tmp, _tmp$1, flag, i, j, name, usage;
+ name = "";
+ usage = "";
+ usage = flag.Usage;
+ i = 0;
+ while (true) {
+ if (!(i < usage.length)) { break; }
+ if (usage.charCodeAt(i) === 96) {
+ j = i + 1 >> 0;
+ while (true) {
+ if (!(j < usage.length)) { break; }
+ if (usage.charCodeAt(j) === 96) {
+ name = $substring(usage, (i + 1 >> 0), j);
+ usage = $substring(usage, 0, i) + name + $substring(usage, (j + 1 >> 0));
+ _tmp = name;
+ _tmp$1 = usage;
+ name = _tmp;
+ usage = _tmp$1;
+ return [name, usage];
+ }
+ j = j + (1) >> 0;
+ }
+ break;
+ }
+ i = i + (1) >> 0;
+ }
+ name = "value";
+ _ref = flag.Value;
+ if ($assertType(_ref, boolFlag, true)[1]) {
+ name = "";
+ } else if ($assertType(_ref, ptrType$7, true)[1]) {
+ name = "duration";
+ } else if ($assertType(_ref, ptrType$6, true)[1]) {
+ name = "float";
+ } else if ($assertType(_ref, ptrType$1, true)[1] || $assertType(_ref, ptrType$2, true)[1]) {
+ name = "int";
+ } else if ($assertType(_ref, ptrType$5, true)[1]) {
+ name = "string";
+ } else if ($assertType(_ref, ptrType$3, true)[1] || $assertType(_ref, ptrType$4, true)[1]) {
+ name = "uint";
+ }
+ return [name, usage];
+ };
+ $pkg.UnquoteUsage = UnquoteUsage;
+ FlagSet.ptr.prototype.PrintDefaults = function() {
+ var $ptr, f, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = [f];
+ f[0] = this;
+ $r = f[0].VisitAll((function(f) { return function $b(flag) {
+ var $ptr, _r, _r$1, _r$2, _r$3, _r$4, _tuple, _tuple$1, flag, name, ok, s, usage, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; flag = $f.flag; name = $f.name; ok = $f.ok; s = $f.s; usage = $f.usage; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = fmt.Sprintf(" -%s", new sliceType([new $String(flag.Name)])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ s = _r;
+ _tuple = UnquoteUsage(flag);
+ name = _tuple[0];
+ usage = _tuple[1];
+ if (name.length > 0) {
+ s = s + (" " + name);
+ }
+ if (s.length <= 4) {
+ s = s + ("\t");
+ } else {
+ s = s + ("\n \t");
+ }
+ s = s + (usage);
+ _r$1 = isZeroValue(flag, flag.DefValue); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ /* */ if (!_r$1) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!_r$1) { */ case 2:
+ _tuple$1 = $assertType(flag.Value, ptrType$5, true);
+ ok = _tuple$1[1];
+ /* */ if (ok) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (ok) { */ case 5:
+ _r$2 = fmt.Sprintf(" (default %q)", new sliceType([new $String(flag.DefValue)])); /* */ $s = 8; case 8: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ s = s + (_r$2);
+ $s = 7; continue;
+ /* } else { */ case 6:
+ _r$3 = fmt.Sprintf(" (default %v)", new sliceType([new $String(flag.DefValue)])); /* */ $s = 9; case 9: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ s = s + (_r$3);
+ /* } */ case 7:
+ /* } */ case 3:
+ _r$4 = fmt.Fprint(f[0].out(), new sliceType([new $String(s), new $String("\n")])); /* */ $s = 10; case 10: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$4;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.flag = flag; $f.name = name; $f.ok = ok; $f.s = s; $f.usage = usage; $f.$s = $s; $f.$r = $r; return $f;
+ }; })(f)); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.PrintDefaults }; } $f.$ptr = $ptr; $f.f = f; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.PrintDefaults = function() { return this.$val.PrintDefaults(); };
+ PrintDefaults = function() {
+ var $ptr, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = $pkg.CommandLine.PrintDefaults(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: PrintDefaults }; } $f.$ptr = $ptr; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.PrintDefaults = PrintDefaults;
+ FlagSet.ptr.prototype.defaultUsage = function() {
+ var $ptr, _r, _r$1, f, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; f = $f.f; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ /* */ if (f.name === "") { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (f.name === "") { */ case 1:
+ _r = fmt.Fprintf(f.out(), "Usage:\n", new sliceType([])); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = 3; continue;
+ /* } else { */ case 2:
+ _r$1 = fmt.Fprintf(f.out(), "Usage of %s:\n", new sliceType([new $String(f.name)])); /* */ $s = 5; case 5: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ /* } */ case 3:
+ $r = f.PrintDefaults(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.defaultUsage }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.f = f; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.defaultUsage = function() { return this.$val.defaultUsage(); };
+ FlagSet.ptr.prototype.NFlag = function() {
+ var $ptr, f;
+ f = this;
+ return $keys(f.actual).length;
+ };
+ FlagSet.prototype.NFlag = function() { return this.$val.NFlag(); };
+ FlagSet.ptr.prototype.Arg = function(i) {
+ var $ptr, f, i, x$1;
+ f = this;
+ if (i < 0 || i >= f.args.$length) {
+ return "";
+ }
+ return (x$1 = f.args, ((i < 0 || i >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + i]));
+ };
+ FlagSet.prototype.Arg = function(i) { return this.$val.Arg(i); };
+ FlagSet.ptr.prototype.NArg = function() {
+ var $ptr, f;
+ f = this;
+ return f.args.$length;
+ };
+ FlagSet.prototype.NArg = function() { return this.$val.NArg(); };
+ FlagSet.ptr.prototype.Args = function() {
+ var $ptr, f;
+ f = this;
+ return f.args;
+ };
+ FlagSet.prototype.Args = function() { return this.$val.Args(); };
+ FlagSet.ptr.prototype.BoolVar = function(p, name, value, usage) {
+ var $ptr, f, name, p, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; name = $f.name; p = $f.p; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ $r = f.Var(newBoolValue(value, p), name, usage); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.BoolVar }; } $f.$ptr = $ptr; $f.f = f; $f.name = name; $f.p = p; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.BoolVar = function(p, name, value, usage) { return this.$val.BoolVar(p, name, value, usage); };
+ FlagSet.ptr.prototype.Bool = function(name, value, usage) {
+ var $ptr, f, name, p, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; name = $f.name; p = $f.p; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ p = $newDataPointer(false, ptrType$11);
+ $r = f.BoolVar(p, name, value, usage); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return p;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.Bool }; } $f.$ptr = $ptr; $f.f = f; $f.name = name; $f.p = p; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.Bool = function(name, value, usage) { return this.$val.Bool(name, value, usage); };
+ Bool = function(name, value, usage) {
+ var $ptr, _r, name, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; name = $f.name; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = $pkg.CommandLine.Bool(name, value, usage); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Bool }; } $f.$ptr = $ptr; $f._r = _r; $f.name = name; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Bool = Bool;
+ FlagSet.ptr.prototype.IntVar = function(p, name, value, usage) {
+ var $ptr, f, name, p, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; name = $f.name; p = $f.p; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ $r = f.Var(newIntValue(value, p), name, usage); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.IntVar }; } $f.$ptr = $ptr; $f.f = f; $f.name = name; $f.p = p; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.IntVar = function(p, name, value, usage) { return this.$val.IntVar(p, name, value, usage); };
+ FlagSet.ptr.prototype.Int = function(name, value, usage) {
+ var $ptr, f, name, p, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; name = $f.name; p = $f.p; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ p = $newDataPointer(0, ptrType$12);
+ $r = f.IntVar(p, name, value, usage); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return p;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.Int }; } $f.$ptr = $ptr; $f.f = f; $f.name = name; $f.p = p; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.Int = function(name, value, usage) { return this.$val.Int(name, value, usage); };
+ Int = function(name, value, usage) {
+ var $ptr, _r, name, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; name = $f.name; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = $pkg.CommandLine.Int(name, value, usage); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int }; } $f.$ptr = $ptr; $f._r = _r; $f.name = name; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Int = Int;
+ FlagSet.ptr.prototype.Int64Var = function(p, name, value, usage) {
+ var $ptr, f, name, p, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; name = $f.name; p = $f.p; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ $r = f.Var(newInt64Value(value, p), name, usage); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.Int64Var }; } $f.$ptr = $ptr; $f.f = f; $f.name = name; $f.p = p; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.Int64Var = function(p, name, value, usage) { return this.$val.Int64Var(p, name, value, usage); };
+ FlagSet.ptr.prototype.Int64 = function(name, value, usage) {
+ var $ptr, f, name, p, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; name = $f.name; p = $f.p; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ p = $newDataPointer(new $Int64(0, 0), ptrType$13);
+ $r = f.Int64Var(p, name, value, usage); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return p;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.Int64 }; } $f.$ptr = $ptr; $f.f = f; $f.name = name; $f.p = p; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.Int64 = function(name, value, usage) { return this.$val.Int64(name, value, usage); };
+ FlagSet.ptr.prototype.UintVar = function(p, name, value, usage) {
+ var $ptr, f, name, p, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; name = $f.name; p = $f.p; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ $r = f.Var(newUintValue(value, p), name, usage); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.UintVar }; } $f.$ptr = $ptr; $f.f = f; $f.name = name; $f.p = p; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.UintVar = function(p, name, value, usage) { return this.$val.UintVar(p, name, value, usage); };
+ FlagSet.ptr.prototype.Uint = function(name, value, usage) {
+ var $ptr, f, name, p, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; name = $f.name; p = $f.p; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ p = $newDataPointer(0, ptrType$14);
+ $r = f.UintVar(p, name, value, usage); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return p;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.Uint }; } $f.$ptr = $ptr; $f.f = f; $f.name = name; $f.p = p; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.Uint = function(name, value, usage) { return this.$val.Uint(name, value, usage); };
+ Uint = function(name, value, usage) {
+ var $ptr, _r, name, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; name = $f.name; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = $pkg.CommandLine.Uint(name, value, usage); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Uint }; } $f.$ptr = $ptr; $f._r = _r; $f.name = name; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Uint = Uint;
+ FlagSet.ptr.prototype.Uint64Var = function(p, name, value, usage) {
+ var $ptr, f, name, p, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; name = $f.name; p = $f.p; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ $r = f.Var(newUint64Value(value, p), name, usage); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.Uint64Var }; } $f.$ptr = $ptr; $f.f = f; $f.name = name; $f.p = p; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.Uint64Var = function(p, name, value, usage) { return this.$val.Uint64Var(p, name, value, usage); };
+ FlagSet.ptr.prototype.Uint64 = function(name, value, usage) {
+ var $ptr, f, name, p, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; name = $f.name; p = $f.p; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ p = $newDataPointer(new $Uint64(0, 0), ptrType$15);
+ $r = f.Uint64Var(p, name, value, usage); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return p;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.Uint64 }; } $f.$ptr = $ptr; $f.f = f; $f.name = name; $f.p = p; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.Uint64 = function(name, value, usage) { return this.$val.Uint64(name, value, usage); };
+ FlagSet.ptr.prototype.StringVar = function(p, name, value, usage) {
+ var $ptr, f, name, p, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; name = $f.name; p = $f.p; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ $r = f.Var(newStringValue(value, p), name, usage); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.StringVar }; } $f.$ptr = $ptr; $f.f = f; $f.name = name; $f.p = p; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.StringVar = function(p, name, value, usage) { return this.$val.StringVar(p, name, value, usage); };
+ FlagSet.ptr.prototype.String = function(name, value, usage) {
+ var $ptr, f, name, p, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; name = $f.name; p = $f.p; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ p = $newDataPointer("", ptrType$16);
+ $r = f.StringVar(p, name, value, usage); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return p;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.String }; } $f.$ptr = $ptr; $f.f = f; $f.name = name; $f.p = p; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.String = function(name, value, usage) { return this.$val.String(name, value, usage); };
+ String = function(name, value, usage) {
+ var $ptr, _r, name, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; name = $f.name; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = $pkg.CommandLine.String(name, value, usage); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: String }; } $f.$ptr = $ptr; $f._r = _r; $f.name = name; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.String = String;
+ FlagSet.ptr.prototype.Float64Var = function(p, name, value, usage) {
+ var $ptr, f, name, p, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; name = $f.name; p = $f.p; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ $r = f.Var(newFloat64Value(value, p), name, usage); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.Float64Var }; } $f.$ptr = $ptr; $f.f = f; $f.name = name; $f.p = p; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.Float64Var = function(p, name, value, usage) { return this.$val.Float64Var(p, name, value, usage); };
+ FlagSet.ptr.prototype.Float64 = function(name, value, usage) {
+ var $ptr, f, name, p, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; name = $f.name; p = $f.p; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ p = $newDataPointer(0, ptrType$17);
+ $r = f.Float64Var(p, name, value, usage); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return p;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.Float64 }; } $f.$ptr = $ptr; $f.f = f; $f.name = name; $f.p = p; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.Float64 = function(name, value, usage) { return this.$val.Float64(name, value, usage); };
+ FlagSet.ptr.prototype.DurationVar = function(p, name, value, usage) {
+ var $ptr, f, name, p, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; name = $f.name; p = $f.p; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ $r = f.Var(newDurationValue(value, p), name, usage); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.DurationVar }; } $f.$ptr = $ptr; $f.f = f; $f.name = name; $f.p = p; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.DurationVar = function(p, name, value, usage) { return this.$val.DurationVar(p, name, value, usage); };
+ FlagSet.ptr.prototype.Duration = function(name, value, usage) {
+ var $ptr, f, name, p, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; name = $f.name; p = $f.p; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ p = $newDataPointer(new time.Duration(0, 0), ptrType$8);
+ $r = f.DurationVar(p, name, value, usage); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return p;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.Duration }; } $f.$ptr = $ptr; $f.f = f; $f.name = name; $f.p = p; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.Duration = function(name, value, usage) { return this.$val.Duration(name, value, usage); };
+ Duration = function(name, value, usage) {
+ var $ptr, _r, name, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; name = $f.name; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = $pkg.CommandLine.Duration(name, value, usage); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Duration }; } $f.$ptr = $ptr; $f._r = _r; $f.name = name; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Duration = Duration;
+ FlagSet.ptr.prototype.Var = function(value, name, usage) {
+ var $ptr, _entry, _key, _r, _r$1, _r$2, _r$3, _tuple, alreadythere, f, flag, msg, name, usage, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _key = $f._key; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _tuple = $f._tuple; alreadythere = $f.alreadythere; f = $f.f; flag = $f.flag; msg = $f.msg; name = $f.name; usage = $f.usage; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ _r = value.String(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ flag = new Flag.ptr(name, usage, value, _r);
+ _tuple = (_entry = f.formal[$String.keyFor(name)], _entry !== undefined ? [_entry.v, true] : [ptrType$9.nil, false]);
+ alreadythere = _tuple[1];
+ /* */ if (alreadythere) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (alreadythere) { */ case 2:
+ msg = "";
+ /* */ if (f.name === "") { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (f.name === "") { */ case 4:
+ _r$1 = fmt.Sprintf("flag redefined: %s", new sliceType([new $String(name)])); /* */ $s = 7; case 7: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ msg = _r$1;
+ $s = 6; continue;
+ /* } else { */ case 5:
+ _r$2 = fmt.Sprintf("%s flag redefined: %s", new sliceType([new $String(f.name), new $String(name)])); /* */ $s = 8; case 8: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ msg = _r$2;
+ /* } */ case 6:
+ _r$3 = fmt.Fprintln(f.out(), new sliceType([new $String(msg)])); /* */ $s = 9; case 9: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$3;
+ $panic(new $String(msg));
+ /* } */ case 3:
+ if (f.formal === false) {
+ f.formal = {};
+ }
+ _key = name; (f.formal || $throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(_key)] = { k: _key, v: flag };
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.Var }; } $f.$ptr = $ptr; $f._entry = _entry; $f._key = _key; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._tuple = _tuple; $f.alreadythere = alreadythere; $f.f = f; $f.flag = flag; $f.msg = msg; $f.name = name; $f.usage = usage; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.Var = function(value, name, usage) { return this.$val.Var(value, name, usage); };
+ FlagSet.ptr.prototype.failf = function(format, a) {
+ var $ptr, _r, _r$1, a, err, f, format, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; a = $f.a; err = $f.err; f = $f.f; format = $f.format; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ _r = fmt.Errorf(format, a); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ err = _r;
+ _r$1 = fmt.Fprintln(f.out(), new sliceType([err])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $r = f.usage(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return err;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.failf }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.a = a; $f.err = err; $f.f = f; $f.format = format; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.failf = function(format, a) { return this.$val.failf(format, a); };
+ FlagSet.ptr.prototype.usage = function() {
+ var $ptr, f, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; f = $f.f; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ /* */ if (f.Usage === $throwNilPointerError) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (f.Usage === $throwNilPointerError) { */ case 1:
+ $r = f.defaultUsage(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 3; continue;
+ /* } else { */ case 2:
+ $r = f.Usage(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 3:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.usage }; } $f.$ptr = $ptr; $f.f = f; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.usage = function() { return this.$val.usage(); };
+ FlagSet.ptr.prototype.parseOne = function() {
+ var $ptr, _entry, _key, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tmp, _tmp$1, _tuple, _tuple$1, _v, alreadythere, err, err$1, err$2, f, flag, fv, hasValue, i, m, name, numMinuses, ok, s, value, x$1, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _key = $f._key; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _v = $f._v; alreadythere = $f.alreadythere; err = $f.err; err$1 = $f.err$1; err$2 = $f.err$2; f = $f.f; flag = $f.flag; fv = $f.fv; hasValue = $f.hasValue; i = $f.i; m = $f.m; name = $f.name; numMinuses = $f.numMinuses; ok = $f.ok; s = $f.s; value = $f.value; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ if (f.args.$length === 0) {
+ $s = -1; return [false, $ifaceNil];
+ }
+ s = (x$1 = f.args, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0]));
+ if ((s.length === 0) || !((s.charCodeAt(0) === 45)) || (s.length === 1)) {
+ $s = -1; return [false, $ifaceNil];
+ }
+ numMinuses = 1;
+ if (s.charCodeAt(1) === 45) {
+ numMinuses = numMinuses + (1) >> 0;
+ if (s.length === 2) {
+ f.args = $subslice(f.args, 1);
+ $s = -1; return [false, $ifaceNil];
+ }
+ }
+ name = $substring(s, numMinuses);
+ /* */ if ((name.length === 0) || (name.charCodeAt(0) === 45) || (name.charCodeAt(0) === 61)) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ((name.length === 0) || (name.charCodeAt(0) === 45) || (name.charCodeAt(0) === 61)) { */ case 1:
+ _r = f.failf("bad flag syntax: %s", new sliceType([new $String(s)])); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return [false, _r];
+ /* } */ case 2:
+ f.args = $subslice(f.args, 1);
+ hasValue = false;
+ value = "";
+ i = 1;
+ while (true) {
+ if (!(i < name.length)) { break; }
+ if (name.charCodeAt(i) === 61) {
+ value = $substring(name, (i + 1 >> 0));
+ hasValue = true;
+ name = $substring(name, 0, i);
+ break;
+ }
+ i = i + (1) >> 0;
+ }
+ m = f.formal;
+ _tuple = (_entry = m[$String.keyFor(name)], _entry !== undefined ? [_entry.v, true] : [ptrType$9.nil, false]);
+ flag = _tuple[0];
+ alreadythere = _tuple[1];
+ /* */ if (!alreadythere) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (!alreadythere) { */ case 4:
+ /* */ if (name === "help" || name === "h") { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (name === "help" || name === "h") { */ case 6:
+ $r = f.usage(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return [false, $pkg.ErrHelp];
+ /* } */ case 7:
+ _r$1 = f.failf("flag provided but not defined: -%s", new sliceType([new $String(name)])); /* */ $s = 9; case 9: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return [false, _r$1];
+ /* } */ case 5:
+ _tuple$1 = $assertType(flag.Value, boolFlag, true);
+ fv = _tuple$1[0];
+ ok = _tuple$1[1];
+ if (!(ok)) { _v = false; $s = 13; continue s; }
+ _r$2 = fv.IsBoolFlag(); /* */ $s = 14; case 14: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _v = _r$2; case 13:
+ /* */ if (_v) { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if (_v) { */ case 10:
+ /* */ if (hasValue) { $s = 15; continue; }
+ /* */ $s = 16; continue;
+ /* if (hasValue) { */ case 15:
+ _r$3 = fv.Set(value); /* */ $s = 18; case 18: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ err = _r$3;
+ /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 19; continue; }
+ /* */ $s = 20; continue;
+ /* if (!($interfaceIsEqual(err, $ifaceNil))) { */ case 19:
+ _r$4 = f.failf("invalid boolean value %q for -%s: %v", new sliceType([new $String(value), new $String(name), err])); /* */ $s = 21; case 21: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ $s = -1; return [false, _r$4];
+ /* } */ case 20:
+ $s = 17; continue;
+ /* } else { */ case 16:
+ _r$5 = fv.Set("true"); /* */ $s = 22; case 22: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ err$1 = _r$5;
+ /* */ if (!($interfaceIsEqual(err$1, $ifaceNil))) { $s = 23; continue; }
+ /* */ $s = 24; continue;
+ /* if (!($interfaceIsEqual(err$1, $ifaceNil))) { */ case 23:
+ _r$6 = f.failf("invalid boolean flag %s: %v", new sliceType([new $String(name), err$1])); /* */ $s = 25; case 25: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return [false, _r$6];
+ /* } */ case 24:
+ /* } */ case 17:
+ $s = 12; continue;
+ /* } else { */ case 11:
+ if (!hasValue && f.args.$length > 0) {
+ hasValue = true;
+ _tmp = (x$2 = f.args, (0 >= x$2.$length ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + 0]));
+ _tmp$1 = $subslice(f.args, 1);
+ value = _tmp;
+ f.args = _tmp$1;
+ }
+ /* */ if (!hasValue) { $s = 26; continue; }
+ /* */ $s = 27; continue;
+ /* if (!hasValue) { */ case 26:
+ _r$7 = f.failf("flag needs an argument: -%s", new sliceType([new $String(name)])); /* */ $s = 28; case 28: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $s = -1; return [false, _r$7];
+ /* } */ case 27:
+ _r$8 = flag.Value.Set(value); /* */ $s = 29; case 29: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ err$2 = _r$8;
+ /* */ if (!($interfaceIsEqual(err$2, $ifaceNil))) { $s = 30; continue; }
+ /* */ $s = 31; continue;
+ /* if (!($interfaceIsEqual(err$2, $ifaceNil))) { */ case 30:
+ _r$9 = f.failf("invalid value %q for flag -%s: %v", new sliceType([new $String(value), new $String(name), err$2])); /* */ $s = 32; case 32: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ $s = -1; return [false, _r$9];
+ /* } */ case 31:
+ /* } */ case 12:
+ if (f.actual === false) {
+ f.actual = {};
+ }
+ _key = name; (f.actual || $throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(_key)] = { k: _key, v: flag };
+ $s = -1; return [true, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.parseOne }; } $f.$ptr = $ptr; $f._entry = _entry; $f._key = _key; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._v = _v; $f.alreadythere = alreadythere; $f.err = err; $f.err$1 = err$1; $f.err$2 = err$2; $f.f = f; $f.flag = flag; $f.fv = fv; $f.hasValue = hasValue; $f.i = i; $f.m = m; $f.name = name; $f.numMinuses = numMinuses; $f.ok = ok; $f.s = s; $f.value = value; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.parseOne = function() { return this.$val.parseOne(); };
+ FlagSet.ptr.prototype.Parse = function(arguments$1) {
+ var $ptr, _1, _r, _tuple, arguments$1, err, f, seen, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; _tuple = $f._tuple; arguments$1 = $f.arguments$1; err = $f.err; f = $f.f; seen = $f.seen; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ f = this;
+ f.parsed = true;
+ f.args = arguments$1;
+ /* while (true) { */ case 1:
+ _r = f.parseOne(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ seen = _tuple[0];
+ err = _tuple[1];
+ if (seen) {
+ /* continue; */ $s = 1; continue;
+ }
+ if ($interfaceIsEqual(err, $ifaceNil)) {
+ /* break; */ $s = 2; continue;
+ }
+ _1 = f.errorHandling;
+ if (_1 === (0)) {
+ $s = -1; return err;
+ } else if (_1 === (1)) {
+ os.Exit(2);
+ } else if (_1 === (2)) {
+ $panic(err);
+ }
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FlagSet.ptr.prototype.Parse }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f._tuple = _tuple; $f.arguments$1 = arguments$1; $f.err = err; $f.f = f; $f.seen = seen; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ FlagSet.prototype.Parse = function(arguments$1) { return this.$val.Parse(arguments$1); };
+ FlagSet.ptr.prototype.Parsed = function() {
+ var $ptr, f;
+ f = this;
+ return f.parsed;
+ };
+ FlagSet.prototype.Parsed = function() { return this.$val.Parsed(); };
+ init = function() {
+ var $ptr;
+ $pkg.CommandLine.Usage = commandLineUsage;
+ };
+ commandLineUsage = function() {
+ var $ptr, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = $pkg.Usage(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: commandLineUsage }; } $f.$ptr = $ptr; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ NewFlagSet = function(name, errorHandling) {
+ var $ptr, errorHandling, f, name;
+ f = new FlagSet.ptr($throwNilPointerError, name, false, false, false, sliceType$2.nil, errorHandling, $ifaceNil);
+ f.Usage = $methodVal(f, "defaultUsage");
+ return f;
+ };
+ $pkg.NewFlagSet = NewFlagSet;
+ FlagSet.ptr.prototype.Init = function(name, errorHandling) {
+ var $ptr, errorHandling, f, name;
+ f = this;
+ f.name = name;
+ f.errorHandling = errorHandling;
+ };
+ FlagSet.prototype.Init = function(name, errorHandling) { return this.$val.Init(name, errorHandling); };
+ ptrType.methods = [{prop: "Set", name: "Set", pkg: "", typ: $funcType([$String], [$error], false)}, {prop: "Get", name: "Get", pkg: "", typ: $funcType([], [$emptyInterface], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "IsBoolFlag", name: "IsBoolFlag", pkg: "", typ: $funcType([], [$Bool], false)}];
+ ptrType$1.methods = [{prop: "Set", name: "Set", pkg: "", typ: $funcType([$String], [$error], false)}, {prop: "Get", name: "Get", pkg: "", typ: $funcType([], [$emptyInterface], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$2.methods = [{prop: "Set", name: "Set", pkg: "", typ: $funcType([$String], [$error], false)}, {prop: "Get", name: "Get", pkg: "", typ: $funcType([], [$emptyInterface], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$3.methods = [{prop: "Set", name: "Set", pkg: "", typ: $funcType([$String], [$error], false)}, {prop: "Get", name: "Get", pkg: "", typ: $funcType([], [$emptyInterface], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$4.methods = [{prop: "Set", name: "Set", pkg: "", typ: $funcType([$String], [$error], false)}, {prop: "Get", name: "Get", pkg: "", typ: $funcType([], [$emptyInterface], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$5.methods = [{prop: "Set", name: "Set", pkg: "", typ: $funcType([$String], [$error], false)}, {prop: "Get", name: "Get", pkg: "", typ: $funcType([], [$emptyInterface], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$6.methods = [{prop: "Set", name: "Set", pkg: "", typ: $funcType([$String], [$error], false)}, {prop: "Get", name: "Get", pkg: "", typ: $funcType([], [$emptyInterface], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$7.methods = [{prop: "Set", name: "Set", pkg: "", typ: $funcType([$String], [$error], false)}, {prop: "Get", name: "Get", pkg: "", typ: $funcType([], [$emptyInterface], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$18.methods = [{prop: "out", name: "out", pkg: "flag", typ: $funcType([], [io.Writer], false)}, {prop: "SetOutput", name: "SetOutput", pkg: "", typ: $funcType([io.Writer], [], false)}, {prop: "VisitAll", name: "VisitAll", pkg: "", typ: $funcType([funcType], [], false)}, {prop: "Visit", name: "Visit", pkg: "", typ: $funcType([funcType], [], false)}, {prop: "Lookup", name: "Lookup", pkg: "", typ: $funcType([$String], [ptrType$9], false)}, {prop: "Set", name: "Set", pkg: "", typ: $funcType([$String, $String], [$error], false)}, {prop: "PrintDefaults", name: "PrintDefaults", pkg: "", typ: $funcType([], [], false)}, {prop: "defaultUsage", name: "defaultUsage", pkg: "flag", typ: $funcType([], [], false)}, {prop: "NFlag", name: "NFlag", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Arg", name: "Arg", pkg: "", typ: $funcType([$Int], [$String], false)}, {prop: "NArg", name: "NArg", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Args", name: "Args", pkg: "", typ: $funcType([], [sliceType$2], false)}, {prop: "BoolVar", name: "BoolVar", pkg: "", typ: $funcType([ptrType$11, $String, $Bool, $String], [], false)}, {prop: "Bool", name: "Bool", pkg: "", typ: $funcType([$String, $Bool, $String], [ptrType$11], false)}, {prop: "IntVar", name: "IntVar", pkg: "", typ: $funcType([ptrType$12, $String, $Int, $String], [], false)}, {prop: "Int", name: "Int", pkg: "", typ: $funcType([$String, $Int, $String], [ptrType$12], false)}, {prop: "Int64Var", name: "Int64Var", pkg: "", typ: $funcType([ptrType$13, $String, $Int64, $String], [], false)}, {prop: "Int64", name: "Int64", pkg: "", typ: $funcType([$String, $Int64, $String], [ptrType$13], false)}, {prop: "UintVar", name: "UintVar", pkg: "", typ: $funcType([ptrType$14, $String, $Uint, $String], [], false)}, {prop: "Uint", name: "Uint", pkg: "", typ: $funcType([$String, $Uint, $String], [ptrType$14], false)}, {prop: "Uint64Var", name: "Uint64Var", pkg: "", typ: $funcType([ptrType$15, $String, $Uint64, $String], [], false)}, {prop: "Uint64", name: "Uint64", pkg: "", typ: $funcType([$String, $Uint64, $String], [ptrType$15], false)}, {prop: "StringVar", name: "StringVar", pkg: "", typ: $funcType([ptrType$16, $String, $String, $String], [], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([$String, $String, $String], [ptrType$16], false)}, {prop: "Float64Var", name: "Float64Var", pkg: "", typ: $funcType([ptrType$17, $String, $Float64, $String], [], false)}, {prop: "Float64", name: "Float64", pkg: "", typ: $funcType([$String, $Float64, $String], [ptrType$17], false)}, {prop: "DurationVar", name: "DurationVar", pkg: "", typ: $funcType([ptrType$8, $String, time.Duration, $String], [], false)}, {prop: "Duration", name: "Duration", pkg: "", typ: $funcType([$String, time.Duration, $String], [ptrType$8], false)}, {prop: "Var", name: "Var", pkg: "", typ: $funcType([Value, $String, $String], [], false)}, {prop: "failf", name: "failf", pkg: "flag", typ: $funcType([$String, sliceType], [$error], true)}, {prop: "usage", name: "usage", pkg: "flag", typ: $funcType([], [], false)}, {prop: "parseOne", name: "parseOne", pkg: "flag", typ: $funcType([], [$Bool, $error], false)}, {prop: "Parse", name: "Parse", pkg: "", typ: $funcType([sliceType$2], [$error], false)}, {prop: "Parsed", name: "Parsed", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Init", name: "Init", pkg: "", typ: $funcType([$String, ErrorHandling], [], false)}];
+ boolFlag.init([{prop: "IsBoolFlag", name: "IsBoolFlag", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Set", name: "Set", pkg: "", typ: $funcType([$String], [$error], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}]);
+ Value.init([{prop: "Set", name: "Set", pkg: "", typ: $funcType([$String], [$error], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}]);
+ FlagSet.init("flag", [{prop: "Usage", name: "Usage", exported: true, typ: funcType$1, tag: ""}, {prop: "name", name: "name", exported: false, typ: $String, tag: ""}, {prop: "parsed", name: "parsed", exported: false, typ: $Bool, tag: ""}, {prop: "actual", name: "actual", exported: false, typ: mapType, tag: ""}, {prop: "formal", name: "formal", exported: false, typ: mapType, tag: ""}, {prop: "args", name: "args", exported: false, typ: sliceType$2, tag: ""}, {prop: "errorHandling", name: "errorHandling", exported: false, typ: ErrorHandling, tag: ""}, {prop: "output", name: "output", exported: false, typ: io.Writer, tag: ""}]);
+ Flag.init("", [{prop: "Name", name: "Name", exported: true, typ: $String, tag: ""}, {prop: "Usage", name: "Usage", exported: true, typ: $String, tag: ""}, {prop: "Value", name: "Value", exported: true, typ: Value, tag: ""}, {prop: "DefValue", name: "DefValue", exported: true, typ: $String, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = errors.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = os.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = reflect.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sort.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = time.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $pkg.ErrHelp = errors.New("flag: help requested");
+ $pkg.CommandLine = NewFlagSet((x = os.Args, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0])), 1);
+ $pkg.Usage = (function $b() {
+ var $ptr, _r, x$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; x$1 = $f.x$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = fmt.Fprintf(os.Stderr, "Usage of %s:\n", new sliceType([new $String((x$1 = os.Args, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0])))])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $r = PrintDefaults(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f.$ptr = $ptr; $f._r = _r; $f.x$1 = x$1; $f.$s = $s; $f.$r = $r; return $f;
+ });
+ init();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["github.com/daviddengcn/go-colortext"] = (function() {
+ var $pkg = {}, $init, fmt, os, strconv, Color, sliceType, sliceType$1, ResetColor, ChangeColor, Foreground, isDumbTerm, resetColor, ansiText, changeColor;
+ fmt = $packages["fmt"];
+ os = $packages["os"];
+ strconv = $packages["strconv"];
+ Color = $pkg.Color = $newType(4, $kindInt, "ct.Color", true, "github.com/daviddengcn/go-colortext", true, null);
+ sliceType = $sliceType($emptyInterface);
+ sliceType$1 = $sliceType($Uint8);
+ ResetColor = function() {
+ var $ptr, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = resetColor(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ResetColor }; } $f.$ptr = $ptr; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.ResetColor = ResetColor;
+ ChangeColor = function(fg, fgBright, bg, bgBright) {
+ var $ptr, bg, bgBright, fg, fgBright, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; bg = $f.bg; bgBright = $f.bgBright; fg = $f.fg; fgBright = $f.fgBright; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = changeColor(fg, fgBright, bg, bgBright); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ChangeColor }; } $f.$ptr = $ptr; $f.bg = bg; $f.bgBright = bgBright; $f.fg = fg; $f.fgBright = fgBright; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.ChangeColor = ChangeColor;
+ Foreground = function(cl, bright) {
+ var $ptr, bright, cl, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; bright = $f.bright; cl = $f.cl; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = ChangeColor(cl, bright, 0, false); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Foreground }; } $f.$ptr = $ptr; $f.bright = bright; $f.cl = cl; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Foreground = Foreground;
+ isDumbTerm = function() {
+ var $ptr, _r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = os.Getenv("TERM"); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r === "dumb";
+ /* */ } return; } if ($f === undefined) { $f = { $blk: isDumbTerm }; } $f.$ptr = $ptr; $f._r = _r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ resetColor = function() {
+ var $ptr, _r, _r$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = isDumbTerm(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (_r) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (_r) { */ case 1:
+ $s = -1; return;
+ /* } */ case 2:
+ _r$1 = fmt.Print(new sliceType([new $String("\x1B[0m")])); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: resetColor }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ansiText = function(fg, fgBright, bg, bgBright) {
+ var $ptr, bg, bgBright, fg, fgBright, s, x, x$1;
+ if ((fg === 0) && (bg === 0)) {
+ return "";
+ }
+ s = (new sliceType$1($stringToBytes("\x1B[0")));
+ if (!((fg === 0))) {
+ s = strconv.AppendUint($appendSlice(s, ";"), (x = (new $Uint64(0, (fg - 1 >> 0))), new $Uint64(0 + x.$high, 30 + x.$low)), 10);
+ if (fgBright) {
+ s = $appendSlice(s, ";1");
+ }
+ }
+ if (!((bg === 0))) {
+ s = strconv.AppendUint($appendSlice(s, ";"), (x$1 = (new $Uint64(0, (bg - 1 >> 0))), new $Uint64(0 + x$1.$high, 40 + x$1.$low)), 10);
+ if (bgBright) {
+ s = $appendSlice(s, ";1");
+ }
+ }
+ s = $appendSlice(s, "m");
+ return ($bytesToString(s));
+ };
+ changeColor = function(fg, fgBright, bg, bgBright) {
+ var $ptr, _r, _r$1, bg, bgBright, fg, fgBright, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; bg = $f.bg; bgBright = $f.bgBright; fg = $f.fg; fgBright = $f.fgBright; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = isDumbTerm(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (_r) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (_r) { */ case 1:
+ $s = -1; return;
+ /* } */ case 2:
+ if ((fg === 0) && (bg === 0)) {
+ $s = -1; return;
+ }
+ _r$1 = fmt.Print(new sliceType([new $String(ansiText(fg, fgBright, bg, bgBright))])); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: changeColor }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.bg = bg; $f.bgBright = bgBright; $f.fg = fg; $f.fgBright = fgBright; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = fmt.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = os.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["regexp/syntax"] = (function() {
+ var $pkg = {}, $init, bytes, sort, strconv, strings, unicode, utf8, patchList, frag, compiler, Error, ErrorCode, Flags, parser, charGroup, ranges, Prog, InstOp, EmptyOp, Inst, Regexp, Op, sliceType, sliceType$1, sliceType$2, sliceType$3, ptrType, sliceType$4, ptrType$1, sliceType$5, arrayType, arrayType$1, ptrType$2, ptrType$3, sliceType$6, arrayType$2, ptrType$4, ptrType$5, ptrType$6, ptrType$7, anyRuneNotNL, anyRune, anyTable, code1, code2, code3, perlGroup, code4, code5, code6, code7, code8, code9, code10, code11, code12, code13, code14, code15, code16, code17, posixGroup, instOpNames, Compile, minFoldRune, repeatIsValid, cleanAlt, literalRegexp, Parse, isValidCaptureName, isCharClass, matchRune, mergeCharClass, unicodeTable, cleanClass, appendLiteral, appendRange, appendFoldedRange, appendClass, appendFoldedClass, appendNegatedClass, appendTable, appendNegatedTable, negateClass, checkUTF8, nextRune, isalnum, unhex, EmptyOpContext, IsWordChar, wordRune, bw, dumpProg, u32, dumpInst, writeRegexp, escape, simplify1;
+ bytes = $packages["bytes"];
+ sort = $packages["sort"];
+ strconv = $packages["strconv"];
+ strings = $packages["strings"];
+ unicode = $packages["unicode"];
+ utf8 = $packages["unicode/utf8"];
+ patchList = $pkg.patchList = $newType(4, $kindUint32, "syntax.patchList", true, "regexp/syntax", false, null);
+ frag = $pkg.frag = $newType(0, $kindStruct, "syntax.frag", true, "regexp/syntax", false, function(i_, out_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.i = 0;
+ this.out = 0;
+ return;
+ }
+ this.i = i_;
+ this.out = out_;
+ });
+ compiler = $pkg.compiler = $newType(0, $kindStruct, "syntax.compiler", true, "regexp/syntax", false, function(p_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.p = ptrType.nil;
+ return;
+ }
+ this.p = p_;
+ });
+ Error = $pkg.Error = $newType(0, $kindStruct, "syntax.Error", true, "regexp/syntax", true, function(Code_, Expr_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Code = "";
+ this.Expr = "";
+ return;
+ }
+ this.Code = Code_;
+ this.Expr = Expr_;
+ });
+ ErrorCode = $pkg.ErrorCode = $newType(8, $kindString, "syntax.ErrorCode", true, "regexp/syntax", true, null);
+ Flags = $pkg.Flags = $newType(2, $kindUint16, "syntax.Flags", true, "regexp/syntax", true, null);
+ parser = $pkg.parser = $newType(0, $kindStruct, "syntax.parser", true, "regexp/syntax", false, function(flags_, stack_, free_, numCap_, wholeRegexp_, tmpClass_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.flags = 0;
+ this.stack = sliceType$5.nil;
+ this.free = ptrType$1.nil;
+ this.numCap = 0;
+ this.wholeRegexp = "";
+ this.tmpClass = sliceType.nil;
+ return;
+ }
+ this.flags = flags_;
+ this.stack = stack_;
+ this.free = free_;
+ this.numCap = numCap_;
+ this.wholeRegexp = wholeRegexp_;
+ this.tmpClass = tmpClass_;
+ });
+ charGroup = $pkg.charGroup = $newType(0, $kindStruct, "syntax.charGroup", true, "regexp/syntax", false, function(sign_, class$1_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.sign = 0;
+ this.class$1 = sliceType.nil;
+ return;
+ }
+ this.sign = sign_;
+ this.class$1 = class$1_;
+ });
+ ranges = $pkg.ranges = $newType(0, $kindStruct, "syntax.ranges", true, "regexp/syntax", false, function(p_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.p = ptrType$2.nil;
+ return;
+ }
+ this.p = p_;
+ });
+ Prog = $pkg.Prog = $newType(0, $kindStruct, "syntax.Prog", true, "regexp/syntax", true, function(Inst_, Start_, NumCap_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Inst = sliceType$4.nil;
+ this.Start = 0;
+ this.NumCap = 0;
+ return;
+ }
+ this.Inst = Inst_;
+ this.Start = Start_;
+ this.NumCap = NumCap_;
+ });
+ InstOp = $pkg.InstOp = $newType(1, $kindUint8, "syntax.InstOp", true, "regexp/syntax", true, null);
+ EmptyOp = $pkg.EmptyOp = $newType(1, $kindUint8, "syntax.EmptyOp", true, "regexp/syntax", true, null);
+ Inst = $pkg.Inst = $newType(0, $kindStruct, "syntax.Inst", true, "regexp/syntax", true, function(Op_, Out_, Arg_, Rune_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Op = 0;
+ this.Out = 0;
+ this.Arg = 0;
+ this.Rune = sliceType.nil;
+ return;
+ }
+ this.Op = Op_;
+ this.Out = Out_;
+ this.Arg = Arg_;
+ this.Rune = Rune_;
+ });
+ Regexp = $pkg.Regexp = $newType(0, $kindStruct, "syntax.Regexp", true, "regexp/syntax", true, function(Op_, Flags_, Sub_, Sub0_, Rune_, Rune0_, Min_, Max_, Cap_, Name_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Op = 0;
+ this.Flags = 0;
+ this.Sub = sliceType$5.nil;
+ this.Sub0 = arrayType.zero();
+ this.Rune = sliceType.nil;
+ this.Rune0 = arrayType$1.zero();
+ this.Min = 0;
+ this.Max = 0;
+ this.Cap = 0;
+ this.Name = "";
+ return;
+ }
+ this.Op = Op_;
+ this.Flags = Flags_;
+ this.Sub = Sub_;
+ this.Sub0 = Sub0_;
+ this.Rune = Rune_;
+ this.Rune0 = Rune0_;
+ this.Min = Min_;
+ this.Max = Max_;
+ this.Cap = Cap_;
+ this.Name = Name_;
+ });
+ Op = $pkg.Op = $newType(1, $kindUint8, "syntax.Op", true, "regexp/syntax", true, null);
+ sliceType = $sliceType($Int32);
+ sliceType$1 = $sliceType(unicode.Range16);
+ sliceType$2 = $sliceType(unicode.Range32);
+ sliceType$3 = $sliceType($String);
+ ptrType = $ptrType(Prog);
+ sliceType$4 = $sliceType(Inst);
+ ptrType$1 = $ptrType(Regexp);
+ sliceType$5 = $sliceType(ptrType$1);
+ arrayType = $arrayType(ptrType$1, 1);
+ arrayType$1 = $arrayType($Int32, 2);
+ ptrType$2 = $ptrType(sliceType);
+ ptrType$3 = $ptrType(unicode.RangeTable);
+ sliceType$6 = $sliceType($Uint8);
+ arrayType$2 = $arrayType($Uint8, 64);
+ ptrType$4 = $ptrType(compiler);
+ ptrType$5 = $ptrType(Error);
+ ptrType$6 = $ptrType(parser);
+ ptrType$7 = $ptrType(Inst);
+ patchList.prototype.next = function(p) {
+ var $ptr, i, l, p, x, x$1;
+ l = this.$val;
+ i = (x = p.Inst, x$1 = l >>> 1 >>> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ if (((l & 1) >>> 0) === 0) {
+ return ((i.Out >>> 0));
+ }
+ return ((i.Arg >>> 0));
+ };
+ $ptrType(patchList).prototype.next = function(p) { return new patchList(this.$get()).next(p); };
+ patchList.prototype.patch = function(p, val) {
+ var $ptr, i, l, p, val, x, x$1;
+ l = this.$val;
+ while (true) {
+ if (!(!((l === 0)))) { break; }
+ i = (x = p.Inst, x$1 = l >>> 1 >>> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ if (((l & 1) >>> 0) === 0) {
+ l = ((i.Out >>> 0));
+ i.Out = val;
+ } else {
+ l = ((i.Arg >>> 0));
+ i.Arg = val;
+ }
+ }
+ };
+ $ptrType(patchList).prototype.patch = function(p, val) { return new patchList(this.$get()).patch(p, val); };
+ patchList.prototype.append = function(p, l2) {
+ var $ptr, i, l1, l2, last, next, p, x, x$1;
+ l1 = this.$val;
+ if (l1 === 0) {
+ return l2;
+ }
+ if (l2 === 0) {
+ return l1;
+ }
+ last = l1;
+ while (true) {
+ next = new patchList(last).next(p);
+ if (next === 0) {
+ break;
+ }
+ last = next;
+ }
+ i = (x = p.Inst, x$1 = last >>> 1 >>> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ if (((last & 1) >>> 0) === 0) {
+ i.Out = ((l2 >>> 0));
+ } else {
+ i.Arg = ((l2 >>> 0));
+ }
+ return l1;
+ };
+ $ptrType(patchList).prototype.append = function(p, l2) { return new patchList(this.$get()).append(p, l2); };
+ Compile = function(re) {
+ var $ptr, c, f, re;
+ c = new compiler.ptr(ptrType.nil);
+ c.init();
+ f = $clone(c.compile(re), frag);
+ new patchList(f.out).patch(c.p, c.inst(4).i);
+ c.p.Start = ((f.i >> 0));
+ return [c.p, $ifaceNil];
+ };
+ $pkg.Compile = Compile;
+ compiler.ptr.prototype.init = function() {
+ var $ptr, c;
+ c = this;
+ c.p = new Prog.ptr(sliceType$4.nil, 0, 0);
+ c.p.NumCap = 2;
+ c.inst(5);
+ };
+ compiler.prototype.init = function() { return this.$val.init(); };
+ compiler.ptr.prototype.compile = function(re) {
+ var $ptr, _1, _i, _i$1, _i$2, _ref, _ref$1, _ref$2, bra, c, f, f$1, f$2, f1, i, j, ket, re, sub, sub$1, sub$2, x, x$1, x$2, x$3;
+ c = this;
+ _1 = re.Op;
+ if (_1 === (1)) {
+ return c.fail();
+ } else if (_1 === (2)) {
+ return c.nop();
+ } else if (_1 === (3)) {
+ if (re.Rune.$length === 0) {
+ return c.nop();
+ }
+ f = new frag.ptr(0, 0);
+ _ref = re.Rune;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ j = _i;
+ f1 = $clone(c.rune($subslice(re.Rune, j, (j + 1 >> 0)), re.Flags), frag);
+ if (j === 0) {
+ frag.copy(f, f1);
+ } else {
+ frag.copy(f, c.cat($clone(f, frag), $clone(f1, frag)));
+ }
+ _i++;
+ }
+ return f;
+ } else if (_1 === (4)) {
+ return c.rune(re.Rune, re.Flags);
+ } else if (_1 === (5)) {
+ return c.rune(anyRuneNotNL, 0);
+ } else if (_1 === (6)) {
+ return c.rune(anyRune, 0);
+ } else if (_1 === (7)) {
+ return c.empty(1);
+ } else if (_1 === (8)) {
+ return c.empty(2);
+ } else if (_1 === (9)) {
+ return c.empty(4);
+ } else if (_1 === (10)) {
+ return c.empty(8);
+ } else if (_1 === (11)) {
+ return c.empty(16);
+ } else if (_1 === (12)) {
+ return c.empty(32);
+ } else if (_1 === (13)) {
+ bra = $clone(c.cap((((re.Cap << 1 >> 0) >>> 0))), frag);
+ sub = $clone(c.compile((x = re.Sub, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0]))), frag);
+ ket = $clone(c.cap(((((re.Cap << 1 >> 0) | 1) >>> 0))), frag);
+ return c.cat($clone(c.cat($clone(bra, frag), $clone(sub, frag)), frag), $clone(ket, frag));
+ } else if (_1 === (14)) {
+ return c.star($clone(c.compile((x$1 = re.Sub, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0]))), frag), !((((re.Flags & 32) >>> 0) === 0)));
+ } else if (_1 === (15)) {
+ return c.plus($clone(c.compile((x$2 = re.Sub, (0 >= x$2.$length ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + 0]))), frag), !((((re.Flags & 32) >>> 0) === 0)));
+ } else if (_1 === (16)) {
+ return c.quest($clone(c.compile((x$3 = re.Sub, (0 >= x$3.$length ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + 0]))), frag), !((((re.Flags & 32) >>> 0) === 0)));
+ } else if (_1 === (18)) {
+ if (re.Sub.$length === 0) {
+ return c.nop();
+ }
+ f$1 = new frag.ptr(0, 0);
+ _ref$1 = re.Sub;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ i = _i$1;
+ sub$1 = ((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]);
+ if (i === 0) {
+ frag.copy(f$1, c.compile(sub$1));
+ } else {
+ frag.copy(f$1, c.cat($clone(f$1, frag), $clone(c.compile(sub$1), frag)));
+ }
+ _i$1++;
+ }
+ return f$1;
+ } else if (_1 === (19)) {
+ f$2 = new frag.ptr(0, 0);
+ _ref$2 = re.Sub;
+ _i$2 = 0;
+ while (true) {
+ if (!(_i$2 < _ref$2.$length)) { break; }
+ sub$2 = ((_i$2 < 0 || _i$2 >= _ref$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$2.$array[_ref$2.$offset + _i$2]);
+ frag.copy(f$2, c.alt($clone(f$2, frag), $clone(c.compile(sub$2), frag)));
+ _i$2++;
+ }
+ return f$2;
+ }
+ $panic(new $String("regexp: unhandled case in compile"));
+ };
+ compiler.prototype.compile = function(re) { return this.$val.compile(re); };
+ compiler.ptr.prototype.inst = function(op) {
+ var $ptr, c, f, op;
+ c = this;
+ f = new frag.ptr(((c.p.Inst.$length >>> 0)), 0);
+ c.p.Inst = $append(c.p.Inst, new Inst.ptr(op, 0, 0, sliceType.nil));
+ return f;
+ };
+ compiler.prototype.inst = function(op) { return this.$val.inst(op); };
+ compiler.ptr.prototype.nop = function() {
+ var $ptr, c, f;
+ c = this;
+ f = $clone(c.inst(6), frag);
+ f.out = (((f.i << 1 >>> 0) >>> 0));
+ return f;
+ };
+ compiler.prototype.nop = function() { return this.$val.nop(); };
+ compiler.ptr.prototype.fail = function() {
+ var $ptr, c;
+ c = this;
+ return new frag.ptr(0, 0);
+ };
+ compiler.prototype.fail = function() { return this.$val.fail(); };
+ compiler.ptr.prototype.cap = function(arg) {
+ var $ptr, arg, c, f, x, x$1;
+ c = this;
+ f = $clone(c.inst(2), frag);
+ f.out = (((f.i << 1 >>> 0) >>> 0));
+ (x = c.p.Inst, x$1 = f.i, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1])).Arg = arg;
+ if (c.p.NumCap < (((arg >> 0)) + 1 >> 0)) {
+ c.p.NumCap = ((arg >> 0)) + 1 >> 0;
+ }
+ return f;
+ };
+ compiler.prototype.cap = function(arg) { return this.$val.cap(arg); };
+ compiler.ptr.prototype.cat = function(f1, f2) {
+ var $ptr, c, f1, f2;
+ c = this;
+ if ((f1.i === 0) || (f2.i === 0)) {
+ return new frag.ptr(0, 0);
+ }
+ new patchList(f1.out).patch(c.p, f2.i);
+ return new frag.ptr(f1.i, f2.out);
+ };
+ compiler.prototype.cat = function(f1, f2) { return this.$val.cat(f1, f2); };
+ compiler.ptr.prototype.alt = function(f1, f2) {
+ var $ptr, c, f, f1, f2, i, x, x$1;
+ c = this;
+ if (f1.i === 0) {
+ return f2;
+ }
+ if (f2.i === 0) {
+ return f1;
+ }
+ f = $clone(c.inst(0), frag);
+ i = (x = c.p.Inst, x$1 = f.i, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ i.Out = f1.i;
+ i.Arg = f2.i;
+ f.out = new patchList(f1.out).append(c.p, f2.out);
+ return f;
+ };
+ compiler.prototype.alt = function(f1, f2) { return this.$val.alt(f1, f2); };
+ compiler.ptr.prototype.quest = function(f1, nongreedy) {
+ var $ptr, c, f, f1, i, nongreedy, x, x$1;
+ c = this;
+ f = $clone(c.inst(0), frag);
+ i = (x = c.p.Inst, x$1 = f.i, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ if (nongreedy) {
+ i.Arg = f1.i;
+ f.out = (((f.i << 1 >>> 0) >>> 0));
+ } else {
+ i.Out = f1.i;
+ f.out = (((((f.i << 1 >>> 0) | 1) >>> 0) >>> 0));
+ }
+ f.out = new patchList(f.out).append(c.p, f1.out);
+ return f;
+ };
+ compiler.prototype.quest = function(f1, nongreedy) { return this.$val.quest(f1, nongreedy); };
+ compiler.ptr.prototype.star = function(f1, nongreedy) {
+ var $ptr, c, f, f1, i, nongreedy, x, x$1;
+ c = this;
+ f = $clone(c.inst(0), frag);
+ i = (x = c.p.Inst, x$1 = f.i, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ if (nongreedy) {
+ i.Arg = f1.i;
+ f.out = (((f.i << 1 >>> 0) >>> 0));
+ } else {
+ i.Out = f1.i;
+ f.out = (((((f.i << 1 >>> 0) | 1) >>> 0) >>> 0));
+ }
+ new patchList(f1.out).patch(c.p, f.i);
+ return f;
+ };
+ compiler.prototype.star = function(f1, nongreedy) { return this.$val.star(f1, nongreedy); };
+ compiler.ptr.prototype.plus = function(f1, nongreedy) {
+ var $ptr, c, f1, nongreedy;
+ c = this;
+ return new frag.ptr(f1.i, c.star($clone(f1, frag), nongreedy).out);
+ };
+ compiler.prototype.plus = function(f1, nongreedy) { return this.$val.plus(f1, nongreedy); };
+ compiler.ptr.prototype.empty = function(op) {
+ var $ptr, c, f, op, x, x$1;
+ c = this;
+ f = $clone(c.inst(3), frag);
+ (x = c.p.Inst, x$1 = f.i, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1])).Arg = ((op >>> 0));
+ f.out = (((f.i << 1 >>> 0) >>> 0));
+ return f;
+ };
+ compiler.prototype.empty = function(op) { return this.$val.empty(op); };
+ compiler.ptr.prototype.rune = function(r, flags) {
+ var $ptr, c, f, flags, i, r, x, x$1;
+ c = this;
+ f = $clone(c.inst(7), frag);
+ i = (x = c.p.Inst, x$1 = f.i, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ i.Rune = r;
+ flags = (flags & (1)) >>> 0;
+ if (!((r.$length === 1)) || (unicode.SimpleFold((0 >= r.$length ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + 0])) === (0 >= r.$length ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + 0]))) {
+ flags = (flags & ~(1)) << 16 >>> 16;
+ }
+ i.Arg = ((flags >>> 0));
+ f.out = (((f.i << 1 >>> 0) >>> 0));
+ if ((((flags & 1) >>> 0) === 0) && ((r.$length === 1) || (r.$length === 2) && ((0 >= r.$length ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + 0]) === (1 >= r.$length ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + 1])))) {
+ i.Op = 8;
+ } else if ((r.$length === 2) && ((0 >= r.$length ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + 0]) === 0) && ((1 >= r.$length ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + 1]) === 1114111)) {
+ i.Op = 9;
+ } else if ((r.$length === 4) && ((0 >= r.$length ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + 0]) === 0) && ((1 >= r.$length ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + 1]) === 9) && ((2 >= r.$length ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + 2]) === 11) && ((3 >= r.$length ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + 3]) === 1114111)) {
+ i.Op = 10;
+ }
+ return f;
+ };
+ compiler.prototype.rune = function(r, flags) { return this.$val.rune(r, flags); };
+ Error.ptr.prototype.Error = function() {
+ var $ptr, e;
+ e = this;
+ return "error parsing regexp: " + new ErrorCode(e.Code).String() + ": `" + e.Expr + "`";
+ };
+ Error.prototype.Error = function() { return this.$val.Error(); };
+ ErrorCode.prototype.String = function() {
+ var $ptr, e;
+ e = this.$val;
+ return (e);
+ };
+ $ptrType(ErrorCode).prototype.String = function() { return new ErrorCode(this.$get()).String(); };
+ parser.ptr.prototype.newRegexp = function(op) {
+ var $ptr, op, p, re;
+ p = this;
+ re = p.free;
+ if (!(re === ptrType$1.nil)) {
+ p.free = re.Sub0[0];
+ Regexp.copy(re, new Regexp.ptr(0, 0, sliceType$5.nil, arrayType.zero(), sliceType.nil, arrayType$1.zero(), 0, 0, 0, ""));
+ } else {
+ re = new Regexp.ptr(0, 0, sliceType$5.nil, arrayType.zero(), sliceType.nil, arrayType$1.zero(), 0, 0, 0, "");
+ }
+ re.Op = op;
+ return re;
+ };
+ parser.prototype.newRegexp = function(op) { return this.$val.newRegexp(op); };
+ parser.ptr.prototype.reuse = function(re) {
+ var $ptr, p, re;
+ p = this;
+ re.Sub0[0] = p.free;
+ p.free = re;
+ };
+ parser.prototype.reuse = function(re) { return this.$val.reuse(re); };
+ parser.ptr.prototype.push = function(re) {
+ var $ptr, p, re, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ p = this;
+ if ((re.Op === 4) && (re.Rune.$length === 2) && ((x = re.Rune, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0])) === (x$1 = re.Rune, (1 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 1])))) {
+ if (p.maybeConcat((x$16 = re.Rune, (0 >= x$16.$length ? ($throwRuntimeError("index out of range"), undefined) : x$16.$array[x$16.$offset + 0])), (p.flags & ~1) << 16 >>> 16)) {
+ return ptrType$1.nil;
+ }
+ re.Op = 3;
+ re.Rune = $subslice(re.Rune, 0, 1);
+ re.Flags = (p.flags & ~1) << 16 >>> 16;
+ } else if ((re.Op === 4) && (re.Rune.$length === 4) && ((x$2 = re.Rune, (0 >= x$2.$length ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + 0])) === (x$3 = re.Rune, (1 >= x$3.$length ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + 1]))) && ((x$4 = re.Rune, (2 >= x$4.$length ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + 2])) === (x$5 = re.Rune, (3 >= x$5.$length ? ($throwRuntimeError("index out of range"), undefined) : x$5.$array[x$5.$offset + 3]))) && (unicode.SimpleFold((x$6 = re.Rune, (0 >= x$6.$length ? ($throwRuntimeError("index out of range"), undefined) : x$6.$array[x$6.$offset + 0]))) === (x$7 = re.Rune, (2 >= x$7.$length ? ($throwRuntimeError("index out of range"), undefined) : x$7.$array[x$7.$offset + 2]))) && (unicode.SimpleFold((x$8 = re.Rune, (2 >= x$8.$length ? ($throwRuntimeError("index out of range"), undefined) : x$8.$array[x$8.$offset + 2]))) === (x$9 = re.Rune, (0 >= x$9.$length ? ($throwRuntimeError("index out of range"), undefined) : x$9.$array[x$9.$offset + 0]))) || (re.Op === 4) && (re.Rune.$length === 2) && (((x$10 = re.Rune, (0 >= x$10.$length ? ($throwRuntimeError("index out of range"), undefined) : x$10.$array[x$10.$offset + 0])) + 1 >> 0) === (x$11 = re.Rune, (1 >= x$11.$length ? ($throwRuntimeError("index out of range"), undefined) : x$11.$array[x$11.$offset + 1]))) && (unicode.SimpleFold((x$12 = re.Rune, (0 >= x$12.$length ? ($throwRuntimeError("index out of range"), undefined) : x$12.$array[x$12.$offset + 0]))) === (x$13 = re.Rune, (1 >= x$13.$length ? ($throwRuntimeError("index out of range"), undefined) : x$13.$array[x$13.$offset + 1]))) && (unicode.SimpleFold((x$14 = re.Rune, (1 >= x$14.$length ? ($throwRuntimeError("index out of range"), undefined) : x$14.$array[x$14.$offset + 1]))) === (x$15 = re.Rune, (0 >= x$15.$length ? ($throwRuntimeError("index out of range"), undefined) : x$15.$array[x$15.$offset + 0])))) {
+ if (p.maybeConcat((x$17 = re.Rune, (0 >= x$17.$length ? ($throwRuntimeError("index out of range"), undefined) : x$17.$array[x$17.$offset + 0])), (p.flags | 1) >>> 0)) {
+ return ptrType$1.nil;
+ }
+ re.Op = 3;
+ re.Rune = $subslice(re.Rune, 0, 1);
+ re.Flags = (p.flags | 1) >>> 0;
+ } else {
+ p.maybeConcat(-1, 0);
+ }
+ p.stack = $append(p.stack, re);
+ return re;
+ };
+ parser.prototype.push = function(re) { return this.$val.push(re); };
+ parser.ptr.prototype.maybeConcat = function(r, flags) {
+ var $ptr, flags, n, p, r, re1, re2, x, x$1, x$2, x$3, x$4;
+ p = this;
+ n = p.stack.$length;
+ if (n < 2) {
+ return false;
+ }
+ re1 = (x = p.stack, x$1 = n - 1 >> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ re2 = (x$2 = p.stack, x$3 = n - 2 >> 0, ((x$3 < 0 || x$3 >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + x$3]));
+ if (!((re1.Op === 3)) || !((re2.Op === 3)) || !((((re1.Flags & 1) >>> 0) === ((re2.Flags & 1) >>> 0)))) {
+ return false;
+ }
+ re2.Rune = $appendSlice(re2.Rune, re1.Rune);
+ if (r >= 0) {
+ re1.Rune = $subslice(new sliceType(re1.Rune0), 0, 1);
+ (x$4 = re1.Rune, (0 >= x$4.$length ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + 0] = r));
+ re1.Flags = flags;
+ return true;
+ }
+ p.stack = $subslice(p.stack, 0, (n - 1 >> 0));
+ p.reuse(re1);
+ return false;
+ };
+ parser.prototype.maybeConcat = function(r, flags) { return this.$val.maybeConcat(r, flags); };
+ parser.ptr.prototype.newLiteral = function(r, flags) {
+ var $ptr, flags, p, r, re;
+ p = this;
+ re = p.newRegexp(3);
+ re.Flags = flags;
+ if (!((((flags & 1) >>> 0) === 0))) {
+ r = minFoldRune(r);
+ }
+ re.Rune0[0] = r;
+ re.Rune = $subslice(new sliceType(re.Rune0), 0, 1);
+ return re;
+ };
+ parser.prototype.newLiteral = function(r, flags) { return this.$val.newLiteral(r, flags); };
+ minFoldRune = function(r) {
+ var $ptr, min, r, r0;
+ if (r < 65 || r > 125251) {
+ return r;
+ }
+ min = r;
+ r0 = r;
+ r = unicode.SimpleFold(r);
+ while (true) {
+ if (!(!((r === r0)))) { break; }
+ if (min > r) {
+ min = r;
+ }
+ r = unicode.SimpleFold(r);
+ }
+ return min;
+ };
+ parser.ptr.prototype.literal = function(r) {
+ var $ptr, p, r;
+ p = this;
+ p.push(p.newLiteral(r, p.flags));
+ };
+ parser.prototype.literal = function(r) { return this.$val.literal(r); };
+ parser.ptr.prototype.op = function(op) {
+ var $ptr, op, p, re;
+ p = this;
+ re = p.newRegexp(op);
+ re.Flags = p.flags;
+ return p.push(re);
+ };
+ parser.prototype.op = function(op) { return this.$val.op(op); };
+ parser.ptr.prototype.repeat = function(op, min, max, before, after, lastRepeat) {
+ var $ptr, after, before, flags, lastRepeat, max, min, n, op, p, re, sub, x, x$1, x$2, x$3, x$4;
+ p = this;
+ flags = p.flags;
+ if (!((((p.flags & 64) >>> 0) === 0))) {
+ if (after.length > 0 && (after.charCodeAt(0) === 63)) {
+ after = $substring(after, 1);
+ flags = (flags ^ (32)) << 16 >>> 16;
+ }
+ if (!(lastRepeat === "")) {
+ return ["", new Error.ptr("invalid nested repetition operator", $substring(lastRepeat, 0, (lastRepeat.length - after.length >> 0)))];
+ }
+ }
+ n = p.stack.$length;
+ if (n === 0) {
+ return ["", new Error.ptr("missing argument to repetition operator", $substring(before, 0, (before.length - after.length >> 0)))];
+ }
+ sub = (x = p.stack, x$1 = n - 1 >> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ if (sub.Op >= 128) {
+ return ["", new Error.ptr("missing argument to repetition operator", $substring(before, 0, (before.length - after.length >> 0)))];
+ }
+ re = p.newRegexp(op);
+ re.Min = min;
+ re.Max = max;
+ re.Flags = flags;
+ re.Sub = $subslice(new sliceType$5(re.Sub0), 0, 1);
+ (x$2 = re.Sub, (0 >= x$2.$length ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + 0] = sub));
+ (x$3 = p.stack, x$4 = n - 1 >> 0, ((x$4 < 0 || x$4 >= x$3.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + x$4] = re));
+ if ((op === 17) && (min >= 2 || max >= 2) && !repeatIsValid(re, 1000)) {
+ return ["", new Error.ptr("invalid repeat count", $substring(before, 0, (before.length - after.length >> 0)))];
+ }
+ return [after, $ifaceNil];
+ };
+ parser.prototype.repeat = function(op, min, max, before, after, lastRepeat) { return this.$val.repeat(op, min, max, before, after, lastRepeat); };
+ repeatIsValid = function(re, n) {
+ var $ptr, _i, _q, _ref, m, n, re, sub;
+ if (re.Op === 17) {
+ m = re.Max;
+ if (m === 0) {
+ return true;
+ }
+ if (m < 0) {
+ m = re.Min;
+ }
+ if (m > n) {
+ return false;
+ }
+ if (m > 0) {
+ n = (_q = n / (m), (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ }
+ }
+ _ref = re.Sub;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ sub = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (!repeatIsValid(sub, n)) {
+ return false;
+ }
+ _i++;
+ }
+ return true;
+ };
+ parser.ptr.prototype.concat = function() {
+ var $ptr, _r, _r$1, i, p, subs, x, x$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; i = $f.i; p = $f.p; subs = $f.subs; x = $f.x; x$1 = $f.x$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ p.maybeConcat(-1, 0);
+ i = p.stack.$length;
+ while (true) {
+ if (!(i > 0 && (x = p.stack, x$1 = i - 1 >> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1])).Op < 128)) { break; }
+ i = i - (1) >> 0;
+ }
+ subs = $subslice(p.stack, i);
+ p.stack = $subslice(p.stack, 0, i);
+ if (subs.$length === 0) {
+ $s = -1; return p.push(p.newRegexp(2));
+ }
+ _r = p.collapse(subs, 18); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = p.push(_r); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: parser.ptr.prototype.concat }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.i = i; $f.p = p; $f.subs = subs; $f.x = x; $f.x$1 = x$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parser.prototype.concat = function() { return this.$val.concat(); };
+ parser.ptr.prototype.alternate = function() {
+ var $ptr, _r, _r$1, i, p, subs, x, x$1, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; i = $f.i; p = $f.p; subs = $f.subs; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ i = p.stack.$length;
+ while (true) {
+ if (!(i > 0 && (x = p.stack, x$1 = i - 1 >> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1])).Op < 128)) { break; }
+ i = i - (1) >> 0;
+ }
+ subs = $subslice(p.stack, i);
+ p.stack = $subslice(p.stack, 0, i);
+ /* */ if (subs.$length > 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (subs.$length > 0) { */ case 1:
+ $r = cleanAlt((x$2 = subs.$length - 1 >> 0, ((x$2 < 0 || x$2 >= subs.$length) ? ($throwRuntimeError("index out of range"), undefined) : subs.$array[subs.$offset + x$2]))); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 2:
+ if (subs.$length === 0) {
+ $s = -1; return p.push(p.newRegexp(1));
+ }
+ _r = p.collapse(subs, 19); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = p.push(_r); /* */ $s = 5; case 5: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: parser.ptr.prototype.alternate }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.i = i; $f.p = p; $f.subs = subs; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parser.prototype.alternate = function() { return this.$val.alternate(); };
+ cleanAlt = function(re) {
+ var $ptr, _1, _r, re, x, x$1, x$2, x$3, x$4, x$5, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; re = $f.re; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _1 = re.Op;
+ /* */ if (_1 === (4)) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (_1 === (4)) { */ case 2:
+ _r = cleanClass((re.$ptr_Rune || (re.$ptr_Rune = new ptrType$2(function() { return this.$target.Rune; }, function($v) { this.$target.Rune = $v; }, re)))); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ re.Rune = _r;
+ if ((re.Rune.$length === 2) && ((x = re.Rune, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0])) === 0) && ((x$1 = re.Rune, (1 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 1])) === 1114111)) {
+ re.Rune = sliceType.nil;
+ re.Op = 6;
+ $s = -1; return;
+ }
+ if ((re.Rune.$length === 4) && ((x$2 = re.Rune, (0 >= x$2.$length ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + 0])) === 0) && ((x$3 = re.Rune, (1 >= x$3.$length ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + 1])) === 9) && ((x$4 = re.Rune, (2 >= x$4.$length ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + 2])) === 11) && ((x$5 = re.Rune, (3 >= x$5.$length ? ($throwRuntimeError("index out of range"), undefined) : x$5.$array[x$5.$offset + 3])) === 1114111)) {
+ re.Rune = sliceType.nil;
+ re.Op = 5;
+ $s = -1; return;
+ }
+ if ((re.Rune.$capacity - re.Rune.$length >> 0) > 100) {
+ re.Rune = $appendSlice($subslice(new sliceType(re.Rune0), 0, 0), re.Rune);
+ }
+ /* } */ case 3:
+ case 1:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cleanAlt }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f.re = re; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parser.ptr.prototype.collapse = function(subs, op) {
+ var $ptr, _i, _r, _ref, old, op, p, re, sub, subs, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _ref = $f._ref; old = $f.old; op = $f.op; p = $f.p; re = $f.re; sub = $f.sub; subs = $f.subs; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ if (subs.$length === 1) {
+ $s = -1; return (0 >= subs.$length ? ($throwRuntimeError("index out of range"), undefined) : subs.$array[subs.$offset + 0]);
+ }
+ re = p.newRegexp(op);
+ re.Sub = $subslice(new sliceType$5(re.Sub0), 0, 0);
+ _ref = subs;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ sub = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (sub.Op === op) {
+ re.Sub = $appendSlice(re.Sub, sub.Sub);
+ p.reuse(sub);
+ } else {
+ re.Sub = $append(re.Sub, sub);
+ }
+ _i++;
+ }
+ /* */ if (op === 19) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (op === 19) { */ case 1:
+ _r = p.factor(re.Sub, re.Flags); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ re.Sub = _r;
+ if (re.Sub.$length === 1) {
+ old = re;
+ re = (x = re.Sub, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0]));
+ p.reuse(old);
+ }
+ /* } */ case 2:
+ $s = -1; return re;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: parser.ptr.prototype.collapse }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._ref = _ref; $f.old = old; $f.op = op; $f.p = p; $f.re = re; $f.sub = sub; $f.subs = subs; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parser.prototype.collapse = function(subs, op) { return this.$val.collapse(subs, op); };
+ parser.ptr.prototype.factor = function(sub, flags) {
+ var $ptr, _i, _r, _r$1, _ref, _tmp, _tmp$1, _tuple, first, flags, i, i$1, i$2, i$3, ifirst, iflags, istr, j, j$1, j$2, j$3, max, out, p, prefix, prefix$1, re, re$1, reuse, same, start, str, strflags, sub, suffix, suffix$1, x, x$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _ref = $f._ref; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tuple = $f._tuple; first = $f.first; flags = $f.flags; i = $f.i; i$1 = $f.i$1; i$2 = $f.i$2; i$3 = $f.i$3; ifirst = $f.ifirst; iflags = $f.iflags; istr = $f.istr; j = $f.j; j$1 = $f.j$1; j$2 = $f.j$2; j$3 = $f.j$3; max = $f.max; out = $f.out; p = $f.p; prefix = $f.prefix; prefix$1 = $f.prefix$1; re = $f.re; re$1 = $f.re$1; reuse = $f.reuse; same = $f.same; start = $f.start; str = $f.str; strflags = $f.strflags; sub = $f.sub; suffix = $f.suffix; suffix$1 = $f.suffix$1; x = $f.x; x$1 = $f.x$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ if (sub.$length < 2) {
+ $s = -1; return sub;
+ }
+ str = sliceType.nil;
+ strflags = 0;
+ start = 0;
+ out = $subslice(sub, 0, 0);
+ i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(i <= sub.$length)) { break; } */ if(!(i <= sub.$length)) { $s = 2; continue; }
+ istr = sliceType.nil;
+ iflags = 0;
+ /* */ if (i < sub.$length) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (i < sub.$length) { */ case 3:
+ _tuple = p.leadingString(((i < 0 || i >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + i]));
+ istr = _tuple[0];
+ iflags = _tuple[1];
+ if (iflags === strflags) {
+ same = 0;
+ while (true) {
+ if (!(same < str.$length && same < istr.$length && (((same < 0 || same >= str.$length) ? ($throwRuntimeError("index out of range"), undefined) : str.$array[str.$offset + same]) === ((same < 0 || same >= istr.$length) ? ($throwRuntimeError("index out of range"), undefined) : istr.$array[istr.$offset + same])))) { break; }
+ same = same + (1) >> 0;
+ }
+ if (same > 0) {
+ str = $subslice(str, 0, same);
+ i = i + (1) >> 0;
+ /* continue; */ $s = 1; continue;
+ }
+ }
+ /* } */ case 4:
+ /* */ if (i === start) { $s = 5; continue; }
+ /* */ if (i === (start + 1 >> 0)) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (i === start) { */ case 5:
+ $s = 8; continue;
+ /* } else if (i === (start + 1 >> 0)) { */ case 6:
+ out = $append(out, ((start < 0 || start >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + start]));
+ $s = 8; continue;
+ /* } else { */ case 7:
+ prefix = p.newRegexp(3);
+ prefix.Flags = strflags;
+ prefix.Rune = $appendSlice($subslice(prefix.Rune, 0, 0), str);
+ j = start;
+ while (true) {
+ if (!(j < i)) { break; }
+ ((j < 0 || j >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + j] = p.removeLeadingString(((j < 0 || j >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + j]), str.$length));
+ j = j + (1) >> 0;
+ }
+ _r = p.collapse($subslice(sub, start, i), 19); /* */ $s = 9; case 9: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ suffix = _r;
+ re = p.newRegexp(18);
+ re.Sub = $append($subslice(re.Sub, 0, 0), prefix, suffix);
+ out = $append(out, re);
+ /* } */ case 8:
+ start = i;
+ str = istr;
+ strflags = iflags;
+ i = i + (1) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ sub = out;
+ start = 0;
+ out = $subslice(sub, 0, 0);
+ first = ptrType$1.nil;
+ i$1 = 0;
+ /* while (true) { */ case 10:
+ /* if (!(i$1 <= sub.$length)) { break; } */ if(!(i$1 <= sub.$length)) { $s = 11; continue; }
+ ifirst = ptrType$1.nil;
+ /* */ if (i$1 < sub.$length) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if (i$1 < sub.$length) { */ case 12:
+ ifirst = p.leadingRegexp(((i$1 < 0 || i$1 >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + i$1]));
+ if (!(first === ptrType$1.nil) && first.Equal(ifirst) && (isCharClass(first) || ((first.Op === 17) && (first.Min === first.Max) && isCharClass((x = first.Sub, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0])))))) {
+ i$1 = i$1 + (1) >> 0;
+ /* continue; */ $s = 10; continue;
+ }
+ /* } */ case 13:
+ /* */ if (i$1 === start) { $s = 14; continue; }
+ /* */ if (i$1 === (start + 1 >> 0)) { $s = 15; continue; }
+ /* */ $s = 16; continue;
+ /* if (i$1 === start) { */ case 14:
+ $s = 17; continue;
+ /* } else if (i$1 === (start + 1 >> 0)) { */ case 15:
+ out = $append(out, ((start < 0 || start >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + start]));
+ $s = 17; continue;
+ /* } else { */ case 16:
+ prefix$1 = first;
+ j$1 = start;
+ while (true) {
+ if (!(j$1 < i$1)) { break; }
+ reuse = !((j$1 === start));
+ ((j$1 < 0 || j$1 >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + j$1] = p.removeLeadingRegexp(((j$1 < 0 || j$1 >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + j$1]), reuse));
+ j$1 = j$1 + (1) >> 0;
+ }
+ _r$1 = p.collapse($subslice(sub, start, i$1), 19); /* */ $s = 18; case 18: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ suffix$1 = _r$1;
+ re$1 = p.newRegexp(18);
+ re$1.Sub = $append($subslice(re$1.Sub, 0, 0), prefix$1, suffix$1);
+ out = $append(out, re$1);
+ /* } */ case 17:
+ start = i$1;
+ first = ifirst;
+ i$1 = i$1 + (1) >> 0;
+ /* } */ $s = 10; continue; case 11:
+ sub = out;
+ start = 0;
+ out = $subslice(sub, 0, 0);
+ i$2 = 0;
+ /* while (true) { */ case 19:
+ /* if (!(i$2 <= sub.$length)) { break; } */ if(!(i$2 <= sub.$length)) { $s = 20; continue; }
+ /* */ if (i$2 < sub.$length && isCharClass(((i$2 < 0 || i$2 >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + i$2]))) { $s = 21; continue; }
+ /* */ $s = 22; continue;
+ /* if (i$2 < sub.$length && isCharClass(((i$2 < 0 || i$2 >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + i$2]))) { */ case 21:
+ i$2 = i$2 + (1) >> 0;
+ /* continue; */ $s = 19; continue;
+ /* } */ case 22:
+ /* */ if (i$2 === start) { $s = 23; continue; }
+ /* */ if (i$2 === (start + 1 >> 0)) { $s = 24; continue; }
+ /* */ $s = 25; continue;
+ /* if (i$2 === start) { */ case 23:
+ $s = 26; continue;
+ /* } else if (i$2 === (start + 1 >> 0)) { */ case 24:
+ out = $append(out, ((start < 0 || start >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + start]));
+ $s = 26; continue;
+ /* } else { */ case 25:
+ max = start;
+ j$2 = start + 1 >> 0;
+ while (true) {
+ if (!(j$2 < i$2)) { break; }
+ if (((max < 0 || max >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + max]).Op < ((j$2 < 0 || j$2 >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + j$2]).Op || (((max < 0 || max >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + max]).Op === ((j$2 < 0 || j$2 >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + j$2]).Op) && ((max < 0 || max >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + max]).Rune.$length < ((j$2 < 0 || j$2 >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + j$2]).Rune.$length) {
+ max = j$2;
+ }
+ j$2 = j$2 + (1) >> 0;
+ }
+ _tmp = ((max < 0 || max >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + max]);
+ _tmp$1 = ((start < 0 || start >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + start]);
+ ((start < 0 || start >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + start] = _tmp);
+ ((max < 0 || max >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + max] = _tmp$1);
+ j$3 = start + 1 >> 0;
+ while (true) {
+ if (!(j$3 < i$2)) { break; }
+ mergeCharClass(((start < 0 || start >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + start]), ((j$3 < 0 || j$3 >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + j$3]));
+ p.reuse(((j$3 < 0 || j$3 >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + j$3]));
+ j$3 = j$3 + (1) >> 0;
+ }
+ $r = cleanAlt(((start < 0 || start >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + start])); /* */ $s = 27; case 27: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ out = $append(out, ((start < 0 || start >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + start]));
+ /* } */ case 26:
+ if (i$2 < sub.$length) {
+ out = $append(out, ((i$2 < 0 || i$2 >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + i$2]));
+ }
+ start = i$2 + 1 >> 0;
+ i$2 = i$2 + (1) >> 0;
+ /* } */ $s = 19; continue; case 20:
+ sub = out;
+ start = 0;
+ out = $subslice(sub, 0, 0);
+ _ref = sub;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i$3 = _i;
+ if ((i$3 + 1 >> 0) < sub.$length && (((i$3 < 0 || i$3 >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + i$3]).Op === 2) && ((x$1 = i$3 + 1 >> 0, ((x$1 < 0 || x$1 >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + x$1])).Op === 2)) {
+ _i++;
+ continue;
+ }
+ out = $append(out, ((i$3 < 0 || i$3 >= sub.$length) ? ($throwRuntimeError("index out of range"), undefined) : sub.$array[sub.$offset + i$3]));
+ _i++;
+ }
+ sub = out;
+ $s = -1; return sub;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: parser.ptr.prototype.factor }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._ref = _ref; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tuple = _tuple; $f.first = first; $f.flags = flags; $f.i = i; $f.i$1 = i$1; $f.i$2 = i$2; $f.i$3 = i$3; $f.ifirst = ifirst; $f.iflags = iflags; $f.istr = istr; $f.j = j; $f.j$1 = j$1; $f.j$2 = j$2; $f.j$3 = j$3; $f.max = max; $f.out = out; $f.p = p; $f.prefix = prefix; $f.prefix$1 = prefix$1; $f.re = re; $f.re$1 = re$1; $f.reuse = reuse; $f.same = same; $f.start = start; $f.str = str; $f.strflags = strflags; $f.sub = sub; $f.suffix = suffix; $f.suffix$1 = suffix$1; $f.x = x; $f.x$1 = x$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parser.prototype.factor = function(sub, flags) { return this.$val.factor(sub, flags); };
+ parser.ptr.prototype.leadingString = function(re) {
+ var $ptr, p, re, x;
+ p = this;
+ if ((re.Op === 18) && re.Sub.$length > 0) {
+ re = (x = re.Sub, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0]));
+ }
+ if (!((re.Op === 3))) {
+ return [sliceType.nil, 0];
+ }
+ return [re.Rune, (re.Flags & 1) >>> 0];
+ };
+ parser.prototype.leadingString = function(re) { return this.$val.leadingString(re); };
+ parser.ptr.prototype.removeLeadingString = function(re, n) {
+ var $ptr, _1, n, old, p, re, sub, x, x$1, x$2;
+ p = this;
+ if ((re.Op === 18) && re.Sub.$length > 0) {
+ sub = (x = re.Sub, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0]));
+ sub = p.removeLeadingString(sub, n);
+ (x$1 = re.Sub, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0] = sub));
+ if (sub.Op === 2) {
+ p.reuse(sub);
+ _1 = re.Sub.$length;
+ if ((_1 === (0)) || (_1 === (1))) {
+ re.Op = 2;
+ re.Sub = sliceType$5.nil;
+ } else if (_1 === (2)) {
+ old = re;
+ re = (x$2 = re.Sub, (1 >= x$2.$length ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + 1]));
+ p.reuse(old);
+ } else {
+ $copySlice(re.Sub, $subslice(re.Sub, 1));
+ re.Sub = $subslice(re.Sub, 0, (re.Sub.$length - 1 >> 0));
+ }
+ }
+ return re;
+ }
+ if (re.Op === 3) {
+ re.Rune = $subslice(re.Rune, 0, $copySlice(re.Rune, $subslice(re.Rune, n)));
+ if (re.Rune.$length === 0) {
+ re.Op = 2;
+ }
+ }
+ return re;
+ };
+ parser.prototype.removeLeadingString = function(re, n) { return this.$val.removeLeadingString(re, n); };
+ parser.ptr.prototype.leadingRegexp = function(re) {
+ var $ptr, p, re, sub, x;
+ p = this;
+ if (re.Op === 2) {
+ return ptrType$1.nil;
+ }
+ if ((re.Op === 18) && re.Sub.$length > 0) {
+ sub = (x = re.Sub, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0]));
+ if (sub.Op === 2) {
+ return ptrType$1.nil;
+ }
+ return sub;
+ }
+ return re;
+ };
+ parser.prototype.leadingRegexp = function(re) { return this.$val.leadingRegexp(re); };
+ parser.ptr.prototype.removeLeadingRegexp = function(re, reuse) {
+ var $ptr, _1, old, p, re, reuse, x, x$1;
+ p = this;
+ if ((re.Op === 18) && re.Sub.$length > 0) {
+ if (reuse) {
+ p.reuse((x = re.Sub, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0])));
+ }
+ re.Sub = $subslice(re.Sub, 0, $copySlice(re.Sub, $subslice(re.Sub, 1)));
+ _1 = re.Sub.$length;
+ if (_1 === (0)) {
+ re.Op = 2;
+ re.Sub = sliceType$5.nil;
+ } else if (_1 === (1)) {
+ old = re;
+ re = (x$1 = re.Sub, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0]));
+ p.reuse(old);
+ }
+ return re;
+ }
+ if (reuse) {
+ p.reuse(re);
+ }
+ return p.newRegexp(2);
+ };
+ parser.prototype.removeLeadingRegexp = function(re, reuse) { return this.$val.removeLeadingRegexp(re, reuse); };
+ literalRegexp = function(s, flags) {
+ var $ptr, _i, _ref, _rune, c, flags, re, s;
+ re = new Regexp.ptr(3, 0, sliceType$5.nil, arrayType.zero(), sliceType.nil, arrayType$1.zero(), 0, 0, 0, "");
+ re.Flags = flags;
+ re.Rune = $subslice(new sliceType(re.Rune0), 0, 0);
+ _ref = s;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.length)) { break; }
+ _rune = $decodeRune(_ref, _i);
+ c = _rune[0];
+ if (re.Rune.$length >= re.Rune.$capacity) {
+ re.Rune = (new sliceType($stringToRunes(s)));
+ break;
+ }
+ re.Rune = $append(re.Rune, c);
+ _i += _rune[1];
+ }
+ return re;
+ };
+ Parse = function(s, flags) {
+ var $ptr, _1, _2, _3, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _struct, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, _tuple$5, _tuple$6, _tuple$7, _tuple$8, _tuple$9, after, after$1, before, before$1, c, c$1, err, err$1, err$2, err$3, flags, i, lastRepeat, lit, max, min, n, ok, op, p, r, r$1, re, repeat, rest, rest$1, rest$2, s, t, x, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _2 = $f._2; _3 = $f._3; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _struct = $f._struct; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; _tuple$5 = $f._tuple$5; _tuple$6 = $f._tuple$6; _tuple$7 = $f._tuple$7; _tuple$8 = $f._tuple$8; _tuple$9 = $f._tuple$9; after = $f.after; after$1 = $f.after$1; before = $f.before; before$1 = $f.before$1; c = $f.c; c$1 = $f.c$1; err = $f.err; err$1 = $f.err$1; err$2 = $f.err$2; err$3 = $f.err$3; flags = $f.flags; i = $f.i; lastRepeat = $f.lastRepeat; lit = $f.lit; max = $f.max; min = $f.min; n = $f.n; ok = $f.ok; op = $f.op; p = $f.p; r = $f.r; r$1 = $f.r$1; re = $f.re; repeat = $f.repeat; rest = $f.rest; rest$1 = $f.rest$1; rest$2 = $f.rest$2; s = $f.s; t = $f.t; x = $f.x; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ if (!((((flags & 2) >>> 0) === 0))) {
+ err = checkUTF8(s);
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [ptrType$1.nil, err];
+ }
+ $s = -1; return [literalRegexp(s, flags), $ifaceNil];
+ }
+ p = new parser.ptr(0, sliceType$5.nil, ptrType$1.nil, 0, "", sliceType.nil);
+ err$1 = $ifaceNil;
+ c = 0;
+ op = 0;
+ lastRepeat = "";
+ p.flags = flags;
+ p.wholeRegexp = s;
+ t = s;
+ /* while (true) { */ case 1:
+ /* if (!(!(t === ""))) { break; } */ if(!(!(t === ""))) { $s = 2; continue; }
+ repeat = "";
+ _1 = t.charCodeAt(0);
+ /* */ if (_1 === (40)) { $s = 4; continue; }
+ /* */ if (_1 === (124)) { $s = 5; continue; }
+ /* */ if (_1 === (41)) { $s = 6; continue; }
+ /* */ if (_1 === (94)) { $s = 7; continue; }
+ /* */ if (_1 === (36)) { $s = 8; continue; }
+ /* */ if (_1 === (46)) { $s = 9; continue; }
+ /* */ if (_1 === (91)) { $s = 10; continue; }
+ /* */ if ((_1 === (42)) || (_1 === (43)) || (_1 === (63))) { $s = 11; continue; }
+ /* */ if (_1 === (123)) { $s = 12; continue; }
+ /* */ if (_1 === (92)) { $s = 13; continue; }
+ /* */ $s = 14; continue;
+ /* if (_1 === (40)) { */ case 4:
+ if (!((((p.flags & 64) >>> 0) === 0)) && t.length >= 2 && (t.charCodeAt(1) === 63)) {
+ _tuple = p.parsePerlFlags(t);
+ t = _tuple[0];
+ err$1 = _tuple[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return [ptrType$1.nil, err$1];
+ }
+ /* break; */ $s = 3; continue;
+ }
+ p.numCap = p.numCap + (1) >> 0;
+ p.op(128).Cap = p.numCap;
+ t = $substring(t, 1);
+ $s = 15; continue;
+ /* } else if (_1 === (124)) { */ case 5:
+ _r = p.parseVerticalBar(); /* */ $s = 16; case 16: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ err$1 = _r;
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return [ptrType$1.nil, err$1];
+ }
+ t = $substring(t, 1);
+ $s = 15; continue;
+ /* } else if (_1 === (41)) { */ case 6:
+ _r$1 = p.parseRightParen(); /* */ $s = 17; case 17: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ err$1 = _r$1;
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return [ptrType$1.nil, err$1];
+ }
+ t = $substring(t, 1);
+ $s = 15; continue;
+ /* } else if (_1 === (94)) { */ case 7:
+ if (!((((p.flags & 16) >>> 0) === 0))) {
+ p.op(9);
+ } else {
+ p.op(7);
+ }
+ t = $substring(t, 1);
+ $s = 15; continue;
+ /* } else if (_1 === (36)) { */ case 8:
+ if (!((((p.flags & 16) >>> 0) === 0))) {
+ _struct = p.op(10);
+ _struct.Flags = (_struct.Flags | (256)) >>> 0;
+ } else {
+ p.op(8);
+ }
+ t = $substring(t, 1);
+ $s = 15; continue;
+ /* } else if (_1 === (46)) { */ case 9:
+ if (!((((p.flags & 8) >>> 0) === 0))) {
+ p.op(6);
+ } else {
+ p.op(5);
+ }
+ t = $substring(t, 1);
+ $s = 15; continue;
+ /* } else if (_1 === (91)) { */ case 10:
+ _r$2 = p.parseClass(t); /* */ $s = 18; case 18: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$1 = _r$2;
+ t = _tuple$1[0];
+ err$1 = _tuple$1[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return [ptrType$1.nil, err$1];
+ }
+ $s = 15; continue;
+ /* } else if ((_1 === (42)) || (_1 === (43)) || (_1 === (63))) { */ case 11:
+ before = t;
+ _2 = t.charCodeAt(0);
+ if (_2 === (42)) {
+ op = 14;
+ } else if (_2 === (43)) {
+ op = 15;
+ } else if (_2 === (63)) {
+ op = 16;
+ }
+ after = $substring(t, 1);
+ _tuple$2 = p.repeat(op, 0, 0, before, after, lastRepeat);
+ after = _tuple$2[0];
+ err$1 = _tuple$2[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return [ptrType$1.nil, err$1];
+ }
+ repeat = before;
+ t = after;
+ $s = 15; continue;
+ /* } else if (_1 === (123)) { */ case 12:
+ op = 17;
+ before$1 = t;
+ _tuple$3 = p.parseRepeat(t);
+ min = _tuple$3[0];
+ max = _tuple$3[1];
+ after$1 = _tuple$3[2];
+ ok = _tuple$3[3];
+ if (!ok) {
+ p.literal(123);
+ t = $substring(t, 1);
+ /* break; */ $s = 3; continue;
+ }
+ if (min < 0 || min > 1000 || max > 1000 || max >= 0 && min > max) {
+ $s = -1; return [ptrType$1.nil, new Error.ptr("invalid repeat count", $substring(before$1, 0, (before$1.length - after$1.length >> 0)))];
+ }
+ _tuple$4 = p.repeat(op, min, max, before$1, after$1, lastRepeat);
+ after$1 = _tuple$4[0];
+ err$1 = _tuple$4[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return [ptrType$1.nil, err$1];
+ }
+ repeat = before$1;
+ t = after$1;
+ $s = 15; continue;
+ /* } else if (_1 === (92)) { */ case 13:
+ if (!((((p.flags & 64) >>> 0) === 0)) && t.length >= 2) {
+ _3 = t.charCodeAt(1);
+ if (_3 === (65)) {
+ p.op(9);
+ t = $substring(t, 2);
+ /* break BigSwitch; */ $s = 3; continue s;
+ } else if (_3 === (98)) {
+ p.op(11);
+ t = $substring(t, 2);
+ /* break BigSwitch; */ $s = 3; continue s;
+ } else if (_3 === (66)) {
+ p.op(12);
+ t = $substring(t, 2);
+ /* break BigSwitch; */ $s = 3; continue s;
+ } else if (_3 === (67)) {
+ $s = -1; return [ptrType$1.nil, new Error.ptr("invalid escape sequence", $substring(t, 0, 2))];
+ } else if (_3 === (81)) {
+ lit = "";
+ i = strings.Index(t, "\\E");
+ if (i < 0) {
+ lit = $substring(t, 2);
+ t = "";
+ } else {
+ lit = $substring(t, 2, i);
+ t = $substring(t, (i + 2 >> 0));
+ }
+ while (true) {
+ if (!(!(lit === ""))) { break; }
+ _tuple$5 = nextRune(lit);
+ c$1 = _tuple$5[0];
+ rest = _tuple$5[1];
+ err$2 = _tuple$5[2];
+ if (!($interfaceIsEqual(err$2, $ifaceNil))) {
+ $s = -1; return [ptrType$1.nil, err$2];
+ }
+ p.literal(c$1);
+ lit = rest;
+ }
+ /* break BigSwitch; */ $s = 3; continue s;
+ } else if (_3 === (122)) {
+ p.op(10);
+ t = $substring(t, 2);
+ /* break BigSwitch; */ $s = 3; continue s;
+ }
+ }
+ re = p.newRegexp(4);
+ re.Flags = p.flags;
+ /* */ if (t.length >= 2 && ((t.charCodeAt(1) === 112) || (t.charCodeAt(1) === 80))) { $s = 19; continue; }
+ /* */ $s = 20; continue;
+ /* if (t.length >= 2 && ((t.charCodeAt(1) === 112) || (t.charCodeAt(1) === 80))) { */ case 19:
+ _r$3 = p.parseUnicodeClass(t, $subslice(new sliceType(re.Rune0), 0, 0)); /* */ $s = 21; case 21: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _tuple$6 = _r$3;
+ r = _tuple$6[0];
+ rest$1 = _tuple$6[1];
+ err$3 = _tuple$6[2];
+ if (!($interfaceIsEqual(err$3, $ifaceNil))) {
+ $s = -1; return [ptrType$1.nil, err$3];
+ }
+ if (!(r === sliceType.nil)) {
+ re.Rune = r;
+ t = rest$1;
+ p.push(re);
+ /* break BigSwitch; */ $s = 3; continue s;
+ }
+ /* } */ case 20:
+ _r$4 = p.parsePerlClassEscape(t, $subslice(new sliceType(re.Rune0), 0, 0)); /* */ $s = 22; case 22: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _tuple$7 = _r$4;
+ r$1 = _tuple$7[0];
+ rest$2 = _tuple$7[1];
+ if (!(r$1 === sliceType.nil)) {
+ re.Rune = r$1;
+ t = rest$2;
+ p.push(re);
+ /* break BigSwitch; */ $s = 3; continue s;
+ }
+ p.reuse(re);
+ _tuple$8 = p.parseEscape(t);
+ c = _tuple$8[0];
+ t = _tuple$8[1];
+ err$1 = _tuple$8[2];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return [ptrType$1.nil, err$1];
+ }
+ p.literal(c);
+ $s = 15; continue;
+ /* } else { */ case 14:
+ _tuple$9 = nextRune(t);
+ c = _tuple$9[0];
+ t = _tuple$9[1];
+ err$1 = _tuple$9[2];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return [ptrType$1.nil, err$1];
+ }
+ p.literal(c);
+ /* } */ case 15:
+ case 3:
+ lastRepeat = repeat;
+ /* } */ $s = 1; continue; case 2:
+ _r$5 = p.concat(); /* */ $s = 23; case 23: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _r$5;
+ _r$6 = p.swapVerticalBar(); /* */ $s = 26; case 26: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ /* */ if (_r$6) { $s = 24; continue; }
+ /* */ $s = 25; continue;
+ /* if (_r$6) { */ case 24:
+ p.stack = $subslice(p.stack, 0, (p.stack.$length - 1 >> 0));
+ /* } */ case 25:
+ _r$7 = p.alternate(); /* */ $s = 27; case 27: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _r$7;
+ n = p.stack.$length;
+ if (!((n === 1))) {
+ $s = -1; return [ptrType$1.nil, new Error.ptr("missing closing )", s)];
+ }
+ $s = -1; return [(x = p.stack, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0])), $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Parse }; } $f.$ptr = $ptr; $f._1 = _1; $f._2 = _2; $f._3 = _3; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._struct = _struct; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f._tuple$5 = _tuple$5; $f._tuple$6 = _tuple$6; $f._tuple$7 = _tuple$7; $f._tuple$8 = _tuple$8; $f._tuple$9 = _tuple$9; $f.after = after; $f.after$1 = after$1; $f.before = before; $f.before$1 = before$1; $f.c = c; $f.c$1 = c$1; $f.err = err; $f.err$1 = err$1; $f.err$2 = err$2; $f.err$3 = err$3; $f.flags = flags; $f.i = i; $f.lastRepeat = lastRepeat; $f.lit = lit; $f.max = max; $f.min = min; $f.n = n; $f.ok = ok; $f.op = op; $f.p = p; $f.r = r; $f.r$1 = r$1; $f.re = re; $f.repeat = repeat; $f.rest = rest; $f.rest$1 = rest$1; $f.rest$2 = rest$2; $f.s = s; $f.t = t; $f.x = x; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Parse = Parse;
+ parser.ptr.prototype.parseRepeat = function(s) {
+ var $ptr, _tuple, _tuple$1, max, min, ok, ok1, p, rest, s;
+ min = 0;
+ max = 0;
+ rest = "";
+ ok = false;
+ p = this;
+ if (s === "" || !((s.charCodeAt(0) === 123))) {
+ return [min, max, rest, ok];
+ }
+ s = $substring(s, 1);
+ ok1 = false;
+ _tuple = p.parseInt(s);
+ min = _tuple[0];
+ s = _tuple[1];
+ ok1 = _tuple[2];
+ if (!ok1) {
+ return [min, max, rest, ok];
+ }
+ if (s === "") {
+ return [min, max, rest, ok];
+ }
+ if (!((s.charCodeAt(0) === 44))) {
+ max = min;
+ } else {
+ s = $substring(s, 1);
+ if (s === "") {
+ return [min, max, rest, ok];
+ }
+ if (s.charCodeAt(0) === 125) {
+ max = -1;
+ } else {
+ _tuple$1 = p.parseInt(s);
+ max = _tuple$1[0];
+ s = _tuple$1[1];
+ ok1 = _tuple$1[2];
+ if (!ok1) {
+ return [min, max, rest, ok];
+ } else if (max < 0) {
+ min = -1;
+ }
+ }
+ }
+ if (s === "" || !((s.charCodeAt(0) === 125))) {
+ return [min, max, rest, ok];
+ }
+ rest = $substring(s, 1);
+ ok = true;
+ return [min, max, rest, ok];
+ };
+ parser.prototype.parseRepeat = function(s) { return this.$val.parseRepeat(s); };
+ parser.ptr.prototype.parsePerlFlags = function(s) {
+ var $ptr, _1, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, c, capture, end, err, flags, name, p, re, rest, s, sawFlag, sign, t;
+ rest = "";
+ err = $ifaceNil;
+ p = this;
+ t = s;
+ if (t.length > 4 && (t.charCodeAt(2) === 80) && (t.charCodeAt(3) === 60)) {
+ end = strings.IndexRune(t, 62);
+ if (end < 0) {
+ err = checkUTF8(t);
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ _tmp = "";
+ _tmp$1 = err;
+ rest = _tmp;
+ err = _tmp$1;
+ return [rest, err];
+ }
+ _tmp$2 = "";
+ _tmp$3 = new Error.ptr("invalid named capture", s);
+ rest = _tmp$2;
+ err = _tmp$3;
+ return [rest, err];
+ }
+ capture = $substring(t, 0, (end + 1 >> 0));
+ name = $substring(t, 4, end);
+ err = checkUTF8(name);
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ _tmp$4 = "";
+ _tmp$5 = err;
+ rest = _tmp$4;
+ err = _tmp$5;
+ return [rest, err];
+ }
+ if (!isValidCaptureName(name)) {
+ _tmp$6 = "";
+ _tmp$7 = new Error.ptr("invalid named capture", capture);
+ rest = _tmp$6;
+ err = _tmp$7;
+ return [rest, err];
+ }
+ p.numCap = p.numCap + (1) >> 0;
+ re = p.op(128);
+ re.Cap = p.numCap;
+ re.Name = name;
+ _tmp$8 = $substring(t, (end + 1 >> 0));
+ _tmp$9 = $ifaceNil;
+ rest = _tmp$8;
+ err = _tmp$9;
+ return [rest, err];
+ }
+ c = 0;
+ t = $substring(t, 2);
+ flags = p.flags;
+ sign = 1;
+ sawFlag = false;
+ Loop:
+ while (true) {
+ if (!(!(t === ""))) { break; }
+ _tuple = nextRune(t);
+ c = _tuple[0];
+ t = _tuple[1];
+ err = _tuple[2];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ _tmp$10 = "";
+ _tmp$11 = err;
+ rest = _tmp$10;
+ err = _tmp$11;
+ return [rest, err];
+ }
+ _1 = c;
+ if (_1 === (105)) {
+ flags = (flags | (1)) >>> 0;
+ sawFlag = true;
+ } else if (_1 === (109)) {
+ flags = (flags & ~(16)) << 16 >>> 16;
+ sawFlag = true;
+ } else if (_1 === (115)) {
+ flags = (flags | (8)) >>> 0;
+ sawFlag = true;
+ } else if (_1 === (85)) {
+ flags = (flags | (32)) >>> 0;
+ sawFlag = true;
+ } else if (_1 === (45)) {
+ if (sign < 0) {
+ break Loop;
+ }
+ sign = -1;
+ flags = ~flags << 16 >>> 16;
+ sawFlag = false;
+ } else if ((_1 === (58)) || (_1 === (41))) {
+ if (sign < 0) {
+ if (!sawFlag) {
+ break Loop;
+ }
+ flags = ~flags << 16 >>> 16;
+ }
+ if (c === 58) {
+ p.op(128);
+ }
+ p.flags = flags;
+ _tmp$12 = t;
+ _tmp$13 = $ifaceNil;
+ rest = _tmp$12;
+ err = _tmp$13;
+ return [rest, err];
+ } else {
+ break Loop;
+ }
+ }
+ _tmp$14 = "";
+ _tmp$15 = new Error.ptr("invalid or unsupported Perl syntax", $substring(s, 0, (s.length - t.length >> 0)));
+ rest = _tmp$14;
+ err = _tmp$15;
+ return [rest, err];
+ };
+ parser.prototype.parsePerlFlags = function(s) { return this.$val.parsePerlFlags(s); };
+ isValidCaptureName = function(name) {
+ var $ptr, _i, _ref, _rune, c, name;
+ if (name === "") {
+ return false;
+ }
+ _ref = name;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.length)) { break; }
+ _rune = $decodeRune(_ref, _i);
+ c = _rune[0];
+ if (!((c === 95)) && !isalnum(c)) {
+ return false;
+ }
+ _i += _rune[1];
+ }
+ return true;
+ };
+ parser.ptr.prototype.parseInt = function(s) {
+ var $ptr, i, n, ok, p, rest, s, t;
+ n = 0;
+ rest = "";
+ ok = false;
+ p = this;
+ if (s === "" || s.charCodeAt(0) < 48 || 57 < s.charCodeAt(0)) {
+ return [n, rest, ok];
+ }
+ if (s.length >= 2 && (s.charCodeAt(0) === 48) && 48 <= s.charCodeAt(1) && s.charCodeAt(1) <= 57) {
+ return [n, rest, ok];
+ }
+ t = s;
+ while (true) {
+ if (!(!(s === "") && 48 <= s.charCodeAt(0) && s.charCodeAt(0) <= 57)) { break; }
+ s = $substring(s, 1);
+ }
+ rest = s;
+ ok = true;
+ t = $substring(t, 0, (t.length - s.length >> 0));
+ i = 0;
+ while (true) {
+ if (!(i < t.length)) { break; }
+ if (n >= 100000000) {
+ n = -1;
+ break;
+ }
+ n = (($imul(n, 10)) + ((t.charCodeAt(i) >> 0)) >> 0) - 48 >> 0;
+ i = i + (1) >> 0;
+ }
+ return [n, rest, ok];
+ };
+ parser.prototype.parseInt = function(s) { return this.$val.parseInt(s); };
+ isCharClass = function(re) {
+ var $ptr, re;
+ return (re.Op === 3) && (re.Rune.$length === 1) || (re.Op === 4) || (re.Op === 5) || (re.Op === 6);
+ };
+ matchRune = function(re, r) {
+ var $ptr, _1, i, r, re, x, x$1, x$2, x$3;
+ _1 = re.Op;
+ if (_1 === (3)) {
+ return (re.Rune.$length === 1) && ((x = re.Rune, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0])) === r);
+ } else if (_1 === (4)) {
+ i = 0;
+ while (true) {
+ if (!(i < re.Rune.$length)) { break; }
+ if ((x$1 = re.Rune, ((i < 0 || i >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + i])) <= r && r <= (x$2 = re.Rune, x$3 = i + 1 >> 0, ((x$3 < 0 || x$3 >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + x$3]))) {
+ return true;
+ }
+ i = i + (2) >> 0;
+ }
+ return false;
+ } else if (_1 === (5)) {
+ return !((r === 10));
+ } else if (_1 === (6)) {
+ return true;
+ }
+ return false;
+ };
+ parser.ptr.prototype.parseVerticalBar = function() {
+ var $ptr, _r, _r$1, p, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; p = $f.p; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ _r = p.concat(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ _r$1 = p.swapVerticalBar(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ /* */ if (!_r$1) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!_r$1) { */ case 2:
+ p.op(129);
+ /* } */ case 3:
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: parser.ptr.prototype.parseVerticalBar }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.p = p; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parser.prototype.parseVerticalBar = function() { return this.$val.parseVerticalBar(); };
+ mergeCharClass = function(dst, src) {
+ var $ptr, _1, dst, src, x, x$1, x$2, x$3, x$4;
+ switch (0) { default:
+ _1 = dst.Op;
+ if (_1 === (6)) {
+ } else if (_1 === (5)) {
+ if (matchRune(src, 10)) {
+ dst.Op = 6;
+ }
+ } else if (_1 === (4)) {
+ if (src.Op === 3) {
+ dst.Rune = appendLiteral(dst.Rune, (x = src.Rune, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0])), src.Flags);
+ } else {
+ dst.Rune = appendClass(dst.Rune, src.Rune);
+ }
+ } else if (_1 === (3)) {
+ if (((x$1 = src.Rune, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0])) === (x$2 = dst.Rune, (0 >= x$2.$length ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + 0]))) && (src.Flags === dst.Flags)) {
+ break;
+ }
+ dst.Op = 4;
+ dst.Rune = appendLiteral($subslice(dst.Rune, 0, 0), (x$3 = dst.Rune, (0 >= x$3.$length ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + 0])), dst.Flags);
+ dst.Rune = appendLiteral(dst.Rune, (x$4 = src.Rune, (0 >= x$4.$length ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + 0])), src.Flags);
+ }
+ }
+ };
+ parser.ptr.prototype.swapVerticalBar = function() {
+ var $ptr, _tmp, _tmp$1, n, p, re1, re1$1, re2, re3, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$19, x$2, x$20, x$21, x$3, x$4, x$5, x$6, x$7, x$8, x$9, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; n = $f.n; p = $f.p; re1 = $f.re1; re1$1 = $f.re1$1; re2 = $f.re2; re3 = $f.re3; x = $f.x; x$1 = $f.x$1; x$10 = $f.x$10; x$11 = $f.x$11; x$12 = $f.x$12; x$13 = $f.x$13; x$14 = $f.x$14; x$15 = $f.x$15; x$16 = $f.x$16; x$17 = $f.x$17; x$18 = $f.x$18; x$19 = $f.x$19; x$2 = $f.x$2; x$20 = $f.x$20; x$21 = $f.x$21; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; x$8 = $f.x$8; x$9 = $f.x$9; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ n = p.stack.$length;
+ if (n >= 3 && ((x = p.stack, x$1 = n - 2 >> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1])).Op === 129) && isCharClass((x$2 = p.stack, x$3 = n - 1 >> 0, ((x$3 < 0 || x$3 >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + x$3]))) && isCharClass((x$4 = p.stack, x$5 = n - 3 >> 0, ((x$5 < 0 || x$5 >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + x$5])))) {
+ re1 = (x$6 = p.stack, x$7 = n - 1 >> 0, ((x$7 < 0 || x$7 >= x$6.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$6.$array[x$6.$offset + x$7]));
+ re3 = (x$8 = p.stack, x$9 = n - 3 >> 0, ((x$9 < 0 || x$9 >= x$8.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$8.$array[x$8.$offset + x$9]));
+ if (re1.Op > re3.Op) {
+ _tmp = re3;
+ _tmp$1 = re1;
+ re1 = _tmp;
+ re3 = _tmp$1;
+ (x$10 = p.stack, x$11 = n - 3 >> 0, ((x$11 < 0 || x$11 >= x$10.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$10.$array[x$10.$offset + x$11] = re3));
+ }
+ mergeCharClass(re3, re1);
+ p.reuse(re1);
+ p.stack = $subslice(p.stack, 0, (n - 1 >> 0));
+ $s = -1; return true;
+ }
+ /* */ if (n >= 2) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (n >= 2) { */ case 1:
+ re1$1 = (x$12 = p.stack, x$13 = n - 1 >> 0, ((x$13 < 0 || x$13 >= x$12.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$12.$array[x$12.$offset + x$13]));
+ re2 = (x$14 = p.stack, x$15 = n - 2 >> 0, ((x$15 < 0 || x$15 >= x$14.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$14.$array[x$14.$offset + x$15]));
+ /* */ if (re2.Op === 129) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (re2.Op === 129) { */ case 3:
+ /* */ if (n >= 3) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (n >= 3) { */ case 5:
+ $r = cleanAlt((x$16 = p.stack, x$17 = n - 3 >> 0, ((x$17 < 0 || x$17 >= x$16.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$16.$array[x$16.$offset + x$17]))); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 6:
+ (x$18 = p.stack, x$19 = n - 2 >> 0, ((x$19 < 0 || x$19 >= x$18.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$18.$array[x$18.$offset + x$19] = re1$1));
+ (x$20 = p.stack, x$21 = n - 1 >> 0, ((x$21 < 0 || x$21 >= x$20.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$20.$array[x$20.$offset + x$21] = re2));
+ $s = -1; return true;
+ /* } */ case 4:
+ /* } */ case 2:
+ $s = -1; return false;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: parser.ptr.prototype.swapVerticalBar }; } $f.$ptr = $ptr; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f.n = n; $f.p = p; $f.re1 = re1; $f.re1$1 = re1$1; $f.re2 = re2; $f.re3 = re3; $f.x = x; $f.x$1 = x$1; $f.x$10 = x$10; $f.x$11 = x$11; $f.x$12 = x$12; $f.x$13 = x$13; $f.x$14 = x$14; $f.x$15 = x$15; $f.x$16 = x$16; $f.x$17 = x$17; $f.x$18 = x$18; $f.x$19 = x$19; $f.x$2 = x$2; $f.x$20 = x$20; $f.x$21 = x$21; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.x$8 = x$8; $f.x$9 = x$9; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parser.prototype.swapVerticalBar = function() { return this.$val.swapVerticalBar(); };
+ parser.ptr.prototype.parseRightParen = function() {
+ var $ptr, _r, _r$1, _r$2, n, p, re1, re2, x, x$1, x$2, x$3, x$4, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; n = $f.n; p = $f.p; re1 = $f.re1; re2 = $f.re2; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ _r = p.concat(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ _r$1 = p.swapVerticalBar(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ /* */ if (_r$1) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (_r$1) { */ case 2:
+ p.stack = $subslice(p.stack, 0, (p.stack.$length - 1 >> 0));
+ /* } */ case 3:
+ _r$2 = p.alternate(); /* */ $s = 5; case 5: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ n = p.stack.$length;
+ if (n < 2) {
+ $s = -1; return new Error.ptr("unexpected )", p.wholeRegexp);
+ }
+ re1 = (x = p.stack, x$1 = n - 1 >> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ re2 = (x$2 = p.stack, x$3 = n - 2 >> 0, ((x$3 < 0 || x$3 >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + x$3]));
+ p.stack = $subslice(p.stack, 0, (n - 2 >> 0));
+ if (!((re2.Op === 128))) {
+ $s = -1; return new Error.ptr("unexpected )", p.wholeRegexp);
+ }
+ p.flags = re2.Flags;
+ if (re2.Cap === 0) {
+ p.push(re1);
+ } else {
+ re2.Op = 13;
+ re2.Sub = $subslice(new sliceType$5(re2.Sub0), 0, 1);
+ (x$4 = re2.Sub, (0 >= x$4.$length ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + 0] = re1));
+ p.push(re2);
+ }
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: parser.ptr.prototype.parseRightParen }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.n = n; $f.p = p; $f.re1 = re1; $f.re2 = re2; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parser.prototype.parseRightParen = function() { return this.$val.parseRightParen(); };
+ parser.ptr.prototype.parseEscape = function(s) {
+ var $ptr, _1, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$18, _tmp$19, _tmp$2, _tmp$20, _tmp$21, _tmp$22, _tmp$23, _tmp$24, _tmp$25, _tmp$26, _tmp$27, _tmp$28, _tmp$29, _tmp$3, _tmp$30, _tmp$31, _tmp$32, _tmp$33, _tmp$34, _tmp$35, _tmp$36, _tmp$37, _tmp$38, _tmp$39, _tmp$4, _tmp$40, _tmp$41, _tmp$42, _tmp$43, _tmp$44, _tmp$45, _tmp$46, _tmp$47, _tmp$48, _tmp$49, _tmp$5, _tmp$50, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, _tuple$2, _tuple$3, c, err, i, nhex, p, r, rest, s, t, v, x, y;
+ r = 0;
+ rest = "";
+ err = $ifaceNil;
+ p = this;
+ t = $substring(s, 1);
+ if (t === "") {
+ _tmp = 0;
+ _tmp$1 = "";
+ _tmp$2 = new Error.ptr("trailing backslash at end of expression", "");
+ r = _tmp;
+ rest = _tmp$1;
+ err = _tmp$2;
+ return [r, rest, err];
+ }
+ _tuple = nextRune(t);
+ c = _tuple[0];
+ t = _tuple[1];
+ err = _tuple[2];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ _tmp$3 = 0;
+ _tmp$4 = "";
+ _tmp$5 = err;
+ r = _tmp$3;
+ rest = _tmp$4;
+ err = _tmp$5;
+ return [r, rest, err];
+ }
+ Switch:
+ switch (0) { default:
+ _1 = c;
+ if ((_1 === (49)) || (_1 === (50)) || (_1 === (51)) || (_1 === (52)) || (_1 === (53)) || (_1 === (54)) || (_1 === (55))) {
+ if (t === "" || t.charCodeAt(0) < 48 || t.charCodeAt(0) > 55) {
+ break;
+ }
+ r = c - 48 >> 0;
+ i = 1;
+ while (true) {
+ if (!(i < 3)) { break; }
+ if (t === "" || t.charCodeAt(0) < 48 || t.charCodeAt(0) > 55) {
+ break;
+ }
+ r = (($imul(r, 8)) + ((t.charCodeAt(0) >> 0)) >> 0) - 48 >> 0;
+ t = $substring(t, 1);
+ i = i + (1) >> 0;
+ }
+ _tmp$6 = r;
+ _tmp$7 = t;
+ _tmp$8 = $ifaceNil;
+ r = _tmp$6;
+ rest = _tmp$7;
+ err = _tmp$8;
+ return [r, rest, err];
+ } else if (_1 === (48)) {
+ r = c - 48 >> 0;
+ i = 1;
+ while (true) {
+ if (!(i < 3)) { break; }
+ if (t === "" || t.charCodeAt(0) < 48 || t.charCodeAt(0) > 55) {
+ break;
+ }
+ r = (($imul(r, 8)) + ((t.charCodeAt(0) >> 0)) >> 0) - 48 >> 0;
+ t = $substring(t, 1);
+ i = i + (1) >> 0;
+ }
+ _tmp$9 = r;
+ _tmp$10 = t;
+ _tmp$11 = $ifaceNil;
+ r = _tmp$9;
+ rest = _tmp$10;
+ err = _tmp$11;
+ return [r, rest, err];
+ } else if (_1 === (120)) {
+ if (t === "") {
+ break;
+ }
+ _tuple$1 = nextRune(t);
+ c = _tuple$1[0];
+ t = _tuple$1[1];
+ err = _tuple$1[2];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ _tmp$12 = 0;
+ _tmp$13 = "";
+ _tmp$14 = err;
+ r = _tmp$12;
+ rest = _tmp$13;
+ err = _tmp$14;
+ return [r, rest, err];
+ }
+ if (c === 123) {
+ nhex = 0;
+ r = 0;
+ while (true) {
+ if (t === "") {
+ break Switch;
+ }
+ _tuple$2 = nextRune(t);
+ c = _tuple$2[0];
+ t = _tuple$2[1];
+ err = _tuple$2[2];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ _tmp$15 = 0;
+ _tmp$16 = "";
+ _tmp$17 = err;
+ r = _tmp$15;
+ rest = _tmp$16;
+ err = _tmp$17;
+ return [r, rest, err];
+ }
+ if (c === 125) {
+ break;
+ }
+ v = unhex(c);
+ if (v < 0) {
+ break Switch;
+ }
+ r = ($imul(r, 16)) + v >> 0;
+ if (r > 1114111) {
+ break Switch;
+ }
+ nhex = nhex + (1) >> 0;
+ }
+ if (nhex === 0) {
+ break Switch;
+ }
+ _tmp$18 = r;
+ _tmp$19 = t;
+ _tmp$20 = $ifaceNil;
+ r = _tmp$18;
+ rest = _tmp$19;
+ err = _tmp$20;
+ return [r, rest, err];
+ }
+ x = unhex(c);
+ _tuple$3 = nextRune(t);
+ c = _tuple$3[0];
+ t = _tuple$3[1];
+ err = _tuple$3[2];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ _tmp$21 = 0;
+ _tmp$22 = "";
+ _tmp$23 = err;
+ r = _tmp$21;
+ rest = _tmp$22;
+ err = _tmp$23;
+ return [r, rest, err];
+ }
+ y = unhex(c);
+ if (x < 0 || y < 0) {
+ break;
+ }
+ _tmp$24 = ($imul(x, 16)) + y >> 0;
+ _tmp$25 = t;
+ _tmp$26 = $ifaceNil;
+ r = _tmp$24;
+ rest = _tmp$25;
+ err = _tmp$26;
+ return [r, rest, err];
+ } else if (_1 === (97)) {
+ _tmp$27 = 7;
+ _tmp$28 = t;
+ _tmp$29 = err;
+ r = _tmp$27;
+ rest = _tmp$28;
+ err = _tmp$29;
+ return [r, rest, err];
+ } else if (_1 === (102)) {
+ _tmp$30 = 12;
+ _tmp$31 = t;
+ _tmp$32 = err;
+ r = _tmp$30;
+ rest = _tmp$31;
+ err = _tmp$32;
+ return [r, rest, err];
+ } else if (_1 === (110)) {
+ _tmp$33 = 10;
+ _tmp$34 = t;
+ _tmp$35 = err;
+ r = _tmp$33;
+ rest = _tmp$34;
+ err = _tmp$35;
+ return [r, rest, err];
+ } else if (_1 === (114)) {
+ _tmp$36 = 13;
+ _tmp$37 = t;
+ _tmp$38 = err;
+ r = _tmp$36;
+ rest = _tmp$37;
+ err = _tmp$38;
+ return [r, rest, err];
+ } else if (_1 === (116)) {
+ _tmp$39 = 9;
+ _tmp$40 = t;
+ _tmp$41 = err;
+ r = _tmp$39;
+ rest = _tmp$40;
+ err = _tmp$41;
+ return [r, rest, err];
+ } else if (_1 === (118)) {
+ _tmp$42 = 11;
+ _tmp$43 = t;
+ _tmp$44 = err;
+ r = _tmp$42;
+ rest = _tmp$43;
+ err = _tmp$44;
+ return [r, rest, err];
+ } else if (c < 128 && !isalnum(c)) {
+ _tmp$45 = c;
+ _tmp$46 = t;
+ _tmp$47 = $ifaceNil;
+ r = _tmp$45;
+ rest = _tmp$46;
+ err = _tmp$47;
+ return [r, rest, err];
+ }
+ }
+ _tmp$48 = 0;
+ _tmp$49 = "";
+ _tmp$50 = new Error.ptr("invalid escape sequence", $substring(s, 0, (s.length - t.length >> 0)));
+ r = _tmp$48;
+ rest = _tmp$49;
+ err = _tmp$50;
+ return [r, rest, err];
+ };
+ parser.prototype.parseEscape = function(s) { return this.$val.parseEscape(s); };
+ parser.ptr.prototype.parseClassChar = function(s, wholeClass) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tuple, _tuple$1, err, p, r, rest, s, wholeClass;
+ r = 0;
+ rest = "";
+ err = $ifaceNil;
+ p = this;
+ if (s === "") {
+ _tmp = 0;
+ _tmp$1 = "";
+ _tmp$2 = new Error.ptr("missing closing ]", wholeClass);
+ r = _tmp;
+ rest = _tmp$1;
+ err = _tmp$2;
+ return [r, rest, err];
+ }
+ if (s.charCodeAt(0) === 92) {
+ _tuple = p.parseEscape(s);
+ r = _tuple[0];
+ rest = _tuple[1];
+ err = _tuple[2];
+ return [r, rest, err];
+ }
+ _tuple$1 = nextRune(s);
+ r = _tuple$1[0];
+ rest = _tuple$1[1];
+ err = _tuple$1[2];
+ return [r, rest, err];
+ };
+ parser.prototype.parseClassChar = function(s, wholeClass) { return this.$val.parseClassChar(s, wholeClass); };
+ parser.ptr.prototype.parsePerlClassEscape = function(s, r) {
+ var $ptr, _entry, _r, _tmp, _tmp$1, g, out, p, r, rest, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; g = $f.g; out = $f.out; p = $f.p; r = $f.r; rest = $f.rest; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ out = sliceType.nil;
+ rest = "";
+ p = this;
+ if ((((p.flags & 64) >>> 0) === 0) || s.length < 2 || !((s.charCodeAt(0) === 92))) {
+ $s = -1; return [out, rest];
+ }
+ g = $clone((_entry = perlGroup[$String.keyFor($substring(s, 0, 2))], _entry !== undefined ? _entry.v : new charGroup.ptr(0, sliceType.nil)), charGroup);
+ if (g.sign === 0) {
+ $s = -1; return [out, rest];
+ }
+ _r = p.appendGroup(r, $clone(g, charGroup)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tmp = _r;
+ _tmp$1 = $substring(s, 2);
+ out = _tmp;
+ rest = _tmp$1;
+ $s = -1; return [out, rest];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: parser.ptr.prototype.parsePerlClassEscape }; } $f.$ptr = $ptr; $f._entry = _entry; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f.g = g; $f.out = out; $f.p = p; $f.r = r; $f.rest = rest; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parser.prototype.parsePerlClassEscape = function(s, r) { return this.$val.parsePerlClassEscape(s, r); };
+ parser.ptr.prototype.parseNamedClass = function(s, r) {
+ var $ptr, _entry, _r, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, err, g, i, name, out, p, r, rest, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tmp$7 = $f._tmp$7; err = $f.err; g = $f.g; i = $f.i; name = $f.name; out = $f.out; p = $f.p; r = $f.r; rest = $f.rest; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ out = sliceType.nil;
+ rest = "";
+ err = $ifaceNil;
+ p = this;
+ if (s.length < 2 || !((s.charCodeAt(0) === 91)) || !((s.charCodeAt(1) === 58))) {
+ $s = -1; return [out, rest, err];
+ }
+ i = strings.Index($substring(s, 2), ":]");
+ if (i < 0) {
+ $s = -1; return [out, rest, err];
+ }
+ i = i + (2) >> 0;
+ _tmp = $substring(s, 0, (i + 2 >> 0));
+ _tmp$1 = $substring(s, (i + 2 >> 0));
+ name = _tmp;
+ s = _tmp$1;
+ g = $clone((_entry = posixGroup[$String.keyFor(name)], _entry !== undefined ? _entry.v : new charGroup.ptr(0, sliceType.nil)), charGroup);
+ if (g.sign === 0) {
+ _tmp$2 = sliceType.nil;
+ _tmp$3 = "";
+ _tmp$4 = new Error.ptr("invalid character class range", name);
+ out = _tmp$2;
+ rest = _tmp$3;
+ err = _tmp$4;
+ $s = -1; return [out, rest, err];
+ }
+ _r = p.appendGroup(r, $clone(g, charGroup)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tmp$5 = _r;
+ _tmp$6 = s;
+ _tmp$7 = $ifaceNil;
+ out = _tmp$5;
+ rest = _tmp$6;
+ err = _tmp$7;
+ $s = -1; return [out, rest, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: parser.ptr.prototype.parseNamedClass }; } $f.$ptr = $ptr; $f._entry = _entry; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tmp$7 = _tmp$7; $f.err = err; $f.g = g; $f.i = i; $f.name = name; $f.out = out; $f.p = p; $f.r = r; $f.rest = rest; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parser.prototype.parseNamedClass = function(s, r) { return this.$val.parseNamedClass(s, r); };
+ parser.ptr.prototype.appendGroup = function(r, g) {
+ var $ptr, _r, g, p, r, tmp, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; g = $f.g; p = $f.p; r = $f.r; tmp = $f.tmp; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ /* */ if (((p.flags & 1) >>> 0) === 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (((p.flags & 1) >>> 0) === 0) { */ case 1:
+ if (g.sign < 0) {
+ r = appendNegatedClass(r, g.class$1);
+ } else {
+ r = appendClass(r, g.class$1);
+ }
+ $s = 3; continue;
+ /* } else { */ case 2:
+ tmp = $subslice(p.tmpClass, 0, 0);
+ tmp = appendFoldedClass(tmp, g.class$1);
+ p.tmpClass = tmp;
+ _r = cleanClass((p.$ptr_tmpClass || (p.$ptr_tmpClass = new ptrType$2(function() { return this.$target.tmpClass; }, function($v) { this.$target.tmpClass = $v; }, p)))); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ tmp = _r;
+ if (g.sign < 0) {
+ r = appendNegatedClass(r, tmp);
+ } else {
+ r = appendClass(r, tmp);
+ }
+ /* } */ case 3:
+ $s = -1; return r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: parser.ptr.prototype.appendGroup }; } $f.$ptr = $ptr; $f._r = _r; $f.g = g; $f.p = p; $f.r = r; $f.tmp = tmp; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parser.prototype.appendGroup = function(r, g) { return this.$val.appendGroup(r, g); };
+ unicodeTable = function(name) {
+ var $ptr, _entry, _entry$1, _entry$2, _entry$3, name, t, t$1;
+ if (name === "Any") {
+ return [anyTable, anyTable];
+ }
+ t = (_entry = unicode.Categories[$String.keyFor(name)], _entry !== undefined ? _entry.v : ptrType$3.nil);
+ if (!(t === ptrType$3.nil)) {
+ return [t, (_entry$1 = unicode.FoldCategory[$String.keyFor(name)], _entry$1 !== undefined ? _entry$1.v : ptrType$3.nil)];
+ }
+ t$1 = (_entry$2 = unicode.Scripts[$String.keyFor(name)], _entry$2 !== undefined ? _entry$2.v : ptrType$3.nil);
+ if (!(t$1 === ptrType$3.nil)) {
+ return [t$1, (_entry$3 = unicode.FoldScript[$String.keyFor(name)], _entry$3 !== undefined ? _entry$3.v : ptrType$3.nil)];
+ }
+ return [ptrType$3.nil, ptrType$3.nil];
+ };
+ parser.ptr.prototype.parseUnicodeClass = function(s, r) {
+ var $ptr, _r, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, c, end, err, fold, name, out, p, r, rest, s, seq, sign, t, tab, tmp, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$10 = $f._tmp$10; _tmp$11 = $f._tmp$11; _tmp$12 = $f._tmp$12; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tmp$7 = $f._tmp$7; _tmp$8 = $f._tmp$8; _tmp$9 = $f._tmp$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; c = $f.c; end = $f.end; err = $f.err; fold = $f.fold; name = $f.name; out = $f.out; p = $f.p; r = $f.r; rest = $f.rest; s = $f.s; seq = $f.seq; sign = $f.sign; t = $f.t; tab = $f.tab; tmp = $f.tmp; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ out = sliceType.nil;
+ rest = "";
+ err = $ifaceNil;
+ p = this;
+ if ((((p.flags & 128) >>> 0) === 0) || s.length < 2 || !((s.charCodeAt(0) === 92)) || !((s.charCodeAt(1) === 112)) && !((s.charCodeAt(1) === 80))) {
+ $s = -1; return [out, rest, err];
+ }
+ sign = 1;
+ if (s.charCodeAt(1) === 80) {
+ sign = -1;
+ }
+ t = $substring(s, 2);
+ _tuple = nextRune(t);
+ c = _tuple[0];
+ t = _tuple[1];
+ err = _tuple[2];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [out, rest, err];
+ }
+ _tmp = "";
+ _tmp$1 = "";
+ seq = _tmp;
+ name = _tmp$1;
+ if (!((c === 123))) {
+ seq = $substring(s, 0, (s.length - t.length >> 0));
+ name = $substring(seq, 2);
+ } else {
+ end = strings.IndexRune(s, 125);
+ if (end < 0) {
+ err = checkUTF8(s);
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [out, rest, err];
+ }
+ _tmp$2 = sliceType.nil;
+ _tmp$3 = "";
+ _tmp$4 = new Error.ptr("invalid character class range", s);
+ out = _tmp$2;
+ rest = _tmp$3;
+ err = _tmp$4;
+ $s = -1; return [out, rest, err];
+ }
+ _tmp$5 = $substring(s, 0, (end + 1 >> 0));
+ _tmp$6 = $substring(s, (end + 1 >> 0));
+ seq = _tmp$5;
+ t = _tmp$6;
+ name = $substring(s, 3, end);
+ err = checkUTF8(name);
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [out, rest, err];
+ }
+ }
+ if (!(name === "") && (name.charCodeAt(0) === 94)) {
+ sign = -sign;
+ name = $substring(name, 1);
+ }
+ _tuple$1 = unicodeTable(name);
+ tab = _tuple$1[0];
+ fold = _tuple$1[1];
+ if (tab === ptrType$3.nil) {
+ _tmp$7 = sliceType.nil;
+ _tmp$8 = "";
+ _tmp$9 = new Error.ptr("invalid character class range", seq);
+ out = _tmp$7;
+ rest = _tmp$8;
+ err = _tmp$9;
+ $s = -1; return [out, rest, err];
+ }
+ /* */ if ((((p.flags & 1) >>> 0) === 0) || fold === ptrType$3.nil) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ((((p.flags & 1) >>> 0) === 0) || fold === ptrType$3.nil) { */ case 1:
+ if (sign > 0) {
+ r = appendTable(r, tab);
+ } else {
+ r = appendNegatedTable(r, tab);
+ }
+ $s = 3; continue;
+ /* } else { */ case 2:
+ tmp = $subslice(p.tmpClass, 0, 0);
+ tmp = appendTable(tmp, tab);
+ tmp = appendTable(tmp, fold);
+ p.tmpClass = tmp;
+ _r = cleanClass((p.$ptr_tmpClass || (p.$ptr_tmpClass = new ptrType$2(function() { return this.$target.tmpClass; }, function($v) { this.$target.tmpClass = $v; }, p)))); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ tmp = _r;
+ if (sign > 0) {
+ r = appendClass(r, tmp);
+ } else {
+ r = appendNegatedClass(r, tmp);
+ }
+ /* } */ case 3:
+ _tmp$10 = r;
+ _tmp$11 = t;
+ _tmp$12 = $ifaceNil;
+ out = _tmp$10;
+ rest = _tmp$11;
+ err = _tmp$12;
+ $s = -1; return [out, rest, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: parser.ptr.prototype.parseUnicodeClass }; } $f.$ptr = $ptr; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$10 = _tmp$10; $f._tmp$11 = _tmp$11; $f._tmp$12 = _tmp$12; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tmp$7 = _tmp$7; $f._tmp$8 = _tmp$8; $f._tmp$9 = _tmp$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.c = c; $f.end = end; $f.err = err; $f.fold = fold; $f.name = name; $f.out = out; $f.p = p; $f.r = r; $f.rest = rest; $f.s = s; $f.seq = seq; $f.sign = sign; $f.t = t; $f.tab = tab; $f.tmp = tmp; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parser.prototype.parseUnicodeClass = function(s, r) { return this.$val.parseUnicodeClass(s, r); };
+ parser.ptr.prototype.parseClass = function(s) {
+ var $ptr, _r, _r$1, _r$2, _r$3, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$18, _tmp$19, _tmp$2, _tmp$20, _tmp$21, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, _tuple$5, class$1, err, err$1, err$2, first, hi, lo, nclass, nclass$1, nclass$2, nt, nt$1, nt$2, p, re, rest, rng, s, sign, size, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$10 = $f._tmp$10; _tmp$11 = $f._tmp$11; _tmp$12 = $f._tmp$12; _tmp$13 = $f._tmp$13; _tmp$14 = $f._tmp$14; _tmp$15 = $f._tmp$15; _tmp$16 = $f._tmp$16; _tmp$17 = $f._tmp$17; _tmp$18 = $f._tmp$18; _tmp$19 = $f._tmp$19; _tmp$2 = $f._tmp$2; _tmp$20 = $f._tmp$20; _tmp$21 = $f._tmp$21; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tmp$7 = $f._tmp$7; _tmp$8 = $f._tmp$8; _tmp$9 = $f._tmp$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; _tuple$5 = $f._tuple$5; class$1 = $f.class$1; err = $f.err; err$1 = $f.err$1; err$2 = $f.err$2; first = $f.first; hi = $f.hi; lo = $f.lo; nclass = $f.nclass; nclass$1 = $f.nclass$1; nclass$2 = $f.nclass$2; nt = $f.nt; nt$1 = $f.nt$1; nt$2 = $f.nt$2; p = $f.p; re = $f.re; rest = $f.rest; rng = $f.rng; s = $f.s; sign = $f.sign; size = $f.size; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ rest = "";
+ err = $ifaceNil;
+ p = this;
+ t = $substring(s, 1);
+ re = p.newRegexp(4);
+ re.Flags = p.flags;
+ re.Rune = $subslice(new sliceType(re.Rune0), 0, 0);
+ sign = 1;
+ if (!(t === "") && (t.charCodeAt(0) === 94)) {
+ sign = -1;
+ t = $substring(t, 1);
+ if (((p.flags & 4) >>> 0) === 0) {
+ re.Rune = $append(re.Rune, 10, 10);
+ }
+ }
+ class$1 = re.Rune;
+ first = true;
+ /* while (true) { */ case 1:
+ /* if (!(t === "" || !((t.charCodeAt(0) === 93)) || first)) { break; } */ if(!(t === "" || !((t.charCodeAt(0) === 93)) || first)) { $s = 2; continue; }
+ if (!(t === "") && (t.charCodeAt(0) === 45) && (((p.flags & 64) >>> 0) === 0) && !first && ((t.length === 1) || !((t.charCodeAt(1) === 93)))) {
+ _tuple = utf8.DecodeRuneInString($substring(t, 1));
+ size = _tuple[1];
+ _tmp = "";
+ _tmp$1 = new Error.ptr("invalid character class range", $substring(t, 0, (1 + size >> 0)));
+ rest = _tmp;
+ err = _tmp$1;
+ $s = -1; return [rest, err];
+ }
+ first = false;
+ /* */ if (t.length > 2 && (t.charCodeAt(0) === 91) && (t.charCodeAt(1) === 58)) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (t.length > 2 && (t.charCodeAt(0) === 91) && (t.charCodeAt(1) === 58)) { */ case 3:
+ _r = p.parseNamedClass(t, class$1); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple$1 = _r;
+ nclass = _tuple$1[0];
+ nt = _tuple$1[1];
+ err$1 = _tuple$1[2];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ _tmp$2 = "";
+ _tmp$3 = err$1;
+ rest = _tmp$2;
+ err = _tmp$3;
+ $s = -1; return [rest, err];
+ }
+ if (!(nclass === sliceType.nil)) {
+ _tmp$4 = nclass;
+ _tmp$5 = nt;
+ class$1 = _tmp$4;
+ t = _tmp$5;
+ /* continue; */ $s = 1; continue;
+ }
+ /* } */ case 4:
+ _r$1 = p.parseUnicodeClass(t, class$1); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$2 = _r$1;
+ nclass$1 = _tuple$2[0];
+ nt$1 = _tuple$2[1];
+ err$2 = _tuple$2[2];
+ if (!($interfaceIsEqual(err$2, $ifaceNil))) {
+ _tmp$6 = "";
+ _tmp$7 = err$2;
+ rest = _tmp$6;
+ err = _tmp$7;
+ $s = -1; return [rest, err];
+ }
+ /* */ if (!(nclass$1 === sliceType.nil)) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (!(nclass$1 === sliceType.nil)) { */ case 7:
+ _tmp$8 = nclass$1;
+ _tmp$9 = nt$1;
+ class$1 = _tmp$8;
+ t = _tmp$9;
+ /* continue; */ $s = 1; continue;
+ /* } */ case 8:
+ _r$2 = p.parsePerlClassEscape(t, class$1); /* */ $s = 9; case 9: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$3 = _r$2;
+ nclass$2 = _tuple$3[0];
+ nt$2 = _tuple$3[1];
+ if (!(nclass$2 === sliceType.nil)) {
+ _tmp$10 = nclass$2;
+ _tmp$11 = nt$2;
+ class$1 = _tmp$10;
+ t = _tmp$11;
+ /* continue; */ $s = 1; continue;
+ }
+ rng = t;
+ _tmp$12 = 0;
+ _tmp$13 = 0;
+ lo = _tmp$12;
+ hi = _tmp$13;
+ _tuple$4 = p.parseClassChar(t, s);
+ lo = _tuple$4[0];
+ t = _tuple$4[1];
+ err$2 = _tuple$4[2];
+ if (!($interfaceIsEqual(err$2, $ifaceNil))) {
+ _tmp$14 = "";
+ _tmp$15 = err$2;
+ rest = _tmp$14;
+ err = _tmp$15;
+ $s = -1; return [rest, err];
+ }
+ hi = lo;
+ if (t.length >= 2 && (t.charCodeAt(0) === 45) && !((t.charCodeAt(1) === 93))) {
+ t = $substring(t, 1);
+ _tuple$5 = p.parseClassChar(t, s);
+ hi = _tuple$5[0];
+ t = _tuple$5[1];
+ err$2 = _tuple$5[2];
+ if (!($interfaceIsEqual(err$2, $ifaceNil))) {
+ _tmp$16 = "";
+ _tmp$17 = err$2;
+ rest = _tmp$16;
+ err = _tmp$17;
+ $s = -1; return [rest, err];
+ }
+ if (hi < lo) {
+ rng = $substring(rng, 0, (rng.length - t.length >> 0));
+ _tmp$18 = "";
+ _tmp$19 = new Error.ptr("invalid character class range", rng);
+ rest = _tmp$18;
+ err = _tmp$19;
+ $s = -1; return [rest, err];
+ }
+ }
+ if (((p.flags & 1) >>> 0) === 0) {
+ class$1 = appendRange(class$1, lo, hi);
+ } else {
+ class$1 = appendFoldedRange(class$1, lo, hi);
+ }
+ /* } */ $s = 1; continue; case 2:
+ t = $substring(t, 1);
+ re.Rune = class$1;
+ _r$3 = cleanClass((re.$ptr_Rune || (re.$ptr_Rune = new ptrType$2(function() { return this.$target.Rune; }, function($v) { this.$target.Rune = $v; }, re)))); /* */ $s = 10; case 10: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ class$1 = _r$3;
+ if (sign < 0) {
+ class$1 = negateClass(class$1);
+ }
+ re.Rune = class$1;
+ p.push(re);
+ _tmp$20 = t;
+ _tmp$21 = $ifaceNil;
+ rest = _tmp$20;
+ err = _tmp$21;
+ $s = -1; return [rest, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: parser.ptr.prototype.parseClass }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$10 = _tmp$10; $f._tmp$11 = _tmp$11; $f._tmp$12 = _tmp$12; $f._tmp$13 = _tmp$13; $f._tmp$14 = _tmp$14; $f._tmp$15 = _tmp$15; $f._tmp$16 = _tmp$16; $f._tmp$17 = _tmp$17; $f._tmp$18 = _tmp$18; $f._tmp$19 = _tmp$19; $f._tmp$2 = _tmp$2; $f._tmp$20 = _tmp$20; $f._tmp$21 = _tmp$21; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tmp$7 = _tmp$7; $f._tmp$8 = _tmp$8; $f._tmp$9 = _tmp$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f._tuple$5 = _tuple$5; $f.class$1 = class$1; $f.err = err; $f.err$1 = err$1; $f.err$2 = err$2; $f.first = first; $f.hi = hi; $f.lo = lo; $f.nclass = nclass; $f.nclass$1 = nclass$1; $f.nclass$2 = nclass$2; $f.nt = nt; $f.nt$1 = nt$1; $f.nt$2 = nt$2; $f.p = p; $f.re = re; $f.rest = rest; $f.rng = rng; $f.s = s; $f.sign = sign; $f.size = size; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parser.prototype.parseClass = function(s) { return this.$val.parseClass(s); };
+ cleanClass = function(rp) {
+ var $ptr, _tmp, _tmp$1, hi, i, lo, r, rp, w, x, x$1, x$2, x$3, x$4, x$5, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; hi = $f.hi; i = $f.i; lo = $f.lo; r = $f.r; rp = $f.rp; w = $f.w; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = sort.Sort((x = new ranges.ptr(rp), new x.constructor.elem(x))); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ r = rp.$get();
+ if (r.$length < 2) {
+ $s = -1; return r;
+ }
+ w = 2;
+ i = 2;
+ while (true) {
+ if (!(i < r.$length)) { break; }
+ _tmp = ((i < 0 || i >= r.$length) ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + i]);
+ _tmp$1 = (x$1 = i + 1 >> 0, ((x$1 < 0 || x$1 >= r.$length) ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + x$1]));
+ lo = _tmp;
+ hi = _tmp$1;
+ if (lo <= ((x$2 = w - 1 >> 0, ((x$2 < 0 || x$2 >= r.$length) ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + x$2])) + 1 >> 0)) {
+ if (hi > (x$3 = w - 1 >> 0, ((x$3 < 0 || x$3 >= r.$length) ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + x$3]))) {
+ (x$4 = w - 1 >> 0, ((x$4 < 0 || x$4 >= r.$length) ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + x$4] = hi));
+ }
+ i = i + (2) >> 0;
+ continue;
+ }
+ ((w < 0 || w >= r.$length) ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + w] = lo);
+ (x$5 = w + 1 >> 0, ((x$5 < 0 || x$5 >= r.$length) ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + x$5] = hi));
+ w = w + (2) >> 0;
+ i = i + (2) >> 0;
+ }
+ $s = -1; return $subslice(r, 0, w);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: cleanClass }; } $f.$ptr = $ptr; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f.hi = hi; $f.i = i; $f.lo = lo; $f.r = r; $f.rp = rp; $f.w = w; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ appendLiteral = function(r, x, flags) {
+ var $ptr, flags, r, x;
+ if (!((((flags & 1) >>> 0) === 0))) {
+ return appendFoldedRange(r, x, x);
+ }
+ return appendRange(r, x, x);
+ };
+ appendRange = function(r, lo, hi) {
+ var $ptr, _tmp, _tmp$1, hi, i, lo, n, r, rhi, rlo, x, x$1, x$2, x$3;
+ n = r.$length;
+ i = 2;
+ while (true) {
+ if (!(i <= 4)) { break; }
+ if (n >= i) {
+ _tmp = (x = n - i >> 0, ((x < 0 || x >= r.$length) ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + x]));
+ _tmp$1 = (x$1 = (n - i >> 0) + 1 >> 0, ((x$1 < 0 || x$1 >= r.$length) ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + x$1]));
+ rlo = _tmp;
+ rhi = _tmp$1;
+ if (lo <= (rhi + 1 >> 0) && rlo <= (hi + 1 >> 0)) {
+ if (lo < rlo) {
+ (x$2 = n - i >> 0, ((x$2 < 0 || x$2 >= r.$length) ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + x$2] = lo));
+ }
+ if (hi > rhi) {
+ (x$3 = (n - i >> 0) + 1 >> 0, ((x$3 < 0 || x$3 >= r.$length) ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + x$3] = hi));
+ }
+ return r;
+ }
+ }
+ i = i + (2) >> 0;
+ }
+ return $append(r, lo, hi);
+ };
+ appendFoldedRange = function(r, lo, hi) {
+ var $ptr, c, f, hi, lo, r;
+ if (lo <= 65 && hi >= 125251) {
+ return appendRange(r, lo, hi);
+ }
+ if (hi < 65 || lo > 125251) {
+ return appendRange(r, lo, hi);
+ }
+ if (lo < 65) {
+ r = appendRange(r, lo, 64);
+ lo = 65;
+ }
+ if (hi > 125251) {
+ r = appendRange(r, 125252, hi);
+ hi = 125251;
+ }
+ c = lo;
+ while (true) {
+ if (!(c <= hi)) { break; }
+ r = appendRange(r, c, c);
+ f = unicode.SimpleFold(c);
+ while (true) {
+ if (!(!((f === c)))) { break; }
+ r = appendRange(r, f, f);
+ f = unicode.SimpleFold(f);
+ }
+ c = c + (1) >> 0;
+ }
+ return r;
+ };
+ appendClass = function(r, x) {
+ var $ptr, i, r, x, x$1;
+ i = 0;
+ while (true) {
+ if (!(i < x.$length)) { break; }
+ r = appendRange(r, ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]), (x$1 = i + 1 >> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1])));
+ i = i + (2) >> 0;
+ }
+ return r;
+ };
+ appendFoldedClass = function(r, x) {
+ var $ptr, i, r, x, x$1;
+ i = 0;
+ while (true) {
+ if (!(i < x.$length)) { break; }
+ r = appendFoldedRange(r, ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]), (x$1 = i + 1 >> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1])));
+ i = i + (2) >> 0;
+ }
+ return r;
+ };
+ appendNegatedClass = function(r, x) {
+ var $ptr, _tmp, _tmp$1, hi, i, lo, nextLo, r, x, x$1;
+ nextLo = 0;
+ i = 0;
+ while (true) {
+ if (!(i < x.$length)) { break; }
+ _tmp = ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i]);
+ _tmp$1 = (x$1 = i + 1 >> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ lo = _tmp;
+ hi = _tmp$1;
+ if (nextLo <= (lo - 1 >> 0)) {
+ r = appendRange(r, nextLo, lo - 1 >> 0);
+ }
+ nextLo = hi + 1 >> 0;
+ i = i + (2) >> 0;
+ }
+ if (nextLo <= 1114111) {
+ r = appendRange(r, nextLo, 1114111);
+ }
+ return r;
+ };
+ appendTable = function(r, x) {
+ var $ptr, _i, _i$1, _ref, _ref$1, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, c, c$1, hi, hi$1, lo, lo$1, r, stride, stride$1, x, xr, xr$1;
+ _ref = x.R16;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ xr = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), unicode.Range16);
+ _tmp = ((xr.Lo >> 0));
+ _tmp$1 = ((xr.Hi >> 0));
+ _tmp$2 = ((xr.Stride >> 0));
+ lo = _tmp;
+ hi = _tmp$1;
+ stride = _tmp$2;
+ if (stride === 1) {
+ r = appendRange(r, lo, hi);
+ _i++;
+ continue;
+ }
+ c = lo;
+ while (true) {
+ if (!(c <= hi)) { break; }
+ r = appendRange(r, c, c);
+ c = c + (stride) >> 0;
+ }
+ _i++;
+ }
+ _ref$1 = x.R32;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ xr$1 = $clone(((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]), unicode.Range32);
+ _tmp$3 = ((xr$1.Lo >> 0));
+ _tmp$4 = ((xr$1.Hi >> 0));
+ _tmp$5 = ((xr$1.Stride >> 0));
+ lo$1 = _tmp$3;
+ hi$1 = _tmp$4;
+ stride$1 = _tmp$5;
+ if (stride$1 === 1) {
+ r = appendRange(r, lo$1, hi$1);
+ _i$1++;
+ continue;
+ }
+ c$1 = lo$1;
+ while (true) {
+ if (!(c$1 <= hi$1)) { break; }
+ r = appendRange(r, c$1, c$1);
+ c$1 = c$1 + (stride$1) >> 0;
+ }
+ _i$1++;
+ }
+ return r;
+ };
+ appendNegatedTable = function(r, x) {
+ var $ptr, _i, _i$1, _ref, _ref$1, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, c, c$1, hi, hi$1, lo, lo$1, nextLo, r, stride, stride$1, x, xr, xr$1;
+ nextLo = 0;
+ _ref = x.R16;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ xr = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), unicode.Range16);
+ _tmp = ((xr.Lo >> 0));
+ _tmp$1 = ((xr.Hi >> 0));
+ _tmp$2 = ((xr.Stride >> 0));
+ lo = _tmp;
+ hi = _tmp$1;
+ stride = _tmp$2;
+ if (stride === 1) {
+ if (nextLo <= (lo - 1 >> 0)) {
+ r = appendRange(r, nextLo, lo - 1 >> 0);
+ }
+ nextLo = hi + 1 >> 0;
+ _i++;
+ continue;
+ }
+ c = lo;
+ while (true) {
+ if (!(c <= hi)) { break; }
+ if (nextLo <= (c - 1 >> 0)) {
+ r = appendRange(r, nextLo, c - 1 >> 0);
+ }
+ nextLo = c + 1 >> 0;
+ c = c + (stride) >> 0;
+ }
+ _i++;
+ }
+ _ref$1 = x.R32;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ xr$1 = $clone(((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]), unicode.Range32);
+ _tmp$3 = ((xr$1.Lo >> 0));
+ _tmp$4 = ((xr$1.Hi >> 0));
+ _tmp$5 = ((xr$1.Stride >> 0));
+ lo$1 = _tmp$3;
+ hi$1 = _tmp$4;
+ stride$1 = _tmp$5;
+ if (stride$1 === 1) {
+ if (nextLo <= (lo$1 - 1 >> 0)) {
+ r = appendRange(r, nextLo, lo$1 - 1 >> 0);
+ }
+ nextLo = hi$1 + 1 >> 0;
+ _i$1++;
+ continue;
+ }
+ c$1 = lo$1;
+ while (true) {
+ if (!(c$1 <= hi$1)) { break; }
+ if (nextLo <= (c$1 - 1 >> 0)) {
+ r = appendRange(r, nextLo, c$1 - 1 >> 0);
+ }
+ nextLo = c$1 + 1 >> 0;
+ c$1 = c$1 + (stride$1) >> 0;
+ }
+ _i$1++;
+ }
+ if (nextLo <= 1114111) {
+ r = appendRange(r, nextLo, 1114111);
+ }
+ return r;
+ };
+ negateClass = function(r) {
+ var $ptr, _tmp, _tmp$1, hi, i, lo, nextLo, r, w, x, x$1;
+ nextLo = 0;
+ w = 0;
+ i = 0;
+ while (true) {
+ if (!(i < r.$length)) { break; }
+ _tmp = ((i < 0 || i >= r.$length) ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + i]);
+ _tmp$1 = (x = i + 1 >> 0, ((x < 0 || x >= r.$length) ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + x]));
+ lo = _tmp;
+ hi = _tmp$1;
+ if (nextLo <= (lo - 1 >> 0)) {
+ ((w < 0 || w >= r.$length) ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + w] = nextLo);
+ (x$1 = w + 1 >> 0, ((x$1 < 0 || x$1 >= r.$length) ? ($throwRuntimeError("index out of range"), undefined) : r.$array[r.$offset + x$1] = (lo - 1 >> 0)));
+ w = w + (2) >> 0;
+ }
+ nextLo = hi + 1 >> 0;
+ i = i + (2) >> 0;
+ }
+ r = $subslice(r, 0, w);
+ if (nextLo <= 1114111) {
+ r = $append(r, nextLo, 1114111);
+ }
+ return r;
+ };
+ ranges.ptr.prototype.Less = function(i, j) {
+ var $ptr, i, j, p, ra, x, x$1;
+ ra = this;
+ p = ra.p.$get();
+ i = $imul(i, (2));
+ j = $imul(j, (2));
+ return ((i < 0 || i >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + i]) < ((j < 0 || j >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + j]) || (((i < 0 || i >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + i]) === ((j < 0 || j >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + j])) && (x = i + 1 >> 0, ((x < 0 || x >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x])) > (x$1 = j + 1 >> 0, ((x$1 < 0 || x$1 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$1]));
+ };
+ ranges.prototype.Less = function(i, j) { return this.$val.Less(i, j); };
+ ranges.ptr.prototype.Len = function() {
+ var $ptr, _q, ra;
+ ra = this;
+ return (_q = ra.p.$get().$length / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ };
+ ranges.prototype.Len = function() { return this.$val.Len(); };
+ ranges.ptr.prototype.Swap = function(i, j) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, i, j, p, ra, x, x$1, x$2, x$3;
+ ra = this;
+ p = ra.p.$get();
+ i = $imul(i, (2));
+ j = $imul(j, (2));
+ _tmp = ((j < 0 || j >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + j]);
+ _tmp$1 = (x = j + 1 >> 0, ((x < 0 || x >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x]));
+ _tmp$2 = ((i < 0 || i >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + i]);
+ _tmp$3 = (x$1 = i + 1 >> 0, ((x$1 < 0 || x$1 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$1]));
+ ((i < 0 || i >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + i] = _tmp);
+ (x$2 = i + 1 >> 0, ((x$2 < 0 || x$2 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$2] = _tmp$1));
+ ((j < 0 || j >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + j] = _tmp$2);
+ (x$3 = j + 1 >> 0, ((x$3 < 0 || x$3 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$3] = _tmp$3));
+ };
+ ranges.prototype.Swap = function(i, j) { return this.$val.Swap(i, j); };
+ checkUTF8 = function(s) {
+ var $ptr, _tuple, rune, s, size;
+ while (true) {
+ if (!(!(s === ""))) { break; }
+ _tuple = utf8.DecodeRuneInString(s);
+ rune = _tuple[0];
+ size = _tuple[1];
+ if ((rune === 65533) && (size === 1)) {
+ return new Error.ptr("invalid UTF-8", s);
+ }
+ s = $substring(s, size);
+ }
+ return $ifaceNil;
+ };
+ nextRune = function(s) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tuple, c, err, s, size, t;
+ c = 0;
+ t = "";
+ err = $ifaceNil;
+ _tuple = utf8.DecodeRuneInString(s);
+ c = _tuple[0];
+ size = _tuple[1];
+ if ((c === 65533) && (size === 1)) {
+ _tmp = 0;
+ _tmp$1 = "";
+ _tmp$2 = new Error.ptr("invalid UTF-8", s);
+ c = _tmp;
+ t = _tmp$1;
+ err = _tmp$2;
+ return [c, t, err];
+ }
+ _tmp$3 = c;
+ _tmp$4 = $substring(s, size);
+ _tmp$5 = $ifaceNil;
+ c = _tmp$3;
+ t = _tmp$4;
+ err = _tmp$5;
+ return [c, t, err];
+ };
+ isalnum = function(c) {
+ var $ptr, c;
+ return 48 <= c && c <= 57 || 65 <= c && c <= 90 || 97 <= c && c <= 122;
+ };
+ unhex = function(c) {
+ var $ptr, c;
+ if (48 <= c && c <= 57) {
+ return c - 48 >> 0;
+ }
+ if (97 <= c && c <= 102) {
+ return (c - 97 >> 0) + 10 >> 0;
+ }
+ if (65 <= c && c <= 70) {
+ return (c - 65 >> 0) + 10 >> 0;
+ }
+ return -1;
+ };
+ InstOp.prototype.String = function() {
+ var $ptr, i;
+ i = this.$val;
+ if (((i >>> 0)) >= ((instOpNames.$length >>> 0))) {
+ return "";
+ }
+ return ((i < 0 || i >= instOpNames.$length) ? ($throwRuntimeError("index out of range"), undefined) : instOpNames.$array[instOpNames.$offset + i]);
+ };
+ $ptrType(InstOp).prototype.String = function() { return new InstOp(this.$get()).String(); };
+ EmptyOpContext = function(r1, r2) {
+ var $ptr, boundary, op, r1, r2;
+ op = 32;
+ boundary = 0;
+ if (IsWordChar(r1)) {
+ boundary = 1;
+ } else if ((r1 === 10)) {
+ op = (op | (1)) >>> 0;
+ } else if (r1 < 0) {
+ op = (op | (5)) >>> 0;
+ }
+ if (IsWordChar(r2)) {
+ boundary = (boundary ^ (1)) << 24 >>> 24;
+ } else if ((r2 === 10)) {
+ op = (op | (2)) >>> 0;
+ } else if (r2 < 0) {
+ op = (op | (10)) >>> 0;
+ }
+ if (!((boundary === 0))) {
+ op = (op ^ (48)) << 24 >>> 24;
+ }
+ return op;
+ };
+ $pkg.EmptyOpContext = EmptyOpContext;
+ IsWordChar = function(r) {
+ var $ptr, r;
+ return 65 <= r && r <= 90 || 97 <= r && r <= 122 || 48 <= r && r <= 57 || (r === 95);
+ };
+ $pkg.IsWordChar = IsWordChar;
+ Prog.ptr.prototype.String = function() {
+ var $ptr, b, p;
+ p = this;
+ b = new bytes.Buffer.ptr(sliceType$6.nil, 0, arrayType$2.zero(), 0);
+ dumpProg(b, p);
+ return b.String();
+ };
+ Prog.prototype.String = function() { return this.$val.String(); };
+ Prog.ptr.prototype.skipNop = function(pc) {
+ var $ptr, i, p, pc, x, x$1;
+ p = this;
+ i = (x = p.Inst, ((pc < 0 || pc >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + pc]));
+ while (true) {
+ if (!((i.Op === 6) || (i.Op === 2))) { break; }
+ pc = i.Out;
+ i = (x$1 = p.Inst, ((pc < 0 || pc >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + pc]));
+ }
+ return [i, pc];
+ };
+ Prog.prototype.skipNop = function(pc) { return this.$val.skipNop(pc); };
+ Inst.ptr.prototype.op = function() {
+ var $ptr, _1, i, op;
+ i = this;
+ op = i.Op;
+ _1 = op;
+ if ((_1 === (8)) || (_1 === (9)) || (_1 === (10))) {
+ op = 7;
+ }
+ return op;
+ };
+ Inst.prototype.op = function() { return this.$val.op(); };
+ Prog.ptr.prototype.Prefix = function() {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tuple, _tuple$1, buf, complete, i, p, prefix, x;
+ prefix = "";
+ complete = false;
+ p = this;
+ _tuple = p.skipNop(((p.Start >>> 0)));
+ i = _tuple[0];
+ if (!((i.op() === 7)) || !((i.Rune.$length === 1))) {
+ _tmp = "";
+ _tmp$1 = i.Op === 4;
+ prefix = _tmp;
+ complete = _tmp$1;
+ return [prefix, complete];
+ }
+ buf = new bytes.Buffer.ptr(sliceType$6.nil, 0, arrayType$2.zero(), 0);
+ while (true) {
+ if (!((i.op() === 7) && (i.Rune.$length === 1) && (((((i.Arg << 16 >>> 16)) & 1) >>> 0) === 0))) { break; }
+ buf.WriteRune((x = i.Rune, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0])));
+ _tuple$1 = p.skipNop(i.Out);
+ i = _tuple$1[0];
+ }
+ _tmp$2 = buf.String();
+ _tmp$3 = i.Op === 4;
+ prefix = _tmp$2;
+ complete = _tmp$3;
+ return [prefix, complete];
+ };
+ Prog.prototype.Prefix = function() { return this.$val.Prefix(); };
+ Prog.ptr.prototype.StartCond = function() {
+ var $ptr, _1, flag, i, p, pc, x, x$1;
+ p = this;
+ flag = 0;
+ pc = ((p.Start >>> 0));
+ i = (x = p.Inst, ((pc < 0 || pc >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + pc]));
+ Loop:
+ while (true) {
+ _1 = i.Op;
+ if (_1 === (3)) {
+ flag = (flag | (((i.Arg << 24 >>> 24)))) >>> 0;
+ } else if (_1 === (5)) {
+ return 255;
+ } else if ((_1 === (2)) || (_1 === (6))) {
+ } else {
+ break Loop;
+ }
+ pc = i.Out;
+ i = (x$1 = p.Inst, ((pc < 0 || pc >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + pc]));
+ }
+ return flag;
+ };
+ Prog.prototype.StartCond = function() { return this.$val.StartCond(); };
+ Inst.ptr.prototype.MatchRune = function(r) {
+ var $ptr, i, r;
+ i = this;
+ return !((i.MatchRunePos(r) === -1));
+ };
+ Inst.prototype.MatchRune = function(r) { return this.$val.MatchRune(r); };
+ Inst.ptr.prototype.MatchRunePos = function(r) {
+ var $ptr, _q, _q$1, _q$2, c, hi, i, j, lo, m, r, r0, r1, rune, x, x$1, x$2;
+ i = this;
+ rune = i.Rune;
+ if (rune.$length === 1) {
+ r0 = (0 >= rune.$length ? ($throwRuntimeError("index out of range"), undefined) : rune.$array[rune.$offset + 0]);
+ if (r === r0) {
+ return 0;
+ }
+ if (!((((((i.Arg << 16 >>> 16)) & 1) >>> 0) === 0))) {
+ r1 = unicode.SimpleFold(r0);
+ while (true) {
+ if (!(!((r1 === r0)))) { break; }
+ if (r === r1) {
+ return 0;
+ }
+ r1 = unicode.SimpleFold(r1);
+ }
+ }
+ return -1;
+ }
+ j = 0;
+ while (true) {
+ if (!(j < rune.$length && j <= 8)) { break; }
+ if (r < ((j < 0 || j >= rune.$length) ? ($throwRuntimeError("index out of range"), undefined) : rune.$array[rune.$offset + j])) {
+ return -1;
+ }
+ if (r <= (x = j + 1 >> 0, ((x < 0 || x >= rune.$length) ? ($throwRuntimeError("index out of range"), undefined) : rune.$array[rune.$offset + x]))) {
+ return (_q = j / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ }
+ j = j + (2) >> 0;
+ }
+ lo = 0;
+ hi = (_q$1 = rune.$length / 2, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero"));
+ while (true) {
+ if (!(lo < hi)) { break; }
+ m = lo + (_q$2 = ((hi - lo >> 0)) / 2, (_q$2 === _q$2 && _q$2 !== 1/0 && _q$2 !== -1/0) ? _q$2 >> 0 : $throwRuntimeError("integer divide by zero")) >> 0;
+ c = (x$1 = $imul(2, m), ((x$1 < 0 || x$1 >= rune.$length) ? ($throwRuntimeError("index out of range"), undefined) : rune.$array[rune.$offset + x$1]));
+ if (c <= r) {
+ if (r <= (x$2 = ($imul(2, m)) + 1 >> 0, ((x$2 < 0 || x$2 >= rune.$length) ? ($throwRuntimeError("index out of range"), undefined) : rune.$array[rune.$offset + x$2]))) {
+ return m;
+ }
+ lo = m + 1 >> 0;
+ } else {
+ hi = m;
+ }
+ }
+ return -1;
+ };
+ Inst.prototype.MatchRunePos = function(r) { return this.$val.MatchRunePos(r); };
+ wordRune = function(r) {
+ var $ptr, r;
+ return (r === 95) || (65 <= r && r <= 90) || (97 <= r && r <= 122) || (48 <= r && r <= 57);
+ };
+ Inst.ptr.prototype.MatchEmptyWidth = function(before, after) {
+ var $ptr, _1, after, before, i;
+ i = this;
+ _1 = ((i.Arg << 24 >>> 24));
+ if (_1 === (1)) {
+ return (before === 10) || (before === -1);
+ } else if (_1 === (2)) {
+ return (after === 10) || (after === -1);
+ } else if (_1 === (4)) {
+ return before === -1;
+ } else if (_1 === (8)) {
+ return after === -1;
+ } else if (_1 === (16)) {
+ return !(wordRune(before) === wordRune(after));
+ } else if (_1 === (32)) {
+ return wordRune(before) === wordRune(after);
+ }
+ $panic(new $String("unknown empty width arg"));
+ };
+ Inst.prototype.MatchEmptyWidth = function(before, after) { return this.$val.MatchEmptyWidth(before, after); };
+ Inst.ptr.prototype.String = function() {
+ var $ptr, b, i;
+ i = this;
+ b = new bytes.Buffer.ptr(sliceType$6.nil, 0, arrayType$2.zero(), 0);
+ dumpInst(b, i);
+ return b.String();
+ };
+ Inst.prototype.String = function() { return this.$val.String(); };
+ bw = function(b, args) {
+ var $ptr, _i, _ref, args, b, s;
+ _ref = args;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ s = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ b.WriteString(s);
+ _i++;
+ }
+ };
+ dumpProg = function(b, p) {
+ var $ptr, _i, _ref, b, i, j, p, pc, x;
+ _ref = p.Inst;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ j = _i;
+ i = (x = p.Inst, ((j < 0 || j >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + j]));
+ pc = strconv.Itoa(j);
+ if (pc.length < 3) {
+ b.WriteString($substring(" ", pc.length));
+ }
+ if (j === p.Start) {
+ pc = pc + ("*");
+ }
+ bw(b, new sliceType$3([pc, "\t"]));
+ dumpInst(b, i);
+ bw(b, new sliceType$3(["\n"]));
+ _i++;
+ }
+ };
+ u32 = function(i) {
+ var $ptr, i;
+ return strconv.FormatUint((new $Uint64(0, i)), 10);
+ };
+ dumpInst = function(b, i) {
+ var $ptr, _1, b, i;
+ _1 = i.Op;
+ if (_1 === (0)) {
+ bw(b, new sliceType$3(["alt -> ", u32(i.Out), ", ", u32(i.Arg)]));
+ } else if (_1 === (1)) {
+ bw(b, new sliceType$3(["altmatch -> ", u32(i.Out), ", ", u32(i.Arg)]));
+ } else if (_1 === (2)) {
+ bw(b, new sliceType$3(["cap ", u32(i.Arg), " -> ", u32(i.Out)]));
+ } else if (_1 === (3)) {
+ bw(b, new sliceType$3(["empty ", u32(i.Arg), " -> ", u32(i.Out)]));
+ } else if (_1 === (4)) {
+ bw(b, new sliceType$3(["match"]));
+ } else if (_1 === (5)) {
+ bw(b, new sliceType$3(["fail"]));
+ } else if (_1 === (6)) {
+ bw(b, new sliceType$3(["nop -> ", u32(i.Out)]));
+ } else if (_1 === (7)) {
+ if (i.Rune === sliceType.nil) {
+ bw(b, new sliceType$3(["rune <nil>"]));
+ }
+ bw(b, new sliceType$3(["rune ", strconv.QuoteToASCII(($runesToString(i.Rune)))]));
+ if (!((((((i.Arg << 16 >>> 16)) & 1) >>> 0) === 0))) {
+ bw(b, new sliceType$3(["/i"]));
+ }
+ bw(b, new sliceType$3([" -> ", u32(i.Out)]));
+ } else if (_1 === (8)) {
+ bw(b, new sliceType$3(["rune1 ", strconv.QuoteToASCII(($runesToString(i.Rune))), " -> ", u32(i.Out)]));
+ } else if (_1 === (9)) {
+ bw(b, new sliceType$3(["any -> ", u32(i.Out)]));
+ } else if (_1 === (10)) {
+ bw(b, new sliceType$3(["anynotnl -> ", u32(i.Out)]));
+ }
+ };
+ Regexp.ptr.prototype.Equal = function(y) {
+ var $ptr, _1, _i, _i$1, _ref, _ref$1, i, i$1, r, sub, x, x$1, x$2, x$3, x$4, x$5, x$6, x$7, x$8, y;
+ x = this;
+ if (x === ptrType$1.nil || y === ptrType$1.nil) {
+ return x === y;
+ }
+ if (!((x.Op === y.Op))) {
+ return false;
+ }
+ _1 = x.Op;
+ if (_1 === (10)) {
+ if (!((((x.Flags & 256) >>> 0) === ((y.Flags & 256) >>> 0)))) {
+ return false;
+ }
+ } else if ((_1 === (3)) || (_1 === (4))) {
+ if (!((x.Rune.$length === y.Rune.$length))) {
+ return false;
+ }
+ _ref = x.Rune;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ r = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (!((r === (x$1 = y.Rune, ((i < 0 || i >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + i]))))) {
+ return false;
+ }
+ _i++;
+ }
+ } else if ((_1 === (19)) || (_1 === (18))) {
+ if (!((x.Sub.$length === y.Sub.$length))) {
+ return false;
+ }
+ _ref$1 = x.Sub;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ i$1 = _i$1;
+ sub = ((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]);
+ if (!sub.Equal((x$2 = y.Sub, ((i$1 < 0 || i$1 >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + i$1])))) {
+ return false;
+ }
+ _i$1++;
+ }
+ } else if ((_1 === (14)) || (_1 === (15)) || (_1 === (16))) {
+ if (!((((x.Flags & 32) >>> 0) === ((y.Flags & 32) >>> 0))) || !(x$3 = x.Sub, (0 >= x$3.$length ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + 0])).Equal((x$4 = y.Sub, (0 >= x$4.$length ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + 0])))) {
+ return false;
+ }
+ } else if (_1 === (17)) {
+ if (!((((x.Flags & 32) >>> 0) === ((y.Flags & 32) >>> 0))) || !((x.Min === y.Min)) || !((x.Max === y.Max)) || !(x$5 = x.Sub, (0 >= x$5.$length ? ($throwRuntimeError("index out of range"), undefined) : x$5.$array[x$5.$offset + 0])).Equal((x$6 = y.Sub, (0 >= x$6.$length ? ($throwRuntimeError("index out of range"), undefined) : x$6.$array[x$6.$offset + 0])))) {
+ return false;
+ }
+ } else if (_1 === (13)) {
+ if (!((x.Cap === y.Cap)) || !(x.Name === y.Name) || !(x$7 = x.Sub, (0 >= x$7.$length ? ($throwRuntimeError("index out of range"), undefined) : x$7.$array[x$7.$offset + 0])).Equal((x$8 = y.Sub, (0 >= x$8.$length ? ($throwRuntimeError("index out of range"), undefined) : x$8.$array[x$8.$offset + 0])))) {
+ return false;
+ }
+ }
+ return true;
+ };
+ Regexp.prototype.Equal = function(y) { return this.$val.Equal(y); };
+ writeRegexp = function(b, re) {
+ var $ptr, _1, _2, _i, _i$1, _i$2, _r, _ref, _ref$1, _ref$2, _tmp, _tmp$1, _tmp$2, _tmp$3, b, hi, hi$1, i, i$1, i$2, lo, lo$1, r, re, sub, sub$1, sub$2, x, x$1, x$10, x$11, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ switch (0) { default:
+ _1 = re.Op;
+ if (_1 === (1)) {
+ b.WriteString("[^\\x00-\\x{10FFFF}]");
+ } else if (_1 === (2)) {
+ b.WriteString("(?:)");
+ } else if (_1 === (3)) {
+ if (!((((re.Flags & 1) >>> 0) === 0))) {
+ b.WriteString("(?i:");
+ }
+ _ref = re.Rune;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ r = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ escape(b, r, false);
+ _i++;
+ }
+ if (!((((re.Flags & 1) >>> 0) === 0))) {
+ b.WriteString(")");
+ }
+ } else if (_1 === (4)) {
+ if (!(((_r = re.Rune.$length % 2, _r === _r ? _r : $throwRuntimeError("integer divide by zero")) === 0))) {
+ b.WriteString("[invalid char class]");
+ break;
+ }
+ b.WriteRune(91);
+ if (re.Rune.$length === 0) {
+ b.WriteString("^\\x00-\\x{10FFFF}");
+ } else if (((x = re.Rune, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0])) === 0) && ((x$1 = re.Rune, x$2 = re.Rune.$length - 1 >> 0, ((x$2 < 0 || x$2 >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + x$2])) === 1114111)) {
+ b.WriteRune(94);
+ i = 1;
+ while (true) {
+ if (!(i < (re.Rune.$length - 1 >> 0))) { break; }
+ _tmp = (x$3 = re.Rune, ((i < 0 || i >= x$3.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + i])) + 1 >> 0;
+ _tmp$1 = (x$4 = re.Rune, x$5 = i + 1 >> 0, ((x$5 < 0 || x$5 >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + x$5])) - 1 >> 0;
+ lo = _tmp;
+ hi = _tmp$1;
+ escape(b, lo, lo === 45);
+ if (!((lo === hi))) {
+ b.WriteRune(45);
+ escape(b, hi, hi === 45);
+ }
+ i = i + (2) >> 0;
+ }
+ } else {
+ i$1 = 0;
+ while (true) {
+ if (!(i$1 < re.Rune.$length)) { break; }
+ _tmp$2 = (x$6 = re.Rune, ((i$1 < 0 || i$1 >= x$6.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$6.$array[x$6.$offset + i$1]));
+ _tmp$3 = (x$7 = re.Rune, x$8 = i$1 + 1 >> 0, ((x$8 < 0 || x$8 >= x$7.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$7.$array[x$7.$offset + x$8]));
+ lo$1 = _tmp$2;
+ hi$1 = _tmp$3;
+ escape(b, lo$1, lo$1 === 45);
+ if (!((lo$1 === hi$1))) {
+ b.WriteRune(45);
+ escape(b, hi$1, hi$1 === 45);
+ }
+ i$1 = i$1 + (2) >> 0;
+ }
+ }
+ b.WriteRune(93);
+ } else if (_1 === (5)) {
+ b.WriteString("(?-s:.)");
+ } else if (_1 === (6)) {
+ b.WriteString("(?s:.)");
+ } else if (_1 === (7)) {
+ b.WriteString("(?m:^)");
+ } else if (_1 === (8)) {
+ b.WriteString("(?m:$)");
+ } else if (_1 === (9)) {
+ b.WriteString("\\A");
+ } else if (_1 === (10)) {
+ if (!((((re.Flags & 256) >>> 0) === 0))) {
+ b.WriteString("(?-m:$)");
+ } else {
+ b.WriteString("\\z");
+ }
+ } else if (_1 === (11)) {
+ b.WriteString("\\b");
+ } else if (_1 === (12)) {
+ b.WriteString("\\B");
+ } else if (_1 === (13)) {
+ if (!(re.Name === "")) {
+ b.WriteString("(?P<");
+ b.WriteString(re.Name);
+ b.WriteRune(62);
+ } else {
+ b.WriteRune(40);
+ }
+ if (!(((x$9 = re.Sub, (0 >= x$9.$length ? ($throwRuntimeError("index out of range"), undefined) : x$9.$array[x$9.$offset + 0])).Op === 2))) {
+ writeRegexp(b, (x$10 = re.Sub, (0 >= x$10.$length ? ($throwRuntimeError("index out of range"), undefined) : x$10.$array[x$10.$offset + 0])));
+ }
+ b.WriteRune(41);
+ } else if ((_1 === (14)) || (_1 === (15)) || (_1 === (16)) || (_1 === (17))) {
+ sub = (x$11 = re.Sub, (0 >= x$11.$length ? ($throwRuntimeError("index out of range"), undefined) : x$11.$array[x$11.$offset + 0]));
+ if (sub.Op > 13 || (sub.Op === 3) && sub.Rune.$length > 1) {
+ b.WriteString("(?:");
+ writeRegexp(b, sub);
+ b.WriteString(")");
+ } else {
+ writeRegexp(b, sub);
+ }
+ _2 = re.Op;
+ if (_2 === (14)) {
+ b.WriteRune(42);
+ } else if (_2 === (15)) {
+ b.WriteRune(43);
+ } else if (_2 === (16)) {
+ b.WriteRune(63);
+ } else if (_2 === (17)) {
+ b.WriteRune(123);
+ b.WriteString(strconv.Itoa(re.Min));
+ if (!((re.Max === re.Min))) {
+ b.WriteRune(44);
+ if (re.Max >= 0) {
+ b.WriteString(strconv.Itoa(re.Max));
+ }
+ }
+ b.WriteRune(125);
+ }
+ if (!((((re.Flags & 32) >>> 0) === 0))) {
+ b.WriteRune(63);
+ }
+ } else if (_1 === (18)) {
+ _ref$1 = re.Sub;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ sub$1 = ((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]);
+ if (sub$1.Op === 19) {
+ b.WriteString("(?:");
+ writeRegexp(b, sub$1);
+ b.WriteString(")");
+ } else {
+ writeRegexp(b, sub$1);
+ }
+ _i$1++;
+ }
+ } else if (_1 === (19)) {
+ _ref$2 = re.Sub;
+ _i$2 = 0;
+ while (true) {
+ if (!(_i$2 < _ref$2.$length)) { break; }
+ i$2 = _i$2;
+ sub$2 = ((_i$2 < 0 || _i$2 >= _ref$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$2.$array[_ref$2.$offset + _i$2]);
+ if (i$2 > 0) {
+ b.WriteRune(124);
+ }
+ writeRegexp(b, sub$2);
+ _i$2++;
+ }
+ } else {
+ b.WriteString("<invalid op" + strconv.Itoa(((re.Op >> 0))) + ">");
+ }
+ }
+ };
+ Regexp.ptr.prototype.String = function() {
+ var $ptr, b, re;
+ re = this;
+ b = new bytes.Buffer.ptr(sliceType$6.nil, 0, arrayType$2.zero(), 0);
+ writeRegexp(b, re);
+ return b.String();
+ };
+ Regexp.prototype.String = function() { return this.$val.String(); };
+ escape = function(b, r, force) {
+ var $ptr, _1, b, force, r, s;
+ if (unicode.IsPrint(r)) {
+ if (strings.ContainsRune("\\.+*?()|[]{}^$", r) || force) {
+ b.WriteRune(92);
+ }
+ b.WriteRune(r);
+ return;
+ }
+ switch (0) { default:
+ _1 = r;
+ if (_1 === (7)) {
+ b.WriteString("\\a");
+ } else if (_1 === (12)) {
+ b.WriteString("\\f");
+ } else if (_1 === (10)) {
+ b.WriteString("\\n");
+ } else if (_1 === (13)) {
+ b.WriteString("\\r");
+ } else if (_1 === (9)) {
+ b.WriteString("\\t");
+ } else if (_1 === (11)) {
+ b.WriteString("\\v");
+ } else {
+ if (r < 256) {
+ b.WriteString("\\x");
+ s = strconv.FormatInt((new $Int64(0, r)), 16);
+ if (s.length === 1) {
+ b.WriteRune(48);
+ }
+ b.WriteString(s);
+ break;
+ }
+ b.WriteString("\\x{");
+ b.WriteString(strconv.FormatInt((new $Int64(0, r)), 16));
+ b.WriteString("}");
+ }
+ }
+ };
+ Regexp.ptr.prototype.MaxCap = function() {
+ var $ptr, _i, _ref, m, n, re, sub;
+ re = this;
+ m = 0;
+ if (re.Op === 13) {
+ m = re.Cap;
+ }
+ _ref = re.Sub;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ sub = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ n = sub.MaxCap();
+ if (m < n) {
+ m = n;
+ }
+ _i++;
+ }
+ return m;
+ };
+ Regexp.prototype.MaxCap = function() { return this.$val.MaxCap(); };
+ Regexp.ptr.prototype.CapNames = function() {
+ var $ptr, names, re;
+ re = this;
+ names = $makeSlice(sliceType$3, (re.MaxCap() + 1 >> 0));
+ re.capNames(names);
+ return names;
+ };
+ Regexp.prototype.CapNames = function() { return this.$val.CapNames(); };
+ Regexp.ptr.prototype.capNames = function(names) {
+ var $ptr, _i, _ref, names, re, sub, x;
+ re = this;
+ if (re.Op === 13) {
+ (x = re.Cap, ((x < 0 || x >= names.$length) ? ($throwRuntimeError("index out of range"), undefined) : names.$array[names.$offset + x] = re.Name));
+ }
+ _ref = re.Sub;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ sub = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ sub.capNames(names);
+ _i++;
+ }
+ };
+ Regexp.prototype.capNames = function(names) { return this.$val.capNames(names); };
+ Regexp.ptr.prototype.Simplify = function() {
+ var $ptr, _1, _i, _ref, i, i$1, i$2, i$3, nre, nre$1, nre2, nsub, prefix, re, sub, sub$1, sub$2, suffix, x, x$1;
+ re = this;
+ if (re === ptrType$1.nil) {
+ return ptrType$1.nil;
+ }
+ _1 = re.Op;
+ if ((_1 === (13)) || (_1 === (18)) || (_1 === (19))) {
+ nre = re;
+ _ref = re.Sub;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ sub = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ nsub = sub.Simplify();
+ if (nre === re && !(nsub === sub)) {
+ nre = new Regexp.ptr(0, 0, sliceType$5.nil, arrayType.zero(), sliceType.nil, arrayType$1.zero(), 0, 0, 0, "");
+ Regexp.copy(nre, re);
+ nre.Rune = sliceType.nil;
+ nre.Sub = $appendSlice($subslice(new sliceType$5(nre.Sub0), 0, 0), $subslice(re.Sub, 0, i));
+ }
+ if (!(nre === re)) {
+ nre.Sub = $append(nre.Sub, nsub);
+ }
+ _i++;
+ }
+ return nre;
+ } else if ((_1 === (14)) || (_1 === (15)) || (_1 === (16))) {
+ sub$1 = (x = re.Sub, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0])).Simplify();
+ return simplify1(re.Op, re.Flags, sub$1, re);
+ } else if (_1 === (17)) {
+ if ((re.Min === 0) && (re.Max === 0)) {
+ return new Regexp.ptr(2, 0, sliceType$5.nil, arrayType.zero(), sliceType.nil, arrayType$1.zero(), 0, 0, 0, "");
+ }
+ sub$2 = (x$1 = re.Sub, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0])).Simplify();
+ if (re.Max === -1) {
+ if (re.Min === 0) {
+ return simplify1(14, re.Flags, sub$2, ptrType$1.nil);
+ }
+ if (re.Min === 1) {
+ return simplify1(15, re.Flags, sub$2, ptrType$1.nil);
+ }
+ nre$1 = new Regexp.ptr(18, 0, sliceType$5.nil, arrayType.zero(), sliceType.nil, arrayType$1.zero(), 0, 0, 0, "");
+ nre$1.Sub = $subslice(new sliceType$5(nre$1.Sub0), 0, 0);
+ i$1 = 0;
+ while (true) {
+ if (!(i$1 < (re.Min - 1 >> 0))) { break; }
+ nre$1.Sub = $append(nre$1.Sub, sub$2);
+ i$1 = i$1 + (1) >> 0;
+ }
+ nre$1.Sub = $append(nre$1.Sub, simplify1(15, re.Flags, sub$2, ptrType$1.nil));
+ return nre$1;
+ }
+ if ((re.Min === 1) && (re.Max === 1)) {
+ return sub$2;
+ }
+ prefix = ptrType$1.nil;
+ if (re.Min > 0) {
+ prefix = new Regexp.ptr(18, 0, sliceType$5.nil, arrayType.zero(), sliceType.nil, arrayType$1.zero(), 0, 0, 0, "");
+ prefix.Sub = $subslice(new sliceType$5(prefix.Sub0), 0, 0);
+ i$2 = 0;
+ while (true) {
+ if (!(i$2 < re.Min)) { break; }
+ prefix.Sub = $append(prefix.Sub, sub$2);
+ i$2 = i$2 + (1) >> 0;
+ }
+ }
+ if (re.Max > re.Min) {
+ suffix = simplify1(16, re.Flags, sub$2, ptrType$1.nil);
+ i$3 = re.Min + 1 >> 0;
+ while (true) {
+ if (!(i$3 < re.Max)) { break; }
+ nre2 = new Regexp.ptr(18, 0, sliceType$5.nil, arrayType.zero(), sliceType.nil, arrayType$1.zero(), 0, 0, 0, "");
+ nre2.Sub = $append($subslice(new sliceType$5(nre2.Sub0), 0, 0), sub$2, suffix);
+ suffix = simplify1(16, re.Flags, nre2, ptrType$1.nil);
+ i$3 = i$3 + (1) >> 0;
+ }
+ if (prefix === ptrType$1.nil) {
+ return suffix;
+ }
+ prefix.Sub = $append(prefix.Sub, suffix);
+ }
+ if (!(prefix === ptrType$1.nil)) {
+ return prefix;
+ }
+ return new Regexp.ptr(1, 0, sliceType$5.nil, arrayType.zero(), sliceType.nil, arrayType$1.zero(), 0, 0, 0, "");
+ }
+ return re;
+ };
+ Regexp.prototype.Simplify = function() { return this.$val.Simplify(); };
+ simplify1 = function(op, flags, sub, re) {
+ var $ptr, flags, op, re, sub, x;
+ if (sub.Op === 2) {
+ return sub;
+ }
+ if ((op === sub.Op) && (((flags & 32) >>> 0) === ((sub.Flags & 32) >>> 0))) {
+ return sub;
+ }
+ if (!(re === ptrType$1.nil) && (re.Op === op) && (((re.Flags & 32) >>> 0) === ((flags & 32) >>> 0)) && sub === (x = re.Sub, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0]))) {
+ return re;
+ }
+ re = new Regexp.ptr(op, flags, sliceType$5.nil, arrayType.zero(), sliceType.nil, arrayType$1.zero(), 0, 0, 0, "");
+ re.Sub = $append($subslice(new sliceType$5(re.Sub0), 0, 0), sub);
+ return re;
+ };
+ patchList.methods = [{prop: "next", name: "next", pkg: "regexp/syntax", typ: $funcType([ptrType], [patchList], false)}, {prop: "patch", name: "patch", pkg: "regexp/syntax", typ: $funcType([ptrType, $Uint32], [], false)}, {prop: "append", name: "append", pkg: "regexp/syntax", typ: $funcType([ptrType, patchList], [patchList], false)}];
+ ptrType$4.methods = [{prop: "init", name: "init", pkg: "regexp/syntax", typ: $funcType([], [], false)}, {prop: "compile", name: "compile", pkg: "regexp/syntax", typ: $funcType([ptrType$1], [frag], false)}, {prop: "inst", name: "inst", pkg: "regexp/syntax", typ: $funcType([InstOp], [frag], false)}, {prop: "nop", name: "nop", pkg: "regexp/syntax", typ: $funcType([], [frag], false)}, {prop: "fail", name: "fail", pkg: "regexp/syntax", typ: $funcType([], [frag], false)}, {prop: "cap", name: "cap", pkg: "regexp/syntax", typ: $funcType([$Uint32], [frag], false)}, {prop: "cat", name: "cat", pkg: "regexp/syntax", typ: $funcType([frag, frag], [frag], false)}, {prop: "alt", name: "alt", pkg: "regexp/syntax", typ: $funcType([frag, frag], [frag], false)}, {prop: "quest", name: "quest", pkg: "regexp/syntax", typ: $funcType([frag, $Bool], [frag], false)}, {prop: "star", name: "star", pkg: "regexp/syntax", typ: $funcType([frag, $Bool], [frag], false)}, {prop: "plus", name: "plus", pkg: "regexp/syntax", typ: $funcType([frag, $Bool], [frag], false)}, {prop: "empty", name: "empty", pkg: "regexp/syntax", typ: $funcType([EmptyOp], [frag], false)}, {prop: "rune", name: "rune", pkg: "regexp/syntax", typ: $funcType([sliceType, Flags], [frag], false)}];
+ ptrType$5.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ ErrorCode.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$6.methods = [{prop: "newRegexp", name: "newRegexp", pkg: "regexp/syntax", typ: $funcType([Op], [ptrType$1], false)}, {prop: "reuse", name: "reuse", pkg: "regexp/syntax", typ: $funcType([ptrType$1], [], false)}, {prop: "push", name: "push", pkg: "regexp/syntax", typ: $funcType([ptrType$1], [ptrType$1], false)}, {prop: "maybeConcat", name: "maybeConcat", pkg: "regexp/syntax", typ: $funcType([$Int32, Flags], [$Bool], false)}, {prop: "newLiteral", name: "newLiteral", pkg: "regexp/syntax", typ: $funcType([$Int32, Flags], [ptrType$1], false)}, {prop: "literal", name: "literal", pkg: "regexp/syntax", typ: $funcType([$Int32], [], false)}, {prop: "op", name: "op", pkg: "regexp/syntax", typ: $funcType([Op], [ptrType$1], false)}, {prop: "repeat", name: "repeat", pkg: "regexp/syntax", typ: $funcType([Op, $Int, $Int, $String, $String, $String], [$String, $error], false)}, {prop: "concat", name: "concat", pkg: "regexp/syntax", typ: $funcType([], [ptrType$1], false)}, {prop: "alternate", name: "alternate", pkg: "regexp/syntax", typ: $funcType([], [ptrType$1], false)}, {prop: "collapse", name: "collapse", pkg: "regexp/syntax", typ: $funcType([sliceType$5, Op], [ptrType$1], false)}, {prop: "factor", name: "factor", pkg: "regexp/syntax", typ: $funcType([sliceType$5, Flags], [sliceType$5], false)}, {prop: "leadingString", name: "leadingString", pkg: "regexp/syntax", typ: $funcType([ptrType$1], [sliceType, Flags], false)}, {prop: "removeLeadingString", name: "removeLeadingString", pkg: "regexp/syntax", typ: $funcType([ptrType$1, $Int], [ptrType$1], false)}, {prop: "leadingRegexp", name: "leadingRegexp", pkg: "regexp/syntax", typ: $funcType([ptrType$1], [ptrType$1], false)}, {prop: "removeLeadingRegexp", name: "removeLeadingRegexp", pkg: "regexp/syntax", typ: $funcType([ptrType$1, $Bool], [ptrType$1], false)}, {prop: "parseRepeat", name: "parseRepeat", pkg: "regexp/syntax", typ: $funcType([$String], [$Int, $Int, $String, $Bool], false)}, {prop: "parsePerlFlags", name: "parsePerlFlags", pkg: "regexp/syntax", typ: $funcType([$String], [$String, $error], false)}, {prop: "parseInt", name: "parseInt", pkg: "regexp/syntax", typ: $funcType([$String], [$Int, $String, $Bool], false)}, {prop: "parseVerticalBar", name: "parseVerticalBar", pkg: "regexp/syntax", typ: $funcType([], [$error], false)}, {prop: "swapVerticalBar", name: "swapVerticalBar", pkg: "regexp/syntax", typ: $funcType([], [$Bool], false)}, {prop: "parseRightParen", name: "parseRightParen", pkg: "regexp/syntax", typ: $funcType([], [$error], false)}, {prop: "parseEscape", name: "parseEscape", pkg: "regexp/syntax", typ: $funcType([$String], [$Int32, $String, $error], false)}, {prop: "parseClassChar", name: "parseClassChar", pkg: "regexp/syntax", typ: $funcType([$String, $String], [$Int32, $String, $error], false)}, {prop: "parsePerlClassEscape", name: "parsePerlClassEscape", pkg: "regexp/syntax", typ: $funcType([$String, sliceType], [sliceType, $String], false)}, {prop: "parseNamedClass", name: "parseNamedClass", pkg: "regexp/syntax", typ: $funcType([$String, sliceType], [sliceType, $String, $error], false)}, {prop: "appendGroup", name: "appendGroup", pkg: "regexp/syntax", typ: $funcType([sliceType, charGroup], [sliceType], false)}, {prop: "parseUnicodeClass", name: "parseUnicodeClass", pkg: "regexp/syntax", typ: $funcType([$String, sliceType], [sliceType, $String, $error], false)}, {prop: "parseClass", name: "parseClass", pkg: "regexp/syntax", typ: $funcType([$String], [$String, $error], false)}];
+ ranges.methods = [{prop: "Less", name: "Less", pkg: "", typ: $funcType([$Int, $Int], [$Bool], false)}, {prop: "Len", name: "Len", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Swap", name: "Swap", pkg: "", typ: $funcType([$Int, $Int], [], false)}];
+ ptrType.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "skipNop", name: "skipNop", pkg: "regexp/syntax", typ: $funcType([$Uint32], [ptrType$7, $Uint32], false)}, {prop: "Prefix", name: "Prefix", pkg: "", typ: $funcType([], [$String, $Bool], false)}, {prop: "StartCond", name: "StartCond", pkg: "", typ: $funcType([], [EmptyOp], false)}];
+ InstOp.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$7.methods = [{prop: "op", name: "op", pkg: "regexp/syntax", typ: $funcType([], [InstOp], false)}, {prop: "MatchRune", name: "MatchRune", pkg: "", typ: $funcType([$Int32], [$Bool], false)}, {prop: "MatchRunePos", name: "MatchRunePos", pkg: "", typ: $funcType([$Int32], [$Int], false)}, {prop: "MatchEmptyWidth", name: "MatchEmptyWidth", pkg: "", typ: $funcType([$Int32, $Int32], [$Bool], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$1.methods = [{prop: "Equal", name: "Equal", pkg: "", typ: $funcType([ptrType$1], [$Bool], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "MaxCap", name: "MaxCap", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "CapNames", name: "CapNames", pkg: "", typ: $funcType([], [sliceType$3], false)}, {prop: "capNames", name: "capNames", pkg: "regexp/syntax", typ: $funcType([sliceType$3], [], false)}, {prop: "Simplify", name: "Simplify", pkg: "", typ: $funcType([], [ptrType$1], false)}];
+ frag.init("regexp/syntax", [{prop: "i", name: "i", exported: false, typ: $Uint32, tag: ""}, {prop: "out", name: "out", exported: false, typ: patchList, tag: ""}]);
+ compiler.init("regexp/syntax", [{prop: "p", name: "p", exported: false, typ: ptrType, tag: ""}]);
+ Error.init("", [{prop: "Code", name: "Code", exported: true, typ: ErrorCode, tag: ""}, {prop: "Expr", name: "Expr", exported: true, typ: $String, tag: ""}]);
+ parser.init("regexp/syntax", [{prop: "flags", name: "flags", exported: false, typ: Flags, tag: ""}, {prop: "stack", name: "stack", exported: false, typ: sliceType$5, tag: ""}, {prop: "free", name: "free", exported: false, typ: ptrType$1, tag: ""}, {prop: "numCap", name: "numCap", exported: false, typ: $Int, tag: ""}, {prop: "wholeRegexp", name: "wholeRegexp", exported: false, typ: $String, tag: ""}, {prop: "tmpClass", name: "tmpClass", exported: false, typ: sliceType, tag: ""}]);
+ charGroup.init("regexp/syntax", [{prop: "sign", name: "sign", exported: false, typ: $Int, tag: ""}, {prop: "class$1", name: "class", exported: false, typ: sliceType, tag: ""}]);
+ ranges.init("regexp/syntax", [{prop: "p", name: "p", exported: false, typ: ptrType$2, tag: ""}]);
+ Prog.init("", [{prop: "Inst", name: "Inst", exported: true, typ: sliceType$4, tag: ""}, {prop: "Start", name: "Start", exported: true, typ: $Int, tag: ""}, {prop: "NumCap", name: "NumCap", exported: true, typ: $Int, tag: ""}]);
+ Inst.init("", [{prop: "Op", name: "Op", exported: true, typ: InstOp, tag: ""}, {prop: "Out", name: "Out", exported: true, typ: $Uint32, tag: ""}, {prop: "Arg", name: "Arg", exported: true, typ: $Uint32, tag: ""}, {prop: "Rune", name: "Rune", exported: true, typ: sliceType, tag: ""}]);
+ Regexp.init("", [{prop: "Op", name: "Op", exported: true, typ: Op, tag: ""}, {prop: "Flags", name: "Flags", exported: true, typ: Flags, tag: ""}, {prop: "Sub", name: "Sub", exported: true, typ: sliceType$5, tag: ""}, {prop: "Sub0", name: "Sub0", exported: true, typ: arrayType, tag: ""}, {prop: "Rune", name: "Rune", exported: true, typ: sliceType, tag: ""}, {prop: "Rune0", name: "Rune0", exported: true, typ: arrayType$1, tag: ""}, {prop: "Min", name: "Min", exported: true, typ: $Int, tag: ""}, {prop: "Max", name: "Max", exported: true, typ: $Int, tag: ""}, {prop: "Cap", name: "Cap", exported: true, typ: $Int, tag: ""}, {prop: "Name", name: "Name", exported: true, typ: $String, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sort.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = unicode.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = utf8.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ anyRuneNotNL = new sliceType([0, 9, 11, 1114111]);
+ anyRune = new sliceType([0, 1114111]);
+ anyTable = new unicode.RangeTable.ptr(new sliceType$1([new unicode.Range16.ptr(0, 65535, 1)]), new sliceType$2([new unicode.Range32.ptr(65536, 1114111, 1)]), 0);
+ code1 = new sliceType([48, 57]);
+ code2 = new sliceType([9, 10, 12, 13, 32, 32]);
+ code3 = new sliceType([48, 57, 65, 90, 95, 95, 97, 122]);
+ perlGroup = $makeMap($String.keyFor, [{ k: "\\d", v: new charGroup.ptr(1, code1) }, { k: "\\D", v: new charGroup.ptr(-1, code1) }, { k: "\\s", v: new charGroup.ptr(1, code2) }, { k: "\\S", v: new charGroup.ptr(-1, code2) }, { k: "\\w", v: new charGroup.ptr(1, code3) }, { k: "\\W", v: new charGroup.ptr(-1, code3) }]);
+ code4 = new sliceType([48, 57, 65, 90, 97, 122]);
+ code5 = new sliceType([65, 90, 97, 122]);
+ code6 = new sliceType([0, 127]);
+ code7 = new sliceType([9, 9, 32, 32]);
+ code8 = new sliceType([0, 31, 127, 127]);
+ code9 = new sliceType([48, 57]);
+ code10 = new sliceType([33, 126]);
+ code11 = new sliceType([97, 122]);
+ code12 = new sliceType([32, 126]);
+ code13 = new sliceType([33, 47, 58, 64, 91, 96, 123, 126]);
+ code14 = new sliceType([9, 13, 32, 32]);
+ code15 = new sliceType([65, 90]);
+ code16 = new sliceType([48, 57, 65, 90, 95, 95, 97, 122]);
+ code17 = new sliceType([48, 57, 65, 70, 97, 102]);
+ posixGroup = $makeMap($String.keyFor, [{ k: "[:alnum:]", v: new charGroup.ptr(1, code4) }, { k: "[:^alnum:]", v: new charGroup.ptr(-1, code4) }, { k: "[:alpha:]", v: new charGroup.ptr(1, code5) }, { k: "[:^alpha:]", v: new charGroup.ptr(-1, code5) }, { k: "[:ascii:]", v: new charGroup.ptr(1, code6) }, { k: "[:^ascii:]", v: new charGroup.ptr(-1, code6) }, { k: "[:blank:]", v: new charGroup.ptr(1, code7) }, { k: "[:^blank:]", v: new charGroup.ptr(-1, code7) }, { k: "[:cntrl:]", v: new charGroup.ptr(1, code8) }, { k: "[:^cntrl:]", v: new charGroup.ptr(-1, code8) }, { k: "[:digit:]", v: new charGroup.ptr(1, code9) }, { k: "[:^digit:]", v: new charGroup.ptr(-1, code9) }, { k: "[:graph:]", v: new charGroup.ptr(1, code10) }, { k: "[:^graph:]", v: new charGroup.ptr(-1, code10) }, { k: "[:lower:]", v: new charGroup.ptr(1, code11) }, { k: "[:^lower:]", v: new charGroup.ptr(-1, code11) }, { k: "[:print:]", v: new charGroup.ptr(1, code12) }, { k: "[:^print:]", v: new charGroup.ptr(-1, code12) }, { k: "[:punct:]", v: new charGroup.ptr(1, code13) }, { k: "[:^punct:]", v: new charGroup.ptr(-1, code13) }, { k: "[:space:]", v: new charGroup.ptr(1, code14) }, { k: "[:^space:]", v: new charGroup.ptr(-1, code14) }, { k: "[:upper:]", v: new charGroup.ptr(1, code15) }, { k: "[:^upper:]", v: new charGroup.ptr(-1, code15) }, { k: "[:word:]", v: new charGroup.ptr(1, code16) }, { k: "[:^word:]", v: new charGroup.ptr(-1, code16) }, { k: "[:xdigit:]", v: new charGroup.ptr(1, code17) }, { k: "[:^xdigit:]", v: new charGroup.ptr(-1, code17) }]);
+ instOpNames = new sliceType$3(["InstAlt", "InstAltMatch", "InstCapture", "InstEmptyWidth", "InstMatch", "InstFail", "InstNop", "InstRune", "InstRune1", "InstRuneAny", "InstRuneAnyNotNL"]);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["regexp"] = (function() {
+ var $pkg = {}, $init, bytes, nosync, io, syntax, sort, strconv, strings, unicode, utf8, job, bitState, queue, entry, thread, machine, onePassProg, onePassInst, queueOnePass, runeSlice, Regexp, regexpRO, input, inputString, inputBytes, inputReader, arrayType, ptrType, sliceType, sliceType$1, ptrType$1, sliceType$2, ptrType$2, sliceType$3, sliceType$4, ptrType$3, sliceType$5, ptrType$4, sliceType$6, ptrType$5, ptrType$6, arrayType$1, ptrType$7, sliceType$7, ptrType$8, sliceType$8, ptrType$9, sliceType$9, ptrType$10, sliceType$10, arrayType$2, arrayType$3, sliceType$11, sliceType$12, sliceType$13, sliceType$14, ptrType$11, funcType, funcType$1, funcType$2, funcType$3, ptrType$12, ptrType$13, ptrType$14, notBacktrack, arrayNoInts, noRune, noNext, anyRuneNotNL, anyRune, notOnePass, maxBitStateLen, newBitState, shouldBacktrack, progMachine, onePassPrefix, onePassNext, iop, newQueue, mergeRuneSets, cleanupOnePass, onePassCopy, makeOnePass, compileOnePass, Compile, compile, MustCompile, quote, MatchString, extract;
+ bytes = $packages["bytes"];
+ nosync = $packages["github.com/gopherjs/gopherjs/nosync"];
+ io = $packages["io"];
+ syntax = $packages["regexp/syntax"];
+ sort = $packages["sort"];
+ strconv = $packages["strconv"];
+ strings = $packages["strings"];
+ unicode = $packages["unicode"];
+ utf8 = $packages["unicode/utf8"];
+ job = $pkg.job = $newType(0, $kindStruct, "regexp.job", true, "regexp", false, function(pc_, arg_, pos_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.pc = 0;
+ this.arg = 0;
+ this.pos = 0;
+ return;
+ }
+ this.pc = pc_;
+ this.arg = arg_;
+ this.pos = pos_;
+ });
+ bitState = $pkg.bitState = $newType(0, $kindStruct, "regexp.bitState", true, "regexp", false, function(prog_, end_, cap_, jobs_, visited_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.prog = ptrType$2.nil;
+ this.end = 0;
+ this.cap = sliceType$3.nil;
+ this.jobs = sliceType$4.nil;
+ this.visited = sliceType$1.nil;
+ return;
+ }
+ this.prog = prog_;
+ this.end = end_;
+ this.cap = cap_;
+ this.jobs = jobs_;
+ this.visited = visited_;
+ });
+ queue = $pkg.queue = $newType(0, $kindStruct, "regexp.queue", true, "regexp", false, function(sparse_, dense_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.sparse = sliceType$1.nil;
+ this.dense = sliceType$5.nil;
+ return;
+ }
+ this.sparse = sparse_;
+ this.dense = dense_;
+ });
+ entry = $pkg.entry = $newType(0, $kindStruct, "regexp.entry", true, "regexp", false, function(pc_, t_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.pc = 0;
+ this.t = ptrType$4.nil;
+ return;
+ }
+ this.pc = pc_;
+ this.t = t_;
+ });
+ thread = $pkg.thread = $newType(0, $kindStruct, "regexp.thread", true, "regexp", false, function(inst_, cap_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.inst = ptrType$5.nil;
+ this.cap = sliceType$3.nil;
+ return;
+ }
+ this.inst = inst_;
+ this.cap = cap_;
+ });
+ machine = $pkg.machine = $newType(0, $kindStruct, "regexp.machine", true, "regexp", false, function(re_, p_, op_, maxBitStateLen_, b_, q0_, q1_, pool_, matched_, matchcap_, inputBytes_, inputString_, inputReader_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.re = ptrType$3.nil;
+ this.p = ptrType$2.nil;
+ this.op = ptrType$1.nil;
+ this.maxBitStateLen = 0;
+ this.b = ptrType.nil;
+ this.q0 = new queue.ptr(sliceType$1.nil, sliceType$5.nil);
+ this.q1 = new queue.ptr(sliceType$1.nil, sliceType$5.nil);
+ this.pool = sliceType$6.nil;
+ this.matched = false;
+ this.matchcap = sliceType$3.nil;
+ this.inputBytes = new inputBytes.ptr(sliceType$2.nil);
+ this.inputString = new inputString.ptr("");
+ this.inputReader = new inputReader.ptr($ifaceNil, false, 0);
+ return;
+ }
+ this.re = re_;
+ this.p = p_;
+ this.op = op_;
+ this.maxBitStateLen = maxBitStateLen_;
+ this.b = b_;
+ this.q0 = q0_;
+ this.q1 = q1_;
+ this.pool = pool_;
+ this.matched = matched_;
+ this.matchcap = matchcap_;
+ this.inputBytes = inputBytes_;
+ this.inputString = inputString_;
+ this.inputReader = inputReader_;
+ });
+ onePassProg = $pkg.onePassProg = $newType(0, $kindStruct, "regexp.onePassProg", true, "regexp", false, function(Inst_, Start_, NumCap_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Inst = sliceType$7.nil;
+ this.Start = 0;
+ this.NumCap = 0;
+ return;
+ }
+ this.Inst = Inst_;
+ this.Start = Start_;
+ this.NumCap = NumCap_;
+ });
+ onePassInst = $pkg.onePassInst = $newType(0, $kindStruct, "regexp.onePassInst", true, "regexp", false, function(Inst_, Next_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Inst = new syntax.Inst.ptr(0, 0, 0, sliceType.nil);
+ this.Next = sliceType$1.nil;
+ return;
+ }
+ this.Inst = Inst_;
+ this.Next = Next_;
+ });
+ queueOnePass = $pkg.queueOnePass = $newType(0, $kindStruct, "regexp.queueOnePass", true, "regexp", false, function(sparse_, dense_, size_, nextIndex_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.sparse = sliceType$1.nil;
+ this.dense = sliceType$1.nil;
+ this.size = 0;
+ this.nextIndex = 0;
+ return;
+ }
+ this.sparse = sparse_;
+ this.dense = dense_;
+ this.size = size_;
+ this.nextIndex = nextIndex_;
+ });
+ runeSlice = $pkg.runeSlice = $newType(12, $kindSlice, "regexp.runeSlice", true, "regexp", false, null);
+ Regexp = $pkg.Regexp = $newType(0, $kindStruct, "regexp.Regexp", true, "regexp", true, function(regexpRO_, mu_, machine_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.regexpRO = new regexpRO.ptr("", ptrType$2.nil, ptrType$1.nil, "", sliceType$2.nil, false, 0, 0, 0, 0, sliceType$9.nil, false);
+ this.mu = new nosync.Mutex.ptr(false);
+ this.machine = sliceType$10.nil;
+ return;
+ }
+ this.regexpRO = regexpRO_;
+ this.mu = mu_;
+ this.machine = machine_;
+ });
+ regexpRO = $pkg.regexpRO = $newType(0, $kindStruct, "regexp.regexpRO", true, "regexp", false, function(expr_, prog_, onepass_, prefix_, prefixBytes_, prefixComplete_, prefixRune_, prefixEnd_, cond_, numSubexp_, subexpNames_, longest_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.expr = "";
+ this.prog = ptrType$2.nil;
+ this.onepass = ptrType$1.nil;
+ this.prefix = "";
+ this.prefixBytes = sliceType$2.nil;
+ this.prefixComplete = false;
+ this.prefixRune = 0;
+ this.prefixEnd = 0;
+ this.cond = 0;
+ this.numSubexp = 0;
+ this.subexpNames = sliceType$9.nil;
+ this.longest = false;
+ return;
+ }
+ this.expr = expr_;
+ this.prog = prog_;
+ this.onepass = onepass_;
+ this.prefix = prefix_;
+ this.prefixBytes = prefixBytes_;
+ this.prefixComplete = prefixComplete_;
+ this.prefixRune = prefixRune_;
+ this.prefixEnd = prefixEnd_;
+ this.cond = cond_;
+ this.numSubexp = numSubexp_;
+ this.subexpNames = subexpNames_;
+ this.longest = longest_;
+ });
+ input = $pkg.input = $newType(8, $kindInterface, "regexp.input", true, "regexp", false, null);
+ inputString = $pkg.inputString = $newType(0, $kindStruct, "regexp.inputString", true, "regexp", false, function(str_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.str = "";
+ return;
+ }
+ this.str = str_;
+ });
+ inputBytes = $pkg.inputBytes = $newType(0, $kindStruct, "regexp.inputBytes", true, "regexp", false, function(str_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.str = sliceType$2.nil;
+ return;
+ }
+ this.str = str_;
+ });
+ inputReader = $pkg.inputReader = $newType(0, $kindStruct, "regexp.inputReader", true, "regexp", false, function(r_, atEOT_, pos_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.r = $ifaceNil;
+ this.atEOT = false;
+ this.pos = 0;
+ return;
+ }
+ this.r = r_;
+ this.atEOT = atEOT_;
+ this.pos = pos_;
+ });
+ arrayType = $arrayType($Int, 0);
+ ptrType = $ptrType(bitState);
+ sliceType = $sliceType($Int32);
+ sliceType$1 = $sliceType($Uint32);
+ ptrType$1 = $ptrType(onePassProg);
+ sliceType$2 = $sliceType($Uint8);
+ ptrType$2 = $ptrType(syntax.Prog);
+ sliceType$3 = $sliceType($Int);
+ sliceType$4 = $sliceType(job);
+ ptrType$3 = $ptrType(Regexp);
+ sliceType$5 = $sliceType(entry);
+ ptrType$4 = $ptrType(thread);
+ sliceType$6 = $sliceType(ptrType$4);
+ ptrType$5 = $ptrType(syntax.Inst);
+ ptrType$6 = $ptrType($Int);
+ arrayType$1 = $arrayType($Uint8, 64);
+ ptrType$7 = $ptrType(queueOnePass);
+ sliceType$7 = $sliceType(onePassInst);
+ ptrType$8 = $ptrType($Uint32);
+ sliceType$8 = $sliceType(sliceType);
+ ptrType$9 = $ptrType(sliceType);
+ sliceType$9 = $sliceType($String);
+ ptrType$10 = $ptrType(machine);
+ sliceType$10 = $sliceType(ptrType$10);
+ arrayType$2 = $arrayType($Int, 2);
+ arrayType$3 = $arrayType($Int, 4);
+ sliceType$11 = $sliceType(sliceType$2);
+ sliceType$12 = $sliceType(sliceType$3);
+ sliceType$13 = $sliceType(sliceType$11);
+ sliceType$14 = $sliceType(sliceType$9);
+ ptrType$11 = $ptrType(queue);
+ funcType = $funcType([$String], [$String], false);
+ funcType$1 = $funcType([sliceType$2, sliceType$3], [sliceType$2], false);
+ funcType$2 = $funcType([sliceType$2], [sliceType$2], false);
+ funcType$3 = $funcType([sliceType$3], [], false);
+ ptrType$12 = $ptrType(inputString);
+ ptrType$13 = $ptrType(inputBytes);
+ ptrType$14 = $ptrType(inputReader);
+ maxBitStateLen = function(prog) {
+ var $ptr, _q, prog;
+ if (!shouldBacktrack(prog)) {
+ return 0;
+ }
+ return (_q = 262144 / prog.Inst.$length, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ };
+ newBitState = function(prog) {
+ var $ptr, prog;
+ if (!shouldBacktrack(prog)) {
+ return notBacktrack;
+ }
+ return new bitState.ptr(prog, 0, sliceType$3.nil, sliceType$4.nil, sliceType$1.nil);
+ };
+ shouldBacktrack = function(prog) {
+ var $ptr, prog;
+ return prog.Inst.$length <= 500;
+ };
+ bitState.ptr.prototype.reset = function(end, ncap) {
+ var $ptr, _i, _i$1, _q, _ref, _ref$1, b, end, i, i$1, ncap, visitedSize, x, x$1;
+ b = this;
+ b.end = end;
+ if (b.jobs.$capacity === 0) {
+ b.jobs = $makeSlice(sliceType$4, 0, 256);
+ } else {
+ b.jobs = $subslice(b.jobs, 0, 0);
+ }
+ visitedSize = (_q = (((($imul(b.prog.Inst.$length, ((end + 1 >> 0)))) + 32 >> 0) - 1 >> 0)) / 32, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ if (b.visited.$capacity < visitedSize) {
+ b.visited = $makeSlice(sliceType$1, visitedSize, 8192);
+ } else {
+ b.visited = $subslice(b.visited, 0, visitedSize);
+ _ref = b.visited;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ (x = b.visited, ((i < 0 || i >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i] = 0));
+ _i++;
+ }
+ }
+ if (b.cap.$capacity < ncap) {
+ b.cap = $makeSlice(sliceType$3, ncap);
+ } else {
+ b.cap = $subslice(b.cap, 0, ncap);
+ }
+ _ref$1 = b.cap;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ i$1 = _i$1;
+ (x$1 = b.cap, ((i$1 < 0 || i$1 >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + i$1] = -1));
+ _i$1++;
+ }
+ };
+ bitState.prototype.reset = function(end, ncap) { return this.$val.reset(end, ncap); };
+ bitState.ptr.prototype.shouldVisit = function(pc, pos) {
+ var $ptr, _index, _q, _q$1, b, n, pc, pos, x, x$1, x$2, x$3, y, y$1;
+ b = this;
+ n = (((($imul(((pc >> 0)), ((b.end + 1 >> 0)))) + pos >> 0) >>> 0));
+ if (!(((((x = b.visited, x$1 = (_q = n / 32, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero")), ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1])) & (((y = (((n & 31) >>> 0)), y < 32 ? (1 << y) : 0) >>> 0))) >>> 0) === 0))) {
+ return false;
+ }
+ _index = (_q$1 = n / 32, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >>> 0 : $throwRuntimeError("integer divide by zero"));
+ (x$3 = b.visited, ((_index < 0 || _index >= x$3.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + _index] = (((x$2 = b.visited, ((_index < 0 || _index >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + _index])) | (((y$1 = (((n & 31) >>> 0)), y$1 < 32 ? (1 << y$1) : 0) >>> 0))) >>> 0)));
+ return true;
+ };
+ bitState.prototype.shouldVisit = function(pc, pos) { return this.$val.shouldVisit(pc, pos); };
+ bitState.ptr.prototype.push = function(pc, pos, arg) {
+ var $ptr, arg, b, pc, pos, x;
+ b = this;
+ if ((x = b.prog.Inst, ((pc < 0 || pc >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + pc])).Op === 5) {
+ return;
+ }
+ if ((arg === 0) && !b.shouldVisit(pc, pos)) {
+ return;
+ }
+ b.jobs = $append(b.jobs, new job.ptr(pc, arg, pos));
+ };
+ bitState.prototype.push = function(pc, pos, arg) { return this.$val.push(pc, pos, arg); };
+ machine.ptr.prototype.tryBacktrack = function(b, i, pc, pos) {
+ var $ptr, _1, _2, _3, _4, _r, _r$1, _r$2, _r$3, _r$4, _tuple, _tuple$1, _tuple$2, _tuple$3, arg, b, i, inst, l, longest, m, pc, pc$1, pos, pos$1, r, r$1, r$2, r$3, width, width$1, width$2, width$3, x, x$1, x$10, x$11, x$12, x$13, x$14, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _2 = $f._2; _3 = $f._3; _4 = $f._4; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; arg = $f.arg; b = $f.b; i = $f.i; inst = $f.inst; l = $f.l; longest = $f.longest; m = $f.m; pc = $f.pc; pc$1 = $f.pc$1; pos = $f.pos; pos$1 = $f.pos$1; r = $f.r; r$1 = $f.r$1; r$2 = $f.r$2; r$3 = $f.r$3; width = $f.width; width$1 = $f.width$1; width$2 = $f.width$2; width$3 = $f.width$3; x = $f.x; x$1 = $f.x$1; x$10 = $f.x$10; x$11 = $f.x$11; x$12 = $f.x$12; x$13 = $f.x$13; x$14 = $f.x$14; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; x$8 = $f.x$8; x$9 = $f.x$9; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ m = this;
+ longest = m.re.regexpRO.longest;
+ m.matched = false;
+ b.push(pc, pos, 0);
+ /* while (true) { */ case 1:
+ /* if (!(b.jobs.$length > 0)) { break; } */ if(!(b.jobs.$length > 0)) { $s = 2; continue; }
+ l = b.jobs.$length - 1 >> 0;
+ pc$1 = (x = b.jobs, ((l < 0 || l >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + l])).pc;
+ pos$1 = (x$1 = b.jobs, ((l < 0 || l >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + l])).pos;
+ arg = (x$2 = b.jobs, ((l < 0 || l >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + l])).arg;
+ b.jobs = $subslice(b.jobs, 0, l);
+ /* goto Skip */ $s = 3; continue;
+ /* CheckAndLoop: */ case 4:
+ if (!b.shouldVisit(pc$1, pos$1)) {
+ /* continue; */ $s = 1; continue;
+ }
+ /* Skip: */ case 3:
+ inst = $clone((x$3 = b.prog.Inst, ((pc$1 < 0 || pc$1 >= x$3.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + pc$1])), syntax.Inst);
+ _1 = inst.Op;
+ /* */ if (_1 === (5)) { $s = 6; continue; }
+ /* */ if (_1 === (0)) { $s = 7; continue; }
+ /* */ if (_1 === (1)) { $s = 8; continue; }
+ /* */ if (_1 === (7)) { $s = 9; continue; }
+ /* */ if (_1 === (8)) { $s = 10; continue; }
+ /* */ if (_1 === (10)) { $s = 11; continue; }
+ /* */ if (_1 === (9)) { $s = 12; continue; }
+ /* */ if (_1 === (2)) { $s = 13; continue; }
+ /* */ if (_1 === (3)) { $s = 14; continue; }
+ /* */ if (_1 === (6)) { $s = 15; continue; }
+ /* */ if (_1 === (4)) { $s = 16; continue; }
+ /* */ $s = 17; continue;
+ /* if (_1 === (5)) { */ case 6:
+ $panic(new $String("unexpected InstFail"));
+ $s = 18; continue;
+ /* } else if (_1 === (0)) { */ case 7:
+ _2 = arg;
+ /* */ if (_2 === (0)) { $s = 20; continue; }
+ /* */ if (_2 === (1)) { $s = 21; continue; }
+ /* */ $s = 22; continue;
+ /* if (_2 === (0)) { */ case 20:
+ b.push(pc$1, pos$1, 1);
+ pc$1 = inst.Out;
+ /* goto CheckAndLoop */ $s = 4; continue;
+ $s = 22; continue;
+ /* } else if (_2 === (1)) { */ case 21:
+ arg = 0;
+ pc$1 = inst.Arg;
+ /* goto CheckAndLoop */ $s = 4; continue;
+ /* } */ case 22:
+ case 19:
+ $panic(new $String("bad arg in InstAlt"));
+ $s = 18; continue;
+ /* } else if (_1 === (1)) { */ case 8:
+ _3 = (x$4 = b.prog.Inst, x$5 = inst.Out, ((x$5 < 0 || x$5 >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + x$5])).Op;
+ /* */ if ((_3 === (7)) || (_3 === (8)) || (_3 === (9)) || (_3 === (10))) { $s = 24; continue; }
+ /* */ $s = 25; continue;
+ /* if ((_3 === (7)) || (_3 === (8)) || (_3 === (9)) || (_3 === (10))) { */ case 24:
+ b.push(inst.Arg, pos$1, 0);
+ pc$1 = inst.Arg;
+ pos$1 = b.end;
+ /* goto CheckAndLoop */ $s = 4; continue;
+ /* } */ case 25:
+ case 23:
+ b.push(inst.Out, b.end, 0);
+ pc$1 = inst.Out;
+ /* goto CheckAndLoop */ $s = 4; continue;
+ $s = 18; continue;
+ /* } else if (_1 === (7)) { */ case 9:
+ _r = i.step(pos$1); /* */ $s = 26; case 26: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ r = _tuple[0];
+ width = _tuple[1];
+ /* */ if (!inst.MatchRune(r)) { $s = 27; continue; }
+ /* */ $s = 28; continue;
+ /* if (!inst.MatchRune(r)) { */ case 27:
+ /* continue; */ $s = 1; continue;
+ /* } */ case 28:
+ pos$1 = pos$1 + (width) >> 0;
+ pc$1 = inst.Out;
+ /* goto CheckAndLoop */ $s = 4; continue;
+ $s = 18; continue;
+ /* } else if (_1 === (8)) { */ case 10:
+ _r$1 = i.step(pos$1); /* */ $s = 29; case 29: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ r$1 = _tuple$1[0];
+ width$1 = _tuple$1[1];
+ /* */ if (!((r$1 === (x$6 = inst.Rune, (0 >= x$6.$length ? ($throwRuntimeError("index out of range"), undefined) : x$6.$array[x$6.$offset + 0]))))) { $s = 30; continue; }
+ /* */ $s = 31; continue;
+ /* if (!((r$1 === (x$6 = inst.Rune, (0 >= x$6.$length ? ($throwRuntimeError("index out of range"), undefined) : x$6.$array[x$6.$offset + 0]))))) { */ case 30:
+ /* continue; */ $s = 1; continue;
+ /* } */ case 31:
+ pos$1 = pos$1 + (width$1) >> 0;
+ pc$1 = inst.Out;
+ /* goto CheckAndLoop */ $s = 4; continue;
+ $s = 18; continue;
+ /* } else if (_1 === (10)) { */ case 11:
+ _r$2 = i.step(pos$1); /* */ $s = 32; case 32: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$2 = _r$2;
+ r$2 = _tuple$2[0];
+ width$2 = _tuple$2[1];
+ /* */ if ((r$2 === 10) || (r$2 === -1)) { $s = 33; continue; }
+ /* */ $s = 34; continue;
+ /* if ((r$2 === 10) || (r$2 === -1)) { */ case 33:
+ /* continue; */ $s = 1; continue;
+ /* } */ case 34:
+ pos$1 = pos$1 + (width$2) >> 0;
+ pc$1 = inst.Out;
+ /* goto CheckAndLoop */ $s = 4; continue;
+ $s = 18; continue;
+ /* } else if (_1 === (9)) { */ case 12:
+ _r$3 = i.step(pos$1); /* */ $s = 35; case 35: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _tuple$3 = _r$3;
+ r$3 = _tuple$3[0];
+ width$3 = _tuple$3[1];
+ /* */ if (r$3 === -1) { $s = 36; continue; }
+ /* */ $s = 37; continue;
+ /* if (r$3 === -1) { */ case 36:
+ /* continue; */ $s = 1; continue;
+ /* } */ case 37:
+ pos$1 = pos$1 + (width$3) >> 0;
+ pc$1 = inst.Out;
+ /* goto CheckAndLoop */ $s = 4; continue;
+ $s = 18; continue;
+ /* } else if (_1 === (2)) { */ case 13:
+ _4 = arg;
+ /* */ if (_4 === (0)) { $s = 39; continue; }
+ /* */ if (_4 === (1)) { $s = 40; continue; }
+ /* */ $s = 41; continue;
+ /* if (_4 === (0)) { */ case 39:
+ if (0 <= inst.Arg && inst.Arg < ((b.cap.$length >>> 0))) {
+ b.push(pc$1, (x$7 = b.cap, x$8 = inst.Arg, ((x$8 < 0 || x$8 >= x$7.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$7.$array[x$7.$offset + x$8])), 1);
+ (x$9 = b.cap, x$10 = inst.Arg, ((x$10 < 0 || x$10 >= x$9.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$9.$array[x$9.$offset + x$10] = pos$1));
+ }
+ pc$1 = inst.Out;
+ /* goto CheckAndLoop */ $s = 4; continue;
+ $s = 41; continue;
+ /* } else if (_4 === (1)) { */ case 40:
+ (x$11 = b.cap, x$12 = inst.Arg, ((x$12 < 0 || x$12 >= x$11.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$11.$array[x$11.$offset + x$12] = pos$1));
+ /* continue; */ $s = 1; continue;
+ /* } */ case 41:
+ case 38:
+ $panic(new $String("bad arg in InstCapture"));
+ $s = 18; continue;
+ /* } else if (_1 === (3)) { */ case 14:
+ _r$4 = i.context(pos$1); /* */ $s = 44; case 44: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ /* */ if (!((((((inst.Arg << 24 >>> 24)) & ~_r$4) << 24 >>> 24) === 0))) { $s = 42; continue; }
+ /* */ $s = 43; continue;
+ /* if (!((((((inst.Arg << 24 >>> 24)) & ~_r$4) << 24 >>> 24) === 0))) { */ case 42:
+ /* continue; */ $s = 1; continue;
+ /* } */ case 43:
+ pc$1 = inst.Out;
+ /* goto CheckAndLoop */ $s = 4; continue;
+ $s = 18; continue;
+ /* } else if (_1 === (6)) { */ case 15:
+ pc$1 = inst.Out;
+ /* goto CheckAndLoop */ $s = 4; continue;
+ $s = 18; continue;
+ /* } else if (_1 === (4)) { */ case 16:
+ if (b.cap.$length === 0) {
+ m.matched = true;
+ $s = -1; return m.matched;
+ }
+ if (b.cap.$length > 1) {
+ (x$13 = b.cap, (1 >= x$13.$length ? ($throwRuntimeError("index out of range"), undefined) : x$13.$array[x$13.$offset + 1] = pos$1));
+ }
+ if (!m.matched || (longest && pos$1 > 0 && pos$1 > (x$14 = m.matchcap, (1 >= x$14.$length ? ($throwRuntimeError("index out of range"), undefined) : x$14.$array[x$14.$offset + 1])))) {
+ $copySlice(m.matchcap, b.cap);
+ }
+ m.matched = true;
+ if (!longest) {
+ $s = -1; return m.matched;
+ }
+ if (pos$1 === b.end) {
+ $s = -1; return m.matched;
+ }
+ /* continue; */ $s = 1; continue;
+ $s = 18; continue;
+ /* } else { */ case 17:
+ $panic(new $String("bad inst"));
+ /* } */ case 18:
+ case 5:
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return m.matched;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: machine.ptr.prototype.tryBacktrack }; } $f.$ptr = $ptr; $f._1 = _1; $f._2 = _2; $f._3 = _3; $f._4 = _4; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f.arg = arg; $f.b = b; $f.i = i; $f.inst = inst; $f.l = l; $f.longest = longest; $f.m = m; $f.pc = pc; $f.pc$1 = pc$1; $f.pos = pos; $f.pos$1 = pos$1; $f.r = r; $f.r$1 = r$1; $f.r$2 = r$2; $f.r$3 = r$3; $f.width = width; $f.width$1 = width$1; $f.width$2 = width$2; $f.width$3 = width$3; $f.x = x; $f.x$1 = x$1; $f.x$10 = x$10; $f.x$11 = x$11; $f.x$12 = x$12; $f.x$13 = x$13; $f.x$14 = x$14; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.x$8 = x$8; $f.x$9 = x$9; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ machine.prototype.tryBacktrack = function(b, i, pc, pos) { return this.$val.tryBacktrack(b, i, pc, pos); };
+ machine.ptr.prototype.backtrack = function(i, pos, end, ncap) {
+ var $ptr, _i, _r, _r$1, _r$2, _r$3, _r$4, _ref, _tuple, advance, b, end, i, i$1, m, ncap, pos, startCond, width, x, x$1, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _ref = $f._ref; _tuple = $f._tuple; advance = $f.advance; b = $f.b; end = $f.end; i = $f.i; i$1 = $f.i$1; m = $f.m; ncap = $f.ncap; pos = $f.pos; startCond = $f.startCond; width = $f.width; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ m = this;
+ _r = i.canCheckPrefix(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (!_r) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!_r) { */ case 1:
+ $panic(new $String("backtrack called for a RuneReader"));
+ /* } */ case 2:
+ startCond = m.re.regexpRO.cond;
+ if (startCond === 255) {
+ $s = -1; return false;
+ }
+ if (!((((startCond & 4) >>> 0) === 0)) && !((pos === 0))) {
+ $s = -1; return false;
+ }
+ b = m.b;
+ b.reset(end, ncap);
+ m.matchcap = $subslice(m.matchcap, 0, ncap);
+ _ref = m.matchcap;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i$1 = _i;
+ (x = m.matchcap, ((i$1 < 0 || i$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i$1] = -1));
+ _i++;
+ }
+ /* */ if (!((((startCond & 4) >>> 0) === 0))) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (!((((startCond & 4) >>> 0) === 0))) { */ case 4:
+ if (b.cap.$length > 0) {
+ (x$1 = b.cap, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0] = pos));
+ }
+ _r$1 = m.tryBacktrack(b, i, ((m.p.Start >>> 0)), pos); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* } */ case 5:
+ width = -1;
+ /* while (true) { */ case 7:
+ /* if (!(pos <= end && !((width === 0)))) { break; } */ if(!(pos <= end && !((width === 0)))) { $s = 8; continue; }
+ /* */ if (m.re.regexpRO.prefix.length > 0) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (m.re.regexpRO.prefix.length > 0) { */ case 9:
+ _r$2 = i.index(m.re, pos); /* */ $s = 11; case 11: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ advance = _r$2;
+ if (advance < 0) {
+ $s = -1; return false;
+ }
+ pos = pos + (advance) >> 0;
+ /* } */ case 10:
+ if (b.cap.$length > 0) {
+ (x$2 = b.cap, (0 >= x$2.$length ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + 0] = pos));
+ }
+ _r$3 = m.tryBacktrack(b, i, ((m.p.Start >>> 0)), pos); /* */ $s = 14; case 14: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ /* */ if (_r$3) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if (_r$3) { */ case 12:
+ $s = -1; return true;
+ /* } */ case 13:
+ _r$4 = i.step(pos); /* */ $s = 15; case 15: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _tuple = _r$4;
+ width = _tuple[1];
+ pos = pos + (width) >> 0;
+ /* } */ $s = 7; continue; case 8:
+ $s = -1; return false;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: machine.ptr.prototype.backtrack }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._ref = _ref; $f._tuple = _tuple; $f.advance = advance; $f.b = b; $f.end = end; $f.i = i; $f.i$1 = i$1; $f.m = m; $f.ncap = ncap; $f.pos = pos; $f.startCond = startCond; $f.width = width; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ machine.prototype.backtrack = function(i, pos, end, ncap) { return this.$val.backtrack(i, pos, end, ncap); };
+ machine.ptr.prototype.newInputBytes = function(b) {
+ var $ptr, b, m;
+ m = this;
+ m.inputBytes.str = b;
+ return m.inputBytes;
+ };
+ machine.prototype.newInputBytes = function(b) { return this.$val.newInputBytes(b); };
+ machine.ptr.prototype.newInputString = function(s) {
+ var $ptr, m, s;
+ m = this;
+ m.inputString.str = s;
+ return m.inputString;
+ };
+ machine.prototype.newInputString = function(s) { return this.$val.newInputString(s); };
+ machine.ptr.prototype.newInputReader = function(r) {
+ var $ptr, m, r;
+ m = this;
+ m.inputReader.r = r;
+ m.inputReader.atEOT = false;
+ m.inputReader.pos = 0;
+ return m.inputReader;
+ };
+ machine.prototype.newInputReader = function(r) { return this.$val.newInputReader(r); };
+ progMachine = function(p, op) {
+ var $ptr, m, n, ncap, op, p;
+ m = new machine.ptr(ptrType$3.nil, p, op, 0, ptrType.nil, new queue.ptr(sliceType$1.nil, sliceType$5.nil), new queue.ptr(sliceType$1.nil, sliceType$5.nil), sliceType$6.nil, false, sliceType$3.nil, new inputBytes.ptr(sliceType$2.nil), new inputString.ptr(""), new inputReader.ptr($ifaceNil, false, 0));
+ n = m.p.Inst.$length;
+ queue.copy(m.q0, new queue.ptr($makeSlice(sliceType$1, n), $makeSlice(sliceType$5, 0, n)));
+ queue.copy(m.q1, new queue.ptr($makeSlice(sliceType$1, n), $makeSlice(sliceType$5, 0, n)));
+ ncap = p.NumCap;
+ if (ncap < 2) {
+ ncap = 2;
+ }
+ if (op === notOnePass) {
+ m.maxBitStateLen = maxBitStateLen(p);
+ }
+ m.matchcap = $makeSlice(sliceType$3, ncap);
+ return m;
+ };
+ machine.ptr.prototype.init = function(ncap) {
+ var $ptr, _i, _ref, m, ncap, t;
+ m = this;
+ _ref = m.pool;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ t = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ t.cap = $subslice(t.cap, 0, ncap);
+ _i++;
+ }
+ m.matchcap = $subslice(m.matchcap, 0, ncap);
+ };
+ machine.prototype.init = function(ncap) { return this.$val.init(ncap); };
+ machine.ptr.prototype.alloc = function(i) {
+ var $ptr, i, m, n, t, x, x$1;
+ m = this;
+ t = ptrType$4.nil;
+ n = m.pool.$length;
+ if (n > 0) {
+ t = (x = m.pool, x$1 = n - 1 >> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ m.pool = $subslice(m.pool, 0, (n - 1 >> 0));
+ } else {
+ t = new thread.ptr(ptrType$5.nil, sliceType$3.nil);
+ t.cap = $makeSlice(sliceType$3, m.matchcap.$length, m.matchcap.$capacity);
+ }
+ t.inst = i;
+ return t;
+ };
+ machine.prototype.alloc = function(i) { return this.$val.alloc(i); };
+ machine.ptr.prototype.match = function(i, pos) {
+ var $ptr, _i, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _ref, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, _v, advance, flag, i, i$1, m, nextq, pos, r, r1, runq, startCond, width, width1, x, x$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _ref = $f._ref; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tmp$7 = $f._tmp$7; _tmp$8 = $f._tmp$8; _tmp$9 = $f._tmp$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; _v = $f._v; advance = $f.advance; flag = $f.flag; i = $f.i; i$1 = $f.i$1; m = $f.m; nextq = $f.nextq; pos = $f.pos; r = $f.r; r1 = $f.r1; runq = $f.runq; startCond = $f.startCond; width = $f.width; width1 = $f.width1; x = $f.x; x$1 = $f.x$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ m = this;
+ startCond = m.re.regexpRO.cond;
+ if (startCond === 255) {
+ $s = -1; return false;
+ }
+ m.matched = false;
+ _ref = m.matchcap;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i$1 = _i;
+ (x = m.matchcap, ((i$1 < 0 || i$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i$1] = -1));
+ _i++;
+ }
+ _tmp = m.q0;
+ _tmp$1 = m.q1;
+ runq = _tmp;
+ nextq = _tmp$1;
+ _tmp$2 = -1;
+ _tmp$3 = -1;
+ r = _tmp$2;
+ r1 = _tmp$3;
+ _tmp$4 = 0;
+ _tmp$5 = 0;
+ width = _tmp$4;
+ width1 = _tmp$5;
+ _r = i.step(pos); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ r = _tuple[0];
+ width = _tuple[1];
+ /* */ if (!((r === -1))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!((r === -1))) { */ case 2:
+ _r$1 = i.step(pos + width >> 0); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ r1 = _tuple$1[0];
+ width1 = _tuple$1[1];
+ /* } */ case 3:
+ flag = 0;
+ /* */ if (pos === 0) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (pos === 0) { */ case 5:
+ flag = syntax.EmptyOpContext(-1, r);
+ $s = 7; continue;
+ /* } else { */ case 6:
+ _r$2 = i.context(pos); /* */ $s = 8; case 8: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ flag = _r$2;
+ /* } */ case 7:
+ /* while (true) { */ case 9:
+ /* */ if (runq.dense.$length === 0) { $s = 11; continue; }
+ /* */ $s = 12; continue;
+ /* if (runq.dense.$length === 0) { */ case 11:
+ if (!((((startCond & 4) >>> 0) === 0)) && !((pos === 0))) {
+ /* break; */ $s = 10; continue;
+ }
+ if (m.matched) {
+ /* break; */ $s = 10; continue;
+ }
+ if (!(m.re.regexpRO.prefix.length > 0 && !((r1 === m.re.regexpRO.prefixRune)))) { _v = false; $s = 15; continue s; }
+ _r$3 = i.canCheckPrefix(); /* */ $s = 16; case 16: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _v = _r$3; case 15:
+ /* */ if (_v) { $s = 13; continue; }
+ /* */ $s = 14; continue;
+ /* if (_v) { */ case 13:
+ _r$4 = i.index(m.re, pos); /* */ $s = 17; case 17: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ advance = _r$4;
+ if (advance < 0) {
+ /* break; */ $s = 10; continue;
+ }
+ pos = pos + (advance) >> 0;
+ _r$5 = i.step(pos); /* */ $s = 18; case 18: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _tuple$2 = _r$5;
+ r = _tuple$2[0];
+ width = _tuple$2[1];
+ _r$6 = i.step(pos + width >> 0); /* */ $s = 19; case 19: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple$3 = _r$6;
+ r1 = _tuple$3[0];
+ width1 = _tuple$3[1];
+ /* } */ case 14:
+ /* } */ case 12:
+ if (!m.matched) {
+ if (m.matchcap.$length > 0) {
+ (x$1 = m.matchcap, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0] = pos));
+ }
+ m.add(runq, ((m.p.Start >>> 0)), pos, m.matchcap, flag, ptrType$4.nil);
+ }
+ flag = syntax.EmptyOpContext(r, r1);
+ m.step(runq, nextq, pos, pos + width >> 0, r, flag);
+ if (width === 0) {
+ /* break; */ $s = 10; continue;
+ }
+ if ((m.matchcap.$length === 0) && m.matched) {
+ /* break; */ $s = 10; continue;
+ }
+ pos = pos + (width) >> 0;
+ _tmp$6 = r1;
+ _tmp$7 = width1;
+ r = _tmp$6;
+ width = _tmp$7;
+ /* */ if (!((r === -1))) { $s = 20; continue; }
+ /* */ $s = 21; continue;
+ /* if (!((r === -1))) { */ case 20:
+ _r$7 = i.step(pos + width >> 0); /* */ $s = 22; case 22: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _tuple$4 = _r$7;
+ r1 = _tuple$4[0];
+ width1 = _tuple$4[1];
+ /* } */ case 21:
+ _tmp$8 = nextq;
+ _tmp$9 = runq;
+ runq = _tmp$8;
+ nextq = _tmp$9;
+ /* } */ $s = 9; continue; case 10:
+ m.clear(nextq);
+ $s = -1; return m.matched;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: machine.ptr.prototype.match }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._ref = _ref; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tmp$7 = _tmp$7; $f._tmp$8 = _tmp$8; $f._tmp$9 = _tmp$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f._v = _v; $f.advance = advance; $f.flag = flag; $f.i = i; $f.i$1 = i$1; $f.m = m; $f.nextq = nextq; $f.pos = pos; $f.r = r; $f.r1 = r1; $f.runq = runq; $f.startCond = startCond; $f.width = width; $f.width1 = width1; $f.x = x; $f.x$1 = x$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ machine.prototype.match = function(i, pos) { return this.$val.match(i, pos); };
+ machine.ptr.prototype.clear = function(q) {
+ var $ptr, _i, _ref, d, m, q;
+ m = this;
+ _ref = q.dense;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ d = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), entry);
+ if (!(d.t === ptrType$4.nil)) {
+ m.pool = $append(m.pool, d.t);
+ }
+ _i++;
+ }
+ q.dense = $subslice(q.dense, 0, 0);
+ };
+ machine.prototype.clear = function(q) { return this.$val.clear(q); };
+ machine.ptr.prototype.step = function(runq, nextq, pos, nextPos, c, nextCond) {
+ var $ptr, _1, _i, _ref, add, c, d, d$1, i, j, longest, m, nextCond, nextPos, nextq, pos, runq, t, x, x$1, x$2, x$3, x$4, x$5;
+ m = this;
+ longest = m.re.regexpRO.longest;
+ j = 0;
+ while (true) {
+ if (!(j < runq.dense.$length)) { break; }
+ d = (x = runq.dense, ((j < 0 || j >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + j]));
+ t = d.t;
+ if (t === ptrType$4.nil) {
+ j = j + (1) >> 0;
+ continue;
+ }
+ if (longest && m.matched && t.cap.$length > 0 && (x$1 = m.matchcap, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0])) < (x$2 = t.cap, (0 >= x$2.$length ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + 0]))) {
+ m.pool = $append(m.pool, t);
+ j = j + (1) >> 0;
+ continue;
+ }
+ i = t.inst;
+ add = false;
+ _1 = i.Op;
+ if (_1 === (4)) {
+ if (t.cap.$length > 0 && (!longest || !m.matched || (x$3 = m.matchcap, (1 >= x$3.$length ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + 1])) < pos)) {
+ (x$4 = t.cap, (1 >= x$4.$length ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + 1] = pos));
+ $copySlice(m.matchcap, t.cap);
+ }
+ if (!longest) {
+ _ref = $subslice(runq.dense, (j + 1 >> 0));
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ d$1 = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), entry);
+ if (!(d$1.t === ptrType$4.nil)) {
+ m.pool = $append(m.pool, d$1.t);
+ }
+ _i++;
+ }
+ runq.dense = $subslice(runq.dense, 0, 0);
+ }
+ m.matched = true;
+ } else if (_1 === (7)) {
+ add = i.MatchRune(c);
+ } else if (_1 === (8)) {
+ add = c === (x$5 = i.Rune, (0 >= x$5.$length ? ($throwRuntimeError("index out of range"), undefined) : x$5.$array[x$5.$offset + 0]));
+ } else if (_1 === (9)) {
+ add = true;
+ } else if (_1 === (10)) {
+ add = !((c === 10));
+ } else {
+ $panic(new $String("bad inst"));
+ }
+ if (add) {
+ t = m.add(nextq, i.Out, nextPos, t.cap, nextCond, t);
+ }
+ if (!(t === ptrType$4.nil)) {
+ m.pool = $append(m.pool, t);
+ }
+ j = j + (1) >> 0;
+ }
+ runq.dense = $subslice(runq.dense, 0, 0);
+ };
+ machine.prototype.step = function(runq, nextq, pos, nextPos, c, nextCond) { return this.$val.step(runq, nextq, pos, nextPos, c, nextCond); };
+ machine.ptr.prototype.add = function(q, pc, pos, cap, cond, t) {
+ var $ptr, _1, cap, cond, d, i, j, j$1, m, opos, pc, pos, q, t, x, x$1, x$2, x$3, x$4, x$5, x$6, x$7, x$8;
+ m = this;
+ if (pc === 0) {
+ return t;
+ }
+ j = (x = q.sparse, ((pc < 0 || pc >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + pc]));
+ if (j < ((q.dense.$length >>> 0)) && ((x$1 = q.dense, ((j < 0 || j >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + j])).pc === pc)) {
+ return t;
+ }
+ j$1 = q.dense.$length;
+ q.dense = $subslice(q.dense, 0, (j$1 + 1 >> 0));
+ d = (x$2 = q.dense, ((j$1 < 0 || j$1 >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + j$1]));
+ d.t = ptrType$4.nil;
+ d.pc = pc;
+ (x$3 = q.sparse, ((pc < 0 || pc >= x$3.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + pc] = ((j$1 >>> 0))));
+ i = (x$4 = m.p.Inst, ((pc < 0 || pc >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + pc]));
+ _1 = i.Op;
+ if (_1 === (5)) {
+ } else if ((_1 === (0)) || (_1 === (1))) {
+ t = m.add(q, i.Out, pos, cap, cond, t);
+ t = m.add(q, i.Arg, pos, cap, cond, t);
+ } else if (_1 === (3)) {
+ if (((((i.Arg << 24 >>> 24)) & ~cond) << 24 >>> 24) === 0) {
+ t = m.add(q, i.Out, pos, cap, cond, t);
+ }
+ } else if (_1 === (6)) {
+ t = m.add(q, i.Out, pos, cap, cond, t);
+ } else if (_1 === (2)) {
+ if (((i.Arg >> 0)) < cap.$length) {
+ opos = (x$5 = i.Arg, ((x$5 < 0 || x$5 >= cap.$length) ? ($throwRuntimeError("index out of range"), undefined) : cap.$array[cap.$offset + x$5]));
+ (x$6 = i.Arg, ((x$6 < 0 || x$6 >= cap.$length) ? ($throwRuntimeError("index out of range"), undefined) : cap.$array[cap.$offset + x$6] = pos));
+ m.add(q, i.Out, pos, cap, cond, ptrType$4.nil);
+ (x$7 = i.Arg, ((x$7 < 0 || x$7 >= cap.$length) ? ($throwRuntimeError("index out of range"), undefined) : cap.$array[cap.$offset + x$7] = opos));
+ } else {
+ t = m.add(q, i.Out, pos, cap, cond, t);
+ }
+ } else if ((_1 === (4)) || (_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10))) {
+ if (t === ptrType$4.nil) {
+ t = m.alloc(i);
+ } else {
+ t.inst = i;
+ }
+ if (cap.$length > 0 && !((x$8 = t.cap, $indexPtr(x$8.$array, x$8.$offset + 0, ptrType$6)) === $indexPtr(cap.$array, cap.$offset + 0, ptrType$6))) {
+ $copySlice(t.cap, cap);
+ }
+ d.t = t;
+ t = ptrType$4.nil;
+ } else {
+ $panic(new $String("unhandled"));
+ }
+ return t;
+ };
+ machine.prototype.add = function(q, pc, pos, cap, cond, t) { return this.$val.add(q, pc, pos, cap, cond, t); };
+ machine.ptr.prototype.onepass = function(i, pos) {
+ var $ptr, _1, _i, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _ref, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, _v, flag, i, i$1, inst, m, pc, pos, r, r1, startCond, width, width1, x, x$1, x$2, x$3, x$4, x$5, x$6, x$7, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _ref = $f._ref; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; _v = $f._v; flag = $f.flag; i = $f.i; i$1 = $f.i$1; inst = $f.inst; m = $f.m; pc = $f.pc; pos = $f.pos; r = $f.r; r1 = $f.r1; startCond = $f.startCond; width = $f.width; width1 = $f.width1; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ inst = [inst];
+ m = this;
+ startCond = m.re.regexpRO.cond;
+ if (startCond === 255) {
+ $s = -1; return false;
+ }
+ m.matched = false;
+ _ref = m.matchcap;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i$1 = _i;
+ (x = m.matchcap, ((i$1 < 0 || i$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + i$1] = -1));
+ _i++;
+ }
+ _tmp = -1;
+ _tmp$1 = -1;
+ r = _tmp;
+ r1 = _tmp$1;
+ _tmp$2 = 0;
+ _tmp$3 = 0;
+ width = _tmp$2;
+ width1 = _tmp$3;
+ _r = i.step(pos); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ r = _tuple[0];
+ width = _tuple[1];
+ /* */ if (!((r === -1))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!((r === -1))) { */ case 2:
+ _r$1 = i.step(pos + width >> 0); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ r1 = _tuple$1[0];
+ width1 = _tuple$1[1];
+ /* } */ case 3:
+ flag = 0;
+ /* */ if (pos === 0) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (pos === 0) { */ case 5:
+ flag = syntax.EmptyOpContext(-1, r);
+ $s = 7; continue;
+ /* } else { */ case 6:
+ _r$2 = i.context(pos); /* */ $s = 8; case 8: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ flag = _r$2;
+ /* } */ case 7:
+ pc = m.op.Start;
+ inst[0] = $clone((x$1 = m.op.Inst, ((pc < 0 || pc >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + pc])), onePassInst);
+ if (!((pos === 0) && (((((inst[0].Inst.Arg << 24 >>> 24)) & ~flag) << 24 >>> 24) === 0) && m.re.regexpRO.prefix.length > 0)) { _v = false; $s = 11; continue s; }
+ _r$3 = i.canCheckPrefix(); /* */ $s = 12; case 12: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _v = _r$3; case 11:
+ /* */ if (_v) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (_v) { */ case 9:
+ _r$4 = i.hasPrefix(m.re); /* */ $s = 16; case 16: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ /* */ if (_r$4) { $s = 13; continue; }
+ /* */ $s = 14; continue;
+ /* if (_r$4) { */ case 13:
+ pos = pos + (m.re.regexpRO.prefix.length) >> 0;
+ _r$5 = i.step(pos); /* */ $s = 17; case 17: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _tuple$2 = _r$5;
+ r = _tuple$2[0];
+ width = _tuple$2[1];
+ _r$6 = i.step(pos + width >> 0); /* */ $s = 18; case 18: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple$3 = _r$6;
+ r1 = _tuple$3[0];
+ width1 = _tuple$3[1];
+ _r$7 = i.context(pos); /* */ $s = 19; case 19: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ flag = _r$7;
+ pc = ((m.re.regexpRO.prefixEnd >> 0));
+ $s = 15; continue;
+ /* } else { */ case 14:
+ $s = -1; return m.matched;
+ /* } */ case 15:
+ /* } */ case 10:
+ /* while (true) { */ case 20:
+ onePassInst.copy(inst[0], (x$2 = m.op.Inst, ((pc < 0 || pc >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + pc])));
+ pc = ((inst[0].Inst.Out >> 0));
+ _1 = inst[0].Inst.Op;
+ /* */ if (_1 === (4)) { $s = 23; continue; }
+ /* */ if (_1 === (7)) { $s = 24; continue; }
+ /* */ if (_1 === (8)) { $s = 25; continue; }
+ /* */ if (_1 === (9)) { $s = 26; continue; }
+ /* */ if (_1 === (10)) { $s = 27; continue; }
+ /* */ if ((_1 === (0)) || (_1 === (1))) { $s = 28; continue; }
+ /* */ if (_1 === (5)) { $s = 29; continue; }
+ /* */ if (_1 === (6)) { $s = 30; continue; }
+ /* */ if (_1 === (3)) { $s = 31; continue; }
+ /* */ if (_1 === (2)) { $s = 32; continue; }
+ /* */ $s = 33; continue;
+ /* if (_1 === (4)) { */ case 23:
+ m.matched = true;
+ if (m.matchcap.$length > 0) {
+ (x$3 = m.matchcap, (0 >= x$3.$length ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + 0] = 0));
+ (x$4 = m.matchcap, (1 >= x$4.$length ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + 1] = pos));
+ }
+ $s = -1; return m.matched;
+ /* } else if (_1 === (7)) { */ case 24:
+ if (!inst[0].Inst.MatchRune(r)) {
+ $s = -1; return m.matched;
+ }
+ $s = 34; continue;
+ /* } else if (_1 === (8)) { */ case 25:
+ if (!((r === (x$5 = inst[0].Inst.Rune, (0 >= x$5.$length ? ($throwRuntimeError("index out of range"), undefined) : x$5.$array[x$5.$offset + 0]))))) {
+ $s = -1; return m.matched;
+ }
+ $s = 34; continue;
+ /* } else if (_1 === (9)) { */ case 26:
+ $s = 34; continue;
+ /* } else if (_1 === (10)) { */ case 27:
+ if (r === 10) {
+ $s = -1; return m.matched;
+ }
+ $s = 34; continue;
+ /* } else if ((_1 === (0)) || (_1 === (1))) { */ case 28:
+ pc = ((onePassNext(inst[0], r) >> 0));
+ /* continue; */ $s = 20; continue;
+ $s = 34; continue;
+ /* } else if (_1 === (5)) { */ case 29:
+ $s = -1; return m.matched;
+ /* } else if (_1 === (6)) { */ case 30:
+ /* continue; */ $s = 20; continue;
+ $s = 34; continue;
+ /* } else if (_1 === (3)) { */ case 31:
+ if (!((((((inst[0].Inst.Arg << 24 >>> 24)) & ~flag) << 24 >>> 24) === 0))) {
+ $s = -1; return m.matched;
+ }
+ /* continue; */ $s = 20; continue;
+ $s = 34; continue;
+ /* } else if (_1 === (2)) { */ case 32:
+ if (((inst[0].Inst.Arg >> 0)) < m.matchcap.$length) {
+ (x$6 = m.matchcap, x$7 = inst[0].Inst.Arg, ((x$7 < 0 || x$7 >= x$6.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$6.$array[x$6.$offset + x$7] = pos));
+ }
+ /* continue; */ $s = 20; continue;
+ $s = 34; continue;
+ /* } else { */ case 33:
+ $panic(new $String("bad inst"));
+ /* } */ case 34:
+ case 22:
+ if (width === 0) {
+ /* break; */ $s = 21; continue;
+ }
+ flag = syntax.EmptyOpContext(r, r1);
+ pos = pos + (width) >> 0;
+ _tmp$4 = r1;
+ _tmp$5 = width1;
+ r = _tmp$4;
+ width = _tmp$5;
+ /* */ if (!((r === -1))) { $s = 35; continue; }
+ /* */ $s = 36; continue;
+ /* if (!((r === -1))) { */ case 35:
+ _r$8 = i.step(pos + width >> 0); /* */ $s = 37; case 37: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _tuple$4 = _r$8;
+ r1 = _tuple$4[0];
+ width1 = _tuple$4[1];
+ /* } */ case 36:
+ /* } */ $s = 20; continue; case 21:
+ $s = -1; return m.matched;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: machine.ptr.prototype.onepass }; } $f.$ptr = $ptr; $f._1 = _1; $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._ref = _ref; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f._v = _v; $f.flag = flag; $f.i = i; $f.i$1 = i$1; $f.inst = inst; $f.m = m; $f.pc = pc; $f.pos = pos; $f.r = r; $f.r1 = r1; $f.startCond = startCond; $f.width = width; $f.width1 = width1; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ machine.prototype.onepass = function(i, pos) { return this.$val.onepass(i, pos); };
+ Regexp.ptr.prototype.doMatch = function(r, b, s) {
+ var $ptr, _r, b, r, re, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; b = $f.b; r = $f.r; re = $f.re; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = this;
+ _r = re.doExecute(r, b, s, 0, 0, sliceType$3.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return !(_r === sliceType$3.nil);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.doMatch }; } $f.$ptr = $ptr; $f._r = _r; $f.b = b; $f.r = r; $f.re = re; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.doMatch = function(r, b, s) { return this.$val.doMatch(r, b, s); };
+ Regexp.ptr.prototype.doExecute = function(r, b, s, pos, ncap, dstCap) {
+ var $ptr, _r, _r$1, _r$2, b, dstCap, i, m, ncap, pos, r, re, s, size, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; b = $f.b; dstCap = $f.dstCap; i = $f.i; m = $f.m; ncap = $f.ncap; pos = $f.pos; r = $f.r; re = $f.re; s = $f.s; size = $f.size; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = this;
+ m = re.get();
+ i = $ifaceNil;
+ size = 0;
+ if (!($interfaceIsEqual(r, $ifaceNil))) {
+ i = m.newInputReader(r);
+ } else if (!(b === sliceType$2.nil)) {
+ i = m.newInputBytes(b);
+ size = b.$length;
+ } else {
+ i = m.newInputString(s);
+ size = s.length;
+ }
+ /* */ if (!(m.op === notOnePass)) { $s = 1; continue; }
+ /* */ if (size < m.maxBitStateLen && $interfaceIsEqual(r, $ifaceNil)) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!(m.op === notOnePass)) { */ case 1:
+ _r = m.onepass(i, pos); /* */ $s = 7; case 7: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (!_r) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (!_r) { */ case 5:
+ re.put(m);
+ $s = -1; return sliceType$3.nil;
+ /* } */ case 6:
+ $s = 4; continue;
+ /* } else if (size < m.maxBitStateLen && $interfaceIsEqual(r, $ifaceNil)) { */ case 2:
+ if (m.b === ptrType.nil) {
+ m.b = newBitState(m.p);
+ }
+ _r$1 = m.backtrack(i, pos, size, ncap); /* */ $s = 10; case 10: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ /* */ if (!_r$1) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if (!_r$1) { */ case 8:
+ re.put(m);
+ $s = -1; return sliceType$3.nil;
+ /* } */ case 9:
+ $s = 4; continue;
+ /* } else { */ case 3:
+ m.init(ncap);
+ _r$2 = m.match(i, pos); /* */ $s = 13; case 13: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ /* */ if (!_r$2) { $s = 11; continue; }
+ /* */ $s = 12; continue;
+ /* if (!_r$2) { */ case 11:
+ re.put(m);
+ $s = -1; return sliceType$3.nil;
+ /* } */ case 12:
+ /* } */ case 4:
+ dstCap = $appendSlice(dstCap, m.matchcap);
+ if (dstCap === sliceType$3.nil) {
+ dstCap = $subslice(new sliceType$3(arrayNoInts), 0, 0);
+ }
+ re.put(m);
+ $s = -1; return dstCap;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.doExecute }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.b = b; $f.dstCap = dstCap; $f.i = i; $f.m = m; $f.ncap = ncap; $f.pos = pos; $f.r = r; $f.re = re; $f.s = s; $f.size = size; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.doExecute = function(r, b, s, pos, ncap, dstCap) { return this.$val.doExecute(r, b, s, pos, ncap, dstCap); };
+ onePassPrefix = function(p) {
+ var $ptr, _tmp, _tmp$1, _tmp$10, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, buf, complete, i, p, pc, prefix, x, x$1, x$2, x$3, x$4, x$5, x$6, x$7, x$8;
+ prefix = "";
+ complete = false;
+ pc = 0;
+ i = (x = p.Inst, x$1 = p.Start, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ if (!((i.Op === 3)) || ((((((i.Arg << 24 >>> 24))) & 4) >>> 0) === 0)) {
+ _tmp = "";
+ _tmp$1 = i.Op === 4;
+ _tmp$2 = ((p.Start >>> 0));
+ prefix = _tmp;
+ complete = _tmp$1;
+ pc = _tmp$2;
+ return [prefix, complete, pc];
+ }
+ pc = i.Out;
+ i = (x$2 = p.Inst, ((pc < 0 || pc >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + pc]));
+ while (true) {
+ if (!(i.Op === 6)) { break; }
+ pc = i.Out;
+ i = (x$3 = p.Inst, ((pc < 0 || pc >= x$3.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + pc]));
+ }
+ if (!((iop(i) === 7)) || !((i.Rune.$length === 1))) {
+ _tmp$3 = "";
+ _tmp$4 = i.Op === 4;
+ _tmp$5 = ((p.Start >>> 0));
+ prefix = _tmp$3;
+ complete = _tmp$4;
+ pc = _tmp$5;
+ return [prefix, complete, pc];
+ }
+ buf = new bytes.Buffer.ptr(sliceType$2.nil, 0, arrayType$1.zero(), 0);
+ while (true) {
+ if (!((iop(i) === 7) && (i.Rune.$length === 1) && (((((i.Arg << 16 >>> 16)) & 1) >>> 0) === 0))) { break; }
+ buf.WriteRune((x$4 = i.Rune, (0 >= x$4.$length ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + 0])));
+ _tmp$6 = i.Out;
+ _tmp$7 = (x$5 = p.Inst, x$6 = i.Out, ((x$6 < 0 || x$6 >= x$5.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$5.$array[x$5.$offset + x$6]));
+ pc = _tmp$6;
+ i = _tmp$7;
+ }
+ if ((i.Op === 3) && !((((((i.Arg << 24 >>> 24)) & 8) >>> 0) === 0)) && ((x$7 = p.Inst, x$8 = i.Out, ((x$8 < 0 || x$8 >= x$7.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$7.$array[x$7.$offset + x$8])).Op === 4)) {
+ complete = true;
+ }
+ _tmp$8 = buf.String();
+ _tmp$9 = complete;
+ _tmp$10 = pc;
+ prefix = _tmp$8;
+ complete = _tmp$9;
+ pc = _tmp$10;
+ return [prefix, complete, pc];
+ };
+ onePassNext = function(i, r) {
+ var $ptr, i, next, r, x;
+ next = i.Inst.MatchRunePos(r);
+ if (next >= 0) {
+ return (x = i.Next, ((next < 0 || next >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + next]));
+ }
+ if (i.Inst.Op === 1) {
+ return i.Inst.Out;
+ }
+ return 0;
+ };
+ iop = function(i) {
+ var $ptr, _1, i, op;
+ op = i.Op;
+ _1 = op;
+ if ((_1 === (8)) || (_1 === (9)) || (_1 === (10))) {
+ op = 7;
+ }
+ return op;
+ };
+ queueOnePass.ptr.prototype.empty = function() {
+ var $ptr, q;
+ q = this;
+ return q.nextIndex >= q.size;
+ };
+ queueOnePass.prototype.empty = function() { return this.$val.empty(); };
+ queueOnePass.ptr.prototype.next = function() {
+ var $ptr, n, q, x, x$1;
+ n = 0;
+ q = this;
+ n = (x = q.dense, x$1 = q.nextIndex, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ q.nextIndex = q.nextIndex + (1) >>> 0;
+ return n;
+ };
+ queueOnePass.prototype.next = function() { return this.$val.next(); };
+ queueOnePass.ptr.prototype.clear = function() {
+ var $ptr, q;
+ q = this;
+ q.size = 0;
+ q.nextIndex = 0;
+ };
+ queueOnePass.prototype.clear = function() { return this.$val.clear(); };
+ queueOnePass.ptr.prototype.contains = function(u) {
+ var $ptr, q, u, x, x$1, x$2, x$3;
+ q = this;
+ if (u >= ((q.sparse.$length >>> 0))) {
+ return false;
+ }
+ return (x = q.sparse, ((u < 0 || u >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + u])) < q.size && ((x$1 = q.dense, x$2 = (x$3 = q.sparse, ((u < 0 || u >= x$3.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + u])), ((x$2 < 0 || x$2 >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + x$2])) === u);
+ };
+ queueOnePass.prototype.contains = function(u) { return this.$val.contains(u); };
+ queueOnePass.ptr.prototype.insert = function(u) {
+ var $ptr, q, u;
+ q = this;
+ if (!q.contains(u)) {
+ q.insertNew(u);
+ }
+ };
+ queueOnePass.prototype.insert = function(u) { return this.$val.insert(u); };
+ queueOnePass.ptr.prototype.insertNew = function(u) {
+ var $ptr, q, u, x, x$1, x$2;
+ q = this;
+ if (u >= ((q.sparse.$length >>> 0))) {
+ return;
+ }
+ (x = q.sparse, ((u < 0 || u >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + u] = q.size));
+ (x$1 = q.dense, x$2 = q.size, ((x$2 < 0 || x$2 >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + x$2] = u));
+ q.size = q.size + (1) >>> 0;
+ };
+ queueOnePass.prototype.insertNew = function(u) { return this.$val.insertNew(u); };
+ newQueue = function(size) {
+ var $ptr, q, size;
+ q = ptrType$7.nil;
+ q = new queueOnePass.ptr($makeSlice(sliceType$1, size), $makeSlice(sliceType$1, size), 0, 0);
+ return q;
+ };
+ mergeRuneSets = function(leftRunes, rightRunes, leftPC, rightPC) {
+ var $ptr, _r, _r$1, _r$2, _r$3, _tmp, _tmp$1, extend, ix, leftLen, leftPC, leftRunes, lx, merged, next, ok, rightLen, rightPC, rightRunes, rx, x, x$1, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; extend = $f.extend; ix = $f.ix; leftLen = $f.leftLen; leftPC = $f.leftPC; leftRunes = $f.leftRunes; lx = $f.lx; merged = $f.merged; next = $f.next; ok = $f.ok; rightLen = $f.rightLen; rightPC = $f.rightPC; rightRunes = $f.rightRunes; rx = $f.rx; x = $f.x; x$1 = $f.x$1; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ ix = [ix];
+ lx = [lx];
+ merged = [merged];
+ next = [next];
+ ok = [ok];
+ rx = [rx];
+ leftLen = leftRunes.$get().$length;
+ rightLen = rightRunes.$get().$length;
+ if (!(((leftLen & 1) === 0)) || !(((rightLen & 1) === 0))) {
+ $panic(new $String("mergeRuneSets odd length []rune"));
+ }
+ _tmp = 0;
+ _tmp$1 = 0;
+ lx[0] = _tmp;
+ rx[0] = _tmp$1;
+ merged[0] = $makeSlice(sliceType, 0);
+ next[0] = $makeSlice(sliceType$1, 0);
+ ok[0] = true;
+ $deferred.push([(function(ix, lx, merged, next, ok, rx) { return function() {
+ var $ptr;
+ if (!ok[0]) {
+ merged[0] = sliceType.nil;
+ next[0] = sliceType$1.nil;
+ }
+ }; })(ix, lx, merged, next, ok, rx), []]);
+ ix[0] = -1;
+ extend = (function(ix, lx, merged, next, ok, rx) { return function(newLow, newArray, pc) {
+ var $ptr, newArray, newLow, pc, x, x$1, x$2, x$3, x$4, x$5;
+ if (ix[0] > 0 && (x = newArray.$get(), x$1 = newLow.$get(), ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1])) <= ((ix[0] < 0 || ix[0] >= merged[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : merged[0].$array[merged[0].$offset + ix[0]])) {
+ return false;
+ }
+ merged[0] = $append(merged[0], (x$2 = newArray.$get(), x$3 = newLow.$get(), ((x$3 < 0 || x$3 >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + x$3])), (x$4 = newArray.$get(), x$5 = newLow.$get() + 1 >> 0, ((x$5 < 0 || x$5 >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + x$5])));
+ newLow.$set(newLow.$get() + (2) >> 0);
+ ix[0] = ix[0] + (2) >> 0;
+ next[0] = $append(next[0], pc);
+ return true;
+ }; })(ix, lx, merged, next, ok, rx);
+ /* while (true) { */ case 1:
+ /* if (!(lx[0] < leftLen || rx[0] < rightLen)) { break; } */ if(!(lx[0] < leftLen || rx[0] < rightLen)) { $s = 2; continue; }
+ /* */ if (rx[0] >= rightLen) { $s = 4; continue; }
+ /* */ if (lx[0] >= leftLen) { $s = 5; continue; }
+ /* */ if ((x = rightRunes.$get(), ((rx[0] < 0 || rx[0] >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + rx[0]])) < (x$1 = leftRunes.$get(), ((lx[0] < 0 || lx[0] >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + lx[0]]))) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (rx[0] >= rightLen) { */ case 4:
+ _r = extend((lx.$ptr || (lx.$ptr = new ptrType$6(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, lx))), leftRunes, leftPC); /* */ $s = 9; case 9: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ ok[0] = _r;
+ $s = 8; continue;
+ /* } else if (lx[0] >= leftLen) { */ case 5:
+ _r$1 = extend((rx.$ptr || (rx.$ptr = new ptrType$6(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, rx))), rightRunes, rightPC); /* */ $s = 10; case 10: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ ok[0] = _r$1;
+ $s = 8; continue;
+ /* } else if ((x = rightRunes.$get(), ((rx[0] < 0 || rx[0] >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + rx[0]])) < (x$1 = leftRunes.$get(), ((lx[0] < 0 || lx[0] >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + lx[0]]))) { */ case 6:
+ _r$2 = extend((rx.$ptr || (rx.$ptr = new ptrType$6(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, rx))), rightRunes, rightPC); /* */ $s = 11; case 11: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ ok[0] = _r$2;
+ $s = 8; continue;
+ /* } else { */ case 7:
+ _r$3 = extend((lx.$ptr || (lx.$ptr = new ptrType$6(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, lx))), leftRunes, leftPC); /* */ $s = 12; case 12: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ ok[0] = _r$3;
+ /* } */ case 8:
+ case 3:
+ if (!ok[0]) {
+ $s = -1; return [noRune, noNext];
+ }
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return [merged[0], next[0]];
+ /* */ } return; } } catch(err) { $err = err; $s = -1; return [sliceType.nil, sliceType$1.nil]; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: mergeRuneSets }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f.extend = extend; $f.ix = ix; $f.leftLen = leftLen; $f.leftPC = leftPC; $f.leftRunes = leftRunes; $f.lx = lx; $f.merged = merged; $f.next = next; $f.ok = ok; $f.rightLen = rightLen; $f.rightPC = rightPC; $f.rightRunes = rightRunes; $f.rx = rx; $f.x = x; $f.x$1 = x$1; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ cleanupOnePass = function(prog, original) {
+ var $ptr, _1, _i, _ref, instOriginal, ix, original, prog, x, x$1, x$2;
+ _ref = original.Inst;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ ix = _i;
+ instOriginal = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), syntax.Inst);
+ _1 = instOriginal.Op;
+ if ((_1 === (0)) || (_1 === (1)) || (_1 === (7))) {
+ } else if ((_1 === (2)) || (_1 === (3)) || (_1 === (6)) || (_1 === (4)) || (_1 === (5))) {
+ (x = prog.Inst, ((ix < 0 || ix >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + ix])).Next = sliceType$1.nil;
+ } else if ((_1 === (8)) || (_1 === (9)) || (_1 === (10))) {
+ (x$1 = prog.Inst, ((ix < 0 || ix >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + ix])).Next = sliceType$1.nil;
+ onePassInst.copy((x$2 = prog.Inst, ((ix < 0 || ix >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + ix])), new onePassInst.ptr($clone(instOriginal, syntax.Inst), sliceType$1.nil));
+ }
+ _i++;
+ }
+ };
+ onePassCopy = function(prog) {
+ var $ptr, _1, _i, _i$1, _ref, _ref$1, _tmp, _tmp$1, _tmp$2, _tmp$3, inst, instAlt, instOther, p, p_A_Alt, p_A_Other, p_B_Alt, p_B_Other, patch, pc, prog, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ p = new onePassProg.ptr(sliceType$7.nil, prog.Start, prog.NumCap);
+ _ref = prog.Inst;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ inst = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), syntax.Inst);
+ p.Inst = $append(p.Inst, new onePassInst.ptr($clone(inst, syntax.Inst), sliceType$1.nil));
+ _i++;
+ }
+ _ref$1 = p.Inst;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ pc = _i$1;
+ _1 = (x = p.Inst, ((pc < 0 || pc >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + pc])).Inst.Op;
+ if ((_1 === (0)) || (_1 === (1))) {
+ p_A_Other = (x$1 = (x$2 = p.Inst, ((pc < 0 || pc >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + pc])), (x$1.$ptr_Out || (x$1.$ptr_Out = new ptrType$8(function() { return this.$target.Inst.Out; }, function($v) { this.$target.Inst.Out = $v; }, x$1))));
+ p_A_Alt = (x$3 = (x$4 = p.Inst, ((pc < 0 || pc >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + pc])), (x$3.$ptr_Arg || (x$3.$ptr_Arg = new ptrType$8(function() { return this.$target.Inst.Arg; }, function($v) { this.$target.Inst.Arg = $v; }, x$3))));
+ instAlt = $clone((x$5 = p.Inst, x$6 = p_A_Alt.$get(), ((x$6 < 0 || x$6 >= x$5.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$5.$array[x$5.$offset + x$6])), onePassInst);
+ if (!((instAlt.Inst.Op === 0) || (instAlt.Inst.Op === 1))) {
+ _tmp = p_A_Other;
+ _tmp$1 = p_A_Alt;
+ p_A_Alt = _tmp;
+ p_A_Other = _tmp$1;
+ onePassInst.copy(instAlt, (x$7 = p.Inst, x$8 = p_A_Alt.$get(), ((x$8 < 0 || x$8 >= x$7.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$7.$array[x$7.$offset + x$8])));
+ if (!((instAlt.Inst.Op === 0) || (instAlt.Inst.Op === 1))) {
+ _i$1++;
+ continue;
+ }
+ }
+ instOther = $clone((x$9 = p.Inst, x$10 = p_A_Other.$get(), ((x$10 < 0 || x$10 >= x$9.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$9.$array[x$9.$offset + x$10])), onePassInst);
+ if ((instOther.Inst.Op === 0) || (instOther.Inst.Op === 1)) {
+ _i$1++;
+ continue;
+ }
+ p_B_Alt = (x$11 = (x$12 = p.Inst, x$13 = p_A_Alt.$get(), ((x$13 < 0 || x$13 >= x$12.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$12.$array[x$12.$offset + x$13])), (x$11.$ptr_Out || (x$11.$ptr_Out = new ptrType$8(function() { return this.$target.Inst.Out; }, function($v) { this.$target.Inst.Out = $v; }, x$11))));
+ p_B_Other = (x$14 = (x$15 = p.Inst, x$16 = p_A_Alt.$get(), ((x$16 < 0 || x$16 >= x$15.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$15.$array[x$15.$offset + x$16])), (x$14.$ptr_Arg || (x$14.$ptr_Arg = new ptrType$8(function() { return this.$target.Inst.Arg; }, function($v) { this.$target.Inst.Arg = $v; }, x$14))));
+ patch = false;
+ if (instAlt.Inst.Out === ((pc >>> 0))) {
+ patch = true;
+ } else if (instAlt.Inst.Arg === ((pc >>> 0))) {
+ patch = true;
+ _tmp$2 = p_B_Other;
+ _tmp$3 = p_B_Alt;
+ p_B_Alt = _tmp$2;
+ p_B_Other = _tmp$3;
+ }
+ if (patch) {
+ p_B_Alt.$set(p_A_Other.$get());
+ }
+ if (p_A_Other.$get() === p_B_Alt.$get()) {
+ p_A_Alt.$set(p_B_Other.$get());
+ }
+ } else {
+ _i$1++;
+ continue;
+ }
+ _i$1++;
+ }
+ return p;
+ };
+ runeSlice.prototype.Len = function() {
+ var $ptr, p;
+ p = this;
+ return p.$length;
+ };
+ $ptrType(runeSlice).prototype.Len = function() { return this.$get().Len(); };
+ runeSlice.prototype.Less = function(i, j) {
+ var $ptr, i, j, p;
+ p = this;
+ return ((i < 0 || i >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + i]) < ((j < 0 || j >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + j]);
+ };
+ $ptrType(runeSlice).prototype.Less = function(i, j) { return this.$get().Less(i, j); };
+ runeSlice.prototype.Swap = function(i, j) {
+ var $ptr, _tmp, _tmp$1, i, j, p;
+ p = this;
+ _tmp = ((j < 0 || j >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + j]);
+ _tmp$1 = ((i < 0 || i >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + i]);
+ ((i < 0 || i >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + i] = _tmp);
+ ((j < 0 || j >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + j] = _tmp$1);
+ };
+ $ptrType(runeSlice).prototype.Swap = function(i, j) { return this.$get().Swap(i, j); };
+ makeOnePass = function(p) {
+ var $ptr, _i, _r, _ref, check, i, instQueue, m, onePassRunes, p, pc, visitQueue, x, x$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _ref = $f._ref; check = $f.check; i = $f.i; instQueue = $f.instQueue; m = $f.m; onePassRunes = $f.onePassRunes; p = $f.p; pc = $f.pc; visitQueue = $f.visitQueue; x = $f.x; x$1 = $f.x$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ check = [check];
+ instQueue = [instQueue];
+ onePassRunes = [onePassRunes];
+ p = [p];
+ visitQueue = [visitQueue];
+ if (p[0].Inst.$length >= 1000) {
+ $s = -1; return notOnePass;
+ }
+ instQueue[0] = newQueue(p[0].Inst.$length);
+ visitQueue[0] = newQueue(p[0].Inst.$length);
+ check[0] = $throwNilPointerError;
+ onePassRunes[0] = $makeSlice(sliceType$8, p[0].Inst.$length);
+ check[0] = (function(check, instQueue, onePassRunes, p, visitQueue) { return function $b(pc, m) {
+ var $ptr, _1, _entry, _entry$1, _entry$2, _entry$3, _key, _key$1, _key$2, _key$3, _key$4, _key$5, _key$6, _key$7, _q, _q$1, _q$2, _q$3, _q$4, _r, _r$1, _r$2, _r$3, _r$4, _tmp, _tmp$1, _tmp$2, _tmp$3, _tuple, _v, i, i$1, i$2, i$3, i$4, inst, m, matchArg, matchOut, ok, pc, r0, r0$1, r1, r1$1, runes, runes$1, x, x$1, x$2, x$3, x$4, x$5, x$6, x$7, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _entry = $f._entry; _entry$1 = $f._entry$1; _entry$2 = $f._entry$2; _entry$3 = $f._entry$3; _key = $f._key; _key$1 = $f._key$1; _key$2 = $f._key$2; _key$3 = $f._key$3; _key$4 = $f._key$4; _key$5 = $f._key$5; _key$6 = $f._key$6; _key$7 = $f._key$7; _q = $f._q; _q$1 = $f._q$1; _q$2 = $f._q$2; _q$3 = $f._q$3; _q$4 = $f._q$4; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tuple = $f._tuple; _v = $f._v; i = $f.i; i$1 = $f.i$1; i$2 = $f.i$2; i$3 = $f.i$3; i$4 = $f.i$4; inst = $f.inst; m = $f.m; matchArg = $f.matchArg; matchOut = $f.matchOut; ok = $f.ok; pc = $f.pc; r0 = $f.r0; r0$1 = $f.r0$1; r1 = $f.r1; r1$1 = $f.r1$1; runes = $f.runes; runes$1 = $f.runes$1; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ ok = false;
+ ok = true;
+ inst = (x = p[0].Inst, ((pc < 0 || pc >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + pc]));
+ if (visitQueue[0].contains(pc)) {
+ $s = -1; return ok;
+ }
+ visitQueue[0].insert(pc);
+ _1 = inst.Inst.Op;
+ /* */ if ((_1 === (0)) || (_1 === (1))) { $s = 2; continue; }
+ /* */ if ((_1 === (2)) || (_1 === (6))) { $s = 3; continue; }
+ /* */ if (_1 === (3)) { $s = 4; continue; }
+ /* */ if ((_1 === (4)) || (_1 === (5))) { $s = 5; continue; }
+ /* */ if (_1 === (7)) { $s = 6; continue; }
+ /* */ if (_1 === (8)) { $s = 7; continue; }
+ /* */ if (_1 === (9)) { $s = 8; continue; }
+ /* */ if (_1 === (10)) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if ((_1 === (0)) || (_1 === (1))) { */ case 2:
+ _r = check[0](inst.Inst.Out, m); /* */ $s = 12; case 12: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ if (!(_r)) { _v = false; $s = 11; continue s; }
+ _r$1 = check[0](inst.Inst.Arg, m); /* */ $s = 13; case 13: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _v = _r$1; case 11:
+ ok = _v;
+ matchOut = (_entry = m[$Uint32.keyFor(inst.Inst.Out)], _entry !== undefined ? _entry.v : false);
+ matchArg = (_entry$1 = m[$Uint32.keyFor(inst.Inst.Arg)], _entry$1 !== undefined ? _entry$1.v : false);
+ if (matchOut && matchArg) {
+ ok = false;
+ /* break; */ $s = 1; continue;
+ }
+ if (matchArg) {
+ _tmp = inst.Inst.Arg;
+ _tmp$1 = inst.Inst.Out;
+ inst.Inst.Out = _tmp;
+ inst.Inst.Arg = _tmp$1;
+ _tmp$2 = matchArg;
+ _tmp$3 = matchOut;
+ matchOut = _tmp$2;
+ matchArg = _tmp$3;
+ }
+ if (matchOut) {
+ _key = pc; (m || $throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(_key)] = { k: _key, v: true };
+ inst.Inst.Op = 1;
+ }
+ _r$2 = mergeRuneSets($indexPtr(onePassRunes[0].$array, onePassRunes[0].$offset + inst.Inst.Out, ptrType$9), $indexPtr(onePassRunes[0].$array, onePassRunes[0].$offset + inst.Inst.Arg, ptrType$9), inst.Inst.Out, inst.Inst.Arg); /* */ $s = 14; case 14: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple = _r$2;
+ ((pc < 0 || pc >= onePassRunes[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : onePassRunes[0].$array[onePassRunes[0].$offset + pc] = _tuple[0]);
+ inst.Next = _tuple[1];
+ if (inst.Next.$length > 0 && ((x$1 = inst.Next, (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0])) === 4294967295)) {
+ ok = false;
+ /* break; */ $s = 1; continue;
+ }
+ $s = 10; continue;
+ /* } else if ((_1 === (2)) || (_1 === (6))) { */ case 3:
+ _r$3 = check[0](inst.Inst.Out, m); /* */ $s = 15; case 15: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ ok = _r$3;
+ _key$1 = pc; (m || $throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(_key$1)] = { k: _key$1, v: (_entry$2 = m[$Uint32.keyFor(inst.Inst.Out)], _entry$2 !== undefined ? _entry$2.v : false) };
+ ((pc < 0 || pc >= onePassRunes[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : onePassRunes[0].$array[onePassRunes[0].$offset + pc] = $appendSlice(new sliceType([]), (x$2 = inst.Inst.Out, ((x$2 < 0 || x$2 >= onePassRunes[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : onePassRunes[0].$array[onePassRunes[0].$offset + x$2]))));
+ inst.Next = new sliceType$1([]);
+ i = (_q = ((pc < 0 || pc >= onePassRunes[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : onePassRunes[0].$array[onePassRunes[0].$offset + pc]).$length / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ while (true) {
+ if (!(i >= 0)) { break; }
+ inst.Next = $append(inst.Next, inst.Inst.Out);
+ i = i - (1) >> 0;
+ }
+ $s = 10; continue;
+ /* } else if (_1 === (3)) { */ case 4:
+ _r$4 = check[0](inst.Inst.Out, m); /* */ $s = 16; case 16: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ ok = _r$4;
+ _key$2 = pc; (m || $throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(_key$2)] = { k: _key$2, v: (_entry$3 = m[$Uint32.keyFor(inst.Inst.Out)], _entry$3 !== undefined ? _entry$3.v : false) };
+ ((pc < 0 || pc >= onePassRunes[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : onePassRunes[0].$array[onePassRunes[0].$offset + pc] = $appendSlice(new sliceType([]), (x$3 = inst.Inst.Out, ((x$3 < 0 || x$3 >= onePassRunes[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : onePassRunes[0].$array[onePassRunes[0].$offset + x$3]))));
+ inst.Next = new sliceType$1([]);
+ i$1 = (_q$1 = ((pc < 0 || pc >= onePassRunes[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : onePassRunes[0].$array[onePassRunes[0].$offset + pc]).$length / 2, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero"));
+ while (true) {
+ if (!(i$1 >= 0)) { break; }
+ inst.Next = $append(inst.Next, inst.Inst.Out);
+ i$1 = i$1 - (1) >> 0;
+ }
+ $s = 10; continue;
+ /* } else if ((_1 === (4)) || (_1 === (5))) { */ case 5:
+ _key$3 = pc; (m || $throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(_key$3)] = { k: _key$3, v: inst.Inst.Op === 4 };
+ /* break; */ $s = 1; continue;
+ $s = 10; continue;
+ /* } else if (_1 === (7)) { */ case 6:
+ _key$4 = pc; (m || $throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(_key$4)] = { k: _key$4, v: false };
+ if (inst.Next.$length > 0) {
+ /* break; */ $s = 1; continue;
+ }
+ instQueue[0].insert(inst.Inst.Out);
+ if (inst.Inst.Rune.$length === 0) {
+ ((pc < 0 || pc >= onePassRunes[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : onePassRunes[0].$array[onePassRunes[0].$offset + pc] = new sliceType([]));
+ inst.Next = new sliceType$1([inst.Inst.Out]);
+ /* break; */ $s = 1; continue;
+ }
+ runes = $makeSlice(sliceType, 0);
+ /* */ if ((inst.Inst.Rune.$length === 1) && !((((((inst.Inst.Arg << 16 >>> 16)) & 1) >>> 0) === 0))) { $s = 17; continue; }
+ /* */ $s = 18; continue;
+ /* if ((inst.Inst.Rune.$length === 1) && !((((((inst.Inst.Arg << 16 >>> 16)) & 1) >>> 0) === 0))) { */ case 17:
+ r0 = (x$4 = inst.Inst.Rune, (0 >= x$4.$length ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + 0]));
+ runes = $append(runes, r0, r0);
+ r1 = unicode.SimpleFold(r0);
+ while (true) {
+ if (!(!((r1 === r0)))) { break; }
+ runes = $append(runes, r1, r1);
+ r1 = unicode.SimpleFold(r1);
+ }
+ $r = sort.Sort(($subslice(new runeSlice(runes.$array), runes.$offset, runes.$offset + runes.$length))); /* */ $s = 20; case 20: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 19; continue;
+ /* } else { */ case 18:
+ runes = $appendSlice(runes, inst.Inst.Rune);
+ /* } */ case 19:
+ ((pc < 0 || pc >= onePassRunes[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : onePassRunes[0].$array[onePassRunes[0].$offset + pc] = runes);
+ inst.Next = new sliceType$1([]);
+ i$2 = (_q$2 = ((pc < 0 || pc >= onePassRunes[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : onePassRunes[0].$array[onePassRunes[0].$offset + pc]).$length / 2, (_q$2 === _q$2 && _q$2 !== 1/0 && _q$2 !== -1/0) ? _q$2 >> 0 : $throwRuntimeError("integer divide by zero"));
+ while (true) {
+ if (!(i$2 >= 0)) { break; }
+ inst.Next = $append(inst.Next, inst.Inst.Out);
+ i$2 = i$2 - (1) >> 0;
+ }
+ inst.Inst.Op = 7;
+ $s = 10; continue;
+ /* } else if (_1 === (8)) { */ case 7:
+ _key$5 = pc; (m || $throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(_key$5)] = { k: _key$5, v: false };
+ if (inst.Next.$length > 0) {
+ /* break; */ $s = 1; continue;
+ }
+ instQueue[0].insert(inst.Inst.Out);
+ runes$1 = new sliceType([]);
+ /* */ if (!((((((inst.Inst.Arg << 16 >>> 16)) & 1) >>> 0) === 0))) { $s = 21; continue; }
+ /* */ $s = 22; continue;
+ /* if (!((((((inst.Inst.Arg << 16 >>> 16)) & 1) >>> 0) === 0))) { */ case 21:
+ r0$1 = (x$5 = inst.Inst.Rune, (0 >= x$5.$length ? ($throwRuntimeError("index out of range"), undefined) : x$5.$array[x$5.$offset + 0]));
+ runes$1 = $append(runes$1, r0$1, r0$1);
+ r1$1 = unicode.SimpleFold(r0$1);
+ while (true) {
+ if (!(!((r1$1 === r0$1)))) { break; }
+ runes$1 = $append(runes$1, r1$1, r1$1);
+ r1$1 = unicode.SimpleFold(r1$1);
+ }
+ $r = sort.Sort(($subslice(new runeSlice(runes$1.$array), runes$1.$offset, runes$1.$offset + runes$1.$length))); /* */ $s = 24; case 24: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 23; continue;
+ /* } else { */ case 22:
+ runes$1 = $append(runes$1, (x$6 = inst.Inst.Rune, (0 >= x$6.$length ? ($throwRuntimeError("index out of range"), undefined) : x$6.$array[x$6.$offset + 0])), (x$7 = inst.Inst.Rune, (0 >= x$7.$length ? ($throwRuntimeError("index out of range"), undefined) : x$7.$array[x$7.$offset + 0])));
+ /* } */ case 23:
+ ((pc < 0 || pc >= onePassRunes[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : onePassRunes[0].$array[onePassRunes[0].$offset + pc] = runes$1);
+ inst.Next = new sliceType$1([]);
+ i$3 = (_q$3 = ((pc < 0 || pc >= onePassRunes[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : onePassRunes[0].$array[onePassRunes[0].$offset + pc]).$length / 2, (_q$3 === _q$3 && _q$3 !== 1/0 && _q$3 !== -1/0) ? _q$3 >> 0 : $throwRuntimeError("integer divide by zero"));
+ while (true) {
+ if (!(i$3 >= 0)) { break; }
+ inst.Next = $append(inst.Next, inst.Inst.Out);
+ i$3 = i$3 - (1) >> 0;
+ }
+ inst.Inst.Op = 7;
+ $s = 10; continue;
+ /* } else if (_1 === (9)) { */ case 8:
+ _key$6 = pc; (m || $throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(_key$6)] = { k: _key$6, v: false };
+ if (inst.Next.$length > 0) {
+ /* break; */ $s = 1; continue;
+ }
+ instQueue[0].insert(inst.Inst.Out);
+ ((pc < 0 || pc >= onePassRunes[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : onePassRunes[0].$array[onePassRunes[0].$offset + pc] = $appendSlice(new sliceType([]), anyRune));
+ inst.Next = new sliceType$1([inst.Inst.Out]);
+ $s = 10; continue;
+ /* } else if (_1 === (10)) { */ case 9:
+ _key$7 = pc; (m || $throwRuntimeError("assignment to entry in nil map"))[$Uint32.keyFor(_key$7)] = { k: _key$7, v: false };
+ if (inst.Next.$length > 0) {
+ /* break; */ $s = 1; continue;
+ }
+ instQueue[0].insert(inst.Inst.Out);
+ ((pc < 0 || pc >= onePassRunes[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : onePassRunes[0].$array[onePassRunes[0].$offset + pc] = $appendSlice(new sliceType([]), anyRuneNotNL));
+ inst.Next = new sliceType$1([]);
+ i$4 = (_q$4 = ((pc < 0 || pc >= onePassRunes[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : onePassRunes[0].$array[onePassRunes[0].$offset + pc]).$length / 2, (_q$4 === _q$4 && _q$4 !== 1/0 && _q$4 !== -1/0) ? _q$4 >> 0 : $throwRuntimeError("integer divide by zero"));
+ while (true) {
+ if (!(i$4 >= 0)) { break; }
+ inst.Next = $append(inst.Next, inst.Inst.Out);
+ i$4 = i$4 - (1) >> 0;
+ }
+ /* } */ case 10:
+ case 1:
+ $s = -1; return ok;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f.$ptr = $ptr; $f._1 = _1; $f._entry = _entry; $f._entry$1 = _entry$1; $f._entry$2 = _entry$2; $f._entry$3 = _entry$3; $f._key = _key; $f._key$1 = _key$1; $f._key$2 = _key$2; $f._key$3 = _key$3; $f._key$4 = _key$4; $f._key$5 = _key$5; $f._key$6 = _key$6; $f._key$7 = _key$7; $f._q = _q; $f._q$1 = _q$1; $f._q$2 = _q$2; $f._q$3 = _q$3; $f._q$4 = _q$4; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tuple = _tuple; $f._v = _v; $f.i = i; $f.i$1 = i$1; $f.i$2 = i$2; $f.i$3 = i$3; $f.i$4 = i$4; $f.inst = inst; $f.m = m; $f.matchArg = matchArg; $f.matchOut = matchOut; $f.ok = ok; $f.pc = pc; $f.r0 = r0; $f.r0$1 = r0$1; $f.r1 = r1; $f.r1$1 = r1$1; $f.runes = runes; $f.runes$1 = runes$1; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.$s = $s; $f.$r = $r; return $f;
+ }; })(check, instQueue, onePassRunes, p, visitQueue);
+ instQueue[0].clear();
+ instQueue[0].insert(((p[0].Start >>> 0)));
+ m = (x = p[0].Inst.$length, ((x < 0 || x > 2147483647) ? $throwRuntimeError("makemap: size out of range") : {}));
+ /* while (true) { */ case 1:
+ /* if (!(!instQueue[0].empty())) { break; } */ if(!(!instQueue[0].empty())) { $s = 2; continue; }
+ visitQueue[0].clear();
+ pc = instQueue[0].next();
+ _r = check[0](pc, m); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (!_r) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!_r) { */ case 3:
+ p[0] = notOnePass;
+ /* break; */ $s = 2; continue;
+ /* } */ case 4:
+ /* } */ $s = 1; continue; case 2:
+ if (!(p[0] === notOnePass)) {
+ _ref = p[0].Inst;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ (x$1 = p[0].Inst, ((i < 0 || i >= x$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + i])).Inst.Rune = ((i < 0 || i >= onePassRunes[0].$length) ? ($throwRuntimeError("index out of range"), undefined) : onePassRunes[0].$array[onePassRunes[0].$offset + i]);
+ _i++;
+ }
+ }
+ $s = -1; return p[0];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: makeOnePass }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._ref = _ref; $f.check = check; $f.i = i; $f.instQueue = instQueue; $f.m = m; $f.onePassRunes = onePassRunes; $f.p = p; $f.pc = pc; $f.visitQueue = visitQueue; $f.x = x; $f.x$1 = x$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ compileOnePass = function(prog) {
+ var $ptr, _1, _i, _r, _ref, inst, opOut, p, prog, x, x$1, x$2, x$3, x$4, x$5, x$6, x$7, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _i = $f._i; _r = $f._r; _ref = $f._ref; inst = $f.inst; opOut = $f.opOut; p = $f.p; prog = $f.prog; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = ptrType$1.nil;
+ if (prog.Start === 0) {
+ p = notOnePass;
+ $s = -1; return p;
+ }
+ if (!(((x = prog.Inst, x$1 = prog.Start, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1])).Op === 3)) || !(((((((x$2 = prog.Inst, x$3 = prog.Start, ((x$3 < 0 || x$3 >= x$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + x$3])).Arg << 24 >>> 24)) & 4) >>> 0) === 4))) {
+ p = notOnePass;
+ $s = -1; return p;
+ }
+ _ref = prog.Inst;
+ _i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 2; continue; }
+ inst = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), syntax.Inst);
+ opOut = (x$4 = prog.Inst, x$5 = inst.Out, ((x$5 < 0 || x$5 >= x$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$4.$array[x$4.$offset + x$5])).Op;
+ _1 = inst.Op;
+ if ((_1 === (0)) || (_1 === (1))) {
+ if ((opOut === 4) || ((x$6 = prog.Inst, x$7 = inst.Arg, ((x$7 < 0 || x$7 >= x$6.$length) ? ($throwRuntimeError("index out of range"), undefined) : x$6.$array[x$6.$offset + x$7])).Op === 4)) {
+ p = notOnePass;
+ $s = -1; return p;
+ }
+ } else if (_1 === (3)) {
+ if (opOut === 4) {
+ if (((((inst.Arg << 24 >>> 24)) & 8) >>> 0) === 8) {
+ _i++;
+ /* continue; */ $s = 1; continue;
+ }
+ p = notOnePass;
+ $s = -1; return p;
+ }
+ } else if (opOut === 4) {
+ p = notOnePass;
+ $s = -1; return p;
+ }
+ _i++;
+ /* } */ $s = 1; continue; case 2:
+ p = onePassCopy(prog);
+ _r = makeOnePass(p); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ p = _r;
+ if (!(p === notOnePass)) {
+ cleanupOnePass(p, prog);
+ }
+ p = p;
+ $s = -1; return p;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: compileOnePass }; } $f.$ptr = $ptr; $f._1 = _1; $f._i = _i; $f._r = _r; $f._ref = _ref; $f.inst = inst; $f.opOut = opOut; $f.p = p; $f.prog = prog; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.ptr.prototype.String = function() {
+ var $ptr, re;
+ re = this;
+ return re.regexpRO.expr;
+ };
+ Regexp.prototype.String = function() { return this.$val.String(); };
+ Regexp.ptr.prototype.Copy = function() {
+ var $ptr, re;
+ re = this;
+ return new Regexp.ptr($clone(re.regexpRO, regexpRO), new nosync.Mutex.ptr(false), sliceType$10.nil);
+ };
+ Regexp.prototype.Copy = function() { return this.$val.Copy(); };
+ Compile = function(expr) {
+ var $ptr, _r, expr, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; expr = $f.expr; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = compile(expr, 212, false); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Compile }; } $f.$ptr = $ptr; $f._r = _r; $f.expr = expr; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Compile = Compile;
+ Regexp.ptr.prototype.Longest = function() {
+ var $ptr, re;
+ re = this;
+ re.regexpRO.longest = true;
+ };
+ Regexp.prototype.Longest = function() { return this.$val.Longest(); };
+ compile = function(expr, mode, longest) {
+ var $ptr, _r, _r$1, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, capNames, err, expr, longest, maxCap, mode, prog, re, regexp, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; capNames = $f.capNames; err = $f.err; expr = $f.expr; longest = $f.longest; maxCap = $f.maxCap; mode = $f.mode; prog = $f.prog; re = $f.re; regexp = $f.regexp; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = syntax.Parse(expr, mode); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ re = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [ptrType$3.nil, err];
+ }
+ maxCap = re.MaxCap();
+ capNames = re.CapNames();
+ re = re.Simplify();
+ _tuple$1 = syntax.Compile(re);
+ prog = _tuple$1[0];
+ err = _tuple$1[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [ptrType$3.nil, err];
+ }
+ _r$1 = compileOnePass(prog); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ regexp = new Regexp.ptr(new regexpRO.ptr(expr, prog, _r$1, "", sliceType$2.nil, false, 0, 0, prog.StartCond(), maxCap, capNames, longest), new nosync.Mutex.ptr(false), sliceType$10.nil);
+ if (regexp.regexpRO.onepass === notOnePass) {
+ _tuple$2 = prog.Prefix();
+ regexp.regexpRO.prefix = _tuple$2[0];
+ regexp.regexpRO.prefixComplete = _tuple$2[1];
+ } else {
+ _tuple$3 = onePassPrefix(prog);
+ regexp.regexpRO.prefix = _tuple$3[0];
+ regexp.regexpRO.prefixComplete = _tuple$3[1];
+ regexp.regexpRO.prefixEnd = _tuple$3[2];
+ }
+ if (!(regexp.regexpRO.prefix === "")) {
+ regexp.regexpRO.prefixBytes = (new sliceType$2($stringToBytes(regexp.regexpRO.prefix)));
+ _tuple$4 = utf8.DecodeRuneInString(regexp.regexpRO.prefix);
+ regexp.regexpRO.prefixRune = _tuple$4[0];
+ }
+ $s = -1; return [regexp, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: compile }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f.capNames = capNames; $f.err = err; $f.expr = expr; $f.longest = longest; $f.maxCap = maxCap; $f.mode = mode; $f.prog = prog; $f.re = re; $f.regexp = regexp; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.ptr.prototype.get = function() {
+ var $ptr, n, re, x, x$1, z, z$1;
+ re = this;
+ re.mu.Lock();
+ n = re.machine.$length;
+ if (n > 0) {
+ z = (x = re.machine, x$1 = n - 1 >> 0, ((x$1 < 0 || x$1 >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + x$1]));
+ re.machine = $subslice(re.machine, 0, (n - 1 >> 0));
+ re.mu.Unlock();
+ return z;
+ }
+ re.mu.Unlock();
+ z$1 = progMachine(re.regexpRO.prog, re.regexpRO.onepass);
+ z$1.re = re;
+ return z$1;
+ };
+ Regexp.prototype.get = function() { return this.$val.get(); };
+ Regexp.ptr.prototype.put = function(z) {
+ var $ptr, re, z;
+ re = this;
+ re.mu.Lock();
+ re.machine = $append(re.machine, z);
+ re.mu.Unlock();
+ };
+ Regexp.prototype.put = function(z) { return this.$val.put(z); };
+ MustCompile = function(str) {
+ var $ptr, _r, _r$1, _tuple, error, regexp, str, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; error = $f.error; regexp = $f.regexp; str = $f.str; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = Compile(str); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ regexp = _tuple[0];
+ error = _tuple[1];
+ /* */ if (!($interfaceIsEqual(error, $ifaceNil))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!($interfaceIsEqual(error, $ifaceNil))) { */ case 2:
+ _r$1 = error.Error(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $panic(new $String("regexp: Compile(" + quote(str) + "): " + _r$1));
+ /* } */ case 3:
+ $s = -1; return regexp;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: MustCompile }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.error = error; $f.regexp = regexp; $f.str = str; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.MustCompile = MustCompile;
+ quote = function(s) {
+ var $ptr, s;
+ if (strconv.CanBackquote(s)) {
+ return "`" + s + "`";
+ }
+ return strconv.Quote(s);
+ };
+ Regexp.ptr.prototype.NumSubexp = function() {
+ var $ptr, re;
+ re = this;
+ return re.regexpRO.numSubexp;
+ };
+ Regexp.prototype.NumSubexp = function() { return this.$val.NumSubexp(); };
+ Regexp.ptr.prototype.SubexpNames = function() {
+ var $ptr, re;
+ re = this;
+ return re.regexpRO.subexpNames;
+ };
+ Regexp.prototype.SubexpNames = function() { return this.$val.SubexpNames(); };
+ inputString.ptr.prototype.step = function(pos) {
+ var $ptr, c, i, pos;
+ i = this;
+ if (pos < i.str.length) {
+ c = i.str.charCodeAt(pos);
+ if (c < 128) {
+ return [((c >> 0)), 1];
+ }
+ return utf8.DecodeRuneInString($substring(i.str, pos));
+ }
+ return [-1, 0];
+ };
+ inputString.prototype.step = function(pos) { return this.$val.step(pos); };
+ inputString.ptr.prototype.canCheckPrefix = function() {
+ var $ptr, i;
+ i = this;
+ return true;
+ };
+ inputString.prototype.canCheckPrefix = function() { return this.$val.canCheckPrefix(); };
+ inputString.ptr.prototype.hasPrefix = function(re) {
+ var $ptr, i, re;
+ i = this;
+ return strings.HasPrefix(i.str, re.regexpRO.prefix);
+ };
+ inputString.prototype.hasPrefix = function(re) { return this.$val.hasPrefix(re); };
+ inputString.ptr.prototype.index = function(re, pos) {
+ var $ptr, i, pos, re;
+ i = this;
+ return strings.Index($substring(i.str, pos), re.regexpRO.prefix);
+ };
+ inputString.prototype.index = function(re, pos) { return this.$val.index(re, pos); };
+ inputString.ptr.prototype.context = function(pos) {
+ var $ptr, _tmp, _tmp$1, _tuple, _tuple$1, i, pos, r1, r2;
+ i = this;
+ _tmp = -1;
+ _tmp$1 = -1;
+ r1 = _tmp;
+ r2 = _tmp$1;
+ if (pos > 0 && pos <= i.str.length) {
+ _tuple = utf8.DecodeLastRuneInString($substring(i.str, 0, pos));
+ r1 = _tuple[0];
+ }
+ if (pos < i.str.length) {
+ _tuple$1 = utf8.DecodeRuneInString($substring(i.str, pos));
+ r2 = _tuple$1[0];
+ }
+ return syntax.EmptyOpContext(r1, r2);
+ };
+ inputString.prototype.context = function(pos) { return this.$val.context(pos); };
+ inputBytes.ptr.prototype.step = function(pos) {
+ var $ptr, c, i, pos, x;
+ i = this;
+ if (pos < i.str.$length) {
+ c = (x = i.str, ((pos < 0 || pos >= x.$length) ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + pos]));
+ if (c < 128) {
+ return [((c >> 0)), 1];
+ }
+ return utf8.DecodeRune($subslice(i.str, pos));
+ }
+ return [-1, 0];
+ };
+ inputBytes.prototype.step = function(pos) { return this.$val.step(pos); };
+ inputBytes.ptr.prototype.canCheckPrefix = function() {
+ var $ptr, i;
+ i = this;
+ return true;
+ };
+ inputBytes.prototype.canCheckPrefix = function() { return this.$val.canCheckPrefix(); };
+ inputBytes.ptr.prototype.hasPrefix = function(re) {
+ var $ptr, i, re;
+ i = this;
+ return bytes.HasPrefix(i.str, re.regexpRO.prefixBytes);
+ };
+ inputBytes.prototype.hasPrefix = function(re) { return this.$val.hasPrefix(re); };
+ inputBytes.ptr.prototype.index = function(re, pos) {
+ var $ptr, i, pos, re;
+ i = this;
+ return bytes.Index($subslice(i.str, pos), re.regexpRO.prefixBytes);
+ };
+ inputBytes.prototype.index = function(re, pos) { return this.$val.index(re, pos); };
+ inputBytes.ptr.prototype.context = function(pos) {
+ var $ptr, _tmp, _tmp$1, _tuple, _tuple$1, i, pos, r1, r2;
+ i = this;
+ _tmp = -1;
+ _tmp$1 = -1;
+ r1 = _tmp;
+ r2 = _tmp$1;
+ if (pos > 0 && pos <= i.str.$length) {
+ _tuple = utf8.DecodeLastRune($subslice(i.str, 0, pos));
+ r1 = _tuple[0];
+ }
+ if (pos < i.str.$length) {
+ _tuple$1 = utf8.DecodeRune($subslice(i.str, pos));
+ r2 = _tuple$1[0];
+ }
+ return syntax.EmptyOpContext(r1, r2);
+ };
+ inputBytes.prototype.context = function(pos) { return this.$val.context(pos); };
+ inputReader.ptr.prototype.step = function(pos) {
+ var $ptr, _r, _tuple, err, i, pos, r, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; err = $f.err; i = $f.i; pos = $f.pos; r = $f.r; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ if (!i.atEOT && !((pos === i.pos))) {
+ $s = -1; return [-1, 0];
+ }
+ _r = i.r.ReadRune(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ r = _tuple[0];
+ w = _tuple[1];
+ err = _tuple[2];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ i.atEOT = true;
+ $s = -1; return [-1, 0];
+ }
+ i.pos = i.pos + (w) >> 0;
+ $s = -1; return [r, w];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: inputReader.ptr.prototype.step }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.err = err; $f.i = i; $f.pos = pos; $f.r = r; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ inputReader.prototype.step = function(pos) { return this.$val.step(pos); };
+ inputReader.ptr.prototype.canCheckPrefix = function() {
+ var $ptr, i;
+ i = this;
+ return false;
+ };
+ inputReader.prototype.canCheckPrefix = function() { return this.$val.canCheckPrefix(); };
+ inputReader.ptr.prototype.hasPrefix = function(re) {
+ var $ptr, i, re;
+ i = this;
+ return false;
+ };
+ inputReader.prototype.hasPrefix = function(re) { return this.$val.hasPrefix(re); };
+ inputReader.ptr.prototype.index = function(re, pos) {
+ var $ptr, i, pos, re;
+ i = this;
+ return -1;
+ };
+ inputReader.prototype.index = function(re, pos) { return this.$val.index(re, pos); };
+ inputReader.ptr.prototype.context = function(pos) {
+ var $ptr, i, pos;
+ i = this;
+ return 0;
+ };
+ inputReader.prototype.context = function(pos) { return this.$val.context(pos); };
+ Regexp.ptr.prototype.LiteralPrefix = function() {
+ var $ptr, _tmp, _tmp$1, complete, prefix, re;
+ prefix = "";
+ complete = false;
+ re = this;
+ _tmp = re.regexpRO.prefix;
+ _tmp$1 = re.regexpRO.prefixComplete;
+ prefix = _tmp;
+ complete = _tmp$1;
+ return [prefix, complete];
+ };
+ Regexp.prototype.LiteralPrefix = function() { return this.$val.LiteralPrefix(); };
+ Regexp.ptr.prototype.MatchReader = function(r) {
+ var $ptr, _r, r, re, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; r = $f.r; re = $f.re; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = this;
+ _r = re.doMatch(r, sliceType$2.nil, ""); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.MatchReader }; } $f.$ptr = $ptr; $f._r = _r; $f.r = r; $f.re = re; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.MatchReader = function(r) { return this.$val.MatchReader(r); };
+ Regexp.ptr.prototype.MatchString = function(s) {
+ var $ptr, _r, re, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; re = $f.re; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = this;
+ _r = re.doMatch($ifaceNil, sliceType$2.nil, s); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.MatchString }; } $f.$ptr = $ptr; $f._r = _r; $f.re = re; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.MatchString = function(s) { return this.$val.MatchString(s); };
+ Regexp.ptr.prototype.Match = function(b) {
+ var $ptr, _r, b, re, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; b = $f.b; re = $f.re; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = this;
+ _r = re.doMatch($ifaceNil, b, ""); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.Match }; } $f.$ptr = $ptr; $f._r = _r; $f.b = b; $f.re = re; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.Match = function(b) { return this.$val.Match(b); };
+ MatchString = function(pattern, s) {
+ var $ptr, _r, _r$1, _tmp, _tmp$1, _tmp$2, _tmp$3, _tuple, err, matched, pattern, re, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tuple = $f._tuple; err = $f.err; matched = $f.matched; pattern = $f.pattern; re = $f.re; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ matched = false;
+ err = $ifaceNil;
+ _r = Compile(pattern); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ re = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ _tmp = false;
+ _tmp$1 = err;
+ matched = _tmp;
+ err = _tmp$1;
+ $s = -1; return [matched, err];
+ }
+ _r$1 = re.MatchString(s); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tmp$2 = _r$1;
+ _tmp$3 = $ifaceNil;
+ matched = _tmp$2;
+ err = _tmp$3;
+ $s = -1; return [matched, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: MatchString }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tuple = _tuple; $f.err = err; $f.matched = matched; $f.pattern = pattern; $f.re = re; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.MatchString = MatchString;
+ Regexp.ptr.prototype.ReplaceAllString = function(src, repl) {
+ var $ptr, _r, b, n, re, repl, src, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; b = $f.b; n = $f.n; re = $f.re; repl = $f.repl; src = $f.src; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = [re];
+ repl = [repl];
+ src = [src];
+ re[0] = this;
+ n = 2;
+ if (strings.Contains(repl[0], "$")) {
+ n = $imul(2, ((re[0].regexpRO.numSubexp + 1 >> 0)));
+ }
+ _r = re[0].replaceAll(sliceType$2.nil, src[0], n, (function(re, repl, src) { return function(dst, match) {
+ var $ptr, dst, match;
+ return re[0].expand(dst, repl[0], sliceType$2.nil, src[0], match);
+ }; })(re, repl, src)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ b = _r;
+ $s = -1; return ($bytesToString(b));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.ReplaceAllString }; } $f.$ptr = $ptr; $f._r = _r; $f.b = b; $f.n = n; $f.re = re; $f.repl = repl; $f.src = src; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.ReplaceAllString = function(src, repl) { return this.$val.ReplaceAllString(src, repl); };
+ Regexp.ptr.prototype.ReplaceAllLiteralString = function(src, repl) {
+ var $ptr, _r, re, repl, src, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; re = $f.re; repl = $f.repl; src = $f.src; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ repl = [repl];
+ re = this;
+ _r = re.replaceAll(sliceType$2.nil, src, 2, (function(repl) { return function(dst, match) {
+ var $ptr, dst, match;
+ return $appendSlice(dst, repl[0]);
+ }; })(repl)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return ($bytesToString(_r));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.ReplaceAllLiteralString }; } $f.$ptr = $ptr; $f._r = _r; $f.re = re; $f.repl = repl; $f.src = src; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.ReplaceAllLiteralString = function(src, repl) { return this.$val.ReplaceAllLiteralString(src, repl); };
+ Regexp.ptr.prototype.ReplaceAllStringFunc = function(src, repl) {
+ var $ptr, _r, b, re, repl, src, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; b = $f.b; re = $f.re; repl = $f.repl; src = $f.src; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ repl = [repl];
+ src = [src];
+ re = this;
+ _r = re.replaceAll(sliceType$2.nil, src[0], 2, (function(repl, src) { return function $b(dst, match) {
+ var $ptr, _arg, _arg$1, _r, dst, match, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _r = $f._r; dst = $f.dst; match = $f.match; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _arg = dst;
+ _r = repl[0]($substring(src[0], (0 >= match.$length ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + 0]), (1 >= match.$length ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + 1]))); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg$1 = _r;
+ $s = -1; return $appendSlice(_arg, _arg$1);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._r = _r; $f.dst = dst; $f.match = match; $f.$s = $s; $f.$r = $r; return $f;
+ }; })(repl, src)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ b = _r;
+ $s = -1; return ($bytesToString(b));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.ReplaceAllStringFunc }; } $f.$ptr = $ptr; $f._r = _r; $f.b = b; $f.re = re; $f.repl = repl; $f.src = src; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.ReplaceAllStringFunc = function(src, repl) { return this.$val.ReplaceAllStringFunc(src, repl); };
+ Regexp.ptr.prototype.replaceAll = function(bsrc, src, nmatch, repl) {
+ var $ptr, _r, _r$1, _tuple, _tuple$1, a, bsrc, buf, dstCap, endPos, lastMatchEnd, nmatch, re, repl, searchPos, src, width, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; a = $f.a; bsrc = $f.bsrc; buf = $f.buf; dstCap = $f.dstCap; endPos = $f.endPos; lastMatchEnd = $f.lastMatchEnd; nmatch = $f.nmatch; re = $f.re; repl = $f.repl; searchPos = $f.searchPos; src = $f.src; width = $f.width; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = this;
+ lastMatchEnd = 0;
+ searchPos = 0;
+ buf = sliceType$2.nil;
+ endPos = 0;
+ if (!(bsrc === sliceType$2.nil)) {
+ endPos = bsrc.$length;
+ } else {
+ endPos = src.length;
+ }
+ if (nmatch > re.regexpRO.prog.NumCap) {
+ nmatch = re.regexpRO.prog.NumCap;
+ }
+ dstCap = arrayType$2.zero();
+ /* while (true) { */ case 1:
+ /* if (!(searchPos <= endPos)) { break; } */ if(!(searchPos <= endPos)) { $s = 2; continue; }
+ _r = re.doExecute($ifaceNil, bsrc, src, searchPos, nmatch, $subslice(new sliceType$3(dstCap), 0, 0)); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ a = _r;
+ if (a.$length === 0) {
+ /* break; */ $s = 2; continue;
+ }
+ if (!(bsrc === sliceType$2.nil)) {
+ buf = $appendSlice(buf, $subslice(bsrc, lastMatchEnd, (0 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 0])));
+ } else {
+ buf = $appendSlice(buf, $substring(src, lastMatchEnd, (0 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 0])));
+ }
+ /* */ if ((1 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 1]) > lastMatchEnd || ((0 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 0]) === 0)) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if ((1 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 1]) > lastMatchEnd || ((0 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 0]) === 0)) { */ case 4:
+ _r$1 = repl(buf, a); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ buf = _r$1;
+ /* } */ case 5:
+ lastMatchEnd = (1 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 1]);
+ width = 0;
+ if (!(bsrc === sliceType$2.nil)) {
+ _tuple = utf8.DecodeRune($subslice(bsrc, searchPos));
+ width = _tuple[1];
+ } else {
+ _tuple$1 = utf8.DecodeRuneInString($substring(src, searchPos));
+ width = _tuple$1[1];
+ }
+ if ((searchPos + width >> 0) > (1 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 1])) {
+ searchPos = searchPos + (width) >> 0;
+ } else if ((searchPos + 1 >> 0) > (1 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 1])) {
+ searchPos = searchPos + (1) >> 0;
+ } else {
+ searchPos = (1 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 1]);
+ }
+ /* } */ $s = 1; continue; case 2:
+ if (!(bsrc === sliceType$2.nil)) {
+ buf = $appendSlice(buf, $subslice(bsrc, lastMatchEnd));
+ } else {
+ buf = $appendSlice(buf, $substring(src, lastMatchEnd));
+ }
+ $s = -1; return buf;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.replaceAll }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.a = a; $f.bsrc = bsrc; $f.buf = buf; $f.dstCap = dstCap; $f.endPos = endPos; $f.lastMatchEnd = lastMatchEnd; $f.nmatch = nmatch; $f.re = re; $f.repl = repl; $f.searchPos = searchPos; $f.src = src; $f.width = width; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.replaceAll = function(bsrc, src, nmatch, repl) { return this.$val.replaceAll(bsrc, src, nmatch, repl); };
+ Regexp.ptr.prototype.ReplaceAll = function(src, repl) {
+ var $ptr, _r, b, n, re, repl, src, srepl, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; b = $f.b; n = $f.n; re = $f.re; repl = $f.repl; src = $f.src; srepl = $f.srepl; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = [re];
+ repl = [repl];
+ src = [src];
+ srepl = [srepl];
+ re[0] = this;
+ n = 2;
+ if (bytes.IndexByte(repl[0], 36) >= 0) {
+ n = $imul(2, ((re[0].regexpRO.numSubexp + 1 >> 0)));
+ }
+ srepl[0] = "";
+ _r = re[0].replaceAll(src[0], "", n, (function(re, repl, src, srepl) { return function(dst, match) {
+ var $ptr, dst, match;
+ if (!((srepl[0].length === repl[0].$length))) {
+ srepl[0] = ($bytesToString(repl[0]));
+ }
+ return re[0].expand(dst, srepl[0], src[0], "", match);
+ }; })(re, repl, src, srepl)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ b = _r;
+ $s = -1; return b;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.ReplaceAll }; } $f.$ptr = $ptr; $f._r = _r; $f.b = b; $f.n = n; $f.re = re; $f.repl = repl; $f.src = src; $f.srepl = srepl; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.ReplaceAll = function(src, repl) { return this.$val.ReplaceAll(src, repl); };
+ Regexp.ptr.prototype.ReplaceAllLiteral = function(src, repl) {
+ var $ptr, _r, re, repl, src, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; re = $f.re; repl = $f.repl; src = $f.src; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ repl = [repl];
+ re = this;
+ _r = re.replaceAll(src, "", 2, (function(repl) { return function(dst, match) {
+ var $ptr, dst, match;
+ return $appendSlice(dst, repl[0]);
+ }; })(repl)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.ReplaceAllLiteral }; } $f.$ptr = $ptr; $f._r = _r; $f.re = re; $f.repl = repl; $f.src = src; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.ReplaceAllLiteral = function(src, repl) { return this.$val.ReplaceAllLiteral(src, repl); };
+ Regexp.ptr.prototype.ReplaceAllFunc = function(src, repl) {
+ var $ptr, _r, re, repl, src, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; re = $f.re; repl = $f.repl; src = $f.src; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ repl = [repl];
+ src = [src];
+ re = this;
+ _r = re.replaceAll(src[0], "", 2, (function(repl, src) { return function $b(dst, match) {
+ var $ptr, _arg, _arg$1, _r, dst, match, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _r = $f._r; dst = $f.dst; match = $f.match; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _arg = dst;
+ _r = repl[0]($subslice(src[0], (0 >= match.$length ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + 0]), (1 >= match.$length ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + 1]))); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg$1 = _r;
+ $s = -1; return $appendSlice(_arg, _arg$1);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._r = _r; $f.dst = dst; $f.match = match; $f.$s = $s; $f.$r = $r; return $f;
+ }; })(repl, src)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.ReplaceAllFunc }; } $f.$ptr = $ptr; $f._r = _r; $f.re = re; $f.repl = repl; $f.src = src; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.ReplaceAllFunc = function(src, repl) { return this.$val.ReplaceAllFunc(src, repl); };
+ Regexp.ptr.prototype.pad = function(a) {
+ var $ptr, a, n, re;
+ re = this;
+ if (a === sliceType$3.nil) {
+ return sliceType$3.nil;
+ }
+ n = $imul(((1 + re.regexpRO.numSubexp >> 0)), 2);
+ while (true) {
+ if (!(a.$length < n)) { break; }
+ a = $append(a, -1);
+ }
+ return a;
+ };
+ Regexp.prototype.pad = function(a) { return this.$val.pad(a); };
+ Regexp.ptr.prototype.allMatches = function(s, b, n, deliver) {
+ var $ptr, _r, _tmp, _tmp$1, _tmp$2, _tuple, _tuple$1, accept, b, deliver, end, i, matches, n, pos, prevMatchEnd, re, s, width, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; accept = $f.accept; b = $f.b; deliver = $f.deliver; end = $f.end; i = $f.i; matches = $f.matches; n = $f.n; pos = $f.pos; prevMatchEnd = $f.prevMatchEnd; re = $f.re; s = $f.s; width = $f.width; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = this;
+ end = 0;
+ if (b === sliceType$2.nil) {
+ end = s.length;
+ } else {
+ end = b.$length;
+ }
+ _tmp = 0;
+ _tmp$1 = 0;
+ _tmp$2 = -1;
+ pos = _tmp;
+ i = _tmp$1;
+ prevMatchEnd = _tmp$2;
+ /* while (true) { */ case 1:
+ /* if (!(i < n && pos <= end)) { break; } */ if(!(i < n && pos <= end)) { $s = 2; continue; }
+ _r = re.doExecute($ifaceNil, b, s, pos, re.regexpRO.prog.NumCap, sliceType$3.nil); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ matches = _r;
+ if (matches.$length === 0) {
+ /* break; */ $s = 2; continue;
+ }
+ accept = true;
+ if ((1 >= matches.$length ? ($throwRuntimeError("index out of range"), undefined) : matches.$array[matches.$offset + 1]) === pos) {
+ if ((0 >= matches.$length ? ($throwRuntimeError("index out of range"), undefined) : matches.$array[matches.$offset + 0]) === prevMatchEnd) {
+ accept = false;
+ }
+ width = 0;
+ if (b === sliceType$2.nil) {
+ _tuple = utf8.DecodeRuneInString($substring(s, pos, end));
+ width = _tuple[1];
+ } else {
+ _tuple$1 = utf8.DecodeRune($subslice(b, pos, end));
+ width = _tuple$1[1];
+ }
+ if (width > 0) {
+ pos = pos + (width) >> 0;
+ } else {
+ pos = end + 1 >> 0;
+ }
+ } else {
+ pos = (1 >= matches.$length ? ($throwRuntimeError("index out of range"), undefined) : matches.$array[matches.$offset + 1]);
+ }
+ prevMatchEnd = (1 >= matches.$length ? ($throwRuntimeError("index out of range"), undefined) : matches.$array[matches.$offset + 1]);
+ /* */ if (accept) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (accept) { */ case 4:
+ $r = deliver(re.pad(matches)); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i = i + (1) >> 0;
+ /* } */ case 5:
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.allMatches }; } $f.$ptr = $ptr; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.accept = accept; $f.b = b; $f.deliver = deliver; $f.end = end; $f.i = i; $f.matches = matches; $f.n = n; $f.pos = pos; $f.prevMatchEnd = prevMatchEnd; $f.re = re; $f.s = s; $f.width = width; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.allMatches = function(s, b, n, deliver) { return this.$val.allMatches(s, b, n, deliver); };
+ Regexp.ptr.prototype.Find = function(b) {
+ var $ptr, _r, a, b, dstCap, re, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; b = $f.b; dstCap = $f.dstCap; re = $f.re; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = this;
+ dstCap = arrayType$2.zero();
+ _r = re.doExecute($ifaceNil, b, "", 0, 2, $subslice(new sliceType$3(dstCap), 0, 0)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ a = _r;
+ if (a === sliceType$3.nil) {
+ $s = -1; return sliceType$2.nil;
+ }
+ $s = -1; return $subslice(b, (0 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 0]), (1 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 1]));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.Find }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.b = b; $f.dstCap = dstCap; $f.re = re; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.Find = function(b) { return this.$val.Find(b); };
+ Regexp.ptr.prototype.FindIndex = function(b) {
+ var $ptr, _r, a, b, loc, re, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; b = $f.b; loc = $f.loc; re = $f.re; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ loc = sliceType$3.nil;
+ re = this;
+ _r = re.doExecute($ifaceNil, b, "", 0, 2, sliceType$3.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ a = _r;
+ if (a === sliceType$3.nil) {
+ loc = sliceType$3.nil;
+ $s = -1; return loc;
+ }
+ loc = $subslice(a, 0, 2);
+ $s = -1; return loc;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindIndex }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.b = b; $f.loc = loc; $f.re = re; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindIndex = function(b) { return this.$val.FindIndex(b); };
+ Regexp.ptr.prototype.FindString = function(s) {
+ var $ptr, _r, a, dstCap, re, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; dstCap = $f.dstCap; re = $f.re; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = this;
+ dstCap = arrayType$2.zero();
+ _r = re.doExecute($ifaceNil, sliceType$2.nil, s, 0, 2, $subslice(new sliceType$3(dstCap), 0, 0)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ a = _r;
+ if (a === sliceType$3.nil) {
+ $s = -1; return "";
+ }
+ $s = -1; return $substring(s, (0 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 0]), (1 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 1]));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindString }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.dstCap = dstCap; $f.re = re; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindString = function(s) { return this.$val.FindString(s); };
+ Regexp.ptr.prototype.FindStringIndex = function(s) {
+ var $ptr, _r, a, loc, re, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; loc = $f.loc; re = $f.re; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ loc = sliceType$3.nil;
+ re = this;
+ _r = re.doExecute($ifaceNil, sliceType$2.nil, s, 0, 2, sliceType$3.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ a = _r;
+ if (a === sliceType$3.nil) {
+ loc = sliceType$3.nil;
+ $s = -1; return loc;
+ }
+ loc = $subslice(a, 0, 2);
+ $s = -1; return loc;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindStringIndex }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.loc = loc; $f.re = re; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindStringIndex = function(s) { return this.$val.FindStringIndex(s); };
+ Regexp.ptr.prototype.FindReaderIndex = function(r) {
+ var $ptr, _r, a, loc, r, re, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; loc = $f.loc; r = $f.r; re = $f.re; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ loc = sliceType$3.nil;
+ re = this;
+ _r = re.doExecute(r, sliceType$2.nil, "", 0, 2, sliceType$3.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ a = _r;
+ if (a === sliceType$3.nil) {
+ loc = sliceType$3.nil;
+ $s = -1; return loc;
+ }
+ loc = $subslice(a, 0, 2);
+ $s = -1; return loc;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindReaderIndex }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.loc = loc; $f.r = r; $f.re = re; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindReaderIndex = function(r) { return this.$val.FindReaderIndex(r); };
+ Regexp.ptr.prototype.FindSubmatch = function(b) {
+ var $ptr, _i, _r, _ref, a, b, dstCap, i, re, ret, x, x$1, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _ref = $f._ref; a = $f.a; b = $f.b; dstCap = $f.dstCap; i = $f.i; re = $f.re; ret = $f.ret; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = this;
+ dstCap = arrayType$3.zero();
+ _r = re.doExecute($ifaceNil, b, "", 0, re.regexpRO.prog.NumCap, $subslice(new sliceType$3(dstCap), 0, 0)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ a = _r;
+ if (a === sliceType$3.nil) {
+ $s = -1; return sliceType$11.nil;
+ }
+ ret = $makeSlice(sliceType$11, (1 + re.regexpRO.numSubexp >> 0));
+ _ref = ret;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ if (($imul(2, i)) < a.$length && (x = $imul(2, i), ((x < 0 || x >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + x])) >= 0) {
+ ((i < 0 || i >= ret.$length) ? ($throwRuntimeError("index out of range"), undefined) : ret.$array[ret.$offset + i] = $subslice(b, (x$1 = $imul(2, i), ((x$1 < 0 || x$1 >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + x$1])), (x$2 = ($imul(2, i)) + 1 >> 0, ((x$2 < 0 || x$2 >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + x$2]))));
+ }
+ _i++;
+ }
+ $s = -1; return ret;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindSubmatch }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._ref = _ref; $f.a = a; $f.b = b; $f.dstCap = dstCap; $f.i = i; $f.re = re; $f.ret = ret; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindSubmatch = function(b) { return this.$val.FindSubmatch(b); };
+ Regexp.ptr.prototype.Expand = function(dst, template, src, match) {
+ var $ptr, dst, match, re, src, template;
+ re = this;
+ return re.expand(dst, ($bytesToString(template)), src, "", match);
+ };
+ Regexp.prototype.Expand = function(dst, template, src, match) { return this.$val.Expand(dst, template, src, match); };
+ Regexp.ptr.prototype.ExpandString = function(dst, template, src, match) {
+ var $ptr, dst, match, re, src, template;
+ re = this;
+ return re.expand(dst, template, sliceType$2.nil, src, match);
+ };
+ Regexp.prototype.ExpandString = function(dst, template, src, match) { return this.$val.ExpandString(dst, template, src, match); };
+ Regexp.ptr.prototype.expand = function(dst, template, bsrc, src, match) {
+ var $ptr, _i, _ref, _tuple, bsrc, dst, i, i$1, match, name, namei, num, ok, re, rest, src, template, x, x$1, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ re = this;
+ while (true) {
+ if (!(template.length > 0)) { break; }
+ i = strings.Index(template, "$");
+ if (i < 0) {
+ break;
+ }
+ dst = $appendSlice(dst, $substring(template, 0, i));
+ template = $substring(template, i);
+ if (template.length > 1 && (template.charCodeAt(1) === 36)) {
+ dst = $append(dst, 36);
+ template = $substring(template, 2);
+ continue;
+ }
+ _tuple = extract(template);
+ name = _tuple[0];
+ num = _tuple[1];
+ rest = _tuple[2];
+ ok = _tuple[3];
+ if (!ok) {
+ dst = $append(dst, 36);
+ template = $substring(template, 1);
+ continue;
+ }
+ template = rest;
+ if (num >= 0) {
+ if ((($imul(2, num)) + 1 >> 0) < match.$length && (x = $imul(2, num), ((x < 0 || x >= match.$length) ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + x])) >= 0) {
+ if (!(bsrc === sliceType$2.nil)) {
+ dst = $appendSlice(dst, $subslice(bsrc, (x$1 = $imul(2, num), ((x$1 < 0 || x$1 >= match.$length) ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + x$1])), (x$2 = ($imul(2, num)) + 1 >> 0, ((x$2 < 0 || x$2 >= match.$length) ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + x$2]))));
+ } else {
+ dst = $appendSlice(dst, $substring(src, (x$3 = $imul(2, num), ((x$3 < 0 || x$3 >= match.$length) ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + x$3])), (x$4 = ($imul(2, num)) + 1 >> 0, ((x$4 < 0 || x$4 >= match.$length) ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + x$4]))));
+ }
+ }
+ } else {
+ _ref = re.regexpRO.subexpNames;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i$1 = _i;
+ namei = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (name === namei && (($imul(2, i$1)) + 1 >> 0) < match.$length && (x$5 = $imul(2, i$1), ((x$5 < 0 || x$5 >= match.$length) ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + x$5])) >= 0) {
+ if (!(bsrc === sliceType$2.nil)) {
+ dst = $appendSlice(dst, $subslice(bsrc, (x$6 = $imul(2, i$1), ((x$6 < 0 || x$6 >= match.$length) ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + x$6])), (x$7 = ($imul(2, i$1)) + 1 >> 0, ((x$7 < 0 || x$7 >= match.$length) ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + x$7]))));
+ } else {
+ dst = $appendSlice(dst, $substring(src, (x$8 = $imul(2, i$1), ((x$8 < 0 || x$8 >= match.$length) ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + x$8])), (x$9 = ($imul(2, i$1)) + 1 >> 0, ((x$9 < 0 || x$9 >= match.$length) ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + x$9]))));
+ }
+ break;
+ }
+ _i++;
+ }
+ }
+ }
+ dst = $appendSlice(dst, template);
+ return dst;
+ };
+ Regexp.prototype.expand = function(dst, template, bsrc, src, match) { return this.$val.expand(dst, template, bsrc, src, match); };
+ extract = function(str) {
+ var $ptr, _tuple, brace, i, i$1, name, num, ok, rest, rune, size, str;
+ name = "";
+ num = 0;
+ rest = "";
+ ok = false;
+ if (str.length < 2 || !((str.charCodeAt(0) === 36))) {
+ return [name, num, rest, ok];
+ }
+ brace = false;
+ if (str.charCodeAt(1) === 123) {
+ brace = true;
+ str = $substring(str, 2);
+ } else {
+ str = $substring(str, 1);
+ }
+ i = 0;
+ while (true) {
+ if (!(i < str.length)) { break; }
+ _tuple = utf8.DecodeRuneInString($substring(str, i));
+ rune = _tuple[0];
+ size = _tuple[1];
+ if (!unicode.IsLetter(rune) && !unicode.IsDigit(rune) && !((rune === 95))) {
+ break;
+ }
+ i = i + (size) >> 0;
+ }
+ if (i === 0) {
+ return [name, num, rest, ok];
+ }
+ name = $substring(str, 0, i);
+ if (brace) {
+ if (i >= str.length || !((str.charCodeAt(i) === 125))) {
+ return [name, num, rest, ok];
+ }
+ i = i + (1) >> 0;
+ }
+ num = 0;
+ i$1 = 0;
+ while (true) {
+ if (!(i$1 < name.length)) { break; }
+ if (name.charCodeAt(i$1) < 48 || 57 < name.charCodeAt(i$1) || num >= 100000000) {
+ num = -1;
+ break;
+ }
+ num = (($imul(num, 10)) + ((name.charCodeAt(i$1) >> 0)) >> 0) - 48 >> 0;
+ i$1 = i$1 + (1) >> 0;
+ }
+ if ((name.charCodeAt(0) === 48) && name.length > 1) {
+ num = -1;
+ }
+ rest = $substring(str, i);
+ ok = true;
+ return [name, num, rest, ok];
+ };
+ Regexp.ptr.prototype.FindSubmatchIndex = function(b) {
+ var $ptr, _r, _r$1, b, re, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; b = $f.b; re = $f.re; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = this;
+ _r = re.doExecute($ifaceNil, b, "", 0, re.regexpRO.prog.NumCap, sliceType$3.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = re.pad(_r); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindSubmatchIndex }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.b = b; $f.re = re; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindSubmatchIndex = function(b) { return this.$val.FindSubmatchIndex(b); };
+ Regexp.ptr.prototype.FindStringSubmatch = function(s) {
+ var $ptr, _i, _r, _ref, a, dstCap, i, re, ret, s, x, x$1, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _ref = $f._ref; a = $f.a; dstCap = $f.dstCap; i = $f.i; re = $f.re; ret = $f.ret; s = $f.s; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = this;
+ dstCap = arrayType$3.zero();
+ _r = re.doExecute($ifaceNil, sliceType$2.nil, s, 0, re.regexpRO.prog.NumCap, $subslice(new sliceType$3(dstCap), 0, 0)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ a = _r;
+ if (a === sliceType$3.nil) {
+ $s = -1; return sliceType$9.nil;
+ }
+ ret = $makeSlice(sliceType$9, (1 + re.regexpRO.numSubexp >> 0));
+ _ref = ret;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ if (($imul(2, i)) < a.$length && (x = $imul(2, i), ((x < 0 || x >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + x])) >= 0) {
+ ((i < 0 || i >= ret.$length) ? ($throwRuntimeError("index out of range"), undefined) : ret.$array[ret.$offset + i] = $substring(s, (x$1 = $imul(2, i), ((x$1 < 0 || x$1 >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + x$1])), (x$2 = ($imul(2, i)) + 1 >> 0, ((x$2 < 0 || x$2 >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + x$2]))));
+ }
+ _i++;
+ }
+ $s = -1; return ret;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindStringSubmatch }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._ref = _ref; $f.a = a; $f.dstCap = dstCap; $f.i = i; $f.re = re; $f.ret = ret; $f.s = s; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindStringSubmatch = function(s) { return this.$val.FindStringSubmatch(s); };
+ Regexp.ptr.prototype.FindStringSubmatchIndex = function(s) {
+ var $ptr, _r, _r$1, re, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; re = $f.re; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = this;
+ _r = re.doExecute($ifaceNil, sliceType$2.nil, s, 0, re.regexpRO.prog.NumCap, sliceType$3.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = re.pad(_r); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindStringSubmatchIndex }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.re = re; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindStringSubmatchIndex = function(s) { return this.$val.FindStringSubmatchIndex(s); };
+ Regexp.ptr.prototype.FindReaderSubmatchIndex = function(r) {
+ var $ptr, _r, _r$1, r, re, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; r = $f.r; re = $f.re; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = this;
+ _r = re.doExecute(r, sliceType$2.nil, "", 0, re.regexpRO.prog.NumCap, sliceType$3.nil); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = re.pad(_r); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindReaderSubmatchIndex }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.r = r; $f.re = re; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindReaderSubmatchIndex = function(r) { return this.$val.FindReaderSubmatchIndex(r); };
+ Regexp.ptr.prototype.FindAll = function(b, n) {
+ var $ptr, b, n, re, result, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; b = $f.b; n = $f.n; re = $f.re; result = $f.result; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = [b];
+ result = [result];
+ re = this;
+ if (n < 0) {
+ n = b[0].$length + 1 >> 0;
+ }
+ result[0] = $makeSlice(sliceType$11, 0, 10);
+ $r = re.allMatches("", b[0], n, (function(b, result) { return function(match) {
+ var $ptr, match;
+ result[0] = $append(result[0], $subslice(b[0], (0 >= match.$length ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + 0]), (1 >= match.$length ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + 1])));
+ }; })(b, result)); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if (result[0].$length === 0) {
+ $s = -1; return sliceType$11.nil;
+ }
+ $s = -1; return result[0];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindAll }; } $f.$ptr = $ptr; $f.b = b; $f.n = n; $f.re = re; $f.result = result; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindAll = function(b, n) { return this.$val.FindAll(b, n); };
+ Regexp.ptr.prototype.FindAllIndex = function(b, n) {
+ var $ptr, b, n, re, result, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; b = $f.b; n = $f.n; re = $f.re; result = $f.result; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ result = [result];
+ re = this;
+ if (n < 0) {
+ n = b.$length + 1 >> 0;
+ }
+ result[0] = $makeSlice(sliceType$12, 0, 10);
+ $r = re.allMatches("", b, n, (function(result) { return function(match) {
+ var $ptr, match;
+ result[0] = $append(result[0], $subslice(match, 0, 2));
+ }; })(result)); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if (result[0].$length === 0) {
+ $s = -1; return sliceType$12.nil;
+ }
+ $s = -1; return result[0];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindAllIndex }; } $f.$ptr = $ptr; $f.b = b; $f.n = n; $f.re = re; $f.result = result; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindAllIndex = function(b, n) { return this.$val.FindAllIndex(b, n); };
+ Regexp.ptr.prototype.FindAllString = function(s, n) {
+ var $ptr, n, re, result, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; n = $f.n; re = $f.re; result = $f.result; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ result = [result];
+ s = [s];
+ re = this;
+ if (n < 0) {
+ n = s[0].length + 1 >> 0;
+ }
+ result[0] = $makeSlice(sliceType$9, 0, 10);
+ $r = re.allMatches(s[0], sliceType$2.nil, n, (function(result, s) { return function(match) {
+ var $ptr, match;
+ result[0] = $append(result[0], $substring(s[0], (0 >= match.$length ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + 0]), (1 >= match.$length ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + 1])));
+ }; })(result, s)); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if (result[0].$length === 0) {
+ $s = -1; return sliceType$9.nil;
+ }
+ $s = -1; return result[0];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindAllString }; } $f.$ptr = $ptr; $f.n = n; $f.re = re; $f.result = result; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindAllString = function(s, n) { return this.$val.FindAllString(s, n); };
+ Regexp.ptr.prototype.FindAllStringIndex = function(s, n) {
+ var $ptr, n, re, result, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; n = $f.n; re = $f.re; result = $f.result; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ result = [result];
+ re = this;
+ if (n < 0) {
+ n = s.length + 1 >> 0;
+ }
+ result[0] = $makeSlice(sliceType$12, 0, 10);
+ $r = re.allMatches(s, sliceType$2.nil, n, (function(result) { return function(match) {
+ var $ptr, match;
+ result[0] = $append(result[0], $subslice(match, 0, 2));
+ }; })(result)); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if (result[0].$length === 0) {
+ $s = -1; return sliceType$12.nil;
+ }
+ $s = -1; return result[0];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindAllStringIndex }; } $f.$ptr = $ptr; $f.n = n; $f.re = re; $f.result = result; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindAllStringIndex = function(s, n) { return this.$val.FindAllStringIndex(s, n); };
+ Regexp.ptr.prototype.FindAllSubmatch = function(b, n) {
+ var $ptr, b, n, re, result, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; b = $f.b; n = $f.n; re = $f.re; result = $f.result; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = [b];
+ result = [result];
+ re = this;
+ if (n < 0) {
+ n = b[0].$length + 1 >> 0;
+ }
+ result[0] = $makeSlice(sliceType$13, 0, 10);
+ $r = re.allMatches("", b[0], n, (function(b, result) { return function(match) {
+ var $ptr, _i, _q, _ref, j, match, slice, x, x$1, x$2;
+ slice = $makeSlice(sliceType$11, (_q = match.$length / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")));
+ _ref = slice;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ j = _i;
+ if ((x = $imul(2, j), ((x < 0 || x >= match.$length) ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + x])) >= 0) {
+ ((j < 0 || j >= slice.$length) ? ($throwRuntimeError("index out of range"), undefined) : slice.$array[slice.$offset + j] = $subslice(b[0], (x$1 = $imul(2, j), ((x$1 < 0 || x$1 >= match.$length) ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + x$1])), (x$2 = ($imul(2, j)) + 1 >> 0, ((x$2 < 0 || x$2 >= match.$length) ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + x$2]))));
+ }
+ _i++;
+ }
+ result[0] = $append(result[0], slice);
+ }; })(b, result)); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if (result[0].$length === 0) {
+ $s = -1; return sliceType$13.nil;
+ }
+ $s = -1; return result[0];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindAllSubmatch }; } $f.$ptr = $ptr; $f.b = b; $f.n = n; $f.re = re; $f.result = result; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindAllSubmatch = function(b, n) { return this.$val.FindAllSubmatch(b, n); };
+ Regexp.ptr.prototype.FindAllSubmatchIndex = function(b, n) {
+ var $ptr, b, n, re, result, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; b = $f.b; n = $f.n; re = $f.re; result = $f.result; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ result = [result];
+ re = this;
+ if (n < 0) {
+ n = b.$length + 1 >> 0;
+ }
+ result[0] = $makeSlice(sliceType$12, 0, 10);
+ $r = re.allMatches("", b, n, (function(result) { return function(match) {
+ var $ptr, match;
+ result[0] = $append(result[0], match);
+ }; })(result)); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if (result[0].$length === 0) {
+ $s = -1; return sliceType$12.nil;
+ }
+ $s = -1; return result[0];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindAllSubmatchIndex }; } $f.$ptr = $ptr; $f.b = b; $f.n = n; $f.re = re; $f.result = result; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindAllSubmatchIndex = function(b, n) { return this.$val.FindAllSubmatchIndex(b, n); };
+ Regexp.ptr.prototype.FindAllStringSubmatch = function(s, n) {
+ var $ptr, n, re, result, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; n = $f.n; re = $f.re; result = $f.result; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ result = [result];
+ s = [s];
+ re = this;
+ if (n < 0) {
+ n = s[0].length + 1 >> 0;
+ }
+ result[0] = $makeSlice(sliceType$14, 0, 10);
+ $r = re.allMatches(s[0], sliceType$2.nil, n, (function(result, s) { return function(match) {
+ var $ptr, _i, _q, _ref, j, match, slice, x, x$1, x$2;
+ slice = $makeSlice(sliceType$9, (_q = match.$length / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")));
+ _ref = slice;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ j = _i;
+ if ((x = $imul(2, j), ((x < 0 || x >= match.$length) ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + x])) >= 0) {
+ ((j < 0 || j >= slice.$length) ? ($throwRuntimeError("index out of range"), undefined) : slice.$array[slice.$offset + j] = $substring(s[0], (x$1 = $imul(2, j), ((x$1 < 0 || x$1 >= match.$length) ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + x$1])), (x$2 = ($imul(2, j)) + 1 >> 0, ((x$2 < 0 || x$2 >= match.$length) ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + x$2]))));
+ }
+ _i++;
+ }
+ result[0] = $append(result[0], slice);
+ }; })(result, s)); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if (result[0].$length === 0) {
+ $s = -1; return sliceType$14.nil;
+ }
+ $s = -1; return result[0];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindAllStringSubmatch }; } $f.$ptr = $ptr; $f.n = n; $f.re = re; $f.result = result; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindAllStringSubmatch = function(s, n) { return this.$val.FindAllStringSubmatch(s, n); };
+ Regexp.ptr.prototype.FindAllStringSubmatchIndex = function(s, n) {
+ var $ptr, n, re, result, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; n = $f.n; re = $f.re; result = $f.result; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ result = [result];
+ re = this;
+ if (n < 0) {
+ n = s.length + 1 >> 0;
+ }
+ result[0] = $makeSlice(sliceType$12, 0, 10);
+ $r = re.allMatches(s, sliceType$2.nil, n, (function(result) { return function(match) {
+ var $ptr, match;
+ result[0] = $append(result[0], match);
+ }; })(result)); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if (result[0].$length === 0) {
+ $s = -1; return sliceType$12.nil;
+ }
+ $s = -1; return result[0];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.FindAllStringSubmatchIndex }; } $f.$ptr = $ptr; $f.n = n; $f.re = re; $f.result = result; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.FindAllStringSubmatchIndex = function(s, n) { return this.$val.FindAllStringSubmatchIndex(s, n); };
+ Regexp.ptr.prototype.Split = function(s, n) {
+ var $ptr, _i, _r, _ref, beg, end, match, matches, n, re, s, strings$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _ref = $f._ref; beg = $f.beg; end = $f.end; match = $f.match; matches = $f.matches; n = $f.n; re = $f.re; s = $f.s; strings$1 = $f.strings$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ re = this;
+ if (n === 0) {
+ $s = -1; return sliceType$9.nil;
+ }
+ if (re.regexpRO.expr.length > 0 && (s.length === 0)) {
+ $s = -1; return new sliceType$9([""]);
+ }
+ _r = re.FindAllStringIndex(s, n); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ matches = _r;
+ strings$1 = $makeSlice(sliceType$9, 0, matches.$length);
+ beg = 0;
+ end = 0;
+ _ref = matches;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ match = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (n > 0 && strings$1.$length >= (n - 1 >> 0)) {
+ break;
+ }
+ end = (0 >= match.$length ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + 0]);
+ if (!(((1 >= match.$length ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + 1]) === 0))) {
+ strings$1 = $append(strings$1, $substring(s, beg, end));
+ }
+ beg = (1 >= match.$length ? ($throwRuntimeError("index out of range"), undefined) : match.$array[match.$offset + 1]);
+ _i++;
+ }
+ if (!((end === s.length))) {
+ strings$1 = $append(strings$1, $substring(s, beg));
+ }
+ $s = -1; return strings$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Regexp.ptr.prototype.Split }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._ref = _ref; $f.beg = beg; $f.end = end; $f.match = match; $f.matches = matches; $f.n = n; $f.re = re; $f.s = s; $f.strings$1 = strings$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Regexp.prototype.Split = function(s, n) { return this.$val.Split(s, n); };
+ ptrType.methods = [{prop: "reset", name: "reset", pkg: "regexp", typ: $funcType([$Int, $Int], [], false)}, {prop: "shouldVisit", name: "shouldVisit", pkg: "regexp", typ: $funcType([$Uint32, $Int], [$Bool], false)}, {prop: "push", name: "push", pkg: "regexp", typ: $funcType([$Uint32, $Int, $Int], [], false)}];
+ ptrType$10.methods = [{prop: "tryBacktrack", name: "tryBacktrack", pkg: "regexp", typ: $funcType([ptrType, input, $Uint32, $Int], [$Bool], false)}, {prop: "backtrack", name: "backtrack", pkg: "regexp", typ: $funcType([input, $Int, $Int, $Int], [$Bool], false)}, {prop: "newInputBytes", name: "newInputBytes", pkg: "regexp", typ: $funcType([sliceType$2], [input], false)}, {prop: "newInputString", name: "newInputString", pkg: "regexp", typ: $funcType([$String], [input], false)}, {prop: "newInputReader", name: "newInputReader", pkg: "regexp", typ: $funcType([io.RuneReader], [input], false)}, {prop: "init", name: "init", pkg: "regexp", typ: $funcType([$Int], [], false)}, {prop: "alloc", name: "alloc", pkg: "regexp", typ: $funcType([ptrType$5], [ptrType$4], false)}, {prop: "match", name: "match", pkg: "regexp", typ: $funcType([input, $Int], [$Bool], false)}, {prop: "clear", name: "clear", pkg: "regexp", typ: $funcType([ptrType$11], [], false)}, {prop: "step", name: "step", pkg: "regexp", typ: $funcType([ptrType$11, ptrType$11, $Int, $Int, $Int32, syntax.EmptyOp], [], false)}, {prop: "add", name: "add", pkg: "regexp", typ: $funcType([ptrType$11, $Uint32, $Int, sliceType$3, syntax.EmptyOp, ptrType$4], [ptrType$4], false)}, {prop: "onepass", name: "onepass", pkg: "regexp", typ: $funcType([input, $Int], [$Bool], false)}];
+ ptrType$7.methods = [{prop: "empty", name: "empty", pkg: "regexp", typ: $funcType([], [$Bool], false)}, {prop: "next", name: "next", pkg: "regexp", typ: $funcType([], [$Uint32], false)}, {prop: "clear", name: "clear", pkg: "regexp", typ: $funcType([], [], false)}, {prop: "contains", name: "contains", pkg: "regexp", typ: $funcType([$Uint32], [$Bool], false)}, {prop: "insert", name: "insert", pkg: "regexp", typ: $funcType([$Uint32], [], false)}, {prop: "insertNew", name: "insertNew", pkg: "regexp", typ: $funcType([$Uint32], [], false)}];
+ runeSlice.methods = [{prop: "Len", name: "Len", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Less", name: "Less", pkg: "", typ: $funcType([$Int, $Int], [$Bool], false)}, {prop: "Swap", name: "Swap", pkg: "", typ: $funcType([$Int, $Int], [], false)}];
+ ptrType$3.methods = [{prop: "doMatch", name: "doMatch", pkg: "regexp", typ: $funcType([io.RuneReader, sliceType$2, $String], [$Bool], false)}, {prop: "doExecute", name: "doExecute", pkg: "regexp", typ: $funcType([io.RuneReader, sliceType$2, $String, $Int, $Int, sliceType$3], [sliceType$3], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Copy", name: "Copy", pkg: "", typ: $funcType([], [ptrType$3], false)}, {prop: "Longest", name: "Longest", pkg: "", typ: $funcType([], [], false)}, {prop: "get", name: "get", pkg: "regexp", typ: $funcType([], [ptrType$10], false)}, {prop: "put", name: "put", pkg: "regexp", typ: $funcType([ptrType$10], [], false)}, {prop: "NumSubexp", name: "NumSubexp", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "SubexpNames", name: "SubexpNames", pkg: "", typ: $funcType([], [sliceType$9], false)}, {prop: "LiteralPrefix", name: "LiteralPrefix", pkg: "", typ: $funcType([], [$String, $Bool], false)}, {prop: "MatchReader", name: "MatchReader", pkg: "", typ: $funcType([io.RuneReader], [$Bool], false)}, {prop: "MatchString", name: "MatchString", pkg: "", typ: $funcType([$String], [$Bool], false)}, {prop: "Match", name: "Match", pkg: "", typ: $funcType([sliceType$2], [$Bool], false)}, {prop: "ReplaceAllString", name: "ReplaceAllString", pkg: "", typ: $funcType([$String, $String], [$String], false)}, {prop: "ReplaceAllLiteralString", name: "ReplaceAllLiteralString", pkg: "", typ: $funcType([$String, $String], [$String], false)}, {prop: "ReplaceAllStringFunc", name: "ReplaceAllStringFunc", pkg: "", typ: $funcType([$String, funcType], [$String], false)}, {prop: "replaceAll", name: "replaceAll", pkg: "regexp", typ: $funcType([sliceType$2, $String, $Int, funcType$1], [sliceType$2], false)}, {prop: "ReplaceAll", name: "ReplaceAll", pkg: "", typ: $funcType([sliceType$2, sliceType$2], [sliceType$2], false)}, {prop: "ReplaceAllLiteral", name: "ReplaceAllLiteral", pkg: "", typ: $funcType([sliceType$2, sliceType$2], [sliceType$2], false)}, {prop: "ReplaceAllFunc", name: "ReplaceAllFunc", pkg: "", typ: $funcType([sliceType$2, funcType$2], [sliceType$2], false)}, {prop: "pad", name: "pad", pkg: "regexp", typ: $funcType([sliceType$3], [sliceType$3], false)}, {prop: "allMatches", name: "allMatches", pkg: "regexp", typ: $funcType([$String, sliceType$2, $Int, funcType$3], [], false)}, {prop: "Find", name: "Find", pkg: "", typ: $funcType([sliceType$2], [sliceType$2], false)}, {prop: "FindIndex", name: "FindIndex", pkg: "", typ: $funcType([sliceType$2], [sliceType$3], false)}, {prop: "FindString", name: "FindString", pkg: "", typ: $funcType([$String], [$String], false)}, {prop: "FindStringIndex", name: "FindStringIndex", pkg: "", typ: $funcType([$String], [sliceType$3], false)}, {prop: "FindReaderIndex", name: "FindReaderIndex", pkg: "", typ: $funcType([io.RuneReader], [sliceType$3], false)}, {prop: "FindSubmatch", name: "FindSubmatch", pkg: "", typ: $funcType([sliceType$2], [sliceType$11], false)}, {prop: "Expand", name: "Expand", pkg: "", typ: $funcType([sliceType$2, sliceType$2, sliceType$2, sliceType$3], [sliceType$2], false)}, {prop: "ExpandString", name: "ExpandString", pkg: "", typ: $funcType([sliceType$2, $String, $String, sliceType$3], [sliceType$2], false)}, {prop: "expand", name: "expand", pkg: "regexp", typ: $funcType([sliceType$2, $String, sliceType$2, $String, sliceType$3], [sliceType$2], false)}, {prop: "FindSubmatchIndex", name: "FindSubmatchIndex", pkg: "", typ: $funcType([sliceType$2], [sliceType$3], false)}, {prop: "FindStringSubmatch", name: "FindStringSubmatch", pkg: "", typ: $funcType([$String], [sliceType$9], false)}, {prop: "FindStringSubmatchIndex", name: "FindStringSubmatchIndex", pkg: "", typ: $funcType([$String], [sliceType$3], false)}, {prop: "FindReaderSubmatchIndex", name: "FindReaderSubmatchIndex", pkg: "", typ: $funcType([io.RuneReader], [sliceType$3], false)}, {prop: "FindAll", name: "FindAll", pkg: "", typ: $funcType([sliceType$2, $Int], [sliceType$11], false)}, {prop: "FindAllIndex", name: "FindAllIndex", pkg: "", typ: $funcType([sliceType$2, $Int], [sliceType$12], false)}, {prop: "FindAllString", name: "FindAllString", pkg: "", typ: $funcType([$String, $Int], [sliceType$9], false)}, {prop: "FindAllStringIndex", name: "FindAllStringIndex", pkg: "", typ: $funcType([$String, $Int], [sliceType$12], false)}, {prop: "FindAllSubmatch", name: "FindAllSubmatch", pkg: "", typ: $funcType([sliceType$2, $Int], [sliceType$13], false)}, {prop: "FindAllSubmatchIndex", name: "FindAllSubmatchIndex", pkg: "", typ: $funcType([sliceType$2, $Int], [sliceType$12], false)}, {prop: "FindAllStringSubmatch", name: "FindAllStringSubmatch", pkg: "", typ: $funcType([$String, $Int], [sliceType$14], false)}, {prop: "FindAllStringSubmatchIndex", name: "FindAllStringSubmatchIndex", pkg: "", typ: $funcType([$String, $Int], [sliceType$12], false)}, {prop: "Split", name: "Split", pkg: "", typ: $funcType([$String, $Int], [sliceType$9], false)}];
+ ptrType$12.methods = [{prop: "step", name: "step", pkg: "regexp", typ: $funcType([$Int], [$Int32, $Int], false)}, {prop: "canCheckPrefix", name: "canCheckPrefix", pkg: "regexp", typ: $funcType([], [$Bool], false)}, {prop: "hasPrefix", name: "hasPrefix", pkg: "regexp", typ: $funcType([ptrType$3], [$Bool], false)}, {prop: "index", name: "index", pkg: "regexp", typ: $funcType([ptrType$3, $Int], [$Int], false)}, {prop: "context", name: "context", pkg: "regexp", typ: $funcType([$Int], [syntax.EmptyOp], false)}];
+ ptrType$13.methods = [{prop: "step", name: "step", pkg: "regexp", typ: $funcType([$Int], [$Int32, $Int], false)}, {prop: "canCheckPrefix", name: "canCheckPrefix", pkg: "regexp", typ: $funcType([], [$Bool], false)}, {prop: "hasPrefix", name: "hasPrefix", pkg: "regexp", typ: $funcType([ptrType$3], [$Bool], false)}, {prop: "index", name: "index", pkg: "regexp", typ: $funcType([ptrType$3, $Int], [$Int], false)}, {prop: "context", name: "context", pkg: "regexp", typ: $funcType([$Int], [syntax.EmptyOp], false)}];
+ ptrType$14.methods = [{prop: "step", name: "step", pkg: "regexp", typ: $funcType([$Int], [$Int32, $Int], false)}, {prop: "canCheckPrefix", name: "canCheckPrefix", pkg: "regexp", typ: $funcType([], [$Bool], false)}, {prop: "hasPrefix", name: "hasPrefix", pkg: "regexp", typ: $funcType([ptrType$3], [$Bool], false)}, {prop: "index", name: "index", pkg: "regexp", typ: $funcType([ptrType$3, $Int], [$Int], false)}, {prop: "context", name: "context", pkg: "regexp", typ: $funcType([$Int], [syntax.EmptyOp], false)}];
+ job.init("regexp", [{prop: "pc", name: "pc", exported: false, typ: $Uint32, tag: ""}, {prop: "arg", name: "arg", exported: false, typ: $Int, tag: ""}, {prop: "pos", name: "pos", exported: false, typ: $Int, tag: ""}]);
+ bitState.init("regexp", [{prop: "prog", name: "prog", exported: false, typ: ptrType$2, tag: ""}, {prop: "end", name: "end", exported: false, typ: $Int, tag: ""}, {prop: "cap", name: "cap", exported: false, typ: sliceType$3, tag: ""}, {prop: "jobs", name: "jobs", exported: false, typ: sliceType$4, tag: ""}, {prop: "visited", name: "visited", exported: false, typ: sliceType$1, tag: ""}]);
+ queue.init("regexp", [{prop: "sparse", name: "sparse", exported: false, typ: sliceType$1, tag: ""}, {prop: "dense", name: "dense", exported: false, typ: sliceType$5, tag: ""}]);
+ entry.init("regexp", [{prop: "pc", name: "pc", exported: false, typ: $Uint32, tag: ""}, {prop: "t", name: "t", exported: false, typ: ptrType$4, tag: ""}]);
+ thread.init("regexp", [{prop: "inst", name: "inst", exported: false, typ: ptrType$5, tag: ""}, {prop: "cap", name: "cap", exported: false, typ: sliceType$3, tag: ""}]);
+ machine.init("regexp", [{prop: "re", name: "re", exported: false, typ: ptrType$3, tag: ""}, {prop: "p", name: "p", exported: false, typ: ptrType$2, tag: ""}, {prop: "op", name: "op", exported: false, typ: ptrType$1, tag: ""}, {prop: "maxBitStateLen", name: "maxBitStateLen", exported: false, typ: $Int, tag: ""}, {prop: "b", name: "b", exported: false, typ: ptrType, tag: ""}, {prop: "q0", name: "q0", exported: false, typ: queue, tag: ""}, {prop: "q1", name: "q1", exported: false, typ: queue, tag: ""}, {prop: "pool", name: "pool", exported: false, typ: sliceType$6, tag: ""}, {prop: "matched", name: "matched", exported: false, typ: $Bool, tag: ""}, {prop: "matchcap", name: "matchcap", exported: false, typ: sliceType$3, tag: ""}, {prop: "inputBytes", name: "inputBytes", exported: false, typ: inputBytes, tag: ""}, {prop: "inputString", name: "inputString", exported: false, typ: inputString, tag: ""}, {prop: "inputReader", name: "inputReader", exported: false, typ: inputReader, tag: ""}]);
+ onePassProg.init("", [{prop: "Inst", name: "Inst", exported: true, typ: sliceType$7, tag: ""}, {prop: "Start", name: "Start", exported: true, typ: $Int, tag: ""}, {prop: "NumCap", name: "NumCap", exported: true, typ: $Int, tag: ""}]);
+ onePassInst.init("", [{prop: "Inst", name: "", exported: true, typ: syntax.Inst, tag: ""}, {prop: "Next", name: "Next", exported: true, typ: sliceType$1, tag: ""}]);
+ queueOnePass.init("regexp", [{prop: "sparse", name: "sparse", exported: false, typ: sliceType$1, tag: ""}, {prop: "dense", name: "dense", exported: false, typ: sliceType$1, tag: ""}, {prop: "size", name: "size", exported: false, typ: $Uint32, tag: ""}, {prop: "nextIndex", name: "nextIndex", exported: false, typ: $Uint32, tag: ""}]);
+ runeSlice.init($Int32);
+ Regexp.init("regexp", [{prop: "regexpRO", name: "", exported: false, typ: regexpRO, tag: ""}, {prop: "mu", name: "mu", exported: false, typ: nosync.Mutex, tag: ""}, {prop: "machine", name: "machine", exported: false, typ: sliceType$10, tag: ""}]);
+ regexpRO.init("regexp", [{prop: "expr", name: "expr", exported: false, typ: $String, tag: ""}, {prop: "prog", name: "prog", exported: false, typ: ptrType$2, tag: ""}, {prop: "onepass", name: "onepass", exported: false, typ: ptrType$1, tag: ""}, {prop: "prefix", name: "prefix", exported: false, typ: $String, tag: ""}, {prop: "prefixBytes", name: "prefixBytes", exported: false, typ: sliceType$2, tag: ""}, {prop: "prefixComplete", name: "prefixComplete", exported: false, typ: $Bool, tag: ""}, {prop: "prefixRune", name: "prefixRune", exported: false, typ: $Int32, tag: ""}, {prop: "prefixEnd", name: "prefixEnd", exported: false, typ: $Uint32, tag: ""}, {prop: "cond", name: "cond", exported: false, typ: syntax.EmptyOp, tag: ""}, {prop: "numSubexp", name: "numSubexp", exported: false, typ: $Int, tag: ""}, {prop: "subexpNames", name: "subexpNames", exported: false, typ: sliceType$9, tag: ""}, {prop: "longest", name: "longest", exported: false, typ: $Bool, tag: ""}]);
+ input.init([{prop: "canCheckPrefix", name: "canCheckPrefix", pkg: "regexp", typ: $funcType([], [$Bool], false)}, {prop: "context", name: "context", pkg: "regexp", typ: $funcType([$Int], [syntax.EmptyOp], false)}, {prop: "hasPrefix", name: "hasPrefix", pkg: "regexp", typ: $funcType([ptrType$3], [$Bool], false)}, {prop: "index", name: "index", pkg: "regexp", typ: $funcType([ptrType$3, $Int], [$Int], false)}, {prop: "step", name: "step", pkg: "regexp", typ: $funcType([$Int], [$Int32, $Int], false)}]);
+ inputString.init("regexp", [{prop: "str", name: "str", exported: false, typ: $String, tag: ""}]);
+ inputBytes.init("regexp", [{prop: "str", name: "str", exported: false, typ: sliceType$2, tag: ""}]);
+ inputReader.init("regexp", [{prop: "r", name: "r", exported: false, typ: io.RuneReader, tag: ""}, {prop: "atEOT", name: "atEOT", exported: false, typ: $Bool, tag: ""}, {prop: "pos", name: "pos", exported: false, typ: $Int, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = nosync.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = syntax.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sort.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = unicode.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = utf8.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ arrayNoInts = arrayType.zero();
+ notBacktrack = ptrType.nil;
+ noRune = new sliceType([]);
+ noNext = new sliceType$1([4294967295]);
+ anyRuneNotNL = new sliceType([0, 9, 11, 1114111]);
+ anyRune = new sliceType([0, 1114111]);
+ notOnePass = ptrType$1.nil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["runtime/debug"] = (function() {
+ var $pkg = {}, $init, os, runtime, sort, time, sliceType$2, Stack;
+ os = $packages["os"];
+ runtime = $packages["runtime"];
+ sort = $packages["sort"];
+ time = $packages["time"];
+ sliceType$2 = $sliceType($Uint8);
+ Stack = function() {
+ var $ptr, buf, n;
+ buf = $makeSlice(sliceType$2, 1024);
+ while (true) {
+ n = runtime.Stack(buf, false);
+ if (n < buf.$length) {
+ return $subslice(buf, 0, n);
+ }
+ buf = $makeSlice(sliceType$2, ($imul(2, buf.$length)));
+ }
+ };
+ $pkg.Stack = Stack;
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = os.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sort.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = time.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["runtime/pprof"] = (function() {
+ var $pkg = {}, $init, io, sync;
+ io = $packages["io"];
+ sync = $packages["sync"];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = io.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["runtime/trace"] = (function() {
+ var $pkg = {}, $init, io, runtime;
+ io = $packages["io"];
+ runtime = $packages["runtime"];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = io.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["testing"] = (function() {
+ var $pkg = {}, $init, bytes, errors, flag, fmt, nosync, race, io, os, runtime, debug, trace, sort, strconv, strings, sync, atomic, time, matchBenchmarks, benchTime, benchmarkMemory, short$1, outputDir, chatty, count, coverProfile, match, memProfile, memProfileRate, cpuProfile, blockProfile, blockProfileRate, mutexProfile, mutexProfileFraction, traceFile, timeout, cpuListStr, parallel, errMain, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$19;
+ bytes = $packages["bytes"];
+ errors = $packages["errors"];
+ flag = $packages["flag"];
+ fmt = $packages["fmt"];
+ nosync = $packages["github.com/gopherjs/gopherjs/nosync"];
+ race = $packages["internal/race"];
+ io = $packages["io"];
+ os = $packages["os"];
+ runtime = $packages["runtime"];
+ debug = $packages["runtime/debug"];
+ trace = $packages["runtime/trace"];
+ sort = $packages["sort"];
+ strconv = $packages["strconv"];
+ strings = $packages["strings"];
+ sync = $packages["sync"];
+ atomic = $packages["sync/atomic"];
+ time = $packages["time"];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = flag.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = nosync.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = race.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = os.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = debug.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = trace.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sort.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = atomic.$init(); /* */ $s = 16; case 16: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = time.$init(); /* */ $s = 17; case 17: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r = flag.String("test.bench", "", "run only benchmarks matching `regexp`"); /* */ $s = 18; case 18: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ matchBenchmarks = _r;
+ _r$1 = flag.Duration("test.benchtime", new time.Duration(0, 1000000000), "run each benchmark for duration `d`"); /* */ $s = 19; case 19: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ benchTime = _r$1;
+ _r$2 = flag.Bool("test.benchmem", false, "print memory allocations for benchmarks"); /* */ $s = 20; case 20: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ benchmarkMemory = _r$2;
+ _r$3 = flag.Bool("test.short", false, "run smaller test suite to save time"); /* */ $s = 21; case 21: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ short$1 = _r$3;
+ _r$4 = flag.String("test.outputdir", "", "write profiles to `dir`"); /* */ $s = 22; case 22: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ outputDir = _r$4;
+ _r$5 = flag.Bool("test.v", false, "verbose: print additional output"); /* */ $s = 23; case 23: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ chatty = _r$5;
+ _r$6 = flag.Uint("test.count", 1, "run tests and benchmarks `n` times"); /* */ $s = 24; case 24: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ count = _r$6;
+ _r$7 = flag.String("test.coverprofile", "", "write a coverage profile to `file`"); /* */ $s = 25; case 25: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ coverProfile = _r$7;
+ _r$8 = flag.String("test.run", "", "run only tests and examples matching `regexp`"); /* */ $s = 26; case 26: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ match = _r$8;
+ _r$9 = flag.String("test.memprofile", "", "write a memory profile to `file`"); /* */ $s = 27; case 27: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ memProfile = _r$9;
+ _r$10 = flag.Int("test.memprofilerate", 0, "set memory profiling `rate` (see runtime.MemProfileRate)"); /* */ $s = 28; case 28: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ memProfileRate = _r$10;
+ _r$11 = flag.String("test.cpuprofile", "", "write a cpu profile to `file`"); /* */ $s = 29; case 29: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ cpuProfile = _r$11;
+ _r$12 = flag.String("test.blockprofile", "", "write a goroutine blocking profile to `file`"); /* */ $s = 30; case 30: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ blockProfile = _r$12;
+ _r$13 = flag.Int("test.blockprofilerate", 1, "set blocking profile `rate` (see runtime.SetBlockProfileRate)"); /* */ $s = 31; case 31: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ blockProfileRate = _r$13;
+ _r$14 = flag.String("test.mutexprofile", "", "write a mutex contention profile to the named file after execution"); /* */ $s = 32; case 32: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ mutexProfile = _r$14;
+ _r$15 = flag.Int("test.mutexprofilefraction", 1, "if >= 0, calls runtime.SetMutexProfileFraction()"); /* */ $s = 33; case 33: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ mutexProfileFraction = _r$15;
+ _r$16 = flag.String("test.trace", "", "write an execution trace to `file`"); /* */ $s = 34; case 34: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ traceFile = _r$16;
+ _r$17 = flag.Duration("test.timeout", new time.Duration(0, 0), "fail test binary execution after duration `d` (0 means unlimited)"); /* */ $s = 35; case 35: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ timeout = _r$17;
+ _r$18 = flag.String("test.cpu", "", "comma-separated `list` of cpu counts to run each test with"); /* */ $s = 36; case 36: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ cpuListStr = _r$18;
+ _r$19 = flag.Int("test.parallel", runtime.GOMAXPROCS(0), "run at most `n` tests in parallel"); /* */ $s = 37; case 37: if($c) { $c = false; _r$19 = _r$19.$blk(); } if (_r$19 && _r$19.$blk !== undefined) { break s; }
+ parallel = _r$19;
+ errMain = errors.New("testing: unexpected use of func Main");
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/onet.v1/log"] = (function() {
+ var $pkg = {}, $init, bytes, flag, fmt, ct, io, os, regexp, runtime, debug, pprof, sort, strconv, strings, sync, testing, time, sliceType$1, sliceType$2, sliceType$3, stdOut, stdErr, debugVisible, debugVisible$24ptr, showTime, showTime$24ptr, useColors, useColors$24ptr, outputLines, debugMut, regexpPaths, _tuple, _r, init, init$1, lvl, fg, lvld, Lvl3, SetDebugVisible, DebugVisible, SetShowTime, SetUseColors, ParseEnv, Stack, lvlUI, Error, Fatal, Errorf, print;
+ bytes = $packages["bytes"];
+ flag = $packages["flag"];
+ fmt = $packages["fmt"];
+ ct = $packages["github.com/daviddengcn/go-colortext"];
+ io = $packages["io"];
+ os = $packages["os"];
+ regexp = $packages["regexp"];
+ runtime = $packages["runtime"];
+ debug = $packages["runtime/debug"];
+ pprof = $packages["runtime/pprof"];
+ sort = $packages["sort"];
+ strconv = $packages["strconv"];
+ strings = $packages["strings"];
+ sync = $packages["sync"];
+ testing = $packages["testing"];
+ time = $packages["time"];
+ sliceType$1 = $sliceType($emptyInterface);
+ sliceType$2 = $sliceType(ct.Color);
+ sliceType$3 = $sliceType($String);
+ init = function() {
+ var $ptr;
+ stdOut = os.Stdout;
+ stdErr = os.Stderr;
+ };
+ init$1 = function() {
+ var $ptr, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = ParseEnv(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: init$1 }; } $f.$ptr = $ptr; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ lvl = function(lvl$1, skip, args) {
+ var $ptr, _1, _arg, _arg$1, _arg$2, _r$1, _r$10, _r$11, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tuple$1, args, bright, caller, colors, fmtstr, line, lineStr, lvl$1, lvlAbs, lvlStr, message, name, pc, skip, str, ti, x, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _r$1 = $f._r$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tuple$1 = $f._tuple$1; args = $f.args; bright = $f.bright; caller = $f.caller; colors = $f.colors; fmtstr = $f.fmtstr; line = $f.line; lineStr = $f.lineStr; lvl$1 = $f.lvl$1; lvlAbs = $f.lvlAbs; lvlStr = $f.lvlStr; message = $f.message; name = $f.name; pc = $f.pc; skip = $f.skip; str = $f.str; ti = $f.ti; x = $f.x; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ $r = debugMut.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(debugMut, "Unlock"), []]);
+ if (lvl$1 > debugVisible) {
+ $s = -1; return;
+ }
+ _tuple$1 = runtime.Caller(skip);
+ pc = _tuple$1[0];
+ line = _tuple$1[2];
+ _r$1 = regexpPaths.ReplaceAllString(runtime.FuncForPC(pc).Name(), ""); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ name = _r$1;
+ _r$2 = fmt.Sprintf("%d", new sliceType$1([new $Int(line)])); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ lineStr = _r$2;
+ if (!outputLines) {
+ line = 0;
+ }
+ if (name.length > $pkg.NamePadding && $pkg.NamePadding > 0) {
+ $pkg.NamePadding = name.length;
+ }
+ if (lineStr.length > $pkg.LinePadding && $pkg.LinePadding > 0) {
+ $pkg.LinePadding = name.length;
+ }
+ _r$3 = fmt.Sprintf("%%%ds: %%%dd", new sliceType$1([new $Int($pkg.NamePadding), new $Int($pkg.LinePadding)])); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ fmtstr = _r$3;
+ _r$4 = fmt.Sprintf(fmtstr, new sliceType$1([new $String(name), new $Int(line)])); /* */ $s = 5; case 5: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ caller = _r$4;
+ if (!($pkg.StaticMsg === "")) {
+ caller = caller + ("@" + $pkg.StaticMsg);
+ }
+ _r$5 = fmt.Sprintln(args); /* */ $s = 6; case 6: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ message = _r$5;
+ bright = lvl$1 < 0;
+ lvlAbs = lvl$1;
+ if (bright) {
+ lvlAbs = $imul(lvlAbs, (-1));
+ }
+ lvlStr = strconv.Itoa(lvlAbs);
+ if (lvl$1 < 0) {
+ lvlStr = lvlStr + ("!");
+ }
+ _1 = lvl$1;
+ /* */ if (_1 === (-15)) { $s = 8; continue; }
+ /* */ if (_1 === (-16)) { $s = 9; continue; }
+ /* */ if (_1 === (-20)) { $s = 10; continue; }
+ /* */ if (_1 === (-19)) { $s = 11; continue; }
+ /* */ if (_1 === (-18)) { $s = 12; continue; }
+ /* */ if (_1 === (-17)) { $s = 13; continue; }
+ /* */ if (!((lvl$1 === 0))) { $s = 14; continue; }
+ /* */ $s = 15; continue;
+ /* if (_1 === (-15)) { */ case 8:
+ $r = fg(8, true); /* */ $s = 16; case 16: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ lvlStr = "I";
+ $s = 15; continue;
+ /* } else if (_1 === (-16)) { */ case 9:
+ $r = fg(8, true); /* */ $s = 17; case 17: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ lvlStr = "I";
+ $s = 15; continue;
+ /* } else if (_1 === (-20)) { */ case 10:
+ $r = fg(3, true); /* */ $s = 18; case 18: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ lvlStr = "W";
+ $s = 15; continue;
+ /* } else if (_1 === (-19)) { */ case 11:
+ $r = fg(2, false); /* */ $s = 19; case 19: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ lvlStr = "E";
+ $s = 15; continue;
+ /* } else if (_1 === (-18)) { */ case 12:
+ $r = fg(2, true); /* */ $s = 20; case 20: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ lvlStr = "F";
+ $s = 15; continue;
+ /* } else if (_1 === (-17)) { */ case 13:
+ $r = fg(2, true); /* */ $s = 21; case 21: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ lvlStr = "P";
+ $s = 15; continue;
+ /* } else if (!((lvl$1 === 0))) { */ case 14:
+ /* */ if (lvlAbs <= 5) { $s = 22; continue; }
+ /* */ $s = 23; continue;
+ /* if (lvlAbs <= 5) { */ case 22:
+ colors = new sliceType$2([4, 7, 3, 5, 7]);
+ $r = fg((x = lvlAbs - 1 >> 0, ((x < 0 || x >= colors.$length) ? ($throwRuntimeError("index out of range"), undefined) : colors.$array[colors.$offset + x])), bright); /* */ $s = 24; case 24: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 23:
+ /* } */ case 15:
+ case 7:
+ _r$6 = fmt.Sprintf(": (%s) - %s", new sliceType$1([new $String(caller), new $String(message)])); /* */ $s = 25; case 25: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ str = _r$6;
+ /* */ if (showTime) { $s = 26; continue; }
+ /* */ $s = 27; continue;
+ /* if (showTime) { */ case 26:
+ ti = $clone(time.Now(), time.Time);
+ _r$7 = $clone(ti, time.Time).Format("06/02/01 15:04:05"); /* */ $s = 28; case 28: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _arg = new $String(_r$7);
+ _arg$1 = new $Int($clone(ti, time.Time).Nanosecond());
+ _arg$2 = new $String(str);
+ _r$8 = fmt.Sprintf("%s.%09d%s", new sliceType$1([_arg, _arg$1, _arg$2])); /* */ $s = 29; case 29: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ str = _r$8;
+ /* } */ case 27:
+ _r$9 = fmt.Sprintf("%-2s%s", new sliceType$1([new $String(lvlStr), new $String(str)])); /* */ $s = 30; case 30: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ str = _r$9;
+ /* */ if (lvl$1 < -16) { $s = 31; continue; }
+ /* */ $s = 32; continue;
+ /* if (lvl$1 < -16) { */ case 31:
+ _r$10 = fmt.Fprint(stdErr, new sliceType$1([new $String(str)])); /* */ $s = 34; case 34: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _r$10;
+ $s = 33; continue;
+ /* } else { */ case 32:
+ _r$11 = fmt.Fprint(stdOut, new sliceType$1([new $String(str)])); /* */ $s = 35; case 35: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _r$11;
+ /* } */ case 33:
+ /* */ if (useColors) { $s = 36; continue; }
+ /* */ $s = 37; continue;
+ /* if (useColors) { */ case 36:
+ $r = ct.ResetColor(); /* */ $s = 38; case 38: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 37:
+ $s = -1; return;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: lvl }; } $f.$ptr = $ptr; $f._1 = _1; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._r$1 = _r$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tuple$1 = _tuple$1; $f.args = args; $f.bright = bright; $f.caller = caller; $f.colors = colors; $f.fmtstr = fmtstr; $f.line = line; $f.lineStr = lineStr; $f.lvl$1 = lvl$1; $f.lvlAbs = lvlAbs; $f.lvlStr = lvlStr; $f.message = message; $f.name = name; $f.pc = pc; $f.skip = skip; $f.str = str; $f.ti = ti; $f.x = x; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ fg = function(c, bright) {
+ var $ptr, bright, c, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; bright = $f.bright; c = $f.c; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ if (useColors) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (useColors) { */ case 1:
+ $r = ct.Foreground(c, bright); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 2:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: fg }; } $f.$ptr = $ptr; $f.bright = bright; $f.c = c; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ lvld = function(l, args) {
+ var $ptr, args, l, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; args = $f.args; l = $f.l; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = lvl(l, 3, args); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: lvld }; } $f.$ptr = $ptr; $f.args = args; $f.l = l; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Lvl3 = function(args) {
+ var $ptr, args, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; args = $f.args; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = lvld(3, args); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Lvl3 }; } $f.$ptr = $ptr; $f.args = args; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Lvl3 = Lvl3;
+ SetDebugVisible = function(lvl$1) {
+ var $ptr, lvl$1, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; lvl$1 = $f.lvl$1; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ $r = debugMut.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(debugMut, "Unlock"), []]);
+ debugVisible = lvl$1;
+ $s = -1; return;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: SetDebugVisible }; } $f.$ptr = $ptr; $f.lvl$1 = lvl$1; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ $pkg.SetDebugVisible = SetDebugVisible;
+ DebugVisible = function() {
+ var $ptr, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ $r = debugMut.RLock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(debugMut, "RUnlock"), []]);
+ $s = -1; return debugVisible;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; return 0; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: DebugVisible }; } $f.$ptr = $ptr; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ $pkg.DebugVisible = DebugVisible;
+ SetShowTime = function(show) {
+ var $ptr, show, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; show = $f.show; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ $r = debugMut.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(debugMut, "Unlock"), []]);
+ showTime = show;
+ $s = -1; return;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: SetShowTime }; } $f.$ptr = $ptr; $f.show = show; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ $pkg.SetShowTime = SetShowTime;
+ SetUseColors = function(show) {
+ var $ptr, show, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; show = $f.show; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ $r = debugMut.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(debugMut, "Unlock"), []]);
+ useColors = show;
+ $s = -1; return;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: SetUseColors }; } $f.$ptr = $ptr; $f.show = show; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ $pkg.SetUseColors = SetUseColors;
+ ParseEnv = function() {
+ var $ptr, _r$1, _r$2, _r$3, _tuple$1, _tuple$2, _tuple$3, dc, dt, dtInt, dv, dvInt, err, err$1, err$2, ucInt, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; dc = $f.dc; dt = $f.dt; dtInt = $f.dtInt; dv = $f.dv; dvInt = $f.dvInt; err = $f.err; err$1 = $f.err$1; err$2 = $f.err$2; ucInt = $f.ucInt; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$1 = os.Getenv("DEBUG_LVL"); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ dv = _r$1;
+ /* */ if (!(dv === "")) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!(dv === "")) { */ case 2:
+ _tuple$1 = strconv.Atoi(dv);
+ dvInt = _tuple$1[0];
+ err = _tuple$1[1];
+ $r = Lvl3(new sliceType$1([new $String("Setting level to"), new $String(dv), new $Int(dvInt), err])); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = SetDebugVisible(dvInt); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (!($interfaceIsEqual(err, $ifaceNil))) { */ case 6:
+ $r = Error(new sliceType$1([new $String("Couldn't convert"), new $String(dv), new $String("to debug-level")])); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 7:
+ /* } */ case 3:
+ _r$2 = os.Getenv("DEBUG_TIME"); /* */ $s = 9; case 9: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ dt = _r$2;
+ /* */ if (!(dt === "")) { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if (!(dt === "")) { */ case 10:
+ _tuple$2 = strconv.ParseBool(dt);
+ dtInt = _tuple$2[0];
+ err$1 = _tuple$2[1];
+ $r = Lvl3(new sliceType$1([new $String("Setting showTime to"), new $String(dt), new $Bool(dtInt), err$1])); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = SetShowTime(dtInt); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ if (!($interfaceIsEqual(err$1, $ifaceNil))) { $s = 14; continue; }
+ /* */ $s = 15; continue;
+ /* if (!($interfaceIsEqual(err$1, $ifaceNil))) { */ case 14:
+ $r = Error(new sliceType$1([new $String("Couldn't convert"), new $String(dt), new $String("to boolean")])); /* */ $s = 16; case 16: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 15:
+ /* } */ case 11:
+ _r$3 = os.Getenv("DEBUG_COLOR"); /* */ $s = 17; case 17: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ dc = _r$3;
+ /* */ if (!(dc === "")) { $s = 18; continue; }
+ /* */ $s = 19; continue;
+ /* if (!(dc === "")) { */ case 18:
+ _tuple$3 = strconv.ParseBool(dc);
+ ucInt = _tuple$3[0];
+ err$2 = _tuple$3[1];
+ $r = Lvl3(new sliceType$1([new $String("Setting useColor to"), new $String(dc), new $Bool(ucInt), err$2])); /* */ $s = 20; case 20: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = SetUseColors(ucInt); /* */ $s = 21; case 21: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ if (!($interfaceIsEqual(err$2, $ifaceNil))) { $s = 22; continue; }
+ /* */ $s = 23; continue;
+ /* if (!($interfaceIsEqual(err$2, $ifaceNil))) { */ case 22:
+ $r = Error(new sliceType$1([new $String("Couldn't convert"), new $String(dc), new $String("to boolean")])); /* */ $s = 24; case 24: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 23:
+ /* } */ case 19:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ParseEnv }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f.dc = dc; $f.dt = dt; $f.dtInt = dtInt; $f.dv = dv; $f.dvInt = dvInt; $f.err = err; $f.err$1 = err$1; $f.err$2 = err$2; $f.ucInt = ucInt; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.ParseEnv = ParseEnv;
+ Stack = function() {
+ var $ptr;
+ return ($bytesToString(debug.Stack()));
+ };
+ $pkg.Stack = Stack;
+ lvlUI = function(l, args) {
+ var $ptr, _r$1, args, l, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; args = $f.args; l = $f.l; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$1 = DebugVisible(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ /* */ if (_r$1 > 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (_r$1 > 0) { */ case 1:
+ $r = lvl(l, 3, args); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 3; continue;
+ /* } else { */ case 2:
+ $r = print(l, args); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 3:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: lvlUI }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f.args = args; $f.l = l; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Error = function(args) {
+ var $ptr, args, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; args = $f.args; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = lvlUI(-19, args); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Error }; } $f.$ptr = $ptr; $f.args = args; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Error = Error;
+ Fatal = function(args) {
+ var $ptr, args, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; args = $f.args; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = lvlUI(-18, args); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ os.Exit(1);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Fatal }; } $f.$ptr = $ptr; $f.args = args; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Fatal = Fatal;
+ Errorf = function(f, args) {
+ var $ptr, _arg, _r$1, args, f, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _r$1 = $f._r$1; args = $f.args; f = $f.f; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$1 = fmt.Sprintf(f, args); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _arg = new $String(_r$1);
+ $r = lvlUI(-19, new sliceType$1([_arg])); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Errorf }; } $f.$ptr = $ptr; $f._arg = _arg; $f._r$1 = _r$1; $f.args = args; $f.f = f; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Errorf = Errorf;
+ print = function(lvl$1, args) {
+ var $ptr, _1, _i, _r$1, _r$2, _r$3, _r$4, _ref, a, args, i, ind, lvl$1, prefix, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _i = $f._i; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _ref = $f._ref; a = $f.a; args = $f.args; i = $f.i; ind = $f.ind; lvl$1 = $f.lvl$1; prefix = $f.prefix; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ $r = debugMut.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(debugMut, "Unlock"), []]);
+ _1 = debugVisible;
+ /* */ if (_1 === (-1)) { $s = 3; continue; }
+ /* */ if (_1 === (0)) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (_1 === (-1)) { */ case 3:
+ prefix = new sliceType$3(["[-]", "[!]", "[X]", "[Q]", "[+]", ""]);
+ ind = lvl$1 - -20 >> 0;
+ if (ind < 0 || ind > 4) {
+ $panic(new $String("index out of range " + strconv.Itoa(ind)));
+ }
+ _r$1 = fmt.Fprint(stdOut, new sliceType$1([new $String(((ind < 0 || ind >= prefix.$length) ? ($throwRuntimeError("index out of range"), undefined) : prefix.$array[prefix.$offset + ind])), new $String(" ")])); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $s = 5; continue;
+ /* } else if (_1 === (0)) { */ case 4:
+ /* } */ case 5:
+ case 2:
+ _ref = args;
+ _i = 0;
+ /* while (true) { */ case 7:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 8; continue; }
+ i = _i;
+ a = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ _r$2 = fmt.Fprint(stdOut, new sliceType$1([a])); /* */ $s = 9; case 9: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ /* */ if (!((i === (args.$length - 1 >> 0)))) { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if (!((i === (args.$length - 1 >> 0)))) { */ case 10:
+ _r$3 = fmt.Fprint(stdOut, new sliceType$1([new $String(" ")])); /* */ $s = 12; case 12: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$3;
+ /* } */ case 11:
+ _i++;
+ /* } */ $s = 7; continue; case 8:
+ _r$4 = fmt.Fprint(stdOut, new sliceType$1([new $String("\n")])); /* */ $s = 13; case 13: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$4;
+ $s = -1; return;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: print }; } $f.$ptr = $ptr; $f._1 = _1; $f._i = _i; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._ref = _ref; $f.a = a; $f.args = args; $f.i = i; $f.ind = ind; $f.lvl$1 = lvl$1; $f.prefix = prefix; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = flag.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = ct.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = os.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = regexp.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = debug.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = pprof.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sort.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = testing.$init(); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = time.$init(); /* */ $s = 16; case 16: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ stdOut = $ifaceNil;
+ stdErr = $ifaceNil;
+ debugMut = new sync.RWMutex.ptr(new sync.Mutex.ptr(0, 0), 0, 0, 0, 0);
+ $pkg.NamePadding = 40;
+ $pkg.LinePadding = 3;
+ $pkg.StaticMsg = "";
+ debugVisible = 1;
+ showTime = false;
+ useColors = false;
+ outputLines = true;
+ _r = regexp.Compile(".*/"); /* */ $s = 17; case 17: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ regexpPaths = _tuple[0];
+ init();
+ $r = init$1(); /* */ $s = 18; case 18: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["net/url"] = (function() {
+ var $pkg = {}, $init, bytes, errors, fmt, sort, strconv, strings, sliceType, shouldEscape, QueryEscape, escape;
+ bytes = $packages["bytes"];
+ errors = $packages["errors"];
+ fmt = $packages["fmt"];
+ sort = $packages["sort"];
+ strconv = $packages["strconv"];
+ strings = $packages["strings"];
+ sliceType = $sliceType($Uint8);
+ shouldEscape = function(c, mode) {
+ var $ptr, _1, _2, _3, c, mode;
+ if (65 <= c && c <= 90 || 97 <= c && c <= 122 || 48 <= c && c <= 57) {
+ return false;
+ }
+ if ((mode === 3) || (mode === 4)) {
+ _1 = c;
+ if ((_1 === (33)) || (_1 === (36)) || (_1 === (38)) || (_1 === (39)) || (_1 === (40)) || (_1 === (41)) || (_1 === (42)) || (_1 === (43)) || (_1 === (44)) || (_1 === (59)) || (_1 === (61)) || (_1 === (58)) || (_1 === (91)) || (_1 === (93)) || (_1 === (60)) || (_1 === (62)) || (_1 === (34))) {
+ return false;
+ }
+ }
+ _2 = c;
+ if ((_2 === (45)) || (_2 === (95)) || (_2 === (46)) || (_2 === (126))) {
+ return false;
+ } else if ((_2 === (36)) || (_2 === (38)) || (_2 === (43)) || (_2 === (44)) || (_2 === (47)) || (_2 === (58)) || (_2 === (59)) || (_2 === (61)) || (_2 === (63)) || (_2 === (64))) {
+ _3 = mode;
+ if (_3 === (1)) {
+ return c === 63;
+ } else if (_3 === (2)) {
+ return (c === 47) || (c === 59) || (c === 44) || (c === 63);
+ } else if (_3 === (5)) {
+ return (c === 64) || (c === 47) || (c === 63) || (c === 58);
+ } else if (_3 === (6)) {
+ return true;
+ } else if (_3 === (7)) {
+ return false;
+ }
+ }
+ return true;
+ };
+ QueryEscape = function(s) {
+ var $ptr, s;
+ return escape(s, 6);
+ };
+ $pkg.QueryEscape = QueryEscape;
+ escape = function(s, mode) {
+ var $ptr, _tmp, _tmp$1, c, c$1, hexCount, i, i$1, j, mode, s, spaceCount, t, x, x$1;
+ _tmp = 0;
+ _tmp$1 = 0;
+ spaceCount = _tmp;
+ hexCount = _tmp$1;
+ i = 0;
+ while (true) {
+ if (!(i < s.length)) { break; }
+ c = s.charCodeAt(i);
+ if (shouldEscape(c, mode)) {
+ if ((c === 32) && (mode === 6)) {
+ spaceCount = spaceCount + (1) >> 0;
+ } else {
+ hexCount = hexCount + (1) >> 0;
+ }
+ }
+ i = i + (1) >> 0;
+ }
+ if ((spaceCount === 0) && (hexCount === 0)) {
+ return s;
+ }
+ t = $makeSlice(sliceType, (s.length + ($imul(2, hexCount)) >> 0));
+ j = 0;
+ i$1 = 0;
+ while (true) {
+ if (!(i$1 < s.length)) { break; }
+ c$1 = s.charCodeAt(i$1);
+ if ((c$1 === 32) && (mode === 6)) {
+ ((j < 0 || j >= t.$length) ? ($throwRuntimeError("index out of range"), undefined) : t.$array[t.$offset + j] = 43);
+ j = j + (1) >> 0;
+ } else if (shouldEscape(c$1, mode)) {
+ ((j < 0 || j >= t.$length) ? ($throwRuntimeError("index out of range"), undefined) : t.$array[t.$offset + j] = 37);
+ (x = j + 1 >> 0, ((x < 0 || x >= t.$length) ? ($throwRuntimeError("index out of range"), undefined) : t.$array[t.$offset + x] = "0123456789ABCDEF".charCodeAt((c$1 >>> 4 << 24 >>> 24))));
+ (x$1 = j + 2 >> 0, ((x$1 < 0 || x$1 >= t.$length) ? ($throwRuntimeError("index out of range"), undefined) : t.$array[t.$offset + x$1] = "0123456789ABCDEF".charCodeAt(((c$1 & 15) >>> 0))));
+ j = j + (3) >> 0;
+ } else {
+ ((j < 0 || j >= t.$length) ? ($throwRuntimeError("index out of range"), undefined) : t.$array[t.$offset + j] = s.charCodeAt(i$1));
+ j = j + (1) >> 0;
+ }
+ i$1 = i$1 + (1) >> 0;
+ }
+ return ($bytesToString(t));
+ };
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sort.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["text/template/parse"] = (function() {
+ var $pkg = {}, $init, bytes, fmt, runtime, strconv, strings, unicode, utf8;
+ bytes = $packages["bytes"];
+ fmt = $packages["fmt"];
+ runtime = $packages["runtime"];
+ strconv = $packages["strconv"];
+ strings = $packages["strings"];
+ unicode = $packages["unicode"];
+ utf8 = $packages["unicode/utf8"];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = unicode.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = utf8.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["text/template"] = (function() {
+ var $pkg = {}, $init, bytes, errors, fmt, io, ioutil, url, filepath, reflect, runtime, sort, strings, sync, parse, unicode, utf8, ptrType, ptrType$1, ptrType$2, ptrType$3, sliceType, sliceType$1, funcType, funcType$1, sliceType$2, funcType$2, funcType$3, funcType$4, funcType$5, funcType$6, funcType$7, arrayType, errorType, fmtStringerType, reflectValueType, builtins, builtinFuncs, errBadComparisonType, errBadComparison, errNoComparison, htmlQuot, htmlApos, htmlAmp, htmlLt, htmlGt, jsLowUni, hex, jsBackslash, jsApos, jsQuot, jsLt, jsGt, _r, _r$1, _r$2, _r$3, isTrue, canBeNil, indirect, indirectInterface, printableValue, createValueFuncs, addValueFuncs, goodFunc, goodName, prepareArg, index, length, call, truth, and, or, not, basicKind, eq, ne, lt, le, gt, ge, HTMLEscape, HTMLEscapeString, HTMLEscaper, JSEscape, JSEscapeString, jsIsSpecial, JSEscaper, URLQueryEscaper, evalArgs;
+ bytes = $packages["bytes"];
+ errors = $packages["errors"];
+ fmt = $packages["fmt"];
+ io = $packages["io"];
+ ioutil = $packages["io/ioutil"];
+ url = $packages["net/url"];
+ filepath = $packages["path/filepath"];
+ reflect = $packages["reflect"];
+ runtime = $packages["runtime"];
+ sort = $packages["sort"];
+ strings = $packages["strings"];
+ sync = $packages["sync"];
+ parse = $packages["text/template/parse"];
+ unicode = $packages["unicode"];
+ utf8 = $packages["unicode/utf8"];
+ ptrType = $ptrType(reflect.rtype);
+ ptrType$1 = $ptrType($error);
+ ptrType$2 = $ptrType(fmt.Stringer);
+ ptrType$3 = $ptrType(reflect.Value);
+ sliceType = $sliceType($Uint8);
+ sliceType$1 = $sliceType(reflect.Value);
+ funcType = $funcType([reflect.Value, sliceType$1], [reflect.Value], true);
+ funcType$1 = $funcType([reflect.Value, sliceType$1], [reflect.Value, $error], true);
+ sliceType$2 = $sliceType($emptyInterface);
+ funcType$2 = $funcType([sliceType$2], [$String], true);
+ funcType$3 = $funcType([$emptyInterface], [$Int, $error], false);
+ funcType$4 = $funcType([reflect.Value], [$Bool], false);
+ funcType$5 = $funcType([$String, sliceType$2], [$String], true);
+ funcType$6 = $funcType([reflect.Value, sliceType$1], [$Bool, $error], true);
+ funcType$7 = $funcType([reflect.Value, reflect.Value], [$Bool, $error], false);
+ arrayType = $arrayType($Uint8, 64);
+ isTrue = function(val) {
+ var $ptr, _1, _tmp, _tmp$1, _tmp$2, _tmp$3, ok, truth$1, val, x, x$1, x$2;
+ truth$1 = false;
+ ok = false;
+ if (!$clone(val, reflect.Value).IsValid()) {
+ _tmp = false;
+ _tmp$1 = true;
+ truth$1 = _tmp;
+ ok = _tmp$1;
+ return [truth$1, ok];
+ }
+ _1 = $clone(val, reflect.Value).Kind();
+ if ((_1 === (17)) || (_1 === (21)) || (_1 === (23)) || (_1 === (24))) {
+ truth$1 = $clone(val, reflect.Value).Len() > 0;
+ } else if (_1 === (1)) {
+ truth$1 = $clone(val, reflect.Value).Bool();
+ } else if ((_1 === (15)) || (_1 === (16))) {
+ truth$1 = !((x = $clone(val, reflect.Value).Complex(), (x.$real === 0 && x.$imag === 0)));
+ } else if ((_1 === (18)) || (_1 === (19)) || (_1 === (22)) || (_1 === (20))) {
+ truth$1 = !$clone(val, reflect.Value).IsNil();
+ } else if ((_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6))) {
+ truth$1 = !((x$1 = $clone(val, reflect.Value).Int(), (x$1.$high === 0 && x$1.$low === 0)));
+ } else if ((_1 === (13)) || (_1 === (14))) {
+ truth$1 = !(($clone(val, reflect.Value).Float() === 0));
+ } else if ((_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12))) {
+ truth$1 = !((x$2 = $clone(val, reflect.Value).Uint(), (x$2.$high === 0 && x$2.$low === 0)));
+ } else if (_1 === (25)) {
+ truth$1 = true;
+ } else {
+ return [truth$1, ok];
+ }
+ _tmp$2 = truth$1;
+ _tmp$3 = true;
+ truth$1 = _tmp$2;
+ ok = _tmp$3;
+ return [truth$1, ok];
+ };
+ canBeNil = function(typ) {
+ var $ptr, _1, _r$4, typ, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r$4 = $f._r$4; typ = $f.typ; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = typ.Kind(); /* */ $s = 2; case 2: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _1 = _r$4;
+ if ((_1 === (18)) || (_1 === (19)) || (_1 === (20)) || (_1 === (21)) || (_1 === (22)) || (_1 === (23))) {
+ $s = -1; return true;
+ } else if (_1 === (25)) {
+ $s = -1; return $interfaceIsEqual(typ, reflectValueType);
+ }
+ case 1:
+ $s = -1; return false;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: canBeNil }; } $f.$ptr = $ptr; $f._1 = _1; $f._r$4 = _r$4; $f.typ = typ; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ indirect = function(v) {
+ var $ptr, _r$4, _tmp, _tmp$1, _tmp$2, _tmp$3, isNil, rv, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; isNil = $f.isNil; rv = $f.rv; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ rv = new reflect.Value.ptr(ptrType.nil, 0, 0);
+ isNil = false;
+ /* while (true) { */ case 1:
+ /* if (!(($clone(v, reflect.Value).Kind() === 22) || ($clone(v, reflect.Value).Kind() === 20))) { break; } */ if(!(($clone(v, reflect.Value).Kind() === 22) || ($clone(v, reflect.Value).Kind() === 20))) { $s = 2; continue; }
+ if ($clone(v, reflect.Value).IsNil()) {
+ _tmp = v;
+ _tmp$1 = true;
+ rv = _tmp;
+ isNil = _tmp$1;
+ $s = -1; return [rv, isNil];
+ }
+ _r$4 = $clone(v, reflect.Value).Elem(); /* */ $s = 3; case 3: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ v = _r$4;
+ /* } */ $s = 1; continue; case 2:
+ _tmp$2 = v;
+ _tmp$3 = false;
+ rv = _tmp$2;
+ isNil = _tmp$3;
+ $s = -1; return [rv, isNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: indirect }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f.isNil = isNil; $f.rv = rv; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ indirectInterface = function(v) {
+ var $ptr, _r$4, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ if (!(($clone(v, reflect.Value).Kind() === 20))) {
+ $s = -1; return v;
+ }
+ if ($clone(v, reflect.Value).IsNil()) {
+ $s = -1; return new reflect.Value.ptr(ptrType.nil, 0, 0);
+ }
+ _r$4 = $clone(v, reflect.Value).Elem(); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ $s = -1; return _r$4;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: indirectInterface }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ printableValue = function(v) {
+ var $ptr, _1, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tuple, _v, _v$1, _v$2, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tuple = $f._tuple; _v = $f._v; _v$1 = $f._v$1; _v$2 = $f._v$2; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ if ($clone(v, reflect.Value).Kind() === 22) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ($clone(v, reflect.Value).Kind() === 22) { */ case 1:
+ _r$4 = indirect($clone(v, reflect.Value)); /* */ $s = 3; case 3: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _tuple = _r$4;
+ v = _tuple[0];
+ /* } */ case 2:
+ if (!$clone(v, reflect.Value).IsValid()) {
+ $s = -1; return [new $String("<no value>"), true];
+ }
+ _r$5 = $clone(v, reflect.Value).Type().Implements(errorType); /* */ $s = 7; case 7: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ if (!(!_r$5)) { _v = false; $s = 6; continue s; }
+ _r$6 = $clone(v, reflect.Value).Type().Implements(fmtStringerType); /* */ $s = 8; case 8: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _v = !_r$6; case 6:
+ /* */ if (_v) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (_v) { */ case 4:
+ if (!($clone(v, reflect.Value).CanAddr())) { _v$1 = false; $s = 12; continue s; }
+ _r$7 = reflect.PtrTo($clone(v, reflect.Value).Type()).Implements(errorType); /* */ $s = 14; case 14: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ if (_r$7) { _v$2 = true; $s = 13; continue s; }
+ _r$8 = reflect.PtrTo($clone(v, reflect.Value).Type()).Implements(fmtStringerType); /* */ $s = 15; case 15: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _v$2 = _r$8; case 13:
+ _v$1 = _v$2; case 12:
+ /* */ if (_v$1) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (_v$1) { */ case 9:
+ v = $clone(v, reflect.Value).Addr();
+ $s = 11; continue;
+ /* } else { */ case 10:
+ _1 = $clone(v, reflect.Value).Kind();
+ if ((_1 === (18)) || (_1 === (19))) {
+ $s = -1; return [$ifaceNil, false];
+ }
+ /* } */ case 11:
+ /* } */ case 5:
+ _r$9 = $clone(v, reflect.Value).Interface(); /* */ $s = 16; case 16: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ $s = -1; return [_r$9, true];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: printableValue }; } $f.$ptr = $ptr; $f._1 = _1; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tuple = _tuple; $f._v = _v; $f._v$1 = _v$1; $f._v$2 = _v$2; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ createValueFuncs = function(funcMap) {
+ var $ptr, funcMap, m, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; funcMap = $f.funcMap; m = $f.m; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ m = {};
+ $r = addValueFuncs(m, funcMap); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return m;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: createValueFuncs }; } $f.$ptr = $ptr; $f.funcMap = funcMap; $f.m = m; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ addValueFuncs = function(out, in$1) {
+ var $ptr, _arg, _arg$1, _entry, _i, _key, _keys, _r$4, _r$5, _r$6, _r$7, _r$8, _ref, fn, in$1, name, out, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _entry = $f._entry; _i = $f._i; _key = $f._key; _keys = $f._keys; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _ref = $f._ref; fn = $f.fn; in$1 = $f.in$1; name = $f.name; out = $f.out; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _ref = in$1;
+ _i = 0;
+ _keys = $keys(_ref);
+ /* while (true) { */ case 1:
+ /* if (!(_i < _keys.length)) { break; } */ if(!(_i < _keys.length)) { $s = 2; continue; }
+ _entry = _ref[_keys[_i]];
+ if (_entry === undefined) {
+ _i++;
+ /* continue; */ $s = 1; continue;
+ }
+ name = _entry.k;
+ fn = _entry.v;
+ /* */ if (!goodName(name)) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!goodName(name)) { */ case 3:
+ _r$4 = fmt.Errorf("function name %s is not a valid identifier", new sliceType$2([new $String(name)])); /* */ $s = 5; case 5: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ $panic(_r$4);
+ /* } */ case 4:
+ _r$5 = reflect.ValueOf(fn); /* */ $s = 6; case 6: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ v = _r$5;
+ if (!(($clone(v, reflect.Value).Kind() === 19))) {
+ $panic(new $String("value for " + name + " not a function"));
+ }
+ _r$6 = goodFunc($clone(v, reflect.Value).Type()); /* */ $s = 9; case 9: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ /* */ if (!_r$6) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (!_r$6) { */ case 7:
+ _arg = new $String(name);
+ _r$7 = $clone(v, reflect.Value).Type().NumOut(); /* */ $s = 10; case 10: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _arg$1 = new $Int(_r$7);
+ _r$8 = fmt.Errorf("can't install method/function %q with %d results", new sliceType$2([_arg, _arg$1])); /* */ $s = 11; case 11: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $panic(_r$8);
+ /* } */ case 8:
+ _key = name; (out || $throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(_key)] = { k: _key, v: $clone(v, reflect.Value) };
+ _i++;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: addValueFuncs }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._entry = _entry; $f._i = _i; $f._key = _key; $f._keys = _keys; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._ref = _ref; $f.fn = fn; $f.in$1 = in$1; $f.name = name; $f.out = out; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ goodFunc = function(typ) {
+ var $ptr, _r$4, _r$5, _r$6, _v, typ, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _v = $f._v; typ = $f.typ; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = typ.NumOut(); /* */ $s = 5; case 5: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ /* */ if ((_r$4 === 1)) { $s = 2; continue; }
+ _r$5 = typ.NumOut(); /* */ $s = 7; case 7: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ if (!(_r$5 === 2)) { _v = false; $s = 6; continue s; }
+ _r$6 = typ.Out(1); /* */ $s = 8; case 8: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _v = $interfaceIsEqual(_r$6, errorType); case 6:
+ /* */ if (_v) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if ((_r$4 === 1)) { */ case 2:
+ $s = -1; return true;
+ /* } else if (_v) { */ case 3:
+ $s = -1; return true;
+ /* } */ case 4:
+ case 1:
+ $s = -1; return false;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: goodFunc }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._v = _v; $f.typ = typ; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ goodName = function(name) {
+ var $ptr, _i, _ref, _rune, i, name, r;
+ if (name === "") {
+ return false;
+ }
+ _ref = name;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.length)) { break; }
+ _rune = $decodeRune(_ref, _i);
+ i = _i;
+ r = _rune[0];
+ if ((r === 95)) {
+ } else if ((i === 0) && !unicode.IsLetter(r)) {
+ return false;
+ } else if (!unicode.IsLetter(r) && !unicode.IsDigit(r)) {
+ return false;
+ }
+ _i += _rune[1];
+ }
+ return true;
+ };
+ prepareArg = function(value, argType) {
+ var $ptr, _r$4, _r$5, _r$6, _r$7, _r$8, argType, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; argType = $f.argType; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ if (!$clone(value, reflect.Value).IsValid()) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!$clone(value, reflect.Value).IsValid()) { */ case 1:
+ _r$4 = canBeNil(argType); /* */ $s = 5; case 5: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ /* */ if (!_r$4) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!_r$4) { */ case 3:
+ _r$5 = fmt.Errorf("value is nil; should be of type %s", new sliceType$2([argType])); /* */ $s = 6; case 6: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $s = -1; return [new reflect.Value.ptr(ptrType.nil, 0, 0), _r$5];
+ /* } */ case 4:
+ _r$6 = reflect.Zero(argType); /* */ $s = 7; case 7: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ value = _r$6;
+ /* } */ case 2:
+ _r$7 = $clone(value, reflect.Value).Type().AssignableTo(argType); /* */ $s = 10; case 10: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ /* */ if (!_r$7) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if (!_r$7) { */ case 8:
+ _r$8 = fmt.Errorf("value has type %s; should be %s", new sliceType$2([$clone(value, reflect.Value).Type(), argType])); /* */ $s = 11; case 11: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $s = -1; return [new reflect.Value.ptr(ptrType.nil, 0, 0), _r$8];
+ /* } */ case 9:
+ $s = -1; return [value, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: prepareArg }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f.argType = argType; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ index = function(item, indices) {
+ var $ptr, _1, _2, _arg, _arg$1, _i, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _ref, _tuple, _tuple$1, err, i, index$1, index$2, indices, isNil, item, v, x, x$1, x$2, x$3, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _2 = $f._2; _arg = $f._arg; _arg$1 = $f._arg$1; _i = $f._i; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _ref = $f._ref; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; err = $f.err; i = $f.i; index$1 = $f.index$1; index$2 = $f.index$2; indices = $f.indices; isNil = $f.isNil; item = $f.item; v = $f.v; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = indirectInterface($clone(item, reflect.Value)); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ v = _r$4;
+ /* */ if (!$clone(v, reflect.Value).IsValid()) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!$clone(v, reflect.Value).IsValid()) { */ case 2:
+ _r$5 = fmt.Errorf("index of untyped nil", new sliceType$2([])); /* */ $s = 4; case 4: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $s = -1; return [new reflect.Value.ptr(ptrType.nil, 0, 0), _r$5];
+ /* } */ case 3:
+ _ref = indices;
+ _i = 0;
+ /* while (true) { */ case 5:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 6; continue; }
+ i = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ _r$6 = indirectInterface($clone(i, reflect.Value)); /* */ $s = 7; case 7: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ index$1 = _r$6;
+ isNil = false;
+ _r$7 = indirect($clone(v, reflect.Value)); /* */ $s = 8; case 8: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _tuple = _r$7;
+ v = _tuple[0];
+ isNil = _tuple[1];
+ /* */ if (isNil) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (isNil) { */ case 9:
+ _r$8 = fmt.Errorf("index of nil pointer", new sliceType$2([])); /* */ $s = 11; case 11: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $s = -1; return [new reflect.Value.ptr(ptrType.nil, 0, 0), _r$8];
+ /* } */ case 10:
+ _1 = $clone(v, reflect.Value).Kind();
+ /* */ if ((_1 === (17)) || (_1 === (23)) || (_1 === (24))) { $s = 13; continue; }
+ /* */ if (_1 === (21)) { $s = 14; continue; }
+ /* */ if (_1 === (0)) { $s = 15; continue; }
+ /* */ $s = 16; continue;
+ /* if ((_1 === (17)) || (_1 === (23)) || (_1 === (24))) { */ case 13:
+ x = new $Int64(0, 0);
+ _2 = $clone(index$1, reflect.Value).Kind();
+ /* */ if ((_2 === (2)) || (_2 === (3)) || (_2 === (4)) || (_2 === (5)) || (_2 === (6))) { $s = 19; continue; }
+ /* */ if ((_2 === (7)) || (_2 === (8)) || (_2 === (9)) || (_2 === (10)) || (_2 === (11)) || (_2 === (12))) { $s = 20; continue; }
+ /* */ if (_2 === (0)) { $s = 21; continue; }
+ /* */ $s = 22; continue;
+ /* if ((_2 === (2)) || (_2 === (3)) || (_2 === (4)) || (_2 === (5)) || (_2 === (6))) { */ case 19:
+ x = $clone(index$1, reflect.Value).Int();
+ $s = 23; continue;
+ /* } else if ((_2 === (7)) || (_2 === (8)) || (_2 === (9)) || (_2 === (10)) || (_2 === (11)) || (_2 === (12))) { */ case 20:
+ x = ((x$1 = $clone(index$1, reflect.Value).Uint(), new $Int64(x$1.$high, x$1.$low)));
+ $s = 23; continue;
+ /* } else if (_2 === (0)) { */ case 21:
+ _r$9 = fmt.Errorf("cannot index slice/array with nil", new sliceType$2([])); /* */ $s = 24; case 24: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ $s = -1; return [new reflect.Value.ptr(ptrType.nil, 0, 0), _r$9];
+ /* } else { */ case 22:
+ _r$10 = fmt.Errorf("cannot index slice/array with type %s", new sliceType$2([$clone(index$1, reflect.Value).Type()])); /* */ $s = 25; case 25: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ $s = -1; return [new reflect.Value.ptr(ptrType.nil, 0, 0), _r$10];
+ /* } */ case 23:
+ case 18:
+ /* */ if ((x.$high < 0 || (x.$high === 0 && x.$low < 0)) || (x$2 = (new $Int64(0, $clone(v, reflect.Value).Len())), (x.$high > x$2.$high || (x.$high === x$2.$high && x.$low >= x$2.$low)))) { $s = 26; continue; }
+ /* */ $s = 27; continue;
+ /* if ((x.$high < 0 || (x.$high === 0 && x.$low < 0)) || (x$2 = (new $Int64(0, $clone(v, reflect.Value).Len())), (x.$high > x$2.$high || (x.$high === x$2.$high && x.$low >= x$2.$low)))) { */ case 26:
+ _r$11 = fmt.Errorf("index out of range: %d", new sliceType$2([x])); /* */ $s = 28; case 28: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ $s = -1; return [new reflect.Value.ptr(ptrType.nil, 0, 0), _r$11];
+ /* } */ case 27:
+ _r$12 = $clone(v, reflect.Value).Index((((x.$low + ((x.$high >> 31) * 4294967296)) >> 0))); /* */ $s = 29; case 29: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ v = _r$12;
+ $s = 17; continue;
+ /* } else if (_1 === (21)) { */ case 14:
+ _arg = $clone(index$1, reflect.Value);
+ _r$13 = $clone(v, reflect.Value).Type().Key(); /* */ $s = 30; case 30: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _arg$1 = _r$13;
+ _r$14 = prepareArg(_arg, _arg$1); /* */ $s = 31; case 31: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ _tuple$1 = _r$14;
+ index$2 = _tuple$1[0];
+ err = _tuple$1[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [new reflect.Value.ptr(ptrType.nil, 0, 0), err];
+ }
+ _r$15 = $clone(v, reflect.Value).MapIndex($clone(index$2, reflect.Value)); /* */ $s = 32; case 32: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ x$3 = _r$15;
+ /* */ if ($clone(x$3, reflect.Value).IsValid()) { $s = 33; continue; }
+ /* */ $s = 34; continue;
+ /* if ($clone(x$3, reflect.Value).IsValid()) { */ case 33:
+ v = x$3;
+ $s = 35; continue;
+ /* } else { */ case 34:
+ _r$16 = $clone(v, reflect.Value).Type().Elem(); /* */ $s = 36; case 36: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ _r$17 = reflect.Zero(_r$16); /* */ $s = 37; case 37: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ v = _r$17;
+ /* } */ case 35:
+ $s = 17; continue;
+ /* } else if (_1 === (0)) { */ case 15:
+ $panic(new $String("unreachable"));
+ $s = 17; continue;
+ /* } else { */ case 16:
+ _r$18 = fmt.Errorf("can't index item of type %s", new sliceType$2([$clone(v, reflect.Value).Type()])); /* */ $s = 38; case 38: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ $s = -1; return [new reflect.Value.ptr(ptrType.nil, 0, 0), _r$18];
+ /* } */ case 17:
+ case 12:
+ _i++;
+ /* } */ $s = 5; continue; case 6:
+ $s = -1; return [v, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: index }; } $f.$ptr = $ptr; $f._1 = _1; $f._2 = _2; $f._arg = _arg; $f._arg$1 = _arg$1; $f._i = _i; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._ref = _ref; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.err = err; $f.i = i; $f.index$1 = index$1; $f.index$2 = index$2; $f.indices = indices; $f.isNil = isNil; $f.item = item; $f.v = v; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ length = function(item) {
+ var $ptr, _1, _r$4, _r$5, _r$6, _r$7, _r$8, _tuple, isNil, item, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _tuple = $f._tuple; isNil = $f.isNil; item = $f.item; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = reflect.ValueOf(item); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ v = _r$4;
+ /* */ if (!$clone(v, reflect.Value).IsValid()) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!$clone(v, reflect.Value).IsValid()) { */ case 2:
+ _r$5 = fmt.Errorf("len of untyped nil", new sliceType$2([])); /* */ $s = 4; case 4: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $s = -1; return [0, _r$5];
+ /* } */ case 3:
+ _r$6 = indirect($clone(v, reflect.Value)); /* */ $s = 5; case 5: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _tuple = _r$6;
+ v = _tuple[0];
+ isNil = _tuple[1];
+ /* */ if (isNil) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (isNil) { */ case 6:
+ _r$7 = fmt.Errorf("len of nil pointer", new sliceType$2([])); /* */ $s = 8; case 8: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $s = -1; return [0, _r$7];
+ /* } */ case 7:
+ _1 = $clone(v, reflect.Value).Kind();
+ if ((_1 === (17)) || (_1 === (18)) || (_1 === (21)) || (_1 === (23)) || (_1 === (24))) {
+ $s = -1; return [$clone(v, reflect.Value).Len(), $ifaceNil];
+ }
+ _r$8 = fmt.Errorf("len of type %s", new sliceType$2([$clone(v, reflect.Value).Type()])); /* */ $s = 9; case 9: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $s = -1; return [0, _r$8];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: length }; } $f.$ptr = $ptr; $f._1 = _1; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._tuple = _tuple; $f.isNil = isNil; $f.item = item; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ call = function(fn, args) {
+ var $ptr, _arg, _i, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$19, _r$20, _r$21, _r$22, _r$23, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _ref, _tuple, arg, argType, args, argv, dddType, err, fn, i, numIn, result, typ, v, value, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _i = $f._i; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$19 = $f._r$19; _r$20 = $f._r$20; _r$21 = $f._r$21; _r$22 = $f._r$22; _r$23 = $f._r$23; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _ref = $f._ref; _tuple = $f._tuple; arg = $f.arg; argType = $f.argType; args = $f.args; argv = $f.argv; dddType = $f.dddType; err = $f.err; fn = $f.fn; i = $f.i; numIn = $f.numIn; result = $f.result; typ = $f.typ; v = $f.v; value = $f.value; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = indirectInterface($clone(fn, reflect.Value)); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ v = _r$4;
+ /* */ if (!$clone(v, reflect.Value).IsValid()) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!$clone(v, reflect.Value).IsValid()) { */ case 2:
+ _r$5 = fmt.Errorf("call of nil", new sliceType$2([])); /* */ $s = 4; case 4: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $s = -1; return [new reflect.Value.ptr(ptrType.nil, 0, 0), _r$5];
+ /* } */ case 3:
+ typ = $clone(v, reflect.Value).Type();
+ _r$6 = typ.Kind(); /* */ $s = 7; case 7: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ /* */ if (!((_r$6 === 19))) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (!((_r$6 === 19))) { */ case 5:
+ _r$7 = fmt.Errorf("non-function of type %s", new sliceType$2([typ])); /* */ $s = 8; case 8: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $s = -1; return [new reflect.Value.ptr(ptrType.nil, 0, 0), _r$7];
+ /* } */ case 6:
+ _r$8 = goodFunc(typ); /* */ $s = 11; case 11: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ /* */ if (!_r$8) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (!_r$8) { */ case 9:
+ _r$9 = typ.NumOut(); /* */ $s = 12; case 12: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _arg = new $Int(_r$9);
+ _r$10 = fmt.Errorf("function called with %d args; should be 1 or 2", new sliceType$2([_arg])); /* */ $s = 13; case 13: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ $s = -1; return [new reflect.Value.ptr(ptrType.nil, 0, 0), _r$10];
+ /* } */ case 10:
+ _r$11 = typ.NumIn(); /* */ $s = 14; case 14: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ numIn = _r$11;
+ dddType = $ifaceNil;
+ _r$12 = typ.IsVariadic(); /* */ $s = 18; case 18: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ /* */ if (_r$12) { $s = 15; continue; }
+ /* */ $s = 16; continue;
+ /* if (_r$12) { */ case 15:
+ /* */ if (args.$length < (numIn - 1 >> 0)) { $s = 19; continue; }
+ /* */ $s = 20; continue;
+ /* if (args.$length < (numIn - 1 >> 0)) { */ case 19:
+ _r$13 = fmt.Errorf("wrong number of args: got %d want at least %d", new sliceType$2([new $Int(args.$length), new $Int((numIn - 1 >> 0))])); /* */ $s = 21; case 21: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ $s = -1; return [new reflect.Value.ptr(ptrType.nil, 0, 0), _r$13];
+ /* } */ case 20:
+ _r$14 = typ.In(numIn - 1 >> 0); /* */ $s = 22; case 22: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ _r$15 = _r$14.Elem(); /* */ $s = 23; case 23: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ dddType = _r$15;
+ $s = 17; continue;
+ /* } else { */ case 16:
+ /* */ if (!((args.$length === numIn))) { $s = 24; continue; }
+ /* */ $s = 25; continue;
+ /* if (!((args.$length === numIn))) { */ case 24:
+ _r$16 = fmt.Errorf("wrong number of args: got %d want %d", new sliceType$2([new $Int(args.$length), new $Int(numIn)])); /* */ $s = 26; case 26: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ $s = -1; return [new reflect.Value.ptr(ptrType.nil, 0, 0), _r$16];
+ /* } */ case 25:
+ /* } */ case 17:
+ argv = $makeSlice(sliceType$1, args.$length);
+ _ref = args;
+ _i = 0;
+ /* while (true) { */ case 27:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 28; continue; }
+ i = _i;
+ arg = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ _r$17 = indirectInterface($clone(arg, reflect.Value)); /* */ $s = 29; case 29: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ value = _r$17;
+ argType = $ifaceNil;
+ _r$18 = typ.IsVariadic(); /* */ $s = 33; case 33: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ /* */ if (!_r$18 || i < (numIn - 1 >> 0)) { $s = 30; continue; }
+ /* */ $s = 31; continue;
+ /* if (!_r$18 || i < (numIn - 1 >> 0)) { */ case 30:
+ _r$19 = typ.In(i); /* */ $s = 34; case 34: if($c) { $c = false; _r$19 = _r$19.$blk(); } if (_r$19 && _r$19.$blk !== undefined) { break s; }
+ argType = _r$19;
+ $s = 32; continue;
+ /* } else { */ case 31:
+ argType = dddType;
+ /* } */ case 32:
+ err = $ifaceNil;
+ _r$20 = prepareArg($clone(value, reflect.Value), argType); /* */ $s = 35; case 35: if($c) { $c = false; _r$20 = _r$20.$blk(); } if (_r$20 && _r$20.$blk !== undefined) { break s; }
+ _tuple = _r$20;
+ ((i < 0 || i >= argv.$length) ? ($throwRuntimeError("index out of range"), undefined) : argv.$array[argv.$offset + i] = _tuple[0]);
+ err = _tuple[1];
+ /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 36; continue; }
+ /* */ $s = 37; continue;
+ /* if (!($interfaceIsEqual(err, $ifaceNil))) { */ case 36:
+ _r$21 = fmt.Errorf("arg %d: %s", new sliceType$2([new $Int(i), err])); /* */ $s = 38; case 38: if($c) { $c = false; _r$21 = _r$21.$blk(); } if (_r$21 && _r$21.$blk !== undefined) { break s; }
+ $s = -1; return [new reflect.Value.ptr(ptrType.nil, 0, 0), _r$21];
+ /* } */ case 37:
+ _i++;
+ /* } */ $s = 27; continue; case 28:
+ _r$22 = $clone(v, reflect.Value).Call(argv); /* */ $s = 39; case 39: if($c) { $c = false; _r$22 = _r$22.$blk(); } if (_r$22 && _r$22.$blk !== undefined) { break s; }
+ result = _r$22;
+ /* */ if ((result.$length === 2) && !$clone((1 >= result.$length ? ($throwRuntimeError("index out of range"), undefined) : result.$array[result.$offset + 1]), reflect.Value).IsNil()) { $s = 40; continue; }
+ /* */ $s = 41; continue;
+ /* if ((result.$length === 2) && !$clone((1 >= result.$length ? ($throwRuntimeError("index out of range"), undefined) : result.$array[result.$offset + 1]), reflect.Value).IsNil()) { */ case 40:
+ _r$23 = $clone((1 >= result.$length ? ($throwRuntimeError("index out of range"), undefined) : result.$array[result.$offset + 1]), reflect.Value).Interface(); /* */ $s = 42; case 42: if($c) { $c = false; _r$23 = _r$23.$blk(); } if (_r$23 && _r$23.$blk !== undefined) { break s; }
+ $s = -1; return [(0 >= result.$length ? ($throwRuntimeError("index out of range"), undefined) : result.$array[result.$offset + 0]), $assertType(_r$23, $error)];
+ /* } */ case 41:
+ $s = -1; return [(0 >= result.$length ? ($throwRuntimeError("index out of range"), undefined) : result.$array[result.$offset + 0]), $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: call }; } $f.$ptr = $ptr; $f._arg = _arg; $f._i = _i; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$19 = _r$19; $f._r$20 = _r$20; $f._r$21 = _r$21; $f._r$22 = _r$22; $f._r$23 = _r$23; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._ref = _ref; $f._tuple = _tuple; $f.arg = arg; $f.argType = argType; $f.args = args; $f.argv = argv; $f.dddType = dddType; $f.err = err; $f.fn = fn; $f.i = i; $f.numIn = numIn; $f.result = result; $f.typ = typ; $f.v = v; $f.value = value; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ truth = function(arg) {
+ var $ptr, _r$4, _r$5, _tuple, arg, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; _r$5 = $f._r$5; _tuple = $f._tuple; arg = $f.arg; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = indirectInterface($clone(arg, reflect.Value)); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$5 = isTrue($clone(_r$4, reflect.Value)); /* */ $s = 2; case 2: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _tuple = _r$5;
+ t = _tuple[0];
+ $s = -1; return t;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: truth }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._tuple = _tuple; $f.arg = arg; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ and = function(arg0, args) {
+ var $ptr, _i, _r$4, _r$5, _ref, arg0, args, i, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r$4 = $f._r$4; _r$5 = $f._r$5; _ref = $f._ref; arg0 = $f.arg0; args = $f.args; i = $f.i; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = truth($clone(arg0, reflect.Value)); /* */ $s = 3; case 3: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ /* */ if (!_r$4) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!_r$4) { */ case 1:
+ $s = -1; return arg0;
+ /* } */ case 2:
+ _ref = args;
+ _i = 0;
+ /* while (true) { */ case 4:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 5; continue; }
+ i = _i;
+ arg0 = ((i < 0 || i >= args.$length) ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + i]);
+ _r$5 = truth($clone(arg0, reflect.Value)); /* */ $s = 8; case 8: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ /* */ if (!_r$5) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (!_r$5) { */ case 6:
+ /* break; */ $s = 5; continue;
+ /* } */ case 7:
+ _i++;
+ /* } */ $s = 4; continue; case 5:
+ $s = -1; return arg0;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: and }; } $f.$ptr = $ptr; $f._i = _i; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._ref = _ref; $f.arg0 = arg0; $f.args = args; $f.i = i; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ or = function(arg0, args) {
+ var $ptr, _i, _r$4, _r$5, _ref, arg0, args, i, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r$4 = $f._r$4; _r$5 = $f._r$5; _ref = $f._ref; arg0 = $f.arg0; args = $f.args; i = $f.i; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = truth($clone(arg0, reflect.Value)); /* */ $s = 3; case 3: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ /* */ if (_r$4) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (_r$4) { */ case 1:
+ $s = -1; return arg0;
+ /* } */ case 2:
+ _ref = args;
+ _i = 0;
+ /* while (true) { */ case 4:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 5; continue; }
+ i = _i;
+ arg0 = ((i < 0 || i >= args.$length) ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + i]);
+ _r$5 = truth($clone(arg0, reflect.Value)); /* */ $s = 8; case 8: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ /* */ if (_r$5) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (_r$5) { */ case 6:
+ /* break; */ $s = 5; continue;
+ /* } */ case 7:
+ _i++;
+ /* } */ $s = 4; continue; case 5:
+ $s = -1; return arg0;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: or }; } $f.$ptr = $ptr; $f._i = _i; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._ref = _ref; $f.arg0 = arg0; $f.args = args; $f.i = i; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ not = function(arg) {
+ var $ptr, _r$4, arg, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; arg = $f.arg; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = truth($clone(arg, reflect.Value)); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ $s = -1; return !_r$4;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: not }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f.arg = arg; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ basicKind = function(v) {
+ var $ptr, _1, v;
+ _1 = $clone(v, reflect.Value).Kind();
+ if (_1 === (1)) {
+ return [1, $ifaceNil];
+ } else if ((_1 === (2)) || (_1 === (3)) || (_1 === (4)) || (_1 === (5)) || (_1 === (6))) {
+ return [3, $ifaceNil];
+ } else if ((_1 === (7)) || (_1 === (8)) || (_1 === (9)) || (_1 === (10)) || (_1 === (11)) || (_1 === (12))) {
+ return [6, $ifaceNil];
+ } else if ((_1 === (13)) || (_1 === (14))) {
+ return [4, $ifaceNil];
+ } else if ((_1 === (15)) || (_1 === (16))) {
+ return [2, $ifaceNil];
+ } else if (_1 === (24)) {
+ return [5, $ifaceNil];
+ }
+ return [0, errBadComparisonType];
+ };
+ eq = function(arg1, arg2) {
+ var $ptr, _1, _i, _r$4, _r$5, _r$6, _r$7, _ref, _tuple, _tuple$1, arg, arg1, arg2, err, err$1, k1, k2, truth$1, v1, v2, x, x$1, x$10, x$11, x$12, x$13, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _i = $f._i; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _ref = $f._ref; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; arg = $f.arg; arg1 = $f.arg1; arg2 = $f.arg2; err = $f.err; err$1 = $f.err$1; k1 = $f.k1; k2 = $f.k2; truth$1 = $f.truth$1; v1 = $f.v1; v2 = $f.v2; x = $f.x; x$1 = $f.x$1; x$10 = $f.x$10; x$11 = $f.x$11; x$12 = $f.x$12; x$13 = $f.x$13; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; x$8 = $f.x$8; x$9 = $f.x$9; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = indirectInterface($clone(arg1, reflect.Value)); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ v1 = _r$4;
+ _tuple = basicKind($clone(v1, reflect.Value));
+ k1 = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [false, err];
+ }
+ if (arg2.$length === 0) {
+ $s = -1; return [false, errNoComparison];
+ }
+ _ref = arg2;
+ _i = 0;
+ /* while (true) { */ case 2:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 3; continue; }
+ arg = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ _r$5 = indirectInterface($clone(arg, reflect.Value)); /* */ $s = 4; case 4: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ v2 = _r$5;
+ _tuple$1 = basicKind($clone(v2, reflect.Value));
+ k2 = _tuple$1[0];
+ err$1 = _tuple$1[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return [false, err$1];
+ }
+ truth$1 = false;
+ /* */ if (!((k1 === k2))) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (!((k1 === k2))) { */ case 5:
+ if ((k1 === 3) && (k2 === 6)) {
+ truth$1 = (x = $clone(v1, reflect.Value).Int(), (x.$high > 0 || (x.$high === 0 && x.$low >= 0))) && (x$1 = ((x$2 = $clone(v1, reflect.Value).Int(), new $Uint64(x$2.$high, x$2.$low))), x$3 = $clone(v2, reflect.Value).Uint(), (x$1.$high === x$3.$high && x$1.$low === x$3.$low));
+ } else if ((k1 === 6) && (k2 === 3)) {
+ truth$1 = (x$4 = $clone(v2, reflect.Value).Int(), (x$4.$high > 0 || (x$4.$high === 0 && x$4.$low >= 0))) && (x$5 = $clone(v1, reflect.Value).Uint(), x$6 = ((x$7 = $clone(v2, reflect.Value).Int(), new $Uint64(x$7.$high, x$7.$low))), (x$5.$high === x$6.$high && x$5.$low === x$6.$low));
+ } else {
+ $s = -1; return [false, errBadComparison];
+ }
+ $s = 7; continue;
+ /* } else { */ case 6:
+ _1 = k1;
+ /* */ if (_1 === (1)) { $s = 9; continue; }
+ /* */ if (_1 === (2)) { $s = 10; continue; }
+ /* */ if (_1 === (4)) { $s = 11; continue; }
+ /* */ if (_1 === (3)) { $s = 12; continue; }
+ /* */ if (_1 === (5)) { $s = 13; continue; }
+ /* */ if (_1 === (6)) { $s = 14; continue; }
+ /* */ $s = 15; continue;
+ /* if (_1 === (1)) { */ case 9:
+ truth$1 = $clone(v1, reflect.Value).Bool() === $clone(v2, reflect.Value).Bool();
+ $s = 16; continue;
+ /* } else if (_1 === (2)) { */ case 10:
+ truth$1 = (x$8 = $clone(v1, reflect.Value).Complex(), x$9 = $clone(v2, reflect.Value).Complex(), (x$8.$real === x$9.$real && x$8.$imag === x$9.$imag));
+ $s = 16; continue;
+ /* } else if (_1 === (4)) { */ case 11:
+ truth$1 = $clone(v1, reflect.Value).Float() === $clone(v2, reflect.Value).Float();
+ $s = 16; continue;
+ /* } else if (_1 === (3)) { */ case 12:
+ truth$1 = (x$10 = $clone(v1, reflect.Value).Int(), x$11 = $clone(v2, reflect.Value).Int(), (x$10.$high === x$11.$high && x$10.$low === x$11.$low));
+ $s = 16; continue;
+ /* } else if (_1 === (5)) { */ case 13:
+ _r$6 = $clone(v1, reflect.Value).String(); /* */ $s = 17; case 17: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$7 = $clone(v2, reflect.Value).String(); /* */ $s = 18; case 18: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ truth$1 = _r$6 === _r$7;
+ $s = 16; continue;
+ /* } else if (_1 === (6)) { */ case 14:
+ truth$1 = (x$12 = $clone(v1, reflect.Value).Uint(), x$13 = $clone(v2, reflect.Value).Uint(), (x$12.$high === x$13.$high && x$12.$low === x$13.$low));
+ $s = 16; continue;
+ /* } else { */ case 15:
+ $panic(new $String("invalid kind"));
+ /* } */ case 16:
+ case 8:
+ /* } */ case 7:
+ if (truth$1) {
+ $s = -1; return [true, $ifaceNil];
+ }
+ _i++;
+ /* } */ $s = 2; continue; case 3:
+ $s = -1; return [false, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: eq }; } $f.$ptr = $ptr; $f._1 = _1; $f._i = _i; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._ref = _ref; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.arg = arg; $f.arg1 = arg1; $f.arg2 = arg2; $f.err = err; $f.err$1 = err$1; $f.k1 = k1; $f.k2 = k2; $f.truth$1 = truth$1; $f.v1 = v1; $f.v2 = v2; $f.x = x; $f.x$1 = x$1; $f.x$10 = x$10; $f.x$11 = x$11; $f.x$12 = x$12; $f.x$13 = x$13; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.x$8 = x$8; $f.x$9 = x$9; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ne = function(arg1, arg2) {
+ var $ptr, _r$4, _tuple, arg1, arg2, equal, err, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; _tuple = $f._tuple; arg1 = $f.arg1; arg2 = $f.arg2; equal = $f.equal; err = $f.err; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = eq($clone(arg1, reflect.Value), new sliceType$1([$clone(arg2, reflect.Value)])); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _tuple = _r$4;
+ equal = _tuple[0];
+ err = _tuple[1];
+ $s = -1; return [!equal, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ne }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f._tuple = _tuple; $f.arg1 = arg1; $f.arg2 = arg2; $f.equal = equal; $f.err = err; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ lt = function(arg1, arg2) {
+ var $ptr, _1, _r$4, _r$5, _r$6, _r$7, _tuple, _tuple$1, arg1, arg2, err, k1, k2, truth$1, v1, v2, x, x$1, x$10, x$11, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; arg1 = $f.arg1; arg2 = $f.arg2; err = $f.err; k1 = $f.k1; k2 = $f.k2; truth$1 = $f.truth$1; v1 = $f.v1; v2 = $f.v2; x = $f.x; x$1 = $f.x$1; x$10 = $f.x$10; x$11 = $f.x$11; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; x$8 = $f.x$8; x$9 = $f.x$9; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = indirectInterface($clone(arg1, reflect.Value)); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ v1 = _r$4;
+ _tuple = basicKind($clone(v1, reflect.Value));
+ k1 = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [false, err];
+ }
+ _r$5 = indirectInterface($clone(arg2, reflect.Value)); /* */ $s = 2; case 2: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ v2 = _r$5;
+ _tuple$1 = basicKind($clone(v2, reflect.Value));
+ k2 = _tuple$1[0];
+ err = _tuple$1[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [false, err];
+ }
+ truth$1 = false;
+ /* */ if (!((k1 === k2))) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!((k1 === k2))) { */ case 3:
+ if ((k1 === 3) && (k2 === 6)) {
+ truth$1 = (x = $clone(v1, reflect.Value).Int(), (x.$high < 0 || (x.$high === 0 && x.$low < 0))) || (x$1 = ((x$2 = $clone(v1, reflect.Value).Int(), new $Uint64(x$2.$high, x$2.$low))), x$3 = $clone(v2, reflect.Value).Uint(), (x$1.$high < x$3.$high || (x$1.$high === x$3.$high && x$1.$low < x$3.$low)));
+ } else if ((k1 === 6) && (k2 === 3)) {
+ truth$1 = (x$4 = $clone(v2, reflect.Value).Int(), (x$4.$high > 0 || (x$4.$high === 0 && x$4.$low >= 0))) && (x$5 = $clone(v1, reflect.Value).Uint(), x$6 = ((x$7 = $clone(v2, reflect.Value).Int(), new $Uint64(x$7.$high, x$7.$low))), (x$5.$high < x$6.$high || (x$5.$high === x$6.$high && x$5.$low < x$6.$low)));
+ } else {
+ $s = -1; return [false, errBadComparison];
+ }
+ $s = 5; continue;
+ /* } else { */ case 4:
+ _1 = k1;
+ /* */ if ((_1 === (1)) || (_1 === (2))) { $s = 7; continue; }
+ /* */ if (_1 === (4)) { $s = 8; continue; }
+ /* */ if (_1 === (3)) { $s = 9; continue; }
+ /* */ if (_1 === (5)) { $s = 10; continue; }
+ /* */ if (_1 === (6)) { $s = 11; continue; }
+ /* */ $s = 12; continue;
+ /* if ((_1 === (1)) || (_1 === (2))) { */ case 7:
+ $s = -1; return [false, errBadComparisonType];
+ /* } else if (_1 === (4)) { */ case 8:
+ truth$1 = $clone(v1, reflect.Value).Float() < $clone(v2, reflect.Value).Float();
+ $s = 13; continue;
+ /* } else if (_1 === (3)) { */ case 9:
+ truth$1 = (x$8 = $clone(v1, reflect.Value).Int(), x$9 = $clone(v2, reflect.Value).Int(), (x$8.$high < x$9.$high || (x$8.$high === x$9.$high && x$8.$low < x$9.$low)));
+ $s = 13; continue;
+ /* } else if (_1 === (5)) { */ case 10:
+ _r$6 = $clone(v1, reflect.Value).String(); /* */ $s = 14; case 14: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$7 = $clone(v2, reflect.Value).String(); /* */ $s = 15; case 15: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ truth$1 = _r$6 < _r$7;
+ $s = 13; continue;
+ /* } else if (_1 === (6)) { */ case 11:
+ truth$1 = (x$10 = $clone(v1, reflect.Value).Uint(), x$11 = $clone(v2, reflect.Value).Uint(), (x$10.$high < x$11.$high || (x$10.$high === x$11.$high && x$10.$low < x$11.$low)));
+ $s = 13; continue;
+ /* } else { */ case 12:
+ $panic(new $String("invalid kind"));
+ /* } */ case 13:
+ case 6:
+ /* } */ case 5:
+ $s = -1; return [truth$1, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: lt }; } $f.$ptr = $ptr; $f._1 = _1; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.arg1 = arg1; $f.arg2 = arg2; $f.err = err; $f.k1 = k1; $f.k2 = k2; $f.truth$1 = truth$1; $f.v1 = v1; $f.v2 = v2; $f.x = x; $f.x$1 = x$1; $f.x$10 = x$10; $f.x$11 = x$11; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.x$8 = x$8; $f.x$9 = x$9; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ le = function(arg1, arg2) {
+ var $ptr, _r$4, _r$5, _tuple, arg1, arg2, err, lessThan, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; _r$5 = $f._r$5; _tuple = $f._tuple; arg1 = $f.arg1; arg2 = $f.arg2; err = $f.err; lessThan = $f.lessThan; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = lt($clone(arg1, reflect.Value), $clone(arg2, reflect.Value)); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _tuple = _r$4;
+ lessThan = _tuple[0];
+ err = _tuple[1];
+ if (lessThan || !($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [lessThan, err];
+ }
+ _r$5 = eq($clone(arg1, reflect.Value), new sliceType$1([$clone(arg2, reflect.Value)])); /* */ $s = 2; case 2: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $s = -1; return _r$5;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: le }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._tuple = _tuple; $f.arg1 = arg1; $f.arg2 = arg2; $f.err = err; $f.lessThan = lessThan; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ gt = function(arg1, arg2) {
+ var $ptr, _r$4, _tuple, arg1, arg2, err, lessOrEqual, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; _tuple = $f._tuple; arg1 = $f.arg1; arg2 = $f.arg2; err = $f.err; lessOrEqual = $f.lessOrEqual; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = le($clone(arg1, reflect.Value), $clone(arg2, reflect.Value)); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _tuple = _r$4;
+ lessOrEqual = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [false, err];
+ }
+ $s = -1; return [!lessOrEqual, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: gt }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f._tuple = _tuple; $f.arg1 = arg1; $f.arg2 = arg2; $f.err = err; $f.lessOrEqual = lessOrEqual; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ge = function(arg1, arg2) {
+ var $ptr, _r$4, _tuple, arg1, arg2, err, lessThan, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; _tuple = $f._tuple; arg1 = $f.arg1; arg2 = $f.arg2; err = $f.err; lessThan = $f.lessThan; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = lt($clone(arg1, reflect.Value), $clone(arg2, reflect.Value)); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _tuple = _r$4;
+ lessThan = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [false, err];
+ }
+ $s = -1; return [!lessThan, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ge }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f._tuple = _tuple; $f.arg1 = arg1; $f.arg2 = arg2; $f.err = err; $f.lessThan = lessThan; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ HTMLEscape = function(w, b) {
+ var $ptr, _1, _i, _r$4, _r$5, _r$6, _ref, b, c, html, i, last, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _i = $f._i; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _ref = $f._ref; b = $f.b; c = $f.c; html = $f.html; i = $f.i; last = $f.last; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ last = 0;
+ _ref = b;
+ _i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 2; continue; }
+ i = _i;
+ c = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ html = sliceType.nil;
+ _1 = c;
+ if (_1 === (34)) {
+ html = htmlQuot;
+ } else if (_1 === (39)) {
+ html = htmlApos;
+ } else if (_1 === (38)) {
+ html = htmlAmp;
+ } else if (_1 === (60)) {
+ html = htmlLt;
+ } else if (_1 === (62)) {
+ html = htmlGt;
+ } else {
+ _i++;
+ /* continue; */ $s = 1; continue;
+ }
+ case 3:
+ _r$4 = w.Write($subslice(b, last, i)); /* */ $s = 4; case 4: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$4;
+ _r$5 = w.Write(html); /* */ $s = 5; case 5: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _r$5;
+ last = i + 1 >> 0;
+ _i++;
+ /* } */ $s = 1; continue; case 2:
+ _r$6 = w.Write($subslice(b, last)); /* */ $s = 6; case 6: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$6;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: HTMLEscape }; } $f.$ptr = $ptr; $f._1 = _1; $f._i = _i; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._ref = _ref; $f.b = b; $f.c = c; $f.html = html; $f.i = i; $f.last = last; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.HTMLEscape = HTMLEscape;
+ HTMLEscapeString = function(s) {
+ var $ptr, b, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; b = $f.b; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = [b];
+ if (!strings.ContainsAny(s, "'\"&<>")) {
+ $s = -1; return s;
+ }
+ b[0] = new bytes.Buffer.ptr(sliceType.nil, 0, arrayType.zero(), 0);
+ $r = HTMLEscape(b[0], (new sliceType($stringToBytes(s)))); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return b[0].String();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: HTMLEscapeString }; } $f.$ptr = $ptr; $f.b = b; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.HTMLEscapeString = HTMLEscapeString;
+ HTMLEscaper = function(args) {
+ var $ptr, _r$4, _r$5, args, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; _r$5 = $f._r$5; args = $f.args; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = evalArgs(args); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$5 = HTMLEscapeString(_r$4); /* */ $s = 2; case 2: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $s = -1; return _r$5;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: HTMLEscaper }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f._r$5 = _r$5; $f.args = args; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.HTMLEscaper = HTMLEscaper;
+ JSEscape = function(w, b) {
+ var $ptr, _1, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tmp, _tmp$1, _tuple, b, b$1, c, i, last, r, size, t, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tuple = $f._tuple; b = $f.b; b$1 = $f.b$1; c = $f.c; i = $f.i; last = $f.last; r = $f.r; size = $f.size; t = $f.t; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ last = 0;
+ i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(i < b.$length)) { break; } */ if(!(i < b.$length)) { $s = 2; continue; }
+ c = ((i < 0 || i >= b.$length) ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + i]);
+ /* */ if (!jsIsSpecial(((c >> 0)))) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!jsIsSpecial(((c >> 0)))) { */ case 3:
+ i = i + (1) >> 0;
+ /* continue; */ $s = 1; continue;
+ /* } */ case 4:
+ _r$4 = w.Write($subslice(b, last, i)); /* */ $s = 5; case 5: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$4;
+ /* */ if (c < 128) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (c < 128) { */ case 6:
+ _1 = c;
+ /* */ if (_1 === (92)) { $s = 10; continue; }
+ /* */ if (_1 === (39)) { $s = 11; continue; }
+ /* */ if (_1 === (34)) { $s = 12; continue; }
+ /* */ if (_1 === (60)) { $s = 13; continue; }
+ /* */ if (_1 === (62)) { $s = 14; continue; }
+ /* */ $s = 15; continue;
+ /* if (_1 === (92)) { */ case 10:
+ _r$5 = w.Write(jsBackslash); /* */ $s = 17; case 17: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _r$5;
+ $s = 16; continue;
+ /* } else if (_1 === (39)) { */ case 11:
+ _r$6 = w.Write(jsApos); /* */ $s = 18; case 18: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$6;
+ $s = 16; continue;
+ /* } else if (_1 === (34)) { */ case 12:
+ _r$7 = w.Write(jsQuot); /* */ $s = 19; case 19: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _r$7;
+ $s = 16; continue;
+ /* } else if (_1 === (60)) { */ case 13:
+ _r$8 = w.Write(jsLt); /* */ $s = 20; case 20: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _r$8;
+ $s = 16; continue;
+ /* } else if (_1 === (62)) { */ case 14:
+ _r$9 = w.Write(jsGt); /* */ $s = 21; case 21: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _r$9;
+ $s = 16; continue;
+ /* } else { */ case 15:
+ _r$10 = w.Write(jsLowUni); /* */ $s = 22; case 22: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _r$10;
+ _tmp = c >>> 4 << 24 >>> 24;
+ _tmp$1 = (c & 15) >>> 0;
+ t = _tmp;
+ b$1 = _tmp$1;
+ _r$11 = w.Write($subslice(hex, t, (t + 1 << 24 >>> 24))); /* */ $s = 23; case 23: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _r$11;
+ _r$12 = w.Write($subslice(hex, b$1, (b$1 + 1 << 24 >>> 24))); /* */ $s = 24; case 24: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _r$12;
+ /* } */ case 16:
+ case 9:
+ $s = 8; continue;
+ /* } else { */ case 7:
+ _tuple = utf8.DecodeRune($subslice(b, i));
+ r = _tuple[0];
+ size = _tuple[1];
+ /* */ if (unicode.IsPrint(r)) { $s = 25; continue; }
+ /* */ $s = 26; continue;
+ /* if (unicode.IsPrint(r)) { */ case 25:
+ _r$13 = w.Write($subslice(b, i, (i + size >> 0))); /* */ $s = 28; case 28: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _r$13;
+ $s = 27; continue;
+ /* } else { */ case 26:
+ _r$14 = fmt.Fprintf(w, "\\u%04X", new sliceType$2([new $Int32(r)])); /* */ $s = 29; case 29: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ _r$14;
+ /* } */ case 27:
+ i = i + ((size - 1 >> 0)) >> 0;
+ /* } */ case 8:
+ last = i + 1 >> 0;
+ i = i + (1) >> 0;
+ /* } */ $s = 1; continue; case 2:
+ _r$15 = w.Write($subslice(b, last)); /* */ $s = 30; case 30: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ _r$15;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: JSEscape }; } $f.$ptr = $ptr; $f._1 = _1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tuple = _tuple; $f.b = b; $f.b$1 = b$1; $f.c = c; $f.i = i; $f.last = last; $f.r = r; $f.size = size; $f.t = t; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.JSEscape = JSEscape;
+ JSEscapeString = function(s) {
+ var $ptr, _r$4, b, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; b = $f.b; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = [b];
+ _r$4 = strings.IndexFunc(s, jsIsSpecial); /* */ $s = 3; case 3: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ /* */ if (_r$4 < 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (_r$4 < 0) { */ case 1:
+ $s = -1; return s;
+ /* } */ case 2:
+ b[0] = new bytes.Buffer.ptr(sliceType.nil, 0, arrayType.zero(), 0);
+ $r = JSEscape(b[0], (new sliceType($stringToBytes(s)))); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return b[0].String();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: JSEscapeString }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f.b = b; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.JSEscapeString = JSEscapeString;
+ jsIsSpecial = function(r) {
+ var $ptr, _1, r;
+ _1 = r;
+ if ((_1 === (92)) || (_1 === (39)) || (_1 === (34)) || (_1 === (60)) || (_1 === (62))) {
+ return true;
+ }
+ return r < 32 || 128 <= r;
+ };
+ JSEscaper = function(args) {
+ var $ptr, _r$4, _r$5, args, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; _r$5 = $f._r$5; args = $f.args; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = evalArgs(args); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$5 = JSEscapeString(_r$4); /* */ $s = 2; case 2: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $s = -1; return _r$5;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: JSEscaper }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f._r$5 = _r$5; $f.args = args; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.JSEscaper = JSEscaper;
+ URLQueryEscaper = function(args) {
+ var $ptr, _r$4, _r$5, args, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; _r$5 = $f._r$5; args = $f.args; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = evalArgs(args); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$5 = url.QueryEscape(_r$4); /* */ $s = 2; case 2: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $s = -1; return _r$5;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: URLQueryEscaper }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f._r$5 = _r$5; $f.args = args; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.URLQueryEscaper = URLQueryEscaper;
+ evalArgs = function(args) {
+ var $ptr, _i, _r$4, _r$5, _r$6, _ref, _tuple, _tuple$1, a, arg, args, i, ok, ok$1, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _ref = $f._ref; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; a = $f.a; arg = $f.arg; args = $f.args; i = $f.i; ok = $f.ok; ok$1 = $f.ok$1; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ ok = false;
+ s = "";
+ if (args.$length === 1) {
+ _tuple = $assertType((0 >= args.$length ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + 0]), $String, true);
+ s = _tuple[0];
+ ok = _tuple[1];
+ }
+ /* */ if (!ok) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!ok) { */ case 1:
+ _ref = args;
+ _i = 0;
+ /* while (true) { */ case 3:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 4; continue; }
+ i = _i;
+ arg = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ _r$4 = reflect.ValueOf(arg); /* */ $s = 5; case 5: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$5 = printableValue($clone(_r$4, reflect.Value)); /* */ $s = 6; case 6: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _tuple$1 = _r$5;
+ a = _tuple$1[0];
+ ok$1 = _tuple$1[1];
+ if (ok$1) {
+ ((i < 0 || i >= args.$length) ? ($throwRuntimeError("index out of range"), undefined) : args.$array[args.$offset + i] = a);
+ }
+ _i++;
+ /* } */ $s = 3; continue; case 4:
+ _r$6 = fmt.Sprint(args); /* */ $s = 7; case 7: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ s = _r$6;
+ /* } */ case 2:
+ $s = -1; return s;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: evalArgs }; } $f.$ptr = $ptr; $f._i = _i; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._ref = _ref; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.a = a; $f.arg = arg; $f.args = args; $f.i = i; $f.ok = ok; $f.ok$1 = ok$1; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = ioutil.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = url.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = filepath.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = reflect.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sort.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = parse.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = unicode.$init(); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = utf8.$init(); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r = reflect.TypeOf((ptrType$1.nil)).Elem(); /* */ $s = 16; case 16: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ errorType = _r;
+ _r$1 = reflect.TypeOf((ptrType$2.nil)).Elem(); /* */ $s = 17; case 17: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ fmtStringerType = _r$1;
+ _r$2 = reflect.TypeOf((ptrType$3.nil)).Elem(); /* */ $s = 18; case 18: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ reflectValueType = _r$2;
+ errBadComparisonType = errors.New("invalid type for comparison");
+ errBadComparison = errors.New("incompatible types for comparison");
+ errNoComparison = errors.New("missing argument for comparison");
+ htmlQuot = (new sliceType($stringToBytes("&#34;")));
+ htmlApos = (new sliceType($stringToBytes("&#39;")));
+ htmlAmp = (new sliceType($stringToBytes("&amp;")));
+ htmlLt = (new sliceType($stringToBytes("&lt;")));
+ htmlGt = (new sliceType($stringToBytes("&gt;")));
+ jsLowUni = (new sliceType($stringToBytes("\\u00")));
+ hex = (new sliceType($stringToBytes("0123456789ABCDEF")));
+ jsBackslash = (new sliceType($stringToBytes("\\\\")));
+ jsApos = (new sliceType($stringToBytes("\\'")));
+ jsQuot = (new sliceType($stringToBytes("\\\"")));
+ jsLt = (new sliceType($stringToBytes("\\x3C")));
+ jsGt = (new sliceType($stringToBytes("\\x3E")));
+ builtins = $makeMap($String.keyFor, [{ k: "and", v: new funcType(and) }, { k: "call", v: new funcType$1(call) }, { k: "html", v: new funcType$2(HTMLEscaper) }, { k: "index", v: new funcType$1(index) }, { k: "js", v: new funcType$2(JSEscaper) }, { k: "len", v: new funcType$3(length) }, { k: "not", v: new funcType$4(not) }, { k: "or", v: new funcType(or) }, { k: "print", v: new funcType$2(fmt.Sprint) }, { k: "printf", v: new funcType$5(fmt.Sprintf) }, { k: "println", v: new funcType$2(fmt.Sprintln) }, { k: "urlquery", v: new funcType$2(URLQueryEscaper) }, { k: "eq", v: new funcType$6(eq) }, { k: "ge", v: new funcType$7(ge) }, { k: "gt", v: new funcType$7(gt) }, { k: "le", v: new funcType$7(le) }, { k: "lt", v: new funcType$7(lt) }, { k: "ne", v: new funcType$7(ne) }]);
+ _r$3 = createValueFuncs(builtins); /* */ $s = 19; case 19: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ builtinFuncs = _r$3;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["github.com/dedis/protobuf"] = (function() {
+ var $pkg = {}, $init, bytes, encoding, binary, errors, fmt, io, math, reflect, regexp, sort, strconv, strings, sync, template, time, Constructors, decoder, Ufixed32, Ufixed64, Sfixed32, Sfixed64, encoder, TagPrefix, ProtoField, ptrType, sliceType, funcType, sliceType$1, ptrType$1, sliceType$2, ptrType$2, sliceType$3, arrayType, sliceType$4, sliceType$5, sliceType$6, sliceType$7, sliceType$8, sliceType$9, sliceType$10, sliceType$11, sliceType$12, sliceType$13, sliceType$14, sliceType$15, arrayType$1, arrayType$2, arrayType$3, sliceType$16, ptrType$3, structType, ptrType$4, ptrType$5, ptrType$6, sfixed32type, sfixed64type, ufixed32type, ufixed64type, timeType, durationType, bytesType, cache, cacheLock, splitName, x, _r, Decode, DecodeWithConstructors, Encode, ParseTag, ProtoFields, innerFieldIndexes;
+ bytes = $packages["bytes"];
+ encoding = $packages["encoding"];
+ binary = $packages["encoding/binary"];
+ errors = $packages["errors"];
+ fmt = $packages["fmt"];
+ io = $packages["io"];
+ math = $packages["math"];
+ reflect = $packages["reflect"];
+ regexp = $packages["regexp"];
+ sort = $packages["sort"];
+ strconv = $packages["strconv"];
+ strings = $packages["strings"];
+ sync = $packages["sync"];
+ template = $packages["text/template"];
+ time = $packages["time"];
+ Constructors = $pkg.Constructors = $newType(4, $kindMap, "protobuf.Constructors", true, "github.com/dedis/protobuf", true, null);
+ decoder = $pkg.decoder = $newType(0, $kindStruct, "protobuf.decoder", true, "github.com/dedis/protobuf", false, function(nm_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.nm = false;
+ return;
+ }
+ this.nm = nm_;
+ });
+ Ufixed32 = $pkg.Ufixed32 = $newType(4, $kindUint32, "protobuf.Ufixed32", true, "github.com/dedis/protobuf", true, null);
+ Ufixed64 = $pkg.Ufixed64 = $newType(8, $kindUint64, "protobuf.Ufixed64", true, "github.com/dedis/protobuf", true, null);
+ Sfixed32 = $pkg.Sfixed32 = $newType(4, $kindInt32, "protobuf.Sfixed32", true, "github.com/dedis/protobuf", true, null);
+ Sfixed64 = $pkg.Sfixed64 = $newType(8, $kindInt64, "protobuf.Sfixed64", true, "github.com/dedis/protobuf", true, null);
+ encoder = $pkg.encoder = $newType(0, $kindStruct, "protobuf.encoder", true, "github.com/dedis/protobuf", false, function(Buffer_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Buffer = new bytes.Buffer.ptr(sliceType.nil, 0, arrayType.zero(), 0);
+ return;
+ }
+ this.Buffer = Buffer_;
+ });
+ TagPrefix = $pkg.TagPrefix = $newType(4, $kindInt, "protobuf.TagPrefix", true, "github.com/dedis/protobuf", true, null);
+ ProtoField = $pkg.ProtoField = $newType(0, $kindStruct, "protobuf.ProtoField", true, "github.com/dedis/protobuf", true, function(ID_, Prefix_, Name_, Index_, Field_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.ID = new $Int64(0, 0);
+ this.Prefix = 0;
+ this.Name = "";
+ this.Index = sliceType$2.nil;
+ this.Field = new reflect.StructField.ptr("", "", $ifaceNil, "", 0, sliceType$2.nil, false);
+ return;
+ }
+ this.ID = ID_;
+ this.Prefix = Prefix_;
+ this.Name = Name_;
+ this.Index = Index_;
+ this.Field = Field_;
+ });
+ ptrType = $ptrType(time.Location);
+ sliceType = $sliceType($Uint8);
+ funcType = $funcType([], [$emptyInterface], false);
+ sliceType$1 = $sliceType($emptyInterface);
+ ptrType$1 = $ptrType(reflect.rtype);
+ sliceType$2 = $sliceType($Int);
+ ptrType$2 = $ptrType(ProtoField);
+ sliceType$3 = $sliceType(reflect.Value);
+ arrayType = $arrayType($Uint8, 64);
+ sliceType$4 = $sliceType($Bool);
+ sliceType$5 = $sliceType($Int32);
+ sliceType$6 = $sliceType($Int64);
+ sliceType$7 = $sliceType($Uint32);
+ sliceType$8 = $sliceType($Uint64);
+ sliceType$9 = $sliceType(Sfixed32);
+ sliceType$10 = $sliceType(Sfixed64);
+ sliceType$11 = $sliceType(Ufixed32);
+ sliceType$12 = $sliceType(Ufixed64);
+ sliceType$13 = $sliceType($Float32);
+ sliceType$14 = $sliceType($Float64);
+ sliceType$15 = $sliceType($String);
+ arrayType$1 = $arrayType($Uint8, 10);
+ arrayType$2 = $arrayType($Uint8, 4);
+ arrayType$3 = $arrayType($Uint8, 8);
+ sliceType$16 = $sliceType(ptrType$2);
+ ptrType$3 = $ptrType($Int);
+ structType = $structType("", []);
+ ptrType$4 = $ptrType(Constructors);
+ ptrType$5 = $ptrType(decoder);
+ ptrType$6 = $ptrType(encoder);
+ $ptrType(Constructors).prototype.String = function() {
+ var $ptr, _entry, _i, _keys, _r$1, _r$2, _ref, c, k, s, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _i = $f._i; _keys = $f._keys; _r$1 = $f._r$1; _r$2 = $f._r$2; _ref = $f._ref; c = $f.c; k = $f.k; s = $f.s; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ s = "";
+ _ref = c.$get();
+ _i = 0;
+ _keys = $keys(_ref);
+ /* while (true) { */ case 1:
+ /* if (!(_i < _keys.length)) { break; } */ if(!(_i < _keys.length)) { $s = 2; continue; }
+ _entry = _ref[_keys[_i]];
+ if (_entry === undefined) {
+ _i++;
+ /* continue; */ $s = 1; continue;
+ }
+ k = _entry.k;
+ v = _entry.v;
+ _r$1 = k.String(); /* */ $s = 3; case 3: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = fmt.Sprintf("%+v", new sliceType$1([new funcType(v)])); /* */ $s = 4; case 4: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ s = s + (_r$1 + "=>" + _r$2 + "\t");
+ _i++;
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return s;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $ptrType(Constructors).prototype.String }; } $f.$ptr = $ptr; $f._entry = _entry; $f._i = _i; $f._keys = _keys; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._ref = _ref; $f.c = c; $f.k = k; $f.s = s; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Decode = function(buf, structPtr) {
+ var $ptr, _r$1, buf, structPtr, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; buf = $f.buf; structPtr = $f.structPtr; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$1 = DecodeWithConstructors(buf, structPtr, false); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Decode }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f.buf = buf; $f.structPtr = structPtr; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Decode = Decode;
+ DecodeWithConstructors = function(buf, structPtr, cons) {
+ var $ptr, _arg, _arg$1, _r$1, _r$2, _r$3, buf, cons, de, structPtr, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; buf = $f.buf; cons = $f.cons; de = $f.de; structPtr = $f.structPtr; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ if ($interfaceIsEqual(structPtr, $ifaceNil)) {
+ $s = -1; return $ifaceNil;
+ }
+ de = new decoder.ptr(cons);
+ _r$1 = reflect.ValueOf(structPtr); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ val = _r$1;
+ if (!(($clone(val, reflect.Value).Kind() === 22))) {
+ $s = -1; return errors.New("Decode has been given a non pointer type");
+ }
+ _arg = buf;
+ _r$2 = $clone(val, reflect.Value).Elem(); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _arg$1 = $clone(_r$2, reflect.Value);
+ _r$3 = de.message(_arg, _arg$1); /* */ $s = 3; case 3: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $s = -1; return _r$3;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: DecodeWithConstructors }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f.buf = buf; $f.cons = cons; $f.de = de; $f.structPtr = structPtr; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.DecodeWithConstructors = DecodeWithConstructors;
+ decoder.ptr.prototype.message = function(buf, sval) {
+ var $ptr, _i, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _ref, _tuple, _tuple$1, buf, de, err, field, fieldi, fieldnum, fields, id, index, key, n, path, rem, sval, wiretype, x$1, x$2, x$3, x$4, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _ref = $f._ref; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; buf = $f.buf; de = $f.de; err = $f.err; field = $f.field; fieldi = $f.fieldi; fieldnum = $f.fieldnum; fields = $f.fields; id = $f.id; index = $f.index; key = $f.key; n = $f.n; path = $f.path; rem = $f.rem; sval = $f.sval; wiretype = $f.wiretype; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ de = this;
+ _r$1 = ProtoFields($clone(sval, reflect.Value).Type()); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ fields = _r$1;
+ fieldi = 0;
+ /* while (true) { */ case 2:
+ /* if (!(buf.$length > 0)) { break; } */ if(!(buf.$length > 0)) { $s = 3; continue; }
+ _tuple = binary.Uvarint(buf);
+ key = _tuple[0];
+ n = _tuple[1];
+ if (n <= 0) {
+ $s = -1; return errors.New("bad protobuf field key");
+ }
+ buf = $subslice(buf, n);
+ wiretype = ((new $Uint64(key.$high & 0, (key.$low & 7) >>> 0).$low >> 0));
+ fieldnum = $shiftRightUint64(key, 3);
+ field = new reflect.Value.ptr(ptrType$1.nil, 0, 0);
+ while (true) {
+ if (!(fieldi < fields.$length && (x$1 = ((fieldi < 0 || fieldi >= fields.$length) ? ($throwRuntimeError("index out of range"), undefined) : fields.$array[fields.$offset + fieldi]).ID, x$2 = (new $Int64(fieldnum.$high, fieldnum.$low)), (x$1.$high < x$2.$high || (x$1.$high === x$2.$high && x$1.$low < x$2.$low))))) { break; }
+ fieldi = fieldi + (1) >> 0;
+ }
+ /* */ if (fieldi < fields.$length && (x$3 = ((fieldi < 0 || fieldi >= fields.$length) ? ($throwRuntimeError("index out of range"), undefined) : fields.$array[fields.$offset + fieldi]).ID, x$4 = (new $Int64(fieldnum.$high, fieldnum.$low)), (x$3.$high === x$4.$high && x$3.$low === x$4.$low))) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (fieldi < fields.$length && (x$3 = ((fieldi < 0 || fieldi >= fields.$length) ? ($throwRuntimeError("index out of range"), undefined) : fields.$array[fields.$offset + fieldi]).ID, x$4 = (new $Int64(fieldnum.$high, fieldnum.$low)), (x$3.$high === x$4.$high && x$3.$low === x$4.$low))) { */ case 4:
+ index = ((fieldi < 0 || fieldi >= fields.$length) ? ($throwRuntimeError("index out of range"), undefined) : fields.$array[fields.$offset + fieldi]).Index;
+ path = $makeSlice(sliceType$2, 0, index.$length);
+ _ref = index;
+ _i = 0;
+ /* while (true) { */ case 6:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 7; continue; }
+ id = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ path = $append(path, id);
+ _r$2 = $clone(sval, reflect.Value).FieldByIndex(path); /* */ $s = 8; case 8: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ field = _r$2;
+ /* */ if (($clone(field, reflect.Value).Kind() === 22) && $clone(field, reflect.Value).IsNil()) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (($clone(field, reflect.Value).Kind() === 22) && $clone(field, reflect.Value).IsNil()) { */ case 9:
+ _r$3 = $clone(field, reflect.Value).Type().Elem(); /* */ $s = 11; case 11: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$4 = reflect.New(_r$3); /* */ $s = 12; case 12: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ $r = $clone(field, reflect.Value).Set($clone(_r$4, reflect.Value)); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 10:
+ _i++;
+ /* } */ $s = 6; continue; case 7:
+ /* } */ case 5:
+ _r$5 = de.value(wiretype, buf, $clone(field, reflect.Value)); /* */ $s = 14; case 14: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _tuple$1 = _r$5;
+ rem = _tuple$1[0];
+ err = _tuple$1[1];
+ /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 15; continue; }
+ /* */ $s = 16; continue;
+ /* if (!($interfaceIsEqual(err, $ifaceNil))) { */ case 15:
+ /* */ if (fieldi < fields.$length && !(((fieldi < 0 || fieldi >= fields.$length) ? ($throwRuntimeError("index out of range"), undefined) : fields.$array[fields.$offset + fieldi]) === ptrType$2.nil)) { $s = 17; continue; }
+ /* */ $s = 18; continue;
+ /* if (fieldi < fields.$length && !(((fieldi < 0 || fieldi >= fields.$length) ? ($throwRuntimeError("index out of range"), undefined) : fields.$array[fields.$offset + fieldi]) === ptrType$2.nil)) { */ case 17:
+ _r$6 = fmt.Errorf("Error while decding FieldName %s: %v", new sliceType$1([new $String(((fieldi < 0 || fieldi >= fields.$length) ? ($throwRuntimeError("index out of range"), undefined) : fields.$array[fields.$offset + fieldi]).Name), err])); /* */ $s = 20; case 20: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return _r$6;
+ /* } else { */ case 18:
+ $s = -1; return err;
+ /* } */ case 19:
+ /* } */ case 16:
+ buf = rem;
+ /* } */ $s = 2; continue; case 3:
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decoder.ptr.prototype.message }; } $f.$ptr = $ptr; $f._i = _i; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._ref = _ref; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.buf = buf; $f.de = de; $f.err = err; $f.field = field; $f.fieldi = fieldi; $f.fieldnum = fieldnum; $f.fields = fields; $f.id = id; $f.index = index; $f.key = key; $f.n = n; $f.path = path; $f.rem = rem; $f.sval = sval; $f.wiretype = wiretype; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.prototype.message = function(buf, sval) { return this.$val.message(buf, sval); };
+ decoder.ptr.prototype.value = function(wiretype, buf, val) {
+ var $ptr, _1, _r$1, _tuple, _tuple$1, buf, de, err, n, v, val, vb, wiretype, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$19, x$2, x$20, x$21, x$3, x$4, x$5, x$6, x$7, x$8, x$9, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r$1 = $f._r$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; buf = $f.buf; de = $f.de; err = $f.err; n = $f.n; v = $f.v; val = $f.val; vb = $f.vb; wiretype = $f.wiretype; x$1 = $f.x$1; x$10 = $f.x$10; x$11 = $f.x$11; x$12 = $f.x$12; x$13 = $f.x$13; x$14 = $f.x$14; x$15 = $f.x$15; x$16 = $f.x$16; x$17 = $f.x$17; x$18 = $f.x$18; x$19 = $f.x$19; x$2 = $f.x$2; x$20 = $f.x$20; x$21 = $f.x$21; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; x$8 = $f.x$8; x$9 = $f.x$9; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ de = this;
+ v = new $Uint64(0, 0);
+ n = 0;
+ vb = sliceType.nil;
+ _1 = wiretype;
+ if (_1 === (0)) {
+ _tuple = binary.Uvarint(buf);
+ v = _tuple[0];
+ n = _tuple[1];
+ if (n <= 0) {
+ $s = -1; return [sliceType.nil, errors.New("bad protobuf varint value")];
+ }
+ buf = $subslice(buf, n);
+ } else if (_1 === (5)) {
+ if (buf.$length < 4) {
+ $s = -1; return [sliceType.nil, errors.New("bad protobuf 32-bit value")];
+ }
+ v = (x$1 = (x$2 = (x$3 = (new $Uint64(0, (0 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 0]))), x$4 = $shiftLeft64((new $Uint64(0, (1 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 1]))), 8), new $Uint64(x$3.$high | x$4.$high, (x$3.$low | x$4.$low) >>> 0)), x$5 = $shiftLeft64((new $Uint64(0, (2 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 2]))), 16), new $Uint64(x$2.$high | x$5.$high, (x$2.$low | x$5.$low) >>> 0)), x$6 = $shiftLeft64((new $Uint64(0, (3 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 3]))), 24), new $Uint64(x$1.$high | x$6.$high, (x$1.$low | x$6.$low) >>> 0));
+ buf = $subslice(buf, 4);
+ } else if (_1 === (1)) {
+ if (buf.$length < 8) {
+ $s = -1; return [sliceType.nil, errors.New("bad protobuf 64-bit value")];
+ }
+ v = (x$7 = (x$8 = (x$9 = (x$10 = (x$11 = (x$12 = (x$13 = (new $Uint64(0, (0 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 0]))), x$14 = $shiftLeft64((new $Uint64(0, (1 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 1]))), 8), new $Uint64(x$13.$high | x$14.$high, (x$13.$low | x$14.$low) >>> 0)), x$15 = $shiftLeft64((new $Uint64(0, (2 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 2]))), 16), new $Uint64(x$12.$high | x$15.$high, (x$12.$low | x$15.$low) >>> 0)), x$16 = $shiftLeft64((new $Uint64(0, (3 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 3]))), 24), new $Uint64(x$11.$high | x$16.$high, (x$11.$low | x$16.$low) >>> 0)), x$17 = $shiftLeft64((new $Uint64(0, (4 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 4]))), 32), new $Uint64(x$10.$high | x$17.$high, (x$10.$low | x$17.$low) >>> 0)), x$18 = $shiftLeft64((new $Uint64(0, (5 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 5]))), 40), new $Uint64(x$9.$high | x$18.$high, (x$9.$low | x$18.$low) >>> 0)), x$19 = $shiftLeft64((new $Uint64(0, (6 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 6]))), 48), new $Uint64(x$8.$high | x$19.$high, (x$8.$low | x$19.$low) >>> 0)), x$20 = $shiftLeft64((new $Uint64(0, (7 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 7]))), 56), new $Uint64(x$7.$high | x$20.$high, (x$7.$low | x$20.$low) >>> 0));
+ buf = $subslice(buf, 8);
+ } else if (_1 === (2)) {
+ _tuple$1 = binary.Uvarint(buf);
+ v = _tuple$1[0];
+ n = _tuple$1[1];
+ if (n <= 0 || (x$21 = (new $Uint64(0, (buf.$length - n >> 0))), (v.$high > x$21.$high || (v.$high === x$21.$high && v.$low > x$21.$low)))) {
+ $s = -1; return [sliceType.nil, errors.New("bad protobuf length-delimited value")];
+ }
+ vb = $subslice(buf, n, (n + ((v.$low >> 0)) >> 0));
+ buf = $subslice(buf, (n + ((v.$low >> 0)) >> 0));
+ } else {
+ $s = -1; return [sliceType.nil, errors.New("unknown protobuf wire-type")];
+ }
+ _r$1 = de.putvalue(wiretype, $clone(val, reflect.Value), v, vb); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ err = _r$1;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [sliceType.nil, err];
+ }
+ $s = -1; return [buf, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decoder.ptr.prototype.value }; } $f.$ptr = $ptr; $f._1 = _1; $f._r$1 = _r$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.buf = buf; $f.de = de; $f.err = err; $f.n = n; $f.v = v; $f.val = val; $f.vb = vb; $f.wiretype = wiretype; $f.x$1 = x$1; $f.x$10 = x$10; $f.x$11 = x$11; $f.x$12 = x$12; $f.x$13 = x$13; $f.x$14 = x$14; $f.x$15 = x$15; $f.x$16 = x$16; $f.x$17 = x$17; $f.x$18 = x$18; $f.x$19 = x$19; $f.x$2 = x$2; $f.x$20 = x$20; $f.x$21 = x$21; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.x$8 = x$8; $f.x$9 = x$9; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.prototype.value = function(wiretype, buf, val) { return this.$val.value(wiretype, buf, val); };
+ decoder.ptr.prototype.decodeSignedInt = function(wiretype, v) {
+ var $ptr, d, sv, v, wiretype, x$1;
+ d = this;
+ if (wiretype === 0) {
+ sv = $shiftRightInt64((new $Int64(v.$high, v.$low)), 1);
+ if (!((x$1 = new $Uint64(v.$high & 0, (v.$low & 1) >>> 0), (x$1.$high === 0 && x$1.$low === 0)))) {
+ sv = new $Int64(~sv.$high, ~sv.$low >>> 0);
+ }
+ return [sv, $ifaceNil];
+ } else if (wiretype === 5) {
+ return [(new $Int64(0, ((v.$low >> 0)))), $ifaceNil];
+ } else if (wiretype === 1) {
+ return [(new $Int64(v.$high, v.$low)), $ifaceNil];
+ } else {
+ return [new $Int64(-1, 4294967295), errors.New("bad wiretype for sint")];
+ }
+ };
+ decoder.prototype.decodeSignedInt = function(wiretype, v) { return this.$val.decodeSignedInt(wiretype, v); };
+ decoder.ptr.prototype.putvalue = function(wiretype, val, v, vb) {
+ var $ptr, _1, _arg, _arg$1, _arg$2, _arg$3, _arg$4, _arg$5, _arg$6, _arg$7, _arg$8, _r$1, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tuple, _tuple$1, _tuple$2, de, enc, err, err$1, ok, sv, sv$1, t, v, val, vb, wiretype, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _arg$3 = $f._arg$3; _arg$4 = $f._arg$4; _arg$5 = $f._arg$5; _arg$6 = $f._arg$6; _arg$7 = $f._arg$7; _arg$8 = $f._arg$8; _r$1 = $f._r$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; de = $f.de; enc = $f.enc; err = $f.err; err$1 = $f.err$1; ok = $f.ok; sv = $f.sv; sv$1 = $f.sv$1; t = $f.t; v = $f.v; val = $f.val; vb = $f.vb; wiretype = $f.wiretype; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ de = this;
+ if (!$clone(val, reflect.Value).CanSet()) {
+ $s = -1; return $ifaceNil;
+ }
+ _1 = $clone(val, reflect.Value).Kind();
+ /* */ if (_1 === (1)) { $s = 2; continue; }
+ /* */ if ((_1 === (2)) || (_1 === (5)) || (_1 === (6))) { $s = 3; continue; }
+ /* */ if ((_1 === (10)) || (_1 === (11))) { $s = 4; continue; }
+ /* */ if (_1 === (13)) { $s = 5; continue; }
+ /* */ if (_1 === (14)) { $s = 6; continue; }
+ /* */ if (_1 === (24)) { $s = 7; continue; }
+ /* */ if (_1 === (25)) { $s = 8; continue; }
+ /* */ if (_1 === (22)) { $s = 9; continue; }
+ /* */ if ((_1 === (23)) || (_1 === (17))) { $s = 10; continue; }
+ /* */ if (_1 === (21)) { $s = 11; continue; }
+ /* */ if (_1 === (20)) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if (_1 === (1)) { */ case 2:
+ if (!((wiretype === 0))) {
+ $s = -1; return errors.New("bad wiretype for bool");
+ }
+ if ((v.$high > 0 || (v.$high === 0 && v.$low > 1))) {
+ $s = -1; return errors.New("invalid bool value");
+ }
+ $clone(val, reflect.Value).SetBool(!((v.$high === 0 && v.$low === 0)));
+ $s = 14; continue;
+ /* } else if ((_1 === (2)) || (_1 === (5)) || (_1 === (6))) { */ case 3:
+ _tuple = de.decodeSignedInt(wiretype, v);
+ sv = _tuple[0];
+ err = _tuple[1];
+ /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 15; continue; }
+ /* */ $s = 16; continue;
+ /* if (!($interfaceIsEqual(err, $ifaceNil))) { */ case 15:
+ _arg = v;
+ _arg$1 = new $Int(wiretype);
+ _r$1 = $clone(val, reflect.Value).Type().Name(); /* */ $s = 17; case 17: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _arg$2 = new $String(_r$1);
+ _r$2 = fmt.Println(new sliceType$1([new $String("Error Reflect.Int for v="), _arg, new $String("wiretype="), _arg$1, new $String("for Value="), _arg$2])); /* */ $s = 18; case 18: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ $s = -1; return err;
+ /* } */ case 16:
+ $clone(val, reflect.Value).SetInt(sv);
+ $s = 14; continue;
+ /* } else if ((_1 === (10)) || (_1 === (11))) { */ case 4:
+ if (wiretype === 0) {
+ $clone(val, reflect.Value).SetUint(v);
+ } else if (wiretype === 5) {
+ $clone(val, reflect.Value).SetUint((new $Uint64(0, ((v.$low >>> 0)))));
+ } else if (wiretype === 1) {
+ $clone(val, reflect.Value).SetUint((v));
+ } else {
+ $s = -1; return errors.New("bad wiretype for uint");
+ }
+ $s = 14; continue;
+ /* } else if (_1 === (13)) { */ case 5:
+ if (!((wiretype === 5))) {
+ $s = -1; return errors.New("bad wiretype for float32");
+ }
+ $clone(val, reflect.Value).SetFloat((math.Float32frombits(((v.$low >>> 0)))));
+ $s = 14; continue;
+ /* } else if (_1 === (14)) { */ case 6:
+ if (!((wiretype === 1))) {
+ $s = -1; return errors.New("bad wiretype for float64");
+ }
+ $clone(val, reflect.Value).SetFloat(math.Float64frombits(v));
+ $s = 14; continue;
+ /* } else if (_1 === (24)) { */ case 7:
+ if (!((wiretype === 2))) {
+ $s = -1; return errors.New("bad wiretype for string");
+ }
+ $clone(val, reflect.Value).SetString(($bytesToString(vb)));
+ $s = 14; continue;
+ /* } else if (_1 === (25)) { */ case 8:
+ /* */ if ($interfaceIsEqual($clone(val, reflect.Value).Type(), timeType)) { $s = 19; continue; }
+ /* */ $s = 20; continue;
+ /* if ($interfaceIsEqual($clone(val, reflect.Value).Type(), timeType)) { */ case 19:
+ _tuple$1 = de.decodeSignedInt(wiretype, v);
+ sv$1 = _tuple$1[0];
+ err$1 = _tuple$1[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ t = $clone(time.Unix($div64(sv$1, new $Int64(0, 1000000000), false), $div64(sv$1, new $Int64(0, 1000000000), true)), time.Time);
+ _r$3 = reflect.ValueOf(new t.constructor.elem(t)); /* */ $s = 21; case 21: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $r = $clone(val, reflect.Value).Set($clone(_r$3, reflect.Value)); /* */ $s = 22; case 22: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return $ifaceNil;
+ /* } */ case 20:
+ if (!((wiretype === 2))) {
+ $s = -1; return errors.New("bad wiretype for embedded message");
+ }
+ _r$4 = de.message(vb, $clone(val, reflect.Value)); /* */ $s = 23; case 23: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ $s = -1; return _r$4;
+ /* } else if (_1 === (22)) { */ case 9:
+ /* */ if ($clone(val, reflect.Value).IsNil()) { $s = 24; continue; }
+ /* */ $s = 25; continue;
+ /* if ($clone(val, reflect.Value).IsNil()) { */ case 24:
+ _r$5 = $clone(val, reflect.Value).Type().Elem(); /* */ $s = 26; case 26: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _r$6 = de.instantiate(_r$5); /* */ $s = 27; case 27: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $r = $clone(val, reflect.Value).Set($clone(_r$6, reflect.Value)); /* */ $s = 28; case 28: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 25:
+ _arg$3 = wiretype;
+ _r$7 = $clone(val, reflect.Value).Elem(); /* */ $s = 29; case 29: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _arg$4 = $clone(_r$7, reflect.Value);
+ _arg$5 = v;
+ _arg$6 = vb;
+ _r$8 = de.putvalue(_arg$3, _arg$4, _arg$5, _arg$6); /* */ $s = 30; case 30: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $s = -1; return _r$8;
+ /* } else if ((_1 === (23)) || (_1 === (17))) { */ case 10:
+ if (!((wiretype === 2))) {
+ $s = -1; return errors.New("bad wiretype for repeated field");
+ }
+ _r$9 = de.slice($clone(val, reflect.Value), vb); /* */ $s = 31; case 31: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ $s = -1; return _r$9;
+ /* } else if (_1 === (21)) { */ case 11:
+ if (!((wiretype === 2))) {
+ $s = -1; return errors.New("bad wiretype for repeated field");
+ }
+ /* */ if ($clone(val, reflect.Value).IsNil()) { $s = 32; continue; }
+ /* */ $s = 33; continue;
+ /* if ($clone(val, reflect.Value).IsNil()) { */ case 32:
+ _r$10 = reflect.MakeMap($clone(val, reflect.Value).Type()); /* */ $s = 34; case 34: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ $r = $clone(val, reflect.Value).Set($clone(_r$10, reflect.Value)); /* */ $s = 35; case 35: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 33:
+ _r$11 = de.mapEntry($clone(val, reflect.Value), vb); /* */ $s = 36; case 36: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ $s = -1; return _r$11;
+ /* } else if (_1 === (20)) { */ case 12:
+ /* */ if ($clone(val, reflect.Value).IsNil()) { $s = 37; continue; }
+ /* */ $s = 38; continue;
+ /* if ($clone(val, reflect.Value).IsNil()) { */ case 37:
+ _r$12 = de.instantiate($clone(val, reflect.Value).Type()); /* */ $s = 39; case 39: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ $r = $clone(val, reflect.Value).Set($clone(_r$12, reflect.Value)); /* */ $s = 40; case 40: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 38:
+ _r$13 = $clone(val, reflect.Value).Interface(); /* */ $s = 41; case 41: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _tuple$2 = $assertType(_r$13, encoding.BinaryUnmarshaler, true);
+ enc = _tuple$2[0];
+ ok = _tuple$2[1];
+ /* */ if (ok) { $s = 42; continue; }
+ /* */ $s = 43; continue;
+ /* if (ok) { */ case 42:
+ if (!((wiretype === 2))) {
+ $s = -1; return errors.New("bad wiretype for bytes");
+ }
+ _r$14 = enc.UnmarshalBinary(vb); /* */ $s = 44; case 44: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ $s = -1; return _r$14;
+ /* } */ case 43:
+ _arg$7 = vb;
+ _r$15 = $clone(val, reflect.Value).Interface(); /* */ $s = 45; case 45: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ _arg$8 = _r$15;
+ _r$16 = Decode(_arg$7, _arg$8); /* */ $s = 46; case 46: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ $s = -1; return _r$16;
+ /* } else { */ case 13:
+ $panic(new $String("unsupported value kind " + new reflect.Kind($clone(val, reflect.Value).Kind()).String()));
+ /* } */ case 14:
+ case 1:
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decoder.ptr.prototype.putvalue }; } $f.$ptr = $ptr; $f._1 = _1; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._arg$3 = _arg$3; $f._arg$4 = _arg$4; $f._arg$5 = _arg$5; $f._arg$6 = _arg$6; $f._arg$7 = _arg$7; $f._arg$8 = _arg$8; $f._r$1 = _r$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f.de = de; $f.enc = enc; $f.err = err; $f.err$1 = err$1; $f.ok = ok; $f.sv = sv; $f.sv$1 = sv$1; $f.t = t; $f.v = v; $f.val = val; $f.vb = vb; $f.wiretype = wiretype; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.prototype.putvalue = function(wiretype, val, v, vb) { return this.$val.putvalue(wiretype, val, v, vb); };
+ decoder.ptr.prototype.instantiate = function(t) {
+ var $ptr, _entry, _r$1, _r$2, _r$3, _r$4, _r$5, _tuple, de, newfunc, ok, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _tuple = $f._tuple; de = $f.de; newfunc = $f.newfunc; ok = $f.ok; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ de = this;
+ _r$1 = t.Kind(); /* */ $s = 3; case 3: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ /* */ if (_r$1 === 20) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (_r$1 === 20) { */ case 1:
+ _tuple = (_entry = de.nm[reflect.Type.keyFor(t)], _entry !== undefined ? [_entry.v, true] : [$throwNilPointerError, false]);
+ newfunc = _tuple[0];
+ ok = _tuple[1];
+ /* */ if (!ok) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (!ok) { */ case 4:
+ _r$2 = t.String(); /* */ $s = 6; case 6: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $panic(new $String("no constructor for interface " + _r$2));
+ /* } */ case 5:
+ _r$3 = newfunc(); /* */ $s = 7; case 7: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$4 = reflect.ValueOf(_r$3); /* */ $s = 8; case 8: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ $s = -1; return _r$4;
+ /* } */ case 2:
+ _r$5 = reflect.New(t); /* */ $s = 9; case 9: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $s = -1; return _r$5;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decoder.ptr.prototype.instantiate }; } $f.$ptr = $ptr; $f._entry = _entry; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._tuple = _tuple; $f.de = de; $f.newfunc = newfunc; $f.ok = ok; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.prototype.instantiate = function(t) { return this.$val.instantiate(t); };
+ decoder.ptr.prototype.slice = function(slval, vb) {
+ var $ptr, _1, _2, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tuple, de, eltype, err, err$1, i, rem, slval, val, vb, wiretype, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _2 = $f._2; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tuple = $f._tuple; de = $f.de; eltype = $f.eltype; err = $f.err; err$1 = $f.err$1; i = $f.i; rem = $f.rem; slval = $f.slval; val = $f.val; vb = $f.vb; wiretype = $f.wiretype; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ de = this;
+ _r$1 = $clone(slval, reflect.Value).Type().Elem(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ eltype = _r$1;
+ _r$2 = reflect.New(eltype); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$3 = $clone(_r$2, reflect.Value).Elem(); /* */ $s = 3; case 3: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ val = _r$3;
+ wiretype = 0;
+ _r$4 = eltype.Kind(); /* */ $s = 5; case 5: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _1 = _r$4;
+ /* */ if ((_1 === (1)) || (_1 === (5)) || (_1 === (6)) || (_1 === (10)) || (_1 === (11))) { $s = 6; continue; }
+ /* */ if (_1 === (13)) { $s = 7; continue; }
+ /* */ if (_1 === (14)) { $s = 8; continue; }
+ /* */ if (_1 === (8)) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if ((_1 === (1)) || (_1 === (5)) || (_1 === (6)) || (_1 === (10)) || (_1 === (11))) { */ case 6:
+ _2 = eltype;
+ if ($interfaceIsEqual(_2, (sfixed32type))) {
+ wiretype = 5;
+ } else if ($interfaceIsEqual(_2, (sfixed64type))) {
+ wiretype = 1;
+ } else if ($interfaceIsEqual(_2, (ufixed32type))) {
+ wiretype = 5;
+ } else if ($interfaceIsEqual(_2, (ufixed64type))) {
+ wiretype = 1;
+ } else {
+ wiretype = 0;
+ }
+ $s = 11; continue;
+ /* } else if (_1 === (13)) { */ case 7:
+ wiretype = 5;
+ $s = 11; continue;
+ /* } else if (_1 === (14)) { */ case 8:
+ wiretype = 1;
+ $s = 11; continue;
+ /* } else if (_1 === (8)) { */ case 9:
+ /* */ if ($clone(slval, reflect.Value).Kind() === 17) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if ($clone(slval, reflect.Value).Kind() === 17) { */ case 12:
+ if (!(($clone(slval, reflect.Value).Len() === vb.$length))) {
+ $panic(new $String("Array length != buffer length"));
+ }
+ i = 0;
+ /* while (true) { */ case 15:
+ /* if (!(i < $clone(slval, reflect.Value).Len())) { break; } */ if(!(i < $clone(slval, reflect.Value).Len())) { $s = 16; continue; }
+ _r$5 = $clone(slval, reflect.Value).Index(i); /* */ $s = 17; case 17: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $r = $clone(_r$5, reflect.Value).SetUint((new $Uint64(0, ((i < 0 || i >= vb.$length) ? ($throwRuntimeError("index out of range"), undefined) : vb.$array[vb.$offset + i])))); /* */ $s = 18; case 18: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i = i + (1) >> 0;
+ /* } */ $s = 15; continue; case 16:
+ $s = 14; continue;
+ /* } else { */ case 13:
+ $r = $clone(slval, reflect.Value).SetBytes(vb); /* */ $s = 19; case 19: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 14:
+ $s = -1; return $ifaceNil;
+ /* } else { */ case 10:
+ _r$6 = de.putvalue(2, $clone(val, reflect.Value), new $Uint64(0, 0), vb); /* */ $s = 20; case 20: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ err = _r$6;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ _r$7 = reflect.Append($clone(slval, reflect.Value), new sliceType$3([$clone(val, reflect.Value)])); /* */ $s = 21; case 21: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $r = $clone(slval, reflect.Value).Set($clone(_r$7, reflect.Value)); /* */ $s = 22; case 22: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return $ifaceNil;
+ /* } */ case 11:
+ case 4:
+ /* while (true) { */ case 23:
+ /* if (!(vb.$length > 0)) { break; } */ if(!(vb.$length > 0)) { $s = 24; continue; }
+ _r$8 = de.value(wiretype, vb, $clone(val, reflect.Value)); /* */ $s = 25; case 25: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _tuple = _r$8;
+ rem = _tuple[0];
+ err$1 = _tuple[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return err$1;
+ }
+ _r$9 = reflect.Append($clone(slval, reflect.Value), new sliceType$3([$clone(val, reflect.Value)])); /* */ $s = 26; case 26: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ $r = $clone(slval, reflect.Value).Set($clone(_r$9, reflect.Value)); /* */ $s = 27; case 27: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ vb = rem;
+ /* } */ $s = 23; continue; case 24:
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decoder.ptr.prototype.slice }; } $f.$ptr = $ptr; $f._1 = _1; $f._2 = _2; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tuple = _tuple; $f.de = de; $f.eltype = eltype; $f.err = err; $f.err$1 = err$1; $f.i = i; $f.rem = rem; $f.slval = slval; $f.val = val; $f.vb = vb; $f.wiretype = wiretype; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.prototype.slice = function(slval, vb) { return this.$val.slice(slval, vb); };
+ decoder.ptr.prototype.mapEntry = function(slval, vb) {
+ var $ptr, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tuple, _tuple$1, _tuple$2, _tuple$3, buf, de, err, k, key, mKey, mVal, n, slval, v, vb, wiretype, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; buf = $f.buf; de = $f.de; err = $f.err; k = $f.k; key = $f.key; mKey = $f.mKey; mVal = $f.mVal; n = $f.n; slval = $f.slval; v = $f.v; vb = $f.vb; wiretype = $f.wiretype; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ de = this;
+ _r$1 = $clone(slval, reflect.Value).Type().Key(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = reflect.New(_r$1); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ mKey = _r$2;
+ _r$3 = $clone(slval, reflect.Value).Type().Elem(); /* */ $s = 3; case 3: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$4 = reflect.New(_r$3); /* */ $s = 4; case 4: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ mVal = _r$4;
+ _r$5 = $clone(mKey, reflect.Value).Elem(); /* */ $s = 5; case 5: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ k = _r$5;
+ _r$6 = $clone(mVal, reflect.Value).Elem(); /* */ $s = 6; case 6: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ v = _r$6;
+ _tuple = binary.Uvarint(vb);
+ key = _tuple[0];
+ n = _tuple[1];
+ if (n <= 0) {
+ $s = -1; return errors.New("bad protobuf field key");
+ }
+ buf = $subslice(vb, n);
+ wiretype = ((new $Uint64(key.$high & 0, (key.$low & 7) >>> 0).$low >> 0));
+ err = $ifaceNil;
+ _r$7 = de.value(wiretype, buf, $clone(k, reflect.Value)); /* */ $s = 7; case 7: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _tuple$1 = _r$7;
+ buf = _tuple$1[0];
+ err = _tuple$1[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ /* while (true) { */ case 8:
+ /* if (!(buf.$length > 0)) { break; } */ if(!(buf.$length > 0)) { $s = 9; continue; }
+ _tuple$2 = binary.Uvarint(buf);
+ key = _tuple$2[0];
+ n = _tuple$2[1];
+ if (n <= 0) {
+ $s = -1; return errors.New("bad protobuf field key");
+ }
+ buf = $subslice(buf, n);
+ wiretype = ((new $Uint64(key.$high & 0, (key.$low & 7) >>> 0).$low >> 0));
+ _r$8 = de.value(wiretype, buf, $clone(v, reflect.Value)); /* */ $s = 10; case 10: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _tuple$3 = _r$8;
+ buf = _tuple$3[0];
+ err = _tuple$3[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ /* } */ $s = 8; continue; case 9:
+ /* */ if (!$clone(k, reflect.Value).IsValid() || !$clone(v, reflect.Value).IsValid()) { $s = 11; continue; }
+ /* */ $s = 12; continue;
+ /* if (!$clone(k, reflect.Value).IsValid() || !$clone(v, reflect.Value).IsValid()) { */ case 11:
+ _r$9 = fmt.Errorf("proto: bad map data: missing key/val", new sliceType$1([])); /* */ $s = 13; case 13: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ $s = -1; return _r$9;
+ /* } */ case 12:
+ $r = $clone(slval, reflect.Value).SetMapIndex($clone(k, reflect.Value), $clone(v, reflect.Value)); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decoder.ptr.prototype.mapEntry }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f.buf = buf; $f.de = de; $f.err = err; $f.k = k; $f.key = key; $f.mKey = mKey; $f.mVal = mVal; $f.n = n; $f.slval = slval; $f.v = v; $f.vb = vb; $f.wiretype = wiretype; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ decoder.prototype.mapEntry = function(slval, vb) { return this.$val.mapEntry(slval, vb); };
+ Encode = function(structPtr) {
+ var $ptr, _r$1, _r$2, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, bytes$1, en, err, structPtr, val, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; bytes$1 = $f.bytes$1; en = $f.en; err = $f.err; structPtr = $f.structPtr; val = $f.val; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ bytes$1 = [bytes$1];
+ err = [err];
+ bytes$1[0] = sliceType.nil;
+ err[0] = $ifaceNil;
+ $deferred.push([(function(bytes$1, err) { return function() {
+ var $ptr, e;
+ e = $recover();
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ err[0] = errors.New($assertType(e, $String));
+ bytes$1[0] = sliceType.nil;
+ }
+ }; })(bytes$1, err), []]);
+ if ($interfaceIsEqual(structPtr, $ifaceNil)) {
+ _tmp = sliceType.nil;
+ _tmp$1 = $ifaceNil;
+ bytes$1[0] = _tmp;
+ err[0] = _tmp$1;
+ $s = -1; return [bytes$1[0], err[0]];
+ }
+ en = new encoder.ptr(new bytes.Buffer.ptr(sliceType.nil, 0, arrayType.zero(), 0));
+ _r$1 = reflect.ValueOf(structPtr); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ val = _r$1;
+ if (!(($clone(val, reflect.Value).Kind() === 22))) {
+ _tmp$2 = sliceType.nil;
+ _tmp$3 = errors.New("Encode takes a pointer to struct");
+ bytes$1[0] = _tmp$2;
+ err[0] = _tmp$3;
+ $s = -1; return [bytes$1[0], err[0]];
+ }
+ _r$2 = $clone(val, reflect.Value).Elem(); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $r = en.message($clone(_r$2, reflect.Value)); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _tmp$4 = en.Buffer.Bytes();
+ _tmp$5 = $ifaceNil;
+ bytes$1[0] = _tmp$4;
+ err[0] = _tmp$5;
+ $s = -1; return [bytes$1[0], err[0]];
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if (!$curGoroutine.asleep) { return [bytes$1[0], err[0]]; } if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: Encode }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f.bytes$1 = bytes$1; $f.en = en; $f.err = err; $f.structPtr = structPtr; $f.val = val; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ $pkg.Encode = Encode;
+ encoder.ptr.prototype.message = function(sval) {
+ var $ptr, _i, _r$1, _r$2, _ref, en, field, index, key, sval, x$1, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r$1 = $f._r$1; _r$2 = $f._r$2; _ref = $f._ref; en = $f.en; field = $f.field; index = $f.index; key = $f.key; sval = $f.sval; x$1 = $f.x$1; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ index = [index];
+ en = this;
+ index[0] = ptrType$2.nil;
+ $deferred.push([(function(index) { return function $b() {
+ var $ptr, _r$1, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ r = $recover();
+ /* */ if (!($interfaceIsEqual(r, $ifaceNil))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!($interfaceIsEqual(r, $ifaceNil))) { */ case 1:
+ /* */ if (!(index[0] === ptrType$2.nil)) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!(index[0] === ptrType$2.nil)) { */ case 3:
+ _r$1 = fmt.Sprintf("%s (field %s)", new sliceType$1([r, new $String(index[0].Field.Name)])); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $panic(new $String(_r$1));
+ $s = 5; continue;
+ /* } else { */ case 4:
+ $panic(r);
+ /* } */ case 5:
+ /* } */ case 2:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ }; })(index), []]);
+ _r$1 = ProtoFields($clone(sval, reflect.Value).Type()); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _ref = _r$1;
+ _i = 0;
+ /* while (true) { */ case 2:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 3; continue; }
+ index[0] = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ _r$2 = $clone(sval, reflect.Value).FieldByIndex(index[0].Index); /* */ $s = 4; case 4: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ field = _r$2;
+ key = $shiftLeft64(((x$1 = index[0].ID, new $Uint64(x$1.$high, x$1.$low))), 3);
+ /* */ if ($clone(field, reflect.Value).CanSet()) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if ($clone(field, reflect.Value).CanSet()) { */ case 5:
+ $r = en.value(key, $clone(field, reflect.Value), index[0].Prefix); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 6:
+ _i++;
+ /* } */ $s = 2; continue; case 3:
+ $s = -1; return;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: encoder.ptr.prototype.message }; } $f.$ptr = $ptr; $f._i = _i; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._ref = _ref; $f.en = en; $f.field = field; $f.index = index; $f.key = key; $f.sval = sval; $f.x$1 = x$1; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ encoder.prototype.message = function(sval) { return this.$val.message(sval); };
+ encoder.ptr.prototype.value = function(key, val, prefix) {
+ var $ptr, _1, _arg, _arg$1, _arg$2, _arg$3, _arg$4, _arg$5, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _ref, _tuple, _tuple$1, b, b$1, b$2, bytes$1, emb, en, enc, err, key, ok, prefix, t, v, v$1, v$10, v$11, v$12, v$13, v$14, v$15, v$2, v$3, v$4, v$5, v$6, v$7, v$8, v$9, val, vi, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _arg$3 = $f._arg$3; _arg$4 = $f._arg$4; _arg$5 = $f._arg$5; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _ref = $f._ref; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; b = $f.b; b$1 = $f.b$1; b$2 = $f.b$2; bytes$1 = $f.bytes$1; emb = $f.emb; en = $f.en; enc = $f.enc; err = $f.err; key = $f.key; ok = $f.ok; prefix = $f.prefix; t = $f.t; v = $f.v; v$1 = $f.v$1; v$10 = $f.v$10; v$11 = $f.v$11; v$12 = $f.v$12; v$13 = $f.v$13; v$14 = $f.v$14; v$15 = $f.v$15; v$2 = $f.v$2; v$3 = $f.v$3; v$4 = $f.v$4; v$5 = $f.v$5; v$6 = $f.v$6; v$7 = $f.v$7; v$8 = $f.v$8; v$9 = $f.v$9; val = $f.val; vi = $f.vi; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ en = this;
+ _r$1 = $clone(val, reflect.Value).Interface(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _ref = _r$1;
+ /* */ if ($assertType(_ref, $Bool, true)[1]) { $s = 2; continue; }
+ /* */ if ($assertType(_ref, $Int, true)[1]) { $s = 3; continue; }
+ /* */ if ($assertType(_ref, $Int32, true)[1]) { $s = 4; continue; }
+ /* */ if ($assertType(_ref, time.Time, true)[1]) { $s = 5; continue; }
+ /* */ if ($assertType(_ref, $Int64, true)[1]) { $s = 6; continue; }
+ /* */ if ($assertType(_ref, $Uint32, true)[1]) { $s = 7; continue; }
+ /* */ if ($assertType(_ref, $Uint64, true)[1]) { $s = 8; continue; }
+ /* */ if ($assertType(_ref, Sfixed32, true)[1]) { $s = 9; continue; }
+ /* */ if ($assertType(_ref, Sfixed64, true)[1]) { $s = 10; continue; }
+ /* */ if ($assertType(_ref, Ufixed32, true)[1]) { $s = 11; continue; }
+ /* */ if ($assertType(_ref, Ufixed64, true)[1]) { $s = 12; continue; }
+ /* */ if ($assertType(_ref, $Float32, true)[1]) { $s = 13; continue; }
+ /* */ if ($assertType(_ref, $Float64, true)[1]) { $s = 14; continue; }
+ /* */ if ($assertType(_ref, $String, true)[1]) { $s = 15; continue; }
+ /* */ if ($assertType(_ref, sliceType, true)[1]) { $s = 16; continue; }
+ /* */ $s = 17; continue;
+ /* if ($assertType(_ref, $Bool, true)[1]) { */ case 2:
+ v = _ref.$val;
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 0) >>> 0));
+ vi = new $Uint64(0, 0);
+ if (v) {
+ vi = new $Uint64(0, 1);
+ }
+ en.uvarint(vi);
+ $s = -1; return;
+ /* } else if ($assertType(_ref, $Int, true)[1]) { */ case 3:
+ v$1 = _ref.$val;
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 0) >>> 0));
+ en.svarint((new $Int64(0, v$1)));
+ $s = -1; return;
+ /* } else if ($assertType(_ref, $Int32, true)[1]) { */ case 4:
+ v$2 = _ref.$val;
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 0) >>> 0));
+ en.svarint((new $Int64(0, v$2)));
+ $s = -1; return;
+ /* } else if ($assertType(_ref, time.Time, true)[1]) { */ case 5:
+ v$3 = $clone(_ref.$val, time.Time);
+ t = $clone(v$3, time.Time).UnixNano();
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 1) >>> 0));
+ en.u64((new $Uint64(t.$high, t.$low)));
+ $s = -1; return;
+ /* } else if ($assertType(_ref, $Int64, true)[1]) { */ case 6:
+ v$4 = _ref.$val;
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 0) >>> 0));
+ en.svarint(v$4);
+ $s = -1; return;
+ /* } else if ($assertType(_ref, $Uint32, true)[1]) { */ case 7:
+ v$5 = _ref.$val;
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 0) >>> 0));
+ en.uvarint((new $Uint64(0, v$5)));
+ $s = -1; return;
+ /* } else if ($assertType(_ref, $Uint64, true)[1]) { */ case 8:
+ v$6 = _ref.$val;
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 0) >>> 0));
+ en.uvarint(v$6);
+ $s = -1; return;
+ /* } else if ($assertType(_ref, Sfixed32, true)[1]) { */ case 9:
+ v$7 = _ref.$val;
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 5) >>> 0));
+ en.u32(((v$7 >>> 0)));
+ $s = -1; return;
+ /* } else if ($assertType(_ref, Sfixed64, true)[1]) { */ case 10:
+ v$8 = _ref.$val;
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 1) >>> 0));
+ en.u64((new $Uint64(v$8.$high, v$8.$low)));
+ $s = -1; return;
+ /* } else if ($assertType(_ref, Ufixed32, true)[1]) { */ case 11:
+ v$9 = _ref.$val;
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 5) >>> 0));
+ en.u32(((v$9 >>> 0)));
+ $s = -1; return;
+ /* } else if ($assertType(_ref, Ufixed64, true)[1]) { */ case 12:
+ v$10 = _ref.$val;
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 1) >>> 0));
+ en.u64((new $Uint64(v$10.$high, v$10.$low)));
+ $s = -1; return;
+ /* } else if ($assertType(_ref, $Float32, true)[1]) { */ case 13:
+ v$11 = _ref.$val;
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 5) >>> 0));
+ en.u32(math.Float32bits(v$11));
+ $s = -1; return;
+ /* } else if ($assertType(_ref, $Float64, true)[1]) { */ case 14:
+ v$12 = _ref.$val;
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 1) >>> 0));
+ en.u64(math.Float64bits(v$12));
+ $s = -1; return;
+ /* } else if ($assertType(_ref, $String, true)[1]) { */ case 15:
+ v$13 = _ref.$val;
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 2) >>> 0));
+ b = (new sliceType($stringToBytes(v$13)));
+ en.uvarint((new $Uint64(0, b.$length)));
+ en.Buffer.Write(b);
+ $s = -1; return;
+ /* } else if ($assertType(_ref, sliceType, true)[1]) { */ case 16:
+ v$14 = _ref.$val;
+ if (v$14 === sliceType.nil) {
+ if (!((prefix === 1))) {
+ $panic(new $String("passed nil []byte to required field"));
+ }
+ $s = -1; return;
+ }
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 2) >>> 0));
+ en.uvarint((new $Uint64(0, v$14.$length)));
+ en.Buffer.Write(v$14);
+ $s = -1; return;
+ /* } */ case 17:
+ _1 = $clone(val, reflect.Value).Kind();
+ /* */ if (_1 === (1)) { $s = 19; continue; }
+ /* */ if ((_1 === (2)) || (_1 === (5)) || (_1 === (6))) { $s = 20; continue; }
+ /* */ if ((_1 === (10)) || (_1 === (11))) { $s = 21; continue; }
+ /* */ if (_1 === (13)) { $s = 22; continue; }
+ /* */ if (_1 === (14)) { $s = 23; continue; }
+ /* */ if (_1 === (24)) { $s = 24; continue; }
+ /* */ if (_1 === (25)) { $s = 25; continue; }
+ /* */ if ((_1 === (23)) || (_1 === (17))) { $s = 26; continue; }
+ /* */ if (_1 === (22)) { $s = 27; continue; }
+ /* */ if (_1 === (20)) { $s = 28; continue; }
+ /* */ if (_1 === (21)) { $s = 29; continue; }
+ /* */ $s = 30; continue;
+ /* if (_1 === (1)) { */ case 19:
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 0) >>> 0));
+ v$15 = new $Uint64(0, 0);
+ if ($clone(val, reflect.Value).Bool()) {
+ v$15 = new $Uint64(0, 1);
+ }
+ en.uvarint(v$15);
+ $s = 31; continue;
+ /* } else if ((_1 === (2)) || (_1 === (5)) || (_1 === (6))) { */ case 20:
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 0) >>> 0));
+ en.svarint($clone(val, reflect.Value).Int());
+ $s = 31; continue;
+ /* } else if ((_1 === (10)) || (_1 === (11))) { */ case 21:
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 0) >>> 0));
+ en.uvarint($clone(val, reflect.Value).Uint());
+ $s = 31; continue;
+ /* } else if (_1 === (13)) { */ case 22:
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 5) >>> 0));
+ en.u32(math.Float32bits(($fround($clone(val, reflect.Value).Float()))));
+ $s = 31; continue;
+ /* } else if (_1 === (14)) { */ case 23:
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 1) >>> 0));
+ en.u64(math.Float64bits($clone(val, reflect.Value).Float()));
+ $s = 31; continue;
+ /* } else if (_1 === (24)) { */ case 24:
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 2) >>> 0));
+ _r$2 = $clone(val, reflect.Value).String(); /* */ $s = 32; case 32: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ b$1 = (new sliceType($stringToBytes(_r$2)));
+ en.uvarint((new $Uint64(0, b$1.$length)));
+ en.Buffer.Write(b$1);
+ $s = 31; continue;
+ /* } else if (_1 === (25)) { */ case 25:
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 2) >>> 0));
+ emb = new encoder.ptr(new bytes.Buffer.ptr(sliceType.nil, 0, arrayType.zero(), 0));
+ $r = emb.message($clone(val, reflect.Value)); /* */ $s = 33; case 33: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ b$2 = emb.Buffer.Bytes();
+ en.uvarint((new $Uint64(0, b$2.$length)));
+ en.Buffer.Write(b$2);
+ $s = 31; continue;
+ /* } else if ((_1 === (23)) || (_1 === (17))) { */ case 26:
+ $r = en.slice(key, $clone(val, reflect.Value)); /* */ $s = 34; case 34: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* } else if (_1 === (22)) { */ case 27:
+ if ($clone(val, reflect.Value).IsNil()) {
+ if (prefix === 2) {
+ $panic(new $String("required field is nil"));
+ }
+ $s = -1; return;
+ }
+ _arg = key;
+ _r$3 = $clone(val, reflect.Value).Elem(); /* */ $s = 35; case 35: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _arg$1 = $clone(_r$3, reflect.Value);
+ _arg$2 = prefix;
+ $r = en.value(_arg, _arg$1, _arg$2); /* */ $s = 36; case 36: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 31; continue;
+ /* } else if (_1 === (20)) { */ case 28:
+ if ($clone(val, reflect.Value).IsNil()) {
+ $s = -1; return;
+ }
+ _r$4 = $clone(val, reflect.Value).Interface(); /* */ $s = 37; case 37: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _tuple = $assertType(_r$4, encoding.BinaryMarshaler, true);
+ enc = _tuple[0];
+ ok = _tuple[1];
+ /* */ if (ok) { $s = 38; continue; }
+ /* */ $s = 39; continue;
+ /* if (ok) { */ case 38:
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 2) >>> 0));
+ _r$5 = enc.MarshalBinary(); /* */ $s = 40; case 40: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _tuple$1 = _r$5;
+ bytes$1 = _tuple$1[0];
+ err = _tuple$1[1];
+ /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 41; continue; }
+ /* */ $s = 42; continue;
+ /* if (!($interfaceIsEqual(err, $ifaceNil))) { */ case 41:
+ _r$6 = err.Error(); /* */ $s = 43; case 43: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $panic(new $String(_r$6));
+ /* } */ case 42:
+ en.uvarint((new $Uint64(0, bytes$1.$length)));
+ en.Buffer.Write(bytes$1);
+ $s = -1; return;
+ /* } */ case 39:
+ _arg$3 = key;
+ _r$7 = $clone(val, reflect.Value).Elem(); /* */ $s = 44; case 44: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _arg$4 = $clone(_r$7, reflect.Value);
+ _arg$5 = prefix;
+ $r = en.value(_arg$3, _arg$4, _arg$5); /* */ $s = 45; case 45: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = 31; continue;
+ /* } else if (_1 === (21)) { */ case 29:
+ $r = en.handleMap(key, $clone(val, reflect.Value), prefix); /* */ $s = 46; case 46: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* } else { */ case 30:
+ _r$8 = fmt.Sprintf("unsupported field Kind %d", new sliceType$1([new reflect.Kind($clone(val, reflect.Value).Kind())])); /* */ $s = 47; case 47: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $panic(new $String(_r$8));
+ /* } */ case 31:
+ case 18:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: encoder.ptr.prototype.value }; } $f.$ptr = $ptr; $f._1 = _1; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._arg$3 = _arg$3; $f._arg$4 = _arg$4; $f._arg$5 = _arg$5; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._ref = _ref; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.b = b; $f.b$1 = b$1; $f.b$2 = b$2; $f.bytes$1 = bytes$1; $f.emb = emb; $f.en = en; $f.enc = enc; $f.err = err; $f.key = key; $f.ok = ok; $f.prefix = prefix; $f.t = t; $f.v = v; $f.v$1 = v$1; $f.v$10 = v$10; $f.v$11 = v$11; $f.v$12 = v$12; $f.v$13 = v$13; $f.v$14 = v$14; $f.v$15 = v$15; $f.v$2 = v$2; $f.v$3 = v$3; $f.v$4 = v$4; $f.v$5 = v$5; $f.v$6 = v$6; $f.v$7 = v$7; $f.v$8 = v$8; $f.v$9 = v$9; $f.val = val; $f.vi = vi; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ encoder.prototype.value = function(key, val, prefix) { return this.$val.value(key, val, prefix); };
+ encoder.ptr.prototype.slice = function(key, slval) {
+ var $ptr, _r$1, _r$2, _r$3, _ref, b, en, i, i$1, i$10, i$11, i$2, i$3, i$4, i$5, i$6, i$7, i$8, i$9, key, packed, sllen, slt, slt$1, slt$10, slt$11, slt$12, slt$13, slt$2, slt$3, slt$4, slt$5, slt$6, slt$7, slt$8, slt$9, slval, subSlice, subStr, subVal, v, x$1, x$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _ref = $f._ref; b = $f.b; en = $f.en; i = $f.i; i$1 = $f.i$1; i$10 = $f.i$10; i$11 = $f.i$11; i$2 = $f.i$2; i$3 = $f.i$3; i$4 = $f.i$4; i$5 = $f.i$5; i$6 = $f.i$6; i$7 = $f.i$7; i$8 = $f.i$8; i$9 = $f.i$9; key = $f.key; packed = $f.packed; sllen = $f.sllen; slt = $f.slt; slt$1 = $f.slt$1; slt$10 = $f.slt$10; slt$11 = $f.slt$11; slt$12 = $f.slt$12; slt$13 = $f.slt$13; slt$2 = $f.slt$2; slt$3 = $f.slt$3; slt$4 = $f.slt$4; slt$5 = $f.slt$5; slt$6 = $f.slt$6; slt$7 = $f.slt$7; slt$8 = $f.slt$8; slt$9 = $f.slt$9; slval = $f.slval; subSlice = $f.subSlice; subStr = $f.subStr; subVal = $f.subVal; v = $f.v; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ en = this;
+ sllen = $clone(slval, reflect.Value).Len();
+ packed = new encoder.ptr(new bytes.Buffer.ptr(sliceType.nil, 0, arrayType.zero(), 0));
+ _r$1 = $clone(slval, reflect.Value).Interface(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _ref = _r$1;
+ /* */ if ($assertType(_ref, sliceType$4, true)[1]) { $s = 2; continue; }
+ /* */ if ($assertType(_ref, sliceType$5, true)[1]) { $s = 3; continue; }
+ /* */ if ($assertType(_ref, sliceType$6, true)[1]) { $s = 4; continue; }
+ /* */ if ($assertType(_ref, sliceType$7, true)[1]) { $s = 5; continue; }
+ /* */ if ($assertType(_ref, sliceType$8, true)[1]) { $s = 6; continue; }
+ /* */ if ($assertType(_ref, sliceType$9, true)[1]) { $s = 7; continue; }
+ /* */ if ($assertType(_ref, sliceType$10, true)[1]) { $s = 8; continue; }
+ /* */ if ($assertType(_ref, sliceType$11, true)[1]) { $s = 9; continue; }
+ /* */ if ($assertType(_ref, sliceType$12, true)[1]) { $s = 10; continue; }
+ /* */ if ($assertType(_ref, sliceType$13, true)[1]) { $s = 11; continue; }
+ /* */ if ($assertType(_ref, sliceType$14, true)[1]) { $s = 12; continue; }
+ /* */ if ($assertType(_ref, sliceType, true)[1]) { $s = 13; continue; }
+ /* */ if ($assertType(_ref, sliceType$15, true)[1]) { $s = 14; continue; }
+ /* */ $s = 15; continue;
+ /* if ($assertType(_ref, sliceType$4, true)[1]) { */ case 2:
+ slt = _ref.$val;
+ i = 0;
+ while (true) {
+ if (!(i < sllen)) { break; }
+ v = new $Uint64(0, 0);
+ if (((i < 0 || i >= slt.$length) ? ($throwRuntimeError("index out of range"), undefined) : slt.$array[slt.$offset + i])) {
+ v = new $Uint64(0, 1);
+ }
+ packed.uvarint(v);
+ i = i + (1) >> 0;
+ }
+ $s = 16; continue;
+ /* } else if ($assertType(_ref, sliceType$5, true)[1]) { */ case 3:
+ slt$1 = _ref.$val;
+ i$1 = 0;
+ while (true) {
+ if (!(i$1 < sllen)) { break; }
+ packed.svarint((new $Int64(0, ((i$1 < 0 || i$1 >= slt$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : slt$1.$array[slt$1.$offset + i$1]))));
+ i$1 = i$1 + (1) >> 0;
+ }
+ $s = 16; continue;
+ /* } else if ($assertType(_ref, sliceType$6, true)[1]) { */ case 4:
+ slt$2 = _ref.$val;
+ i$2 = 0;
+ while (true) {
+ if (!(i$2 < sllen)) { break; }
+ packed.svarint(((i$2 < 0 || i$2 >= slt$2.$length) ? ($throwRuntimeError("index out of range"), undefined) : slt$2.$array[slt$2.$offset + i$2]));
+ i$2 = i$2 + (1) >> 0;
+ }
+ $s = 16; continue;
+ /* } else if ($assertType(_ref, sliceType$7, true)[1]) { */ case 5:
+ slt$3 = _ref.$val;
+ i$3 = 0;
+ while (true) {
+ if (!(i$3 < sllen)) { break; }
+ packed.uvarint((new $Uint64(0, ((i$3 < 0 || i$3 >= slt$3.$length) ? ($throwRuntimeError("index out of range"), undefined) : slt$3.$array[slt$3.$offset + i$3]))));
+ i$3 = i$3 + (1) >> 0;
+ }
+ $s = 16; continue;
+ /* } else if ($assertType(_ref, sliceType$8, true)[1]) { */ case 6:
+ slt$4 = _ref.$val;
+ i$4 = 0;
+ while (true) {
+ if (!(i$4 < sllen)) { break; }
+ packed.uvarint(((i$4 < 0 || i$4 >= slt$4.$length) ? ($throwRuntimeError("index out of range"), undefined) : slt$4.$array[slt$4.$offset + i$4]));
+ i$4 = i$4 + (1) >> 0;
+ }
+ $s = 16; continue;
+ /* } else if ($assertType(_ref, sliceType$9, true)[1]) { */ case 7:
+ slt$5 = _ref.$val;
+ i$5 = 0;
+ while (true) {
+ if (!(i$5 < sllen)) { break; }
+ packed.u32(((((i$5 < 0 || i$5 >= slt$5.$length) ? ($throwRuntimeError("index out of range"), undefined) : slt$5.$array[slt$5.$offset + i$5]) >>> 0)));
+ i$5 = i$5 + (1) >> 0;
+ }
+ $s = 16; continue;
+ /* } else if ($assertType(_ref, sliceType$10, true)[1]) { */ case 8:
+ slt$6 = _ref.$val;
+ i$6 = 0;
+ while (true) {
+ if (!(i$6 < sllen)) { break; }
+ packed.u64(((x$1 = ((i$6 < 0 || i$6 >= slt$6.$length) ? ($throwRuntimeError("index out of range"), undefined) : slt$6.$array[slt$6.$offset + i$6]), new $Uint64(x$1.$high, x$1.$low))));
+ i$6 = i$6 + (1) >> 0;
+ }
+ $s = 16; continue;
+ /* } else if ($assertType(_ref, sliceType$11, true)[1]) { */ case 9:
+ slt$7 = _ref.$val;
+ i$7 = 0;
+ while (true) {
+ if (!(i$7 < sllen)) { break; }
+ packed.u32(((((i$7 < 0 || i$7 >= slt$7.$length) ? ($throwRuntimeError("index out of range"), undefined) : slt$7.$array[slt$7.$offset + i$7]) >>> 0)));
+ i$7 = i$7 + (1) >> 0;
+ }
+ $s = 16; continue;
+ /* } else if ($assertType(_ref, sliceType$12, true)[1]) { */ case 10:
+ slt$8 = _ref.$val;
+ i$8 = 0;
+ while (true) {
+ if (!(i$8 < sllen)) { break; }
+ packed.u64(((x$2 = ((i$8 < 0 || i$8 >= slt$8.$length) ? ($throwRuntimeError("index out of range"), undefined) : slt$8.$array[slt$8.$offset + i$8]), new $Uint64(x$2.$high, x$2.$low))));
+ i$8 = i$8 + (1) >> 0;
+ }
+ $s = 16; continue;
+ /* } else if ($assertType(_ref, sliceType$13, true)[1]) { */ case 11:
+ slt$9 = _ref.$val;
+ i$9 = 0;
+ while (true) {
+ if (!(i$9 < sllen)) { break; }
+ packed.u32(math.Float32bits(((i$9 < 0 || i$9 >= slt$9.$length) ? ($throwRuntimeError("index out of range"), undefined) : slt$9.$array[slt$9.$offset + i$9])));
+ i$9 = i$9 + (1) >> 0;
+ }
+ $s = 16; continue;
+ /* } else if ($assertType(_ref, sliceType$14, true)[1]) { */ case 12:
+ slt$10 = _ref.$val;
+ i$10 = 0;
+ while (true) {
+ if (!(i$10 < sllen)) { break; }
+ packed.u64(math.Float64bits(((i$10 < 0 || i$10 >= slt$10.$length) ? ($throwRuntimeError("index out of range"), undefined) : slt$10.$array[slt$10.$offset + i$10])));
+ i$10 = i$10 + (1) >> 0;
+ }
+ $s = 16; continue;
+ /* } else if ($assertType(_ref, sliceType, true)[1]) { */ case 13:
+ slt$11 = _ref.$val;
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 2) >>> 0));
+ en.uvarint((new $Uint64(0, sllen)));
+ en.Buffer.Write(slt$11);
+ $s = -1; return;
+ /* } else if ($assertType(_ref, sliceType$15, true)[1]) { */ case 14:
+ slt$12 = _ref.$val;
+ i$11 = 0;
+ /* while (true) { */ case 17:
+ /* if (!(i$11 < sllen)) { break; } */ if(!(i$11 < sllen)) { $s = 18; continue; }
+ _r$2 = $clone(slval, reflect.Value).Index(i$11); /* */ $s = 19; case 19: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ subVal = _r$2;
+ _r$3 = $clone(subVal, reflect.Value).Interface(); /* */ $s = 20; case 20: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ subStr = $assertType(_r$3, $String);
+ subSlice = (new sliceType($stringToBytes(subStr)));
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 2) >>> 0));
+ en.uvarint((new $Uint64(0, subSlice.$length)));
+ en.Buffer.Write(subSlice);
+ i$11 = i$11 + (1) >> 0;
+ /* } */ $s = 17; continue; case 18:
+ $s = -1; return;
+ /* } else { */ case 15:
+ slt$13 = _ref;
+ $r = en.sliceReflect(key, $clone(slval, reflect.Value)); /* */ $s = 21; case 21: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* } */ case 16:
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 2) >>> 0));
+ b = packed.Buffer.Bytes();
+ en.uvarint((new $Uint64(0, b.$length)));
+ en.Buffer.Write(b);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: encoder.ptr.prototype.slice }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._ref = _ref; $f.b = b; $f.en = en; $f.i = i; $f.i$1 = i$1; $f.i$10 = i$10; $f.i$11 = i$11; $f.i$2 = i$2; $f.i$3 = i$3; $f.i$4 = i$4; $f.i$5 = i$5; $f.i$6 = i$6; $f.i$7 = i$7; $f.i$8 = i$8; $f.i$9 = i$9; $f.key = key; $f.packed = packed; $f.sllen = sllen; $f.slt = slt; $f.slt$1 = slt$1; $f.slt$10 = slt$10; $f.slt$11 = slt$11; $f.slt$12 = slt$12; $f.slt$13 = slt$13; $f.slt$2 = slt$2; $f.slt$3 = slt$3; $f.slt$4 = slt$4; $f.slt$5 = slt$5; $f.slt$6 = slt$6; $f.slt$7 = slt$7; $f.slt$8 = slt$8; $f.slt$9 = slt$9; $f.slval = slval; $f.subSlice = subSlice; $f.subStr = subStr; $f.subVal = subVal; $f.v = v; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ encoder.prototype.slice = function(key, slval) { return this.$val.slice(key, slval); };
+ encoder.ptr.prototype.handleMap = function(key, mpval, prefix) {
+ var $ptr, _1, _i, _r$1, _r$2, _r$3, _r$4, _ref, b, en, fieldId, key, kind, mkey, mpval, mval, packed, prefix, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _i = $f._i; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _ref = $f._ref; b = $f.b; en = $f.en; fieldId = $f.fieldId; key = $f.key; kind = $f.kind; mkey = $f.mkey; mpval = $f.mpval; mval = $f.mval; packed = $f.packed; prefix = $f.prefix; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ en = this;
+ _r$1 = $clone(mpval, reflect.Value).MapKeys(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _ref = _r$1;
+ _i = 0;
+ /* while (true) { */ case 2:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 3; continue; }
+ mkey = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ _r$2 = $clone(mpval, reflect.Value).MapIndex($clone(mkey, reflect.Value)); /* */ $s = 4; case 4: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ mval = _r$2;
+ kind = $clone(mval, reflect.Value).Kind();
+ _1 = kind;
+ /* */ if (_1 === (22)) { $s = 6; continue; }
+ /* */ if ((_1 === (23)) || (_1 === (17))) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (_1 === (22)) { */ case 6:
+ if ($clone(mval, reflect.Value).IsNil()) {
+ $panic(new $String("proto: map has nil element"));
+ }
+ $s = 8; continue;
+ /* } else if ((_1 === (23)) || (_1 === (17))) { */ case 7:
+ _r$3 = $clone(mval, reflect.Value).Type().Elem(); /* */ $s = 11; case 11: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$4 = _r$3.Kind(); /* */ $s = 12; case 12: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ /* */ if (!((_r$4 === 8))) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (!((_r$4 === 8))) { */ case 9:
+ $panic(new $String("protobuf: map only support []byte or string as repeated value"));
+ /* } */ case 10:
+ /* } */ case 8:
+ case 5:
+ packed = new encoder.ptr(new bytes.Buffer.ptr(sliceType.nil, 0, arrayType.zero(), 0));
+ $r = packed.value(key, $clone(mkey, reflect.Value), prefix); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ fieldId = ($shiftRightUint64(key, 3));
+ $r = packed.value($shiftLeft64((new $Uint64(fieldId.$high + 0, fieldId.$low + 1)), 3), $clone(mval, reflect.Value), prefix); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 2) >>> 0));
+ b = packed.Buffer.Bytes();
+ en.uvarint((new $Uint64(0, b.$length)));
+ en.Buffer.Write(b);
+ _i++;
+ /* } */ $s = 2; continue; case 3:
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: encoder.ptr.prototype.handleMap }; } $f.$ptr = $ptr; $f._1 = _1; $f._i = _i; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._ref = _ref; $f.b = b; $f.en = en; $f.fieldId = fieldId; $f.key = key; $f.kind = kind; $f.mkey = mkey; $f.mpval = mpval; $f.mval = mval; $f.packed = packed; $f.prefix = prefix; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ encoder.prototype.handleMap = function(key, mpval, prefix) { return this.$val.handleMap(key, mpval, prefix); };
+ encoder.ptr.prototype.sliceReflect = function(key, slval) {
+ var $ptr, _1, _arg, _arg$1, _r$1, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$18, _r$19, _r$2, _r$20, _r$21, _r$22, _r$23, _r$24, _r$25, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _v, b, b$1, en, i, i$1, i$2, i$3, i$4, i$5, key, kind, packed, slelt, sliceVal, sllen, slval, subSlice, t, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _arg = $f._arg; _arg$1 = $f._arg$1; _r$1 = $f._r$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$18 = $f._r$18; _r$19 = $f._r$19; _r$2 = $f._r$2; _r$20 = $f._r$20; _r$21 = $f._r$21; _r$22 = $f._r$22; _r$23 = $f._r$23; _r$24 = $f._r$24; _r$25 = $f._r$25; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _v = $f._v; b = $f.b; b$1 = $f.b$1; en = $f.en; i = $f.i; i$1 = $f.i$1; i$2 = $f.i$2; i$3 = $f.i$3; i$4 = $f.i$4; i$5 = $f.i$5; key = $f.key; kind = $f.kind; packed = $f.packed; slelt = $f.slelt; sliceVal = $f.sliceVal; sllen = $f.sllen; slval = $f.slval; subSlice = $f.subSlice; t = $f.t; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ en = this;
+ kind = $clone(slval, reflect.Value).Kind();
+ if (!((kind === 23)) && !((kind === 17))) {
+ $panic(new $String("no slice passed"));
+ }
+ sllen = $clone(slval, reflect.Value).Len();
+ _r$1 = $clone(slval, reflect.Value).Type().Elem(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ slelt = _r$1;
+ packed = new encoder.ptr(new bytes.Buffer.ptr(sliceType.nil, 0, arrayType.zero(), 0));
+ _r$2 = slelt.Kind(); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _1 = _r$2;
+ /* */ if (_1 === (1)) { $s = 4; continue; }
+ /* */ if ((_1 === (2)) || (_1 === (5)) || (_1 === (6))) { $s = 5; continue; }
+ /* */ if ((_1 === (10)) || (_1 === (11))) { $s = 6; continue; }
+ /* */ if (_1 === (13)) { $s = 7; continue; }
+ /* */ if (_1 === (14)) { $s = 8; continue; }
+ /* */ if (_1 === (8)) { $s = 9; continue; }
+ /* */ $s = 10; continue;
+ /* if (_1 === (1)) { */ case 4:
+ i = 0;
+ /* while (true) { */ case 12:
+ /* if (!(i < sllen)) { break; } */ if(!(i < sllen)) { $s = 13; continue; }
+ v = new $Uint64(0, 0);
+ _r$3 = $clone(slval, reflect.Value).Index(i); /* */ $s = 16; case 16: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$4 = $clone(_r$3, reflect.Value).Bool(); /* */ $s = 17; case 17: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ /* */ if (_r$4) { $s = 14; continue; }
+ /* */ $s = 15; continue;
+ /* if (_r$4) { */ case 14:
+ v = new $Uint64(0, 1);
+ /* } */ case 15:
+ packed.uvarint(v);
+ i = i + (1) >> 0;
+ /* } */ $s = 12; continue; case 13:
+ $s = 11; continue;
+ /* } else if ((_1 === (2)) || (_1 === (5)) || (_1 === (6))) { */ case 5:
+ i$1 = 0;
+ /* while (true) { */ case 18:
+ /* if (!(i$1 < sllen)) { break; } */ if(!(i$1 < sllen)) { $s = 19; continue; }
+ _r$5 = $clone(slval, reflect.Value).Index(i$1); /* */ $s = 20; case 20: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _r$6 = $clone(_r$5, reflect.Value).Int(); /* */ $s = 21; case 21: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $r = packed.svarint(_r$6); /* */ $s = 22; case 22: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i$1 = i$1 + (1) >> 0;
+ /* } */ $s = 18; continue; case 19:
+ $s = 11; continue;
+ /* } else if ((_1 === (10)) || (_1 === (11))) { */ case 6:
+ i$2 = 0;
+ /* while (true) { */ case 23:
+ /* if (!(i$2 < sllen)) { break; } */ if(!(i$2 < sllen)) { $s = 24; continue; }
+ _r$7 = $clone(slval, reflect.Value).Index(i$2); /* */ $s = 25; case 25: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _r$8 = $clone(_r$7, reflect.Value).Uint(); /* */ $s = 26; case 26: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ $r = packed.uvarint(_r$8); /* */ $s = 27; case 27: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i$2 = i$2 + (1) >> 0;
+ /* } */ $s = 23; continue; case 24:
+ $s = 11; continue;
+ /* } else if (_1 === (13)) { */ case 7:
+ i$3 = 0;
+ /* while (true) { */ case 28:
+ /* if (!(i$3 < sllen)) { break; } */ if(!(i$3 < sllen)) { $s = 29; continue; }
+ _r$9 = $clone(slval, reflect.Value).Index(i$3); /* */ $s = 30; case 30: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _r$10 = $clone(_r$9, reflect.Value).Float(); /* */ $s = 31; case 31: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _r$11 = math.Float32bits(($fround(_r$10))); /* */ $s = 32; case 32: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ $r = packed.u32(_r$11); /* */ $s = 33; case 33: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i$3 = i$3 + (1) >> 0;
+ /* } */ $s = 28; continue; case 29:
+ $s = 11; continue;
+ /* } else if (_1 === (14)) { */ case 8:
+ i$4 = 0;
+ /* while (true) { */ case 34:
+ /* if (!(i$4 < sllen)) { break; } */ if(!(i$4 < sllen)) { $s = 35; continue; }
+ _r$12 = $clone(slval, reflect.Value).Index(i$4); /* */ $s = 36; case 36: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _r$13 = $clone(_r$12, reflect.Value).Float(); /* */ $s = 37; case 37: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _r$14 = math.Float64bits(_r$13); /* */ $s = 38; case 38: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ $r = packed.u64(_r$14); /* */ $s = 39; case 39: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i$4 = i$4 + (1) >> 0;
+ /* } */ $s = 34; continue; case 35:
+ $s = 11; continue;
+ /* } else if (_1 === (8)) { */ case 9:
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 2) >>> 0));
+ en.uvarint((new $Uint64(0, sllen)));
+ b = sliceType.nil;
+ /* */ if ($clone(slval, reflect.Value).Kind() === 17) { $s = 40; continue; }
+ /* */ $s = 41; continue;
+ /* if ($clone(slval, reflect.Value).Kind() === 17) { */ case 40:
+ _r$15 = $clone(slval, reflect.Value).Slice(0, sllen); /* */ $s = 43; case 43: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ sliceVal = _r$15;
+ _r$16 = $clone(sliceVal, reflect.Value).Convert(bytesType); /* */ $s = 44; case 44: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ _r$17 = $clone(_r$16, reflect.Value).Interface(); /* */ $s = 45; case 45: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ b = $assertType(_r$17, sliceType);
+ $s = 42; continue;
+ /* } else { */ case 41:
+ _r$18 = $clone(slval, reflect.Value).Convert(bytesType); /* */ $s = 46; case 46: if($c) { $c = false; _r$18 = _r$18.$blk(); } if (_r$18 && _r$18.$blk !== undefined) { break s; }
+ _r$19 = $clone(_r$18, reflect.Value).Interface(); /* */ $s = 47; case 47: if($c) { $c = false; _r$19 = _r$19.$blk(); } if (_r$19 && _r$19.$blk !== undefined) { break s; }
+ b = $assertType(_r$19, sliceType);
+ /* } */ case 42:
+ en.Buffer.Write(b);
+ $s = -1; return;
+ /* } else { */ case 10:
+ _r$20 = $clone(slval, reflect.Value).Type().Elem(); /* */ $s = 48; case 48: if($c) { $c = false; _r$20 = _r$20.$blk(); } if (_r$20 && _r$20.$blk !== undefined) { break s; }
+ t = _r$20;
+ _r$21 = t.Kind(); /* */ $s = 52; case 52: if($c) { $c = false; _r$21 = _r$21.$blk(); } if (_r$21 && _r$21.$blk !== undefined) { break s; }
+ if (_r$21 === 23) { _v = true; $s = 51; continue s; }
+ _r$22 = t.Kind(); /* */ $s = 53; case 53: if($c) { $c = false; _r$22 = _r$22.$blk(); } if (_r$22 && _r$22.$blk !== undefined) { break s; }
+ _v = _r$22 === 17; case 51:
+ /* */ if (_v) { $s = 49; continue; }
+ /* */ $s = 50; continue;
+ /* if (_v) { */ case 49:
+ _r$23 = t.Elem(); /* */ $s = 54; case 54: if($c) { $c = false; _r$23 = _r$23.$blk(); } if (_r$23 && _r$23.$blk !== undefined) { break s; }
+ subSlice = _r$23;
+ _r$24 = subSlice.Kind(); /* */ $s = 57; case 57: if($c) { $c = false; _r$24 = _r$24.$blk(); } if (_r$24 && _r$24.$blk !== undefined) { break s; }
+ /* */ if (!((_r$24 === 8))) { $s = 55; continue; }
+ /* */ $s = 56; continue;
+ /* if (!((_r$24 === 8))) { */ case 55:
+ $panic(new $String("protobuf: no support for 2-dimensional array except for [][]byte"));
+ /* } */ case 56:
+ /* } */ case 50:
+ i$5 = 0;
+ /* while (true) { */ case 58:
+ /* if (!(i$5 < sllen)) { break; } */ if(!(i$5 < sllen)) { $s = 59; continue; }
+ _arg = key;
+ _r$25 = $clone(slval, reflect.Value).Index(i$5); /* */ $s = 60; case 60: if($c) { $c = false; _r$25 = _r$25.$blk(); } if (_r$25 && _r$25.$blk !== undefined) { break s; }
+ _arg$1 = $clone(_r$25, reflect.Value);
+ $r = en.value(_arg, _arg$1, 0); /* */ $s = 61; case 61: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ i$5 = i$5 + (1) >> 0;
+ /* } */ $s = 58; continue; case 59:
+ $s = -1; return;
+ /* } */ case 11:
+ case 2:
+ en.uvarint(new $Uint64(key.$high | 0, (key.$low | 2) >>> 0));
+ b$1 = packed.Buffer.Bytes();
+ en.uvarint((new $Uint64(0, b$1.$length)));
+ en.Buffer.Write(b$1);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: encoder.ptr.prototype.sliceReflect }; } $f.$ptr = $ptr; $f._1 = _1; $f._arg = _arg; $f._arg$1 = _arg$1; $f._r$1 = _r$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$18 = _r$18; $f._r$19 = _r$19; $f._r$2 = _r$2; $f._r$20 = _r$20; $f._r$21 = _r$21; $f._r$22 = _r$22; $f._r$23 = _r$23; $f._r$24 = _r$24; $f._r$25 = _r$25; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._v = _v; $f.b = b; $f.b$1 = b$1; $f.en = en; $f.i = i; $f.i$1 = i$1; $f.i$2 = i$2; $f.i$3 = i$3; $f.i$4 = i$4; $f.i$5 = i$5; $f.key = key; $f.kind = kind; $f.packed = packed; $f.slelt = slelt; $f.sliceVal = sliceVal; $f.sllen = sllen; $f.slval = slval; $f.subSlice = subSlice; $f.t = t; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ encoder.prototype.sliceReflect = function(key, slval) { return this.$val.sliceReflect(key, slval); };
+ encoder.ptr.prototype.uvarint = function(v) {
+ var $ptr, b, en, n, v;
+ en = this;
+ b = arrayType$1.zero();
+ n = binary.PutUvarint(new sliceType(b), v);
+ en.Buffer.Write($subslice(new sliceType(b), 0, n));
+ };
+ encoder.prototype.uvarint = function(v) { return this.$val.uvarint(v); };
+ encoder.ptr.prototype.svarint = function(v) {
+ var $ptr, en, v, x$1, x$2;
+ en = this;
+ if ((v.$high > 0 || (v.$high === 0 && v.$low >= 0))) {
+ en.uvarint($shiftLeft64((new $Uint64(v.$high, v.$low)), 1));
+ } else {
+ en.uvarint((x$1 = ((x$2 = $shiftLeft64(v, 1), new $Uint64(x$2.$high, x$2.$low))), new $Uint64(~x$1.$high, ~x$1.$low >>> 0)));
+ }
+ };
+ encoder.prototype.svarint = function(v) { return this.$val.svarint(v); };
+ encoder.ptr.prototype.u32 = function(v) {
+ var $ptr, b, en, v;
+ en = this;
+ b = arrayType$2.zero();
+ b[0] = ((v << 24 >>> 24));
+ b[1] = (((v >>> 8 >>> 0) << 24 >>> 24));
+ b[2] = (((v >>> 16 >>> 0) << 24 >>> 24));
+ b[3] = (((v >>> 24 >>> 0) << 24 >>> 24));
+ en.Buffer.Write(new sliceType(b));
+ };
+ encoder.prototype.u32 = function(v) { return this.$val.u32(v); };
+ encoder.ptr.prototype.u64 = function(v) {
+ var $ptr, b, en, v;
+ en = this;
+ b = arrayType$3.zero();
+ b[0] = ((v.$low << 24 >>> 24));
+ b[1] = (($shiftRightUint64(v, 8).$low << 24 >>> 24));
+ b[2] = (($shiftRightUint64(v, 16).$low << 24 >>> 24));
+ b[3] = (($shiftRightUint64(v, 24).$low << 24 >>> 24));
+ b[4] = (($shiftRightUint64(v, 32).$low << 24 >>> 24));
+ b[5] = (($shiftRightUint64(v, 40).$low << 24 >>> 24));
+ b[6] = (($shiftRightUint64(v, 48).$low << 24 >>> 24));
+ b[7] = (($shiftRightUint64(v, 56).$low << 24 >>> 24));
+ en.Buffer.Write(new sliceType(b));
+ };
+ encoder.prototype.u64 = function(v) { return this.$val.u64(v); };
+ ParseTag = function(field) {
+ var $ptr, _i, _ref, _tuple, err, field, i, id, name, opt, part, parts, tag;
+ id = 0;
+ opt = 0;
+ name = "";
+ tag = new reflect.StructTag(field.Tag).Get("protobuf");
+ if (tag === "") {
+ return [id, opt, name];
+ }
+ parts = strings.Split(tag, ",");
+ _ref = parts;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ part = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (part === "opt") {
+ opt = 1;
+ } else if (part === "req") {
+ opt = 2;
+ } else {
+ _tuple = strconv.Atoi(part);
+ i = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ name = part;
+ } else {
+ id = (i);
+ }
+ }
+ _i++;
+ }
+ return [id, opt, name];
+ };
+ $pkg.ParseTag = ParseTag;
+ ProtoField.ptr.prototype.Required = function() {
+ var $ptr, _r$1, _v, p, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _v = $f._v; p = $f.p; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ if (p.Prefix === 2) { _v = true; $s = 1; continue s; }
+ _r$1 = p.Field.Type.Kind(); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _v = !((_r$1 === 22)); case 1:
+ $s = -1; return _v;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ProtoField.ptr.prototype.Required }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._v = _v; $f.p = p; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ProtoField.prototype.Required = function() { return this.$val.Required(); };
+ ProtoFields = function(t) {
+ var $ptr, _arg, _arg$1, _arg$2, _entry, _entry$1, _i, _key, _key$1, _r$1, _r$2, _r$3, _r$4, _ref, _tuple, _tuple$1, i, id, idx, ok, ok$1, seen, t, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _arg$2 = $f._arg$2; _entry = $f._entry; _entry$1 = $f._entry$1; _i = $f._i; _key = $f._key; _key$1 = $f._key$1; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _ref = $f._ref; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; i = $f.i; id = $f.id; idx = $f.idx; ok = $f.ok; ok$1 = $f.ok$1; seen = $f.seen; t = $f.t; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ id = [id];
+ $r = cacheLock.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _tuple = (_entry = cache[reflect.Type.keyFor(t)], _entry !== undefined ? [_entry.v, true] : [sliceType$16.nil, false]);
+ idx = _tuple[0];
+ ok = _tuple[1];
+ $r = cacheLock.Unlock(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if (ok) {
+ $s = -1; return idx;
+ }
+ id[0] = 0;
+ _r$1 = innerFieldIndexes((id.$ptr || (id.$ptr = new ptrType$3(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, id))), t); /* */ $s = 3; case 3: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ idx = _r$1;
+ seen = $makeMap($Int64.keyFor, []);
+ _ref = idx;
+ _i = 0;
+ /* while (true) { */ case 4:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 5; continue; }
+ i = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ _tuple$1 = (_entry$1 = seen[$Int64.keyFor(i.ID)], _entry$1 !== undefined ? [_entry$1.v, true] : [new structType.ptr(), false]);
+ ok$1 = _tuple$1[1];
+ /* */ if (ok$1) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (ok$1) { */ case 6:
+ _arg = i.ID;
+ _r$2 = t.PkgPath(); /* */ $s = 8; case 8: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _arg$1 = new $String(_r$2);
+ _r$3 = t.Name(); /* */ $s = 9; case 9: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _arg$2 = new $String(_r$3);
+ _r$4 = fmt.Sprintf("protobuf ID %d reused in %s.%s", new sliceType$1([_arg, _arg$1, _arg$2])); /* */ $s = 10; case 10: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ $panic(new $String(_r$4));
+ /* } */ case 7:
+ _key = i.ID; (seen || $throwRuntimeError("assignment to entry in nil map"))[$Int64.keyFor(_key)] = { k: _key, v: new structType.ptr() };
+ _i++;
+ /* } */ $s = 4; continue; case 5:
+ $r = cacheLock.Lock(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(cacheLock, "Unlock"), []]);
+ _key$1 = t; (cache || $throwRuntimeError("assignment to entry in nil map"))[reflect.Type.keyFor(_key$1)] = { k: _key$1, v: idx };
+ $s = -1; return idx;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; return sliceType$16.nil; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: ProtoFields }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._arg$2 = _arg$2; $f._entry = _entry; $f._entry$1 = _entry$1; $f._i = _i; $f._key = _key; $f._key$1 = _key$1; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._ref = _ref; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.i = i; $f.id = id; $f.idx = idx; $f.ok = ok; $f.ok$1 = ok$1; $f.seen = seen; $f.t = t; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ $pkg.ProtoFields = ProtoFields;
+ innerFieldIndexes = function(id, v) {
+ var $ptr, _arg, _arg$1, _i, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _ref, _tuple, f, i, id, inner, name, out, prefix, tid, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _i = $f._i; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _ref = $f._ref; _tuple = $f._tuple; f = $f.f; i = $f.i; id = $f.id; inner = $f.inner; name = $f.name; out = $f.out; prefix = $f.prefix; tid = $f.tid; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$1 = v.Kind(); /* */ $s = 3; case 3: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ /* */ if (_r$1 === 22) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (_r$1 === 22) { */ case 1:
+ _arg = id;
+ _r$2 = v.Elem(); /* */ $s = 4; case 4: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _arg$1 = _r$2;
+ _r$3 = innerFieldIndexes(_arg, _arg$1); /* */ $s = 5; case 5: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $s = -1; return _r$3;
+ /* } */ case 2:
+ out = new sliceType$16([]);
+ i = 0;
+ /* while (true) { */ case 6:
+ _r$4 = v.NumField(); /* */ $s = 8; case 8: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ /* if (!(i < _r$4)) { break; } */ if(!(i < _r$4)) { $s = 7; continue; }
+ _r$5 = v.Field(i); /* */ $s = 9; case 9: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ f = $clone(_r$5, reflect.StructField);
+ id.$set(id.$get() + (1) >> 0);
+ _tuple = ParseTag($clone(f, reflect.StructField));
+ tid = _tuple[0];
+ prefix = _tuple[1];
+ name = _tuple[2];
+ if (!((tid === 0))) {
+ id.$set(tid);
+ }
+ /* */ if (f.Anonymous) { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if (f.Anonymous) { */ case 10:
+ id.$set(id.$get() - (1) >> 0);
+ _r$6 = innerFieldIndexes(id, f.Type); /* */ $s = 13; case 13: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _ref = _r$6;
+ _i = 0;
+ /* while (true) { */ case 14:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 15; continue; }
+ inner = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ inner.Index = $appendSlice(new sliceType$2([i]), inner.Index);
+ out = $append(out, inner);
+ _i++;
+ /* } */ $s = 14; continue; case 15:
+ $s = 12; continue;
+ /* } else { */ case 11:
+ out = $append(out, new ProtoField.ptr((new $Int64(0, id.$get())), prefix, name, new sliceType$2([i]), $clone(f, reflect.StructField)));
+ /* } */ case 12:
+ i = i + (1) >> 0;
+ /* } */ $s = 6; continue; case 7:
+ $s = -1; return out;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: innerFieldIndexes }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._i = _i; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._ref = _ref; $f._tuple = _tuple; $f.f = f; $f.i = i; $f.id = id; $f.inner = inner; $f.name = name; $f.out = out; $f.prefix = prefix; $f.tid = tid; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ptrType$4.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$5.methods = [{prop: "message", name: "message", pkg: "github.com/dedis/protobuf", typ: $funcType([sliceType, reflect.Value], [$error], false)}, {prop: "value", name: "value", pkg: "github.com/dedis/protobuf", typ: $funcType([$Int, sliceType, reflect.Value], [sliceType, $error], false)}, {prop: "decodeSignedInt", name: "decodeSignedInt", pkg: "github.com/dedis/protobuf", typ: $funcType([$Int, $Uint64], [$Int64, $error], false)}, {prop: "putvalue", name: "putvalue", pkg: "github.com/dedis/protobuf", typ: $funcType([$Int, reflect.Value, $Uint64, sliceType], [$error], false)}, {prop: "instantiate", name: "instantiate", pkg: "github.com/dedis/protobuf", typ: $funcType([reflect.Type], [reflect.Value], false)}, {prop: "slice", name: "slice", pkg: "github.com/dedis/protobuf", typ: $funcType([reflect.Value, sliceType], [$error], false)}, {prop: "mapEntry", name: "mapEntry", pkg: "github.com/dedis/protobuf", typ: $funcType([reflect.Value, sliceType], [$error], false)}];
+ ptrType$6.methods = [{prop: "message", name: "message", pkg: "github.com/dedis/protobuf", typ: $funcType([reflect.Value], [], false)}, {prop: "value", name: "value", pkg: "github.com/dedis/protobuf", typ: $funcType([$Uint64, reflect.Value, TagPrefix], [], false)}, {prop: "slice", name: "slice", pkg: "github.com/dedis/protobuf", typ: $funcType([$Uint64, reflect.Value], [], false)}, {prop: "handleMap", name: "handleMap", pkg: "github.com/dedis/protobuf", typ: $funcType([$Uint64, reflect.Value, TagPrefix], [], false)}, {prop: "sliceReflect", name: "sliceReflect", pkg: "github.com/dedis/protobuf", typ: $funcType([$Uint64, reflect.Value], [], false)}, {prop: "uvarint", name: "uvarint", pkg: "github.com/dedis/protobuf", typ: $funcType([$Uint64], [], false)}, {prop: "svarint", name: "svarint", pkg: "github.com/dedis/protobuf", typ: $funcType([$Int64], [], false)}, {prop: "u32", name: "u32", pkg: "github.com/dedis/protobuf", typ: $funcType([$Uint32], [], false)}, {prop: "u64", name: "u64", pkg: "github.com/dedis/protobuf", typ: $funcType([$Uint64], [], false)}];
+ ptrType$2.methods = [{prop: "Required", name: "Required", pkg: "", typ: $funcType([], [$Bool], false)}];
+ Constructors.init(reflect.Type, funcType);
+ decoder.init("github.com/dedis/protobuf", [{prop: "nm", name: "nm", exported: false, typ: Constructors, tag: ""}]);
+ encoder.init("", [{prop: "Buffer", name: "", exported: true, typ: bytes.Buffer, tag: ""}]);
+ ProtoField.init("", [{prop: "ID", name: "ID", exported: true, typ: $Int64, tag: ""}, {prop: "Prefix", name: "Prefix", exported: true, typ: TagPrefix, tag: ""}, {prop: "Name", name: "Name", exported: true, typ: $String, tag: ""}, {prop: "Index", name: "Index", exported: true, typ: sliceType$2, tag: ""}, {prop: "Field", name: "Field", exported: true, typ: reflect.StructField, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = encoding.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = binary.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = math.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = reflect.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = regexp.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sort.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = template.$init(); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = time.$init(); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ cacheLock = new sync.Mutex.ptr(0, 0);
+ sfixed32type = reflect.TypeOf(new Sfixed32(0));
+ sfixed64type = reflect.TypeOf(new Sfixed64(0, 0));
+ ufixed32type = reflect.TypeOf(new Ufixed32(0));
+ ufixed64type = reflect.TypeOf(new Ufixed64(0, 0));
+ timeType = reflect.TypeOf((x = new time.Time.ptr(new $Int64(0, 0), 0, ptrType.nil), new x.constructor.elem(x)));
+ durationType = reflect.TypeOf(new time.Duration(0, 0));
+ bytesType = reflect.TypeOf(new sliceType([]));
+ cache = $makeMap(reflect.Type.keyFor, []);
+ _r = regexp.MustCompile("((?:ID)|(?:[A-Z][a-z_0-9]+)|([\\w\\d]+))"); /* */ $s = 16; case 16: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ splitName = _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["crypto"] = (function() {
+ var $pkg = {}, $init, hash, io, strconv, Hash, sliceType, funcType, sliceType$1, digestSizes, hashes, RegisterHash;
+ hash = $packages["hash"];
+ io = $packages["io"];
+ strconv = $packages["strconv"];
+ Hash = $pkg.Hash = $newType(4, $kindUint, "crypto.Hash", true, "crypto", true, null);
+ sliceType = $sliceType($Uint8);
+ funcType = $funcType([], [hash.Hash], false);
+ sliceType$1 = $sliceType(funcType);
+ Hash.prototype.HashFunc = function() {
+ var $ptr, h;
+ h = this.$val;
+ return h;
+ };
+ $ptrType(Hash).prototype.HashFunc = function() { return new Hash(this.$get()).HashFunc(); };
+ Hash.prototype.Size = function() {
+ var $ptr, h;
+ h = this.$val;
+ if (h > 0 && h < 16) {
+ return ((((h < 0 || h >= digestSizes.$length) ? ($throwRuntimeError("index out of range"), undefined) : digestSizes.$array[digestSizes.$offset + h]) >> 0));
+ }
+ $panic(new $String("crypto: Size of unknown hash function"));
+ };
+ $ptrType(Hash).prototype.Size = function() { return new Hash(this.$get()).Size(); };
+ Hash.prototype.New = function() {
+ var $ptr, _r, f, h, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; f = $f.f; h = $f.h; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ h = this.$val;
+ /* */ if (h > 0 && h < 16) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (h > 0 && h < 16) { */ case 1:
+ f = ((h < 0 || h >= hashes.$length) ? ($throwRuntimeError("index out of range"), undefined) : hashes.$array[hashes.$offset + h]);
+ /* */ if (!(f === $throwNilPointerError)) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!(f === $throwNilPointerError)) { */ case 3:
+ _r = f(); /* */ $s = 5; case 5: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* } */ case 4:
+ /* } */ case 2:
+ $panic(new $String("crypto: requested hash function #" + strconv.Itoa(((h >> 0))) + " is unavailable"));
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Hash.prototype.New }; } $f.$ptr = $ptr; $f._r = _r; $f.f = f; $f.h = h; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(Hash).prototype.New = function() { return new Hash(this.$get()).New(); };
+ Hash.prototype.Available = function() {
+ var $ptr, h;
+ h = this.$val;
+ return h < 16 && !(((h < 0 || h >= hashes.$length) ? ($throwRuntimeError("index out of range"), undefined) : hashes.$array[hashes.$offset + h]) === $throwNilPointerError);
+ };
+ $ptrType(Hash).prototype.Available = function() { return new Hash(this.$get()).Available(); };
+ RegisterHash = function(h, f) {
+ var $ptr, f, h;
+ if (h >= 16) {
+ $panic(new $String("crypto: RegisterHash of unknown hash function"));
+ }
+ ((h < 0 || h >= hashes.$length) ? ($throwRuntimeError("index out of range"), undefined) : hashes.$array[hashes.$offset + h] = f);
+ };
+ $pkg.RegisterHash = RegisterHash;
+ Hash.methods = [{prop: "HashFunc", name: "HashFunc", pkg: "", typ: $funcType([], [Hash], false)}, {prop: "Size", name: "Size", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "New", name: "New", pkg: "", typ: $funcType([], [hash.Hash], false)}, {prop: "Available", name: "Available", pkg: "", typ: $funcType([], [$Bool], false)}];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = hash.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ digestSizes = new sliceType([0, 16, 16, 20, 28, 32, 48, 64, 36, 20, 28, 32, 48, 64, 28, 32]);
+ hashes = $makeSlice(sliceType$1, 16);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["crypto/md5"] = (function() {
+ var $pkg = {}, $init, crypto, hash, runtime, digest, arrayType, arrayType$1, sliceType, arrayType$2, arrayType$3, arrayType$4, ptrType, ptrType$1, littleEndian, block, init, New, init$1, blockGeneric;
+ crypto = $packages["crypto"];
+ hash = $packages["hash"];
+ runtime = $packages["runtime"];
+ digest = $pkg.digest = $newType(0, $kindStruct, "md5.digest", true, "crypto/md5", false, function(s_, x_, nx_, len_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.s = arrayType.zero();
+ this.x = arrayType$1.zero();
+ this.nx = 0;
+ this.len = new $Uint64(0, 0);
+ return;
+ }
+ this.s = s_;
+ this.x = x_;
+ this.nx = nx_;
+ this.len = len_;
+ });
+ arrayType = $arrayType($Uint32, 4);
+ arrayType$1 = $arrayType($Uint8, 64);
+ sliceType = $sliceType($Uint8);
+ arrayType$2 = $arrayType($Uint8, 16);
+ arrayType$3 = $arrayType($Uint8, 4);
+ arrayType$4 = $arrayType($Uint32, 16);
+ ptrType = $ptrType(arrayType$4);
+ ptrType$1 = $ptrType(digest);
+ init = function() {
+ var $ptr;
+ crypto.RegisterHash(2, New);
+ };
+ digest.ptr.prototype.Reset = function() {
+ var $ptr, d;
+ d = this;
+ d.s[0] = 1732584193;
+ d.s[1] = 4023233417;
+ d.s[2] = 2562383102;
+ d.s[3] = 271733878;
+ d.nx = 0;
+ d.len = new $Uint64(0, 0);
+ };
+ digest.prototype.Reset = function() { return this.$val.Reset(); };
+ New = function() {
+ var $ptr, d;
+ d = new digest.ptr(arrayType.zero(), arrayType$1.zero(), 0, new $Uint64(0, 0));
+ d.Reset();
+ return d;
+ };
+ $pkg.New = New;
+ digest.ptr.prototype.Size = function() {
+ var $ptr, d;
+ d = this;
+ return 16;
+ };
+ digest.prototype.Size = function() { return this.$val.Size(); };
+ digest.ptr.prototype.BlockSize = function() {
+ var $ptr, d;
+ d = this;
+ return 64;
+ };
+ digest.prototype.BlockSize = function() { return this.$val.BlockSize(); };
+ digest.ptr.prototype.Write = function(p) {
+ var $ptr, d, err, n, n$1, nn, p, x, x$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; d = $f.d; err = $f.err; n = $f.n; n$1 = $f.n$1; nn = $f.nn; p = $f.p; x = $f.x; x$1 = $f.x$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ nn = 0;
+ err = $ifaceNil;
+ d = this;
+ nn = p.$length;
+ d.len = (x = d.len, x$1 = (new $Uint64(0, nn)), new $Uint64(x.$high + x$1.$high, x.$low + x$1.$low));
+ /* */ if (d.nx > 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (d.nx > 0) { */ case 1:
+ n = $copySlice($subslice(new sliceType(d.x), d.nx), p);
+ d.nx = d.nx + (n) >> 0;
+ /* */ if (d.nx === 64) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (d.nx === 64) { */ case 3:
+ $r = block(d, new sliceType(d.x)); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ d.nx = 0;
+ /* } */ case 4:
+ p = $subslice(p, n);
+ /* } */ case 2:
+ /* */ if (p.$length >= 64) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (p.$length >= 64) { */ case 6:
+ n$1 = (p.$length & ~63) >> 0;
+ $r = block(d, $subslice(p, 0, n$1)); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ p = $subslice(p, n$1);
+ /* } */ case 7:
+ if (p.$length > 0) {
+ d.nx = $copySlice(new sliceType(d.x), p);
+ }
+ $s = -1; return [nn, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: digest.ptr.prototype.Write }; } $f.$ptr = $ptr; $f.d = d; $f.err = err; $f.n = n; $f.n$1 = n$1; $f.nn = nn; $f.p = p; $f.x = x; $f.x$1 = x$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ digest.prototype.Write = function(p) { return this.$val.Write(p); };
+ digest.ptr.prototype.Sum = function(in$1) {
+ var $ptr, _r, d, d0, hash$1, in$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; d = $f.d; d0 = $f.d0; hash$1 = $f.hash$1; in$1 = $f.in$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d0 = this;
+ d = $clone(d0, digest);
+ _r = d.checkSum(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ hash$1 = $clone(_r, arrayType$2);
+ $s = -1; return $appendSlice(in$1, new sliceType(hash$1));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: digest.ptr.prototype.Sum }; } $f.$ptr = $ptr; $f._r = _r; $f.d = d; $f.d0 = d0; $f.hash$1 = hash$1; $f.in$1 = in$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ digest.prototype.Sum = function(in$1) { return this.$val.Sum(in$1); };
+ digest.ptr.prototype.checkSum = function() {
+ var $ptr, _i, _r, _r$1, _r$2, _ref, d, digest$1, i, i$1, len, s, tmp, x, x$1, x$2, x$3, x$4, x$5, x$6, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _ref = $f._ref; d = $f.d; digest$1 = $f.digest$1; i = $f.i; i$1 = $f.i$1; len = $f.len; s = $f.s; tmp = $f.tmp; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ len = d.len;
+ tmp = arrayType$1.zero();
+ tmp[0] = 128;
+ /* */ if ((x = $div64(len, new $Uint64(0, 64), true), (x.$high < 0 || (x.$high === 0 && x.$low < 56)))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ((x = $div64(len, new $Uint64(0, 64), true), (x.$high < 0 || (x.$high === 0 && x.$low < 56)))) { */ case 1:
+ _r = d.Write($subslice(new sliceType(tmp), 0, $flatten64((x$1 = $div64(len, new $Uint64(0, 64), true), new $Uint64(0 - x$1.$high, 56 - x$1.$low))))); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = 3; continue;
+ /* } else { */ case 2:
+ _r$1 = d.Write($subslice(new sliceType(tmp), 0, $flatten64((x$2 = $div64(len, new $Uint64(0, 64), true), new $Uint64(0 - x$2.$high, 120 - x$2.$low))))); /* */ $s = 5; case 5: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ /* } */ case 3:
+ len = $shiftLeft64(len, (3));
+ i = 0;
+ while (true) {
+ if (!(i < 8)) { break; }
+ ((i < 0 || i >= tmp.length) ? ($throwRuntimeError("index out of range"), undefined) : tmp[i] = (($shiftRightUint64(len, ((8 * i >>> 0))).$low << 24 >>> 24)));
+ i = i + (1) >>> 0;
+ }
+ _r$2 = d.Write($subslice(new sliceType(tmp), 0, 8)); /* */ $s = 6; case 6: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ if (!((d.nx === 0))) {
+ $panic(new $String("d.nx != 0"));
+ }
+ digest$1 = arrayType$2.zero();
+ _ref = d.s;
+ _i = 0;
+ while (true) {
+ if (!(_i < 4)) { break; }
+ i$1 = _i;
+ s = ((_i < 0 || _i >= _ref.length) ? ($throwRuntimeError("index out of range"), undefined) : _ref[_i]);
+ (x$3 = $imul(i$1, 4), ((x$3 < 0 || x$3 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$3] = ((s << 24 >>> 24))));
+ (x$4 = ($imul(i$1, 4)) + 1 >> 0, ((x$4 < 0 || x$4 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$4] = (((s >>> 8 >>> 0) << 24 >>> 24))));
+ (x$5 = ($imul(i$1, 4)) + 2 >> 0, ((x$5 < 0 || x$5 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$5] = (((s >>> 16 >>> 0) << 24 >>> 24))));
+ (x$6 = ($imul(i$1, 4)) + 3 >> 0, ((x$6 < 0 || x$6 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$6] = (((s >>> 24 >>> 0) << 24 >>> 24))));
+ _i++;
+ }
+ $s = -1; return digest$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: digest.ptr.prototype.checkSum }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._ref = _ref; $f.d = d; $f.digest$1 = digest$1; $f.i = i; $f.i$1 = i$1; $f.len = len; $f.s = s; $f.tmp = tmp; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ digest.prototype.checkSum = function() { return this.$val.checkSum(); };
+ init$1 = function() {
+ var $ptr, x, y;
+ x = 67305985;
+ y = $toNativeArray($kindUint8, [1, 2, 3, 4]);
+ littleEndian = $equal(x, y, arrayType$3);
+ };
+ blockGeneric = function(dig, p) {
+ var $ptr, X, _tmp, _tmp$1, _tmp$2, _tmp$3, a, aa, b, bb, c, cc, d, dd, dig, i, j, p, x, x$1, x$2, x$3, xbuf;
+ a = dig.s[0];
+ b = dig.s[1];
+ c = dig.s[2];
+ d = dig.s[3];
+ X = ptrType.nil;
+ xbuf = arrayType$4.zero();
+ while (true) {
+ if (!(p.$length >= 64)) { break; }
+ _tmp = a;
+ _tmp$1 = b;
+ _tmp$2 = c;
+ _tmp$3 = d;
+ aa = _tmp;
+ bb = _tmp$1;
+ cc = _tmp$2;
+ dd = _tmp$3;
+ if (false) {
+ X = (($sliceToArray(p)));
+ } else if (littleEndian && ((((($sliceToArray(p))) & 3) >>> 0) === 0)) {
+ X = (($sliceToArray(p)));
+ } else {
+ X = xbuf;
+ j = 0;
+ i = 0;
+ while (true) {
+ if (!(i < 16)) { break; }
+ (x$3 = i & 15, X.nilCheck, ((x$3 < 0 || x$3 >= X.length) ? ($throwRuntimeError("index out of range"), undefined) : X[x$3] = ((((((((((j < 0 || j >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + j]) >>> 0)) | ((((x = j + 1 >> 0, ((x < 0 || x >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x])) >>> 0)) << 8 >>> 0)) >>> 0) | ((((x$1 = j + 2 >> 0, ((x$1 < 0 || x$1 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$1])) >>> 0)) << 16 >>> 0)) >>> 0) | ((((x$2 = j + 3 >> 0, ((x$2 < 0 || x$2 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$2])) >>> 0)) << 24 >>> 0)) >>> 0)));
+ j = j + (4) >> 0;
+ i = i + (1) >> 0;
+ }
+ }
+ a = a + ((((((((((((c ^ d) >>> 0)) & b) >>> 0)) ^ d) >>> 0)) + (X.nilCheck, X[0]) >>> 0) + 3614090360 >>> 0)) >>> 0;
+ a = (((a << 7 >>> 0) | (a >>> 25 >>> 0)) >>> 0) + b >>> 0;
+ d = d + ((((((((((((b ^ c) >>> 0)) & a) >>> 0)) ^ c) >>> 0)) + (X.nilCheck, X[1]) >>> 0) + 3905402710 >>> 0)) >>> 0;
+ d = (((d << 12 >>> 0) | (d >>> 20 >>> 0)) >>> 0) + a >>> 0;
+ c = c + ((((((((((((a ^ b) >>> 0)) & d) >>> 0)) ^ b) >>> 0)) + (X.nilCheck, X[2]) >>> 0) + 606105819 >>> 0)) >>> 0;
+ c = (((c << 17 >>> 0) | (c >>> 15 >>> 0)) >>> 0) + d >>> 0;
+ b = b + ((((((((((((d ^ a) >>> 0)) & c) >>> 0)) ^ a) >>> 0)) + (X.nilCheck, X[3]) >>> 0) + 3250441966 >>> 0)) >>> 0;
+ b = (((b << 22 >>> 0) | (b >>> 10 >>> 0)) >>> 0) + c >>> 0;
+ a = a + ((((((((((((c ^ d) >>> 0)) & b) >>> 0)) ^ d) >>> 0)) + (X.nilCheck, X[4]) >>> 0) + 4118548399 >>> 0)) >>> 0;
+ a = (((a << 7 >>> 0) | (a >>> 25 >>> 0)) >>> 0) + b >>> 0;
+ d = d + ((((((((((((b ^ c) >>> 0)) & a) >>> 0)) ^ c) >>> 0)) + (X.nilCheck, X[5]) >>> 0) + 1200080426 >>> 0)) >>> 0;
+ d = (((d << 12 >>> 0) | (d >>> 20 >>> 0)) >>> 0) + a >>> 0;
+ c = c + ((((((((((((a ^ b) >>> 0)) & d) >>> 0)) ^ b) >>> 0)) + (X.nilCheck, X[6]) >>> 0) + 2821735955 >>> 0)) >>> 0;
+ c = (((c << 17 >>> 0) | (c >>> 15 >>> 0)) >>> 0) + d >>> 0;
+ b = b + ((((((((((((d ^ a) >>> 0)) & c) >>> 0)) ^ a) >>> 0)) + (X.nilCheck, X[7]) >>> 0) + 4249261313 >>> 0)) >>> 0;
+ b = (((b << 22 >>> 0) | (b >>> 10 >>> 0)) >>> 0) + c >>> 0;
+ a = a + ((((((((((((c ^ d) >>> 0)) & b) >>> 0)) ^ d) >>> 0)) + (X.nilCheck, X[8]) >>> 0) + 1770035416 >>> 0)) >>> 0;
+ a = (((a << 7 >>> 0) | (a >>> 25 >>> 0)) >>> 0) + b >>> 0;
+ d = d + ((((((((((((b ^ c) >>> 0)) & a) >>> 0)) ^ c) >>> 0)) + (X.nilCheck, X[9]) >>> 0) + 2336552879 >>> 0)) >>> 0;
+ d = (((d << 12 >>> 0) | (d >>> 20 >>> 0)) >>> 0) + a >>> 0;
+ c = c + ((((((((((((a ^ b) >>> 0)) & d) >>> 0)) ^ b) >>> 0)) + (X.nilCheck, X[10]) >>> 0) + 4294925233 >>> 0)) >>> 0;
+ c = (((c << 17 >>> 0) | (c >>> 15 >>> 0)) >>> 0) + d >>> 0;
+ b = b + ((((((((((((d ^ a) >>> 0)) & c) >>> 0)) ^ a) >>> 0)) + (X.nilCheck, X[11]) >>> 0) + 2304563134 >>> 0)) >>> 0;
+ b = (((b << 22 >>> 0) | (b >>> 10 >>> 0)) >>> 0) + c >>> 0;
+ a = a + ((((((((((((c ^ d) >>> 0)) & b) >>> 0)) ^ d) >>> 0)) + (X.nilCheck, X[12]) >>> 0) + 1804603682 >>> 0)) >>> 0;
+ a = (((a << 7 >>> 0) | (a >>> 25 >>> 0)) >>> 0) + b >>> 0;
+ d = d + ((((((((((((b ^ c) >>> 0)) & a) >>> 0)) ^ c) >>> 0)) + (X.nilCheck, X[13]) >>> 0) + 4254626195 >>> 0)) >>> 0;
+ d = (((d << 12 >>> 0) | (d >>> 20 >>> 0)) >>> 0) + a >>> 0;
+ c = c + ((((((((((((a ^ b) >>> 0)) & d) >>> 0)) ^ b) >>> 0)) + (X.nilCheck, X[14]) >>> 0) + 2792965006 >>> 0)) >>> 0;
+ c = (((c << 17 >>> 0) | (c >>> 15 >>> 0)) >>> 0) + d >>> 0;
+ b = b + ((((((((((((d ^ a) >>> 0)) & c) >>> 0)) ^ a) >>> 0)) + (X.nilCheck, X[15]) >>> 0) + 1236535329 >>> 0)) >>> 0;
+ b = (((b << 22 >>> 0) | (b >>> 10 >>> 0)) >>> 0) + c >>> 0;
+ a = a + ((((((((((((b ^ c) >>> 0)) & d) >>> 0)) ^ c) >>> 0)) + (X.nilCheck, X[1]) >>> 0) + 4129170786 >>> 0)) >>> 0;
+ a = (((a << 5 >>> 0) | (a >>> 27 >>> 0)) >>> 0) + b >>> 0;
+ d = d + ((((((((((((a ^ b) >>> 0)) & c) >>> 0)) ^ b) >>> 0)) + (X.nilCheck, X[6]) >>> 0) + 3225465664 >>> 0)) >>> 0;
+ d = (((d << 9 >>> 0) | (d >>> 23 >>> 0)) >>> 0) + a >>> 0;
+ c = c + ((((((((((((d ^ a) >>> 0)) & b) >>> 0)) ^ a) >>> 0)) + (X.nilCheck, X[11]) >>> 0) + 643717713 >>> 0)) >>> 0;
+ c = (((c << 14 >>> 0) | (c >>> 18 >>> 0)) >>> 0) + d >>> 0;
+ b = b + ((((((((((((c ^ d) >>> 0)) & a) >>> 0)) ^ d) >>> 0)) + (X.nilCheck, X[0]) >>> 0) + 3921069994 >>> 0)) >>> 0;
+ b = (((b << 20 >>> 0) | (b >>> 12 >>> 0)) >>> 0) + c >>> 0;
+ a = a + ((((((((((((b ^ c) >>> 0)) & d) >>> 0)) ^ c) >>> 0)) + (X.nilCheck, X[5]) >>> 0) + 3593408605 >>> 0)) >>> 0;
+ a = (((a << 5 >>> 0) | (a >>> 27 >>> 0)) >>> 0) + b >>> 0;
+ d = d + ((((((((((((a ^ b) >>> 0)) & c) >>> 0)) ^ b) >>> 0)) + (X.nilCheck, X[10]) >>> 0) + 38016083 >>> 0)) >>> 0;
+ d = (((d << 9 >>> 0) | (d >>> 23 >>> 0)) >>> 0) + a >>> 0;
+ c = c + ((((((((((((d ^ a) >>> 0)) & b) >>> 0)) ^ a) >>> 0)) + (X.nilCheck, X[15]) >>> 0) + 3634488961 >>> 0)) >>> 0;
+ c = (((c << 14 >>> 0) | (c >>> 18 >>> 0)) >>> 0) + d >>> 0;
+ b = b + ((((((((((((c ^ d) >>> 0)) & a) >>> 0)) ^ d) >>> 0)) + (X.nilCheck, X[4]) >>> 0) + 3889429448 >>> 0)) >>> 0;
+ b = (((b << 20 >>> 0) | (b >>> 12 >>> 0)) >>> 0) + c >>> 0;
+ a = a + ((((((((((((b ^ c) >>> 0)) & d) >>> 0)) ^ c) >>> 0)) + (X.nilCheck, X[9]) >>> 0) + 568446438 >>> 0)) >>> 0;
+ a = (((a << 5 >>> 0) | (a >>> 27 >>> 0)) >>> 0) + b >>> 0;
+ d = d + ((((((((((((a ^ b) >>> 0)) & c) >>> 0)) ^ b) >>> 0)) + (X.nilCheck, X[14]) >>> 0) + 3275163606 >>> 0)) >>> 0;
+ d = (((d << 9 >>> 0) | (d >>> 23 >>> 0)) >>> 0) + a >>> 0;
+ c = c + ((((((((((((d ^ a) >>> 0)) & b) >>> 0)) ^ a) >>> 0)) + (X.nilCheck, X[3]) >>> 0) + 4107603335 >>> 0)) >>> 0;
+ c = (((c << 14 >>> 0) | (c >>> 18 >>> 0)) >>> 0) + d >>> 0;
+ b = b + ((((((((((((c ^ d) >>> 0)) & a) >>> 0)) ^ d) >>> 0)) + (X.nilCheck, X[8]) >>> 0) + 1163531501 >>> 0)) >>> 0;
+ b = (((b << 20 >>> 0) | (b >>> 12 >>> 0)) >>> 0) + c >>> 0;
+ a = a + ((((((((((((b ^ c) >>> 0)) & d) >>> 0)) ^ c) >>> 0)) + (X.nilCheck, X[13]) >>> 0) + 2850285829 >>> 0)) >>> 0;
+ a = (((a << 5 >>> 0) | (a >>> 27 >>> 0)) >>> 0) + b >>> 0;
+ d = d + ((((((((((((a ^ b) >>> 0)) & c) >>> 0)) ^ b) >>> 0)) + (X.nilCheck, X[2]) >>> 0) + 4243563512 >>> 0)) >>> 0;
+ d = (((d << 9 >>> 0) | (d >>> 23 >>> 0)) >>> 0) + a >>> 0;
+ c = c + ((((((((((((d ^ a) >>> 0)) & b) >>> 0)) ^ a) >>> 0)) + (X.nilCheck, X[7]) >>> 0) + 1735328473 >>> 0)) >>> 0;
+ c = (((c << 14 >>> 0) | (c >>> 18 >>> 0)) >>> 0) + d >>> 0;
+ b = b + ((((((((((((c ^ d) >>> 0)) & a) >>> 0)) ^ d) >>> 0)) + (X.nilCheck, X[12]) >>> 0) + 2368359562 >>> 0)) >>> 0;
+ b = (((b << 20 >>> 0) | (b >>> 12 >>> 0)) >>> 0) + c >>> 0;
+ a = a + ((((((((b ^ c) >>> 0) ^ d) >>> 0)) + (X.nilCheck, X[5]) >>> 0) + 4294588738 >>> 0)) >>> 0;
+ a = (((a << 4 >>> 0) | (a >>> 28 >>> 0)) >>> 0) + b >>> 0;
+ d = d + ((((((((a ^ b) >>> 0) ^ c) >>> 0)) + (X.nilCheck, X[8]) >>> 0) + 2272392833 >>> 0)) >>> 0;
+ d = (((d << 11 >>> 0) | (d >>> 21 >>> 0)) >>> 0) + a >>> 0;
+ c = c + ((((((((d ^ a) >>> 0) ^ b) >>> 0)) + (X.nilCheck, X[11]) >>> 0) + 1839030562 >>> 0)) >>> 0;
+ c = (((c << 16 >>> 0) | (c >>> 16 >>> 0)) >>> 0) + d >>> 0;
+ b = b + ((((((((c ^ d) >>> 0) ^ a) >>> 0)) + (X.nilCheck, X[14]) >>> 0) + 4259657740 >>> 0)) >>> 0;
+ b = (((b << 23 >>> 0) | (b >>> 9 >>> 0)) >>> 0) + c >>> 0;
+ a = a + ((((((((b ^ c) >>> 0) ^ d) >>> 0)) + (X.nilCheck, X[1]) >>> 0) + 2763975236 >>> 0)) >>> 0;
+ a = (((a << 4 >>> 0) | (a >>> 28 >>> 0)) >>> 0) + b >>> 0;
+ d = d + ((((((((a ^ b) >>> 0) ^ c) >>> 0)) + (X.nilCheck, X[4]) >>> 0) + 1272893353 >>> 0)) >>> 0;
+ d = (((d << 11 >>> 0) | (d >>> 21 >>> 0)) >>> 0) + a >>> 0;
+ c = c + ((((((((d ^ a) >>> 0) ^ b) >>> 0)) + (X.nilCheck, X[7]) >>> 0) + 4139469664 >>> 0)) >>> 0;
+ c = (((c << 16 >>> 0) | (c >>> 16 >>> 0)) >>> 0) + d >>> 0;
+ b = b + ((((((((c ^ d) >>> 0) ^ a) >>> 0)) + (X.nilCheck, X[10]) >>> 0) + 3200236656 >>> 0)) >>> 0;
+ b = (((b << 23 >>> 0) | (b >>> 9 >>> 0)) >>> 0) + c >>> 0;
+ a = a + ((((((((b ^ c) >>> 0) ^ d) >>> 0)) + (X.nilCheck, X[13]) >>> 0) + 681279174 >>> 0)) >>> 0;
+ a = (((a << 4 >>> 0) | (a >>> 28 >>> 0)) >>> 0) + b >>> 0;
+ d = d + ((((((((a ^ b) >>> 0) ^ c) >>> 0)) + (X.nilCheck, X[0]) >>> 0) + 3936430074 >>> 0)) >>> 0;
+ d = (((d << 11 >>> 0) | (d >>> 21 >>> 0)) >>> 0) + a >>> 0;
+ c = c + ((((((((d ^ a) >>> 0) ^ b) >>> 0)) + (X.nilCheck, X[3]) >>> 0) + 3572445317 >>> 0)) >>> 0;
+ c = (((c << 16 >>> 0) | (c >>> 16 >>> 0)) >>> 0) + d >>> 0;
+ b = b + ((((((((c ^ d) >>> 0) ^ a) >>> 0)) + (X.nilCheck, X[6]) >>> 0) + 76029189 >>> 0)) >>> 0;
+ b = (((b << 23 >>> 0) | (b >>> 9 >>> 0)) >>> 0) + c >>> 0;
+ a = a + ((((((((b ^ c) >>> 0) ^ d) >>> 0)) + (X.nilCheck, X[9]) >>> 0) + 3654602809 >>> 0)) >>> 0;
+ a = (((a << 4 >>> 0) | (a >>> 28 >>> 0)) >>> 0) + b >>> 0;
+ d = d + ((((((((a ^ b) >>> 0) ^ c) >>> 0)) + (X.nilCheck, X[12]) >>> 0) + 3873151461 >>> 0)) >>> 0;
+ d = (((d << 11 >>> 0) | (d >>> 21 >>> 0)) >>> 0) + a >>> 0;
+ c = c + ((((((((d ^ a) >>> 0) ^ b) >>> 0)) + (X.nilCheck, X[15]) >>> 0) + 530742520 >>> 0)) >>> 0;
+ c = (((c << 16 >>> 0) | (c >>> 16 >>> 0)) >>> 0) + d >>> 0;
+ b = b + ((((((((c ^ d) >>> 0) ^ a) >>> 0)) + (X.nilCheck, X[2]) >>> 0) + 3299628645 >>> 0)) >>> 0;
+ b = (((b << 23 >>> 0) | (b >>> 9 >>> 0)) >>> 0) + c >>> 0;
+ a = a + ((((((c ^ (((b | (~d >>> 0)) >>> 0))) >>> 0)) + (X.nilCheck, X[0]) >>> 0) + 4096336452 >>> 0)) >>> 0;
+ a = (((a << 6 >>> 0) | (a >>> 26 >>> 0)) >>> 0) + b >>> 0;
+ d = d + ((((((b ^ (((a | (~c >>> 0)) >>> 0))) >>> 0)) + (X.nilCheck, X[7]) >>> 0) + 1126891415 >>> 0)) >>> 0;
+ d = (((d << 10 >>> 0) | (d >>> 22 >>> 0)) >>> 0) + a >>> 0;
+ c = c + ((((((a ^ (((d | (~b >>> 0)) >>> 0))) >>> 0)) + (X.nilCheck, X[14]) >>> 0) + 2878612391 >>> 0)) >>> 0;
+ c = (((c << 15 >>> 0) | (c >>> 17 >>> 0)) >>> 0) + d >>> 0;
+ b = b + ((((((d ^ (((c | (~a >>> 0)) >>> 0))) >>> 0)) + (X.nilCheck, X[5]) >>> 0) + 4237533241 >>> 0)) >>> 0;
+ b = (((b << 21 >>> 0) | (b >>> 11 >>> 0)) >>> 0) + c >>> 0;
+ a = a + ((((((c ^ (((b | (~d >>> 0)) >>> 0))) >>> 0)) + (X.nilCheck, X[12]) >>> 0) + 1700485571 >>> 0)) >>> 0;
+ a = (((a << 6 >>> 0) | (a >>> 26 >>> 0)) >>> 0) + b >>> 0;
+ d = d + ((((((b ^ (((a | (~c >>> 0)) >>> 0))) >>> 0)) + (X.nilCheck, X[3]) >>> 0) + 2399980690 >>> 0)) >>> 0;
+ d = (((d << 10 >>> 0) | (d >>> 22 >>> 0)) >>> 0) + a >>> 0;
+ c = c + ((((((a ^ (((d | (~b >>> 0)) >>> 0))) >>> 0)) + (X.nilCheck, X[10]) >>> 0) + 4293915773 >>> 0)) >>> 0;
+ c = (((c << 15 >>> 0) | (c >>> 17 >>> 0)) >>> 0) + d >>> 0;
+ b = b + ((((((d ^ (((c | (~a >>> 0)) >>> 0))) >>> 0)) + (X.nilCheck, X[1]) >>> 0) + 2240044497 >>> 0)) >>> 0;
+ b = (((b << 21 >>> 0) | (b >>> 11 >>> 0)) >>> 0) + c >>> 0;
+ a = a + ((((((c ^ (((b | (~d >>> 0)) >>> 0))) >>> 0)) + (X.nilCheck, X[8]) >>> 0) + 1873313359 >>> 0)) >>> 0;
+ a = (((a << 6 >>> 0) | (a >>> 26 >>> 0)) >>> 0) + b >>> 0;
+ d = d + ((((((b ^ (((a | (~c >>> 0)) >>> 0))) >>> 0)) + (X.nilCheck, X[15]) >>> 0) + 4264355552 >>> 0)) >>> 0;
+ d = (((d << 10 >>> 0) | (d >>> 22 >>> 0)) >>> 0) + a >>> 0;
+ c = c + ((((((a ^ (((d | (~b >>> 0)) >>> 0))) >>> 0)) + (X.nilCheck, X[6]) >>> 0) + 2734768916 >>> 0)) >>> 0;
+ c = (((c << 15 >>> 0) | (c >>> 17 >>> 0)) >>> 0) + d >>> 0;
+ b = b + ((((((d ^ (((c | (~a >>> 0)) >>> 0))) >>> 0)) + (X.nilCheck, X[13]) >>> 0) + 1309151649 >>> 0)) >>> 0;
+ b = (((b << 21 >>> 0) | (b >>> 11 >>> 0)) >>> 0) + c >>> 0;
+ a = a + ((((((c ^ (((b | (~d >>> 0)) >>> 0))) >>> 0)) + (X.nilCheck, X[4]) >>> 0) + 4149444226 >>> 0)) >>> 0;
+ a = (((a << 6 >>> 0) | (a >>> 26 >>> 0)) >>> 0) + b >>> 0;
+ d = d + ((((((b ^ (((a | (~c >>> 0)) >>> 0))) >>> 0)) + (X.nilCheck, X[11]) >>> 0) + 3174756917 >>> 0)) >>> 0;
+ d = (((d << 10 >>> 0) | (d >>> 22 >>> 0)) >>> 0) + a >>> 0;
+ c = c + ((((((a ^ (((d | (~b >>> 0)) >>> 0))) >>> 0)) + (X.nilCheck, X[2]) >>> 0) + 718787259 >>> 0)) >>> 0;
+ c = (((c << 15 >>> 0) | (c >>> 17 >>> 0)) >>> 0) + d >>> 0;
+ b = b + ((((((d ^ (((c | (~a >>> 0)) >>> 0))) >>> 0)) + (X.nilCheck, X[9]) >>> 0) + 3951481745 >>> 0)) >>> 0;
+ b = (((b << 21 >>> 0) | (b >>> 11 >>> 0)) >>> 0) + c >>> 0;
+ a = a + (aa) >>> 0;
+ b = b + (bb) >>> 0;
+ c = c + (cc) >>> 0;
+ d = d + (dd) >>> 0;
+ p = $subslice(p, 64);
+ }
+ dig.s[0] = a;
+ dig.s[1] = b;
+ dig.s[2] = c;
+ dig.s[3] = d;
+ };
+ ptrType$1.methods = [{prop: "Reset", name: "Reset", pkg: "", typ: $funcType([], [], false)}, {prop: "Size", name: "Size", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "BlockSize", name: "BlockSize", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}, {prop: "Sum", name: "Sum", pkg: "", typ: $funcType([sliceType], [sliceType], false)}, {prop: "checkSum", name: "checkSum", pkg: "crypto/md5", typ: $funcType([], [arrayType$2], false)}];
+ digest.init("crypto/md5", [{prop: "s", name: "s", exported: false, typ: arrayType, tag: ""}, {prop: "x", name: "x", exported: false, typ: arrayType$1, tag: ""}, {prop: "nx", name: "nx", exported: false, typ: $Int, tag: ""}, {prop: "len", name: "len", exported: false, typ: $Uint64, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = crypto.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hash.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ littleEndian = false;
+ block = blockGeneric;
+ init();
+ init$1();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["crypto/sha1"] = (function() {
+ var $pkg = {}, $init, crypto, hash, digest, arrayType, arrayType$1, sliceType, arrayType$2, arrayType$3, arrayType$4, ptrType, block, init, New, blockGeneric;
+ crypto = $packages["crypto"];
+ hash = $packages["hash"];
+ digest = $pkg.digest = $newType(0, $kindStruct, "sha1.digest", true, "crypto/sha1", false, function(h_, x_, nx_, len_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.h = arrayType.zero();
+ this.x = arrayType$1.zero();
+ this.nx = 0;
+ this.len = new $Uint64(0, 0);
+ return;
+ }
+ this.h = h_;
+ this.x = x_;
+ this.nx = nx_;
+ this.len = len_;
+ });
+ arrayType = $arrayType($Uint32, 5);
+ arrayType$1 = $arrayType($Uint8, 64);
+ sliceType = $sliceType($Uint8);
+ arrayType$2 = $arrayType($Uint8, 20);
+ arrayType$3 = $arrayType($Uint8, 8);
+ arrayType$4 = $arrayType($Uint32, 16);
+ ptrType = $ptrType(digest);
+ init = function() {
+ var $ptr;
+ crypto.RegisterHash(3, New);
+ };
+ digest.ptr.prototype.Reset = function() {
+ var $ptr, d;
+ d = this;
+ d.h[0] = 1732584193;
+ d.h[1] = 4023233417;
+ d.h[2] = 2562383102;
+ d.h[3] = 271733878;
+ d.h[4] = 3285377520;
+ d.nx = 0;
+ d.len = new $Uint64(0, 0);
+ };
+ digest.prototype.Reset = function() { return this.$val.Reset(); };
+ New = function() {
+ var $ptr, d;
+ d = new digest.ptr(arrayType.zero(), arrayType$1.zero(), 0, new $Uint64(0, 0));
+ d.Reset();
+ return d;
+ };
+ $pkg.New = New;
+ digest.ptr.prototype.Size = function() {
+ var $ptr, d;
+ d = this;
+ return 20;
+ };
+ digest.prototype.Size = function() { return this.$val.Size(); };
+ digest.ptr.prototype.BlockSize = function() {
+ var $ptr, d;
+ d = this;
+ return 64;
+ };
+ digest.prototype.BlockSize = function() { return this.$val.BlockSize(); };
+ digest.ptr.prototype.Write = function(p) {
+ var $ptr, d, err, n, n$1, nn, p, x, x$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; d = $f.d; err = $f.err; n = $f.n; n$1 = $f.n$1; nn = $f.nn; p = $f.p; x = $f.x; x$1 = $f.x$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ nn = 0;
+ err = $ifaceNil;
+ d = this;
+ nn = p.$length;
+ d.len = (x = d.len, x$1 = (new $Uint64(0, nn)), new $Uint64(x.$high + x$1.$high, x.$low + x$1.$low));
+ /* */ if (d.nx > 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (d.nx > 0) { */ case 1:
+ n = $copySlice($subslice(new sliceType(d.x), d.nx), p);
+ d.nx = d.nx + (n) >> 0;
+ /* */ if (d.nx === 64) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (d.nx === 64) { */ case 3:
+ $r = block(d, new sliceType(d.x)); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ d.nx = 0;
+ /* } */ case 4:
+ p = $subslice(p, n);
+ /* } */ case 2:
+ /* */ if (p.$length >= 64) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (p.$length >= 64) { */ case 6:
+ n$1 = (p.$length & ~63) >> 0;
+ $r = block(d, $subslice(p, 0, n$1)); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ p = $subslice(p, n$1);
+ /* } */ case 7:
+ if (p.$length > 0) {
+ d.nx = $copySlice(new sliceType(d.x), p);
+ }
+ $s = -1; return [nn, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: digest.ptr.prototype.Write }; } $f.$ptr = $ptr; $f.d = d; $f.err = err; $f.n = n; $f.n$1 = n$1; $f.nn = nn; $f.p = p; $f.x = x; $f.x$1 = x$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ digest.prototype.Write = function(p) { return this.$val.Write(p); };
+ digest.ptr.prototype.Sum = function(in$1) {
+ var $ptr, _r, d, d0, hash$1, in$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; d = $f.d; d0 = $f.d0; hash$1 = $f.hash$1; in$1 = $f.in$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d0 = this;
+ d = $clone(d0, digest);
+ _r = d.checkSum(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ hash$1 = $clone(_r, arrayType$2);
+ $s = -1; return $appendSlice(in$1, new sliceType(hash$1));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: digest.ptr.prototype.Sum }; } $f.$ptr = $ptr; $f._r = _r; $f.d = d; $f.d0 = d0; $f.hash$1 = hash$1; $f.in$1 = in$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ digest.prototype.Sum = function(in$1) { return this.$val.Sum(in$1); };
+ digest.ptr.prototype.checkSum = function() {
+ var $ptr, _i, _r, _r$1, _r$2, _ref, d, digest$1, i, i$1, len, s, tmp, x, x$1, x$2, x$3, x$4, x$5, x$6, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _ref = $f._ref; d = $f.d; digest$1 = $f.digest$1; i = $f.i; i$1 = $f.i$1; len = $f.len; s = $f.s; tmp = $f.tmp; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ len = d.len;
+ tmp = arrayType$1.zero();
+ tmp[0] = 128;
+ /* */ if ((x = $div64(len, new $Uint64(0, 64), true), (x.$high < 0 || (x.$high === 0 && x.$low < 56)))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ((x = $div64(len, new $Uint64(0, 64), true), (x.$high < 0 || (x.$high === 0 && x.$low < 56)))) { */ case 1:
+ _r = d.Write($subslice(new sliceType(tmp), 0, $flatten64((x$1 = $div64(len, new $Uint64(0, 64), true), new $Uint64(0 - x$1.$high, 56 - x$1.$low))))); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = 3; continue;
+ /* } else { */ case 2:
+ _r$1 = d.Write($subslice(new sliceType(tmp), 0, $flatten64((x$2 = $div64(len, new $Uint64(0, 64), true), new $Uint64(0 - x$2.$high, 120 - x$2.$low))))); /* */ $s = 5; case 5: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ /* } */ case 3:
+ len = $shiftLeft64(len, (3));
+ i = 0;
+ while (true) {
+ if (!(i < 8)) { break; }
+ ((i < 0 || i >= tmp.length) ? ($throwRuntimeError("index out of range"), undefined) : tmp[i] = (($shiftRightUint64(len, ((56 - (8 * i >>> 0) >>> 0))).$low << 24 >>> 24)));
+ i = i + (1) >>> 0;
+ }
+ _r$2 = d.Write($subslice(new sliceType(tmp), 0, 8)); /* */ $s = 6; case 6: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ if (!((d.nx === 0))) {
+ $panic(new $String("d.nx != 0"));
+ }
+ digest$1 = arrayType$2.zero();
+ _ref = d.h;
+ _i = 0;
+ while (true) {
+ if (!(_i < 5)) { break; }
+ i$1 = _i;
+ s = ((_i < 0 || _i >= _ref.length) ? ($throwRuntimeError("index out of range"), undefined) : _ref[_i]);
+ (x$3 = $imul(i$1, 4), ((x$3 < 0 || x$3 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$3] = (((s >>> 24 >>> 0) << 24 >>> 24))));
+ (x$4 = ($imul(i$1, 4)) + 1 >> 0, ((x$4 < 0 || x$4 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$4] = (((s >>> 16 >>> 0) << 24 >>> 24))));
+ (x$5 = ($imul(i$1, 4)) + 2 >> 0, ((x$5 < 0 || x$5 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$5] = (((s >>> 8 >>> 0) << 24 >>> 24))));
+ (x$6 = ($imul(i$1, 4)) + 3 >> 0, ((x$6 < 0 || x$6 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$6] = ((s << 24 >>> 24))));
+ _i++;
+ }
+ $s = -1; return digest$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: digest.ptr.prototype.checkSum }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._ref = _ref; $f.d = d; $f.digest$1 = digest$1; $f.i = i; $f.i$1 = i$1; $f.len = len; $f.s = s; $f.tmp = tmp; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ digest.prototype.checkSum = function() { return this.$val.checkSum(); };
+ digest.ptr.prototype.ConstantTimeSum = function(in$1) {
+ var $ptr, _r, d, d0, hash$1, in$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; d = $f.d; d0 = $f.d0; hash$1 = $f.hash$1; in$1 = $f.in$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d0 = this;
+ d = $clone(d0, digest);
+ _r = d.constSum(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ hash$1 = $clone(_r, arrayType$2);
+ $s = -1; return $appendSlice(in$1, new sliceType(hash$1));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: digest.ptr.prototype.ConstantTimeSum }; } $f.$ptr = $ptr; $f._r = _r; $f.d = d; $f.d0 = d0; $f.hash$1 = hash$1; $f.in$1 = in$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ digest.prototype.ConstantTimeSum = function(in$1) { return this.$val.ConstantTimeSum(in$1); };
+ digest.ptr.prototype.constSum = function() {
+ var $ptr, _i, _i$1, _index, _index$1, _index$2, _index$3, _ref, _ref$1, d, digest$1, i, i$1, i$2, i$3, i$4, l, length, mask, mask1b, nx, s, s$1, separator, t, x, x$1, x$10, x$11, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _i$1 = $f._i$1; _index = $f._index; _index$1 = $f._index$1; _index$2 = $f._index$2; _index$3 = $f._index$3; _ref = $f._ref; _ref$1 = $f._ref$1; d = $f.d; digest$1 = $f.digest$1; i = $f.i; i$1 = $f.i$1; i$2 = $f.i$2; i$3 = $f.i$3; i$4 = $f.i$4; l = $f.l; length = $f.length; mask = $f.mask; mask1b = $f.mask1b; nx = $f.nx; s = $f.s; s$1 = $f.s$1; separator = $f.separator; t = $f.t; x = $f.x; x$1 = $f.x$1; x$10 = $f.x$10; x$11 = $f.x$11; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; x$8 = $f.x$8; x$9 = $f.x$9; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ length = arrayType$3.zero();
+ l = $shiftLeft64(d.len, 3);
+ i = 0;
+ while (true) {
+ if (!(i < 8)) { break; }
+ ((i < 0 || i >= length.length) ? ($throwRuntimeError("index out of range"), undefined) : length[i] = (($shiftRightUint64(l, ((56 - (8 * i >>> 0) >>> 0))).$low << 24 >>> 24)));
+ i = i + (1) >>> 0;
+ }
+ nx = ((d.nx << 24 >>> 24));
+ t = nx - 56 << 24 >>> 24;
+ mask1b = (((((t << 24 >> 24)) >> 7 << 24 >> 24) << 24 >>> 24));
+ separator = 128;
+ i$1 = 0;
+ while (true) {
+ if (!(i$1 < 64)) { break; }
+ mask = ((((((i$1 - nx << 24 >>> 24) << 24 >> 24)) >> 7 << 24 >> 24) << 24 >>> 24));
+ (x$1 = d.x, ((i$1 < 0 || i$1 >= x$1.length) ? ($throwRuntimeError("index out of range"), undefined) : x$1[i$1] = ((((((~mask << 24 >>> 24) & separator) >>> 0)) | (((mask & (x = d.x, ((i$1 < 0 || i$1 >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[i$1]))) >>> 0))) >>> 0)));
+ separator = (separator & (mask)) >>> 0;
+ if (i$1 >= 56) {
+ (x$4 = d.x, ((i$1 < 0 || i$1 >= x$4.length) ? ($throwRuntimeError("index out of range"), undefined) : x$4[i$1] = (((x$2 = d.x, ((i$1 < 0 || i$1 >= x$2.length) ? ($throwRuntimeError("index out of range"), undefined) : x$2[i$1])) | (((mask1b & (x$3 = i$1 - 56 << 24 >>> 24, ((x$3 < 0 || x$3 >= length.length) ? ($throwRuntimeError("index out of range"), undefined) : length[x$3]))) >>> 0))) >>> 0)));
+ }
+ i$1 = i$1 + (1) << 24 >>> 24;
+ }
+ $r = block(d, new sliceType(d.x)); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ digest$1 = arrayType$2.zero();
+ _ref = d.h;
+ _i = 0;
+ while (true) {
+ if (!(_i < 5)) { break; }
+ i$2 = _i;
+ s = ((_i < 0 || _i >= _ref.length) ? ($throwRuntimeError("index out of range"), undefined) : _ref[_i]);
+ (x$5 = $imul(i$2, 4), ((x$5 < 0 || x$5 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$5] = ((mask1b & (((s >>> 24 >>> 0) << 24 >>> 24))) >>> 0)));
+ (x$6 = ($imul(i$2, 4)) + 1 >> 0, ((x$6 < 0 || x$6 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$6] = ((mask1b & (((s >>> 16 >>> 0) << 24 >>> 24))) >>> 0)));
+ (x$7 = ($imul(i$2, 4)) + 2 >> 0, ((x$7 < 0 || x$7 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$7] = ((mask1b & (((s >>> 8 >>> 0) << 24 >>> 24))) >>> 0)));
+ (x$8 = ($imul(i$2, 4)) + 3 >> 0, ((x$8 < 0 || x$8 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$8] = ((mask1b & ((s << 24 >>> 24))) >>> 0)));
+ _i++;
+ }
+ i$3 = 0;
+ while (true) {
+ if (!(i$3 < 64)) { break; }
+ if (i$3 < 56) {
+ (x$9 = d.x, ((i$3 < 0 || i$3 >= x$9.length) ? ($throwRuntimeError("index out of range"), undefined) : x$9[i$3] = separator));
+ separator = 0;
+ } else {
+ (x$11 = d.x, ((i$3 < 0 || i$3 >= x$11.length) ? ($throwRuntimeError("index out of range"), undefined) : x$11[i$3] = (x$10 = i$3 - 56 << 24 >>> 24, ((x$10 < 0 || x$10 >= length.length) ? ($throwRuntimeError("index out of range"), undefined) : length[x$10]))));
+ }
+ i$3 = i$3 + (1) << 24 >>> 24;
+ }
+ $r = block(d, new sliceType(d.x)); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _ref$1 = d.h;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < 5)) { break; }
+ i$4 = _i$1;
+ s$1 = ((_i$1 < 0 || _i$1 >= _ref$1.length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1[_i$1]);
+ _index = $imul(i$4, 4);
+ ((_index < 0 || _index >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[_index] = ((((_index < 0 || _index >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[_index]) | ((((~mask1b << 24 >>> 24) & (((s$1 >>> 24 >>> 0) << 24 >>> 24))) >>> 0))) >>> 0));
+ _index$1 = ($imul(i$4, 4)) + 1 >> 0;
+ ((_index$1 < 0 || _index$1 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[_index$1] = ((((_index$1 < 0 || _index$1 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[_index$1]) | ((((~mask1b << 24 >>> 24) & (((s$1 >>> 16 >>> 0) << 24 >>> 24))) >>> 0))) >>> 0));
+ _index$2 = ($imul(i$4, 4)) + 2 >> 0;
+ ((_index$2 < 0 || _index$2 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[_index$2] = ((((_index$2 < 0 || _index$2 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[_index$2]) | ((((~mask1b << 24 >>> 24) & (((s$1 >>> 8 >>> 0) << 24 >>> 24))) >>> 0))) >>> 0));
+ _index$3 = ($imul(i$4, 4)) + 3 >> 0;
+ ((_index$3 < 0 || _index$3 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[_index$3] = ((((_index$3 < 0 || _index$3 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[_index$3]) | ((((~mask1b << 24 >>> 24) & ((s$1 << 24 >>> 24))) >>> 0))) >>> 0));
+ _i$1++;
+ }
+ $s = -1; return digest$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: digest.ptr.prototype.constSum }; } $f.$ptr = $ptr; $f._i = _i; $f._i$1 = _i$1; $f._index = _index; $f._index$1 = _index$1; $f._index$2 = _index$2; $f._index$3 = _index$3; $f._ref = _ref; $f._ref$1 = _ref$1; $f.d = d; $f.digest$1 = digest$1; $f.i = i; $f.i$1 = i$1; $f.i$2 = i$2; $f.i$3 = i$3; $f.i$4 = i$4; $f.l = l; $f.length = length; $f.mask = mask; $f.mask1b = mask1b; $f.nx = nx; $f.s = s; $f.s$1 = s$1; $f.separator = separator; $f.t = t; $f.x = x; $f.x$1 = x$1; $f.x$10 = x$10; $f.x$11 = x$11; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.x$8 = x$8; $f.x$9 = x$9; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ digest.prototype.constSum = function() { return this.$val.constSum(); };
+ blockGeneric = function(dig, p) {
+ var $ptr, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$18, _tmp$19, _tmp$2, _tmp$20, _tmp$21, _tmp$22, _tmp$23, _tmp$24, _tmp$25, _tmp$26, _tmp$27, _tmp$28, _tmp$29, _tmp$3, _tmp$30, _tmp$31, _tmp$32, _tmp$33, _tmp$34, _tmp$35, _tmp$36, _tmp$37, _tmp$38, _tmp$39, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, a, a5, a5$1, a5$2, a5$3, a5$4, b, b30, b30$1, b30$2, b30$3, b30$4, c, d, dig, e, f, f$1, f$2, f$3, f$4, h0, h1, h2, h3, h4, i, i$1, j, p, t, t$1, t$2, t$3, t$4, tmp, tmp$1, tmp$2, tmp$3, w, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$19, x$2, x$20, x$21, x$22, x$23, x$24, x$25, x$26, x$27, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ w = arrayType$4.zero();
+ _tmp = dig.h[0];
+ _tmp$1 = dig.h[1];
+ _tmp$2 = dig.h[2];
+ _tmp$3 = dig.h[3];
+ _tmp$4 = dig.h[4];
+ h0 = _tmp;
+ h1 = _tmp$1;
+ h2 = _tmp$2;
+ h3 = _tmp$3;
+ h4 = _tmp$4;
+ while (true) {
+ if (!(p.$length >= 64)) { break; }
+ i = 0;
+ while (true) {
+ if (!(i < 16)) { break; }
+ j = $imul(i, 4);
+ ((i < 0 || i >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[i] = (((((((((((j < 0 || j >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + j]) >>> 0)) << 24 >>> 0) | ((((x = j + 1 >> 0, ((x < 0 || x >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x])) >>> 0)) << 16 >>> 0)) >>> 0) | ((((x$1 = j + 2 >> 0, ((x$1 < 0 || x$1 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$1])) >>> 0)) << 8 >>> 0)) >>> 0) | (((x$2 = j + 3 >> 0, ((x$2 < 0 || x$2 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$2])) >>> 0))) >>> 0));
+ i = i + (1) >> 0;
+ }
+ _tmp$5 = h0;
+ _tmp$6 = h1;
+ _tmp$7 = h2;
+ _tmp$8 = h3;
+ _tmp$9 = h4;
+ a = _tmp$5;
+ b = _tmp$6;
+ c = _tmp$7;
+ d = _tmp$8;
+ e = _tmp$9;
+ i$1 = 0;
+ while (true) {
+ if (!(i$1 < 16)) { break; }
+ f = (((b & c) >>> 0) | ((((~b >>> 0)) & d) >>> 0)) >>> 0;
+ a5 = ((a << 5 >>> 0) | (a >>> 27 >>> 0)) >>> 0;
+ b30 = ((b << 30 >>> 0) | (b >>> 2 >>> 0)) >>> 0;
+ t = (((a5 + f >>> 0) + e >>> 0) + (x$3 = i$1 & 15, ((x$3 < 0 || x$3 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$3])) >>> 0) + 1518500249 >>> 0;
+ _tmp$10 = t;
+ _tmp$11 = a;
+ _tmp$12 = b30;
+ _tmp$13 = c;
+ _tmp$14 = d;
+ a = _tmp$10;
+ b = _tmp$11;
+ c = _tmp$12;
+ d = _tmp$13;
+ e = _tmp$14;
+ i$1 = i$1 + (1) >> 0;
+ }
+ while (true) {
+ if (!(i$1 < 20)) { break; }
+ tmp = ((((((x$4 = ((i$1 - 3 >> 0)) & 15, ((x$4 < 0 || x$4 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$4])) ^ (x$5 = ((i$1 - 8 >> 0)) & 15, ((x$5 < 0 || x$5 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$5]))) >>> 0) ^ (x$6 = ((i$1 - 14 >> 0)) & 15, ((x$6 < 0 || x$6 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$6]))) >>> 0) ^ (x$7 = (i$1) & 15, ((x$7 < 0 || x$7 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$7]))) >>> 0;
+ (x$8 = i$1 & 15, ((x$8 < 0 || x$8 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$8] = (((tmp << 1 >>> 0) | (tmp >>> 31 >>> 0)) >>> 0)));
+ f$1 = (((b & c) >>> 0) | ((((~b >>> 0)) & d) >>> 0)) >>> 0;
+ a5$1 = ((a << 5 >>> 0) | (a >>> 27 >>> 0)) >>> 0;
+ b30$1 = ((b << 30 >>> 0) | (b >>> 2 >>> 0)) >>> 0;
+ t$1 = (((a5$1 + f$1 >>> 0) + e >>> 0) + (x$9 = i$1 & 15, ((x$9 < 0 || x$9 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$9])) >>> 0) + 1518500249 >>> 0;
+ _tmp$15 = t$1;
+ _tmp$16 = a;
+ _tmp$17 = b30$1;
+ _tmp$18 = c;
+ _tmp$19 = d;
+ a = _tmp$15;
+ b = _tmp$16;
+ c = _tmp$17;
+ d = _tmp$18;
+ e = _tmp$19;
+ i$1 = i$1 + (1) >> 0;
+ }
+ while (true) {
+ if (!(i$1 < 40)) { break; }
+ tmp$1 = ((((((x$10 = ((i$1 - 3 >> 0)) & 15, ((x$10 < 0 || x$10 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$10])) ^ (x$11 = ((i$1 - 8 >> 0)) & 15, ((x$11 < 0 || x$11 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$11]))) >>> 0) ^ (x$12 = ((i$1 - 14 >> 0)) & 15, ((x$12 < 0 || x$12 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$12]))) >>> 0) ^ (x$13 = (i$1) & 15, ((x$13 < 0 || x$13 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$13]))) >>> 0;
+ (x$14 = i$1 & 15, ((x$14 < 0 || x$14 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$14] = (((tmp$1 << 1 >>> 0) | (tmp$1 >>> 31 >>> 0)) >>> 0)));
+ f$2 = (((b ^ c) >>> 0) ^ d) >>> 0;
+ a5$2 = ((a << 5 >>> 0) | (a >>> 27 >>> 0)) >>> 0;
+ b30$2 = ((b << 30 >>> 0) | (b >>> 2 >>> 0)) >>> 0;
+ t$2 = (((a5$2 + f$2 >>> 0) + e >>> 0) + (x$15 = i$1 & 15, ((x$15 < 0 || x$15 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$15])) >>> 0) + 1859775393 >>> 0;
+ _tmp$20 = t$2;
+ _tmp$21 = a;
+ _tmp$22 = b30$2;
+ _tmp$23 = c;
+ _tmp$24 = d;
+ a = _tmp$20;
+ b = _tmp$21;
+ c = _tmp$22;
+ d = _tmp$23;
+ e = _tmp$24;
+ i$1 = i$1 + (1) >> 0;
+ }
+ while (true) {
+ if (!(i$1 < 60)) { break; }
+ tmp$2 = ((((((x$16 = ((i$1 - 3 >> 0)) & 15, ((x$16 < 0 || x$16 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$16])) ^ (x$17 = ((i$1 - 8 >> 0)) & 15, ((x$17 < 0 || x$17 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$17]))) >>> 0) ^ (x$18 = ((i$1 - 14 >> 0)) & 15, ((x$18 < 0 || x$18 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$18]))) >>> 0) ^ (x$19 = (i$1) & 15, ((x$19 < 0 || x$19 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$19]))) >>> 0;
+ (x$20 = i$1 & 15, ((x$20 < 0 || x$20 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$20] = (((tmp$2 << 1 >>> 0) | (tmp$2 >>> 31 >>> 0)) >>> 0)));
+ f$3 = (((((((b | c) >>> 0)) & d) >>> 0)) | (((b & c) >>> 0))) >>> 0;
+ a5$3 = ((a << 5 >>> 0) | (a >>> 27 >>> 0)) >>> 0;
+ b30$3 = ((b << 30 >>> 0) | (b >>> 2 >>> 0)) >>> 0;
+ t$3 = (((a5$3 + f$3 >>> 0) + e >>> 0) + (x$21 = i$1 & 15, ((x$21 < 0 || x$21 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$21])) >>> 0) + 2400959708 >>> 0;
+ _tmp$25 = t$3;
+ _tmp$26 = a;
+ _tmp$27 = b30$3;
+ _tmp$28 = c;
+ _tmp$29 = d;
+ a = _tmp$25;
+ b = _tmp$26;
+ c = _tmp$27;
+ d = _tmp$28;
+ e = _tmp$29;
+ i$1 = i$1 + (1) >> 0;
+ }
+ while (true) {
+ if (!(i$1 < 80)) { break; }
+ tmp$3 = ((((((x$22 = ((i$1 - 3 >> 0)) & 15, ((x$22 < 0 || x$22 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$22])) ^ (x$23 = ((i$1 - 8 >> 0)) & 15, ((x$23 < 0 || x$23 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$23]))) >>> 0) ^ (x$24 = ((i$1 - 14 >> 0)) & 15, ((x$24 < 0 || x$24 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$24]))) >>> 0) ^ (x$25 = (i$1) & 15, ((x$25 < 0 || x$25 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$25]))) >>> 0;
+ (x$26 = i$1 & 15, ((x$26 < 0 || x$26 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$26] = (((tmp$3 << 1 >>> 0) | (tmp$3 >>> 31 >>> 0)) >>> 0)));
+ f$4 = (((b ^ c) >>> 0) ^ d) >>> 0;
+ a5$4 = ((a << 5 >>> 0) | (a >>> 27 >>> 0)) >>> 0;
+ b30$4 = ((b << 30 >>> 0) | (b >>> 2 >>> 0)) >>> 0;
+ t$4 = (((a5$4 + f$4 >>> 0) + e >>> 0) + (x$27 = i$1 & 15, ((x$27 < 0 || x$27 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$27])) >>> 0) + 3395469782 >>> 0;
+ _tmp$30 = t$4;
+ _tmp$31 = a;
+ _tmp$32 = b30$4;
+ _tmp$33 = c;
+ _tmp$34 = d;
+ a = _tmp$30;
+ b = _tmp$31;
+ c = _tmp$32;
+ d = _tmp$33;
+ e = _tmp$34;
+ i$1 = i$1 + (1) >> 0;
+ }
+ h0 = h0 + (a) >>> 0;
+ h1 = h1 + (b) >>> 0;
+ h2 = h2 + (c) >>> 0;
+ h3 = h3 + (d) >>> 0;
+ h4 = h4 + (e) >>> 0;
+ p = $subslice(p, 64);
+ }
+ _tmp$35 = h0;
+ _tmp$36 = h1;
+ _tmp$37 = h2;
+ _tmp$38 = h3;
+ _tmp$39 = h4;
+ dig.h[0] = _tmp$35;
+ dig.h[1] = _tmp$36;
+ dig.h[2] = _tmp$37;
+ dig.h[3] = _tmp$38;
+ dig.h[4] = _tmp$39;
+ };
+ ptrType.methods = [{prop: "Reset", name: "Reset", pkg: "", typ: $funcType([], [], false)}, {prop: "Size", name: "Size", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "BlockSize", name: "BlockSize", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType], [$Int, $error], false)}, {prop: "Sum", name: "Sum", pkg: "", typ: $funcType([sliceType], [sliceType], false)}, {prop: "checkSum", name: "checkSum", pkg: "crypto/sha1", typ: $funcType([], [arrayType$2], false)}, {prop: "ConstantTimeSum", name: "ConstantTimeSum", pkg: "", typ: $funcType([sliceType], [sliceType], false)}, {prop: "constSum", name: "constSum", pkg: "crypto/sha1", typ: $funcType([], [arrayType$2], false)}];
+ digest.init("crypto/sha1", [{prop: "h", name: "h", exported: false, typ: arrayType, tag: ""}, {prop: "x", name: "x", exported: false, typ: arrayType$1, tag: ""}, {prop: "nx", name: "nx", exported: false, typ: $Int, tag: ""}, {prop: "len", name: "len", exported: false, typ: $Uint64, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = crypto.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hash.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ block = blockGeneric;
+ init();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["context"] = (function() {
+ var $pkg = {}, $init, errors, fmt, reflect, sync, time, emptyCtx, ptrType, ptrType$1, structType, chanType, background, todo;
+ errors = $packages["errors"];
+ fmt = $packages["fmt"];
+ reflect = $packages["reflect"];
+ sync = $packages["sync"];
+ time = $packages["time"];
+ emptyCtx = $pkg.emptyCtx = $newType(4, $kindInt, "context.emptyCtx", true, "context", false, null);
+ ptrType = $ptrType(emptyCtx);
+ ptrType$1 = $ptrType(time.Location);
+ structType = $structType("", []);
+ chanType = $chanType(structType, false, true);
+ $ptrType(emptyCtx).prototype.Deadline = function() {
+ var $ptr, deadline, ok;
+ deadline = new time.Time.ptr(new $Int64(0, 0), 0, ptrType$1.nil);
+ ok = false;
+ return [deadline, ok];
+ };
+ $ptrType(emptyCtx).prototype.Done = function() {
+ var $ptr;
+ return $chanNil;
+ };
+ $ptrType(emptyCtx).prototype.Err = function() {
+ var $ptr;
+ return $ifaceNil;
+ };
+ $ptrType(emptyCtx).prototype.Value = function(key) {
+ var $ptr, key;
+ return $ifaceNil;
+ };
+ $ptrType(emptyCtx).prototype.String = function() {
+ var $ptr, _1, e;
+ e = this;
+ _1 = e;
+ if (_1 === (background)) {
+ return "context.Background";
+ } else if (_1 === (todo)) {
+ return "context.TODO";
+ }
+ return "unknown empty Context";
+ };
+ ptrType.methods = [{prop: "Deadline", name: "Deadline", pkg: "", typ: $funcType([], [time.Time, $Bool], false)}, {prop: "Done", name: "Done", pkg: "", typ: $funcType([], [chanType], false)}, {prop: "Err", name: "Err", pkg: "", typ: $funcType([], [$error], false)}, {prop: "Value", name: "Value", pkg: "", typ: $funcType([$emptyInterface], [$emptyInterface], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = errors.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = reflect.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = time.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $pkg.Canceled = errors.New("context canceled");
+ background = $newDataPointer(0, ptrType);
+ todo = $newDataPointer(0, ptrType);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["database/sql/driver"] = (function() {
+ var $pkg = {}, $init, context, errors, fmt, reflect, strconv, time, Value, Valuer, ptrType, valuerReflectType, _r;
+ context = $packages["context"];
+ errors = $packages["errors"];
+ fmt = $packages["fmt"];
+ reflect = $packages["reflect"];
+ strconv = $packages["strconv"];
+ time = $packages["time"];
+ Value = $pkg.Value = $newType(8, $kindInterface, "driver.Value", true, "database/sql/driver", true, null);
+ Valuer = $pkg.Valuer = $newType(8, $kindInterface, "driver.Valuer", true, "database/sql/driver", true, null);
+ ptrType = $ptrType(Valuer);
+ Value.init([]);
+ Valuer.init([{prop: "Value", name: "Value", pkg: "", typ: $funcType([], [Value, $error], false)}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = context.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = reflect.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = time.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $pkg.ErrSkip = errors.New("driver: skip fast-path; continue as if unimplemented");
+ $pkg.ErrBadConn = errors.New("driver: bad connection");
+ _r = reflect.TypeOf((ptrType.nil)).Elem(); /* */ $s = 7; case 7: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ valuerReflectType = _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["encoding/hex"] = (function() {
+ var $pkg = {}, $init, bytes, errors, fmt, io, InvalidByteError, sliceType, sliceType$1, hextable, EncodedLen, Encode, Decode, fromHexChar, EncodeToString;
+ bytes = $packages["bytes"];
+ errors = $packages["errors"];
+ fmt = $packages["fmt"];
+ io = $packages["io"];
+ InvalidByteError = $pkg.InvalidByteError = $newType(1, $kindUint8, "hex.InvalidByteError", true, "encoding/hex", true, null);
+ sliceType = $sliceType($emptyInterface);
+ sliceType$1 = $sliceType($Uint8);
+ EncodedLen = function(n) {
+ var $ptr, n;
+ return $imul(n, 2);
+ };
+ $pkg.EncodedLen = EncodedLen;
+ Encode = function(dst, src) {
+ var $ptr, _i, _ref, dst, i, src, v, x, x$1, x$2, x$3;
+ _ref = src;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ v = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ (x$1 = $imul(i, 2), ((x$1 < 0 || x$1 >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + x$1] = (x = v >>> 4 << 24 >>> 24, ((x < 0 || x >= hextable.length) ? ($throwRuntimeError("index out of range"), undefined) : hextable[x]))));
+ (x$3 = ($imul(i, 2)) + 1 >> 0, ((x$3 < 0 || x$3 >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + x$3] = (x$2 = (v & 15) >>> 0, ((x$2 < 0 || x$2 >= hextable.length) ? ($throwRuntimeError("index out of range"), undefined) : hextable[x$2]))));
+ _i++;
+ }
+ return $imul(src.$length, 2);
+ };
+ $pkg.Encode = Encode;
+ InvalidByteError.prototype.Error = function() {
+ var $ptr, _r, e, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; e = $f.e; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this.$val;
+ _r = fmt.Sprintf("encoding/hex: invalid byte: %#U", new sliceType([new $Int32(((e >> 0)))])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: InvalidByteError.prototype.Error }; } $f.$ptr = $ptr; $f._r = _r; $f.e = e; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(InvalidByteError).prototype.Error = function() { return new InvalidByteError(this.$get()).Error(); };
+ Decode = function(dst, src) {
+ var $ptr, _q, _q$1, _r, _tuple, _tuple$1, a, b, dst, i, ok, src, x, x$1, x$2, x$3;
+ if ((_r = src.$length % 2, _r === _r ? _r : $throwRuntimeError("integer divide by zero")) === 1) {
+ return [0, $pkg.ErrLength];
+ }
+ i = 0;
+ while (true) {
+ if (!(i < (_q = src.$length / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")))) { break; }
+ _tuple = fromHexChar((x = $imul(i, 2), ((x < 0 || x >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + x])));
+ a = _tuple[0];
+ ok = _tuple[1];
+ if (!ok) {
+ return [0, new InvalidByteError((((x$1 = $imul(i, 2), ((x$1 < 0 || x$1 >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + x$1])) << 24 >>> 24)))];
+ }
+ _tuple$1 = fromHexChar((x$2 = ($imul(i, 2)) + 1 >> 0, ((x$2 < 0 || x$2 >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + x$2])));
+ b = _tuple$1[0];
+ ok = _tuple$1[1];
+ if (!ok) {
+ return [0, new InvalidByteError((((x$3 = ($imul(i, 2)) + 1 >> 0, ((x$3 < 0 || x$3 >= src.$length) ? ($throwRuntimeError("index out of range"), undefined) : src.$array[src.$offset + x$3])) << 24 >>> 24)))];
+ }
+ ((i < 0 || i >= dst.$length) ? ($throwRuntimeError("index out of range"), undefined) : dst.$array[dst.$offset + i] = ((((a << 4 << 24 >>> 24)) | b) >>> 0));
+ i = i + (1) >> 0;
+ }
+ return [(_q$1 = src.$length / 2, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero")), $ifaceNil];
+ };
+ $pkg.Decode = Decode;
+ fromHexChar = function(c) {
+ var $ptr, c;
+ if (48 <= c && c <= 57) {
+ return [c - 48 << 24 >>> 24, true];
+ } else if (97 <= c && c <= 102) {
+ return [(c - 97 << 24 >>> 24) + 10 << 24 >>> 24, true];
+ } else if (65 <= c && c <= 70) {
+ return [(c - 65 << 24 >>> 24) + 10 << 24 >>> 24, true];
+ }
+ return [0, false];
+ };
+ EncodeToString = function(src) {
+ var $ptr, dst, src;
+ dst = $makeSlice(sliceType$1, EncodedLen(src.$length));
+ Encode(dst, src);
+ return ($bytesToString(dst));
+ };
+ $pkg.EncodeToString = EncodeToString;
+ InvalidByteError.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ hextable = $toNativeArray($kindUint8, [48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 97, 98, 99, 100, 101, 102]);
+ $pkg.ErrLength = errors.New("encoding/hex: odd length hex string");
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["internal/nettrace"] = (function() {
+ var $pkg = {}, $init;
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["internal/singleflight"] = (function() {
+ var $pkg = {}, $init, sync;
+ sync = $packages["sync"];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = sync.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["net"] = (function() {
+ var $pkg = {}, $init, context, errors, js, nettrace, singleflight, io, rand, os, runtime, sort, sync, atomic, syscall, time, policyTableEntry, policyTable, byMaskLength, dnsRR_Header, dnsRR_CNAME, dnsRR_MX, dnsRR_NS, dnsRR_PTR, dnsRR_SOA, dnsRR_TXT, dnsRR_SRV, dnsRR_A, dnsRR_AAAA, Interface, Flags, ipv6ZoneCache, IP, IPMask, IPNet, IPAddr, HardwareAddr, Addr, OpError, timeout, temporary, ParseError, AddrError, file, sockaddr, ptrType, sliceType, arrayType, sliceType$1, structType$1, ptrType$5, ptrType$8, ptrType$12, ptrType$13, ptrType$17, ptrType$18, ptrType$19, ptrType$20, ptrType$21, ptrType$22, ptrType$31, ptrType$33, ptrType$37, ptrType$38, sliceType$9, sliceType$10, ptrType$39, ptrType$40, arrayType$1, ptrType$43, ptrType$45, ptrType$47, ptrType$48, ptrType$50, ptrType$51, arrayType$4, funcType$2, ptrType$63, ptrType$67, mapType$1, mapType$2, ptrType$68, ptrType$70, rfc6724policyTable, rr_mk, testHookLookupIP, errInvalidInterface, errInvalidInterfaceIndex, errInvalidInterfaceName, errNoSuchInterface, errNoSuchMulticastInterface, flagNames, zoneCache, v4InV6Prefix, classAMask, classBMask, classCMask, supportsIPv4, supportsIPv6, supportsIPv4map, netGo, listenerBacklog, errNoSuitableAddress, errMissingAddress, errCanceled, errClosing, aLongTimeAgo, errNoSuchHost, threadLimit, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, byteIndex, sysInit, probeIPv4Stack, probeIPv6Stack, maxListenerBacklog, init, mustCIDR, init$1, interfaceByIndex, interfaceTable, newLink, linkFlags, interfaceAddrTable, addrTable, newAddr, interfaceMulticastAddrTable, parseProcNetIGMP, parseProcNetIGMP6, IPv4, IPv4Mask, CIDRMask, isZeros, allFF, hexString, ipEmptyString, bytesEqual, simpleMaskLength, networkNumberAndMask, parseIPv4, parseIPv6, ParseIP, ParseCIDR, SplitHostPort, splitHostZone, init$2, open, countAnyByte, splitAtBytes, dtoi, xtoi, xtoi2, uitoa, appendHex, last;
+ context = $packages["context"];
+ errors = $packages["errors"];
+ js = $packages["github.com/gopherjs/gopherjs/js"];
+ nettrace = $packages["internal/nettrace"];
+ singleflight = $packages["internal/singleflight"];
+ io = $packages["io"];
+ rand = $packages["math/rand"];
+ os = $packages["os"];
+ runtime = $packages["runtime"];
+ sort = $packages["sort"];
+ sync = $packages["sync"];
+ atomic = $packages["sync/atomic"];
+ syscall = $packages["syscall"];
+ time = $packages["time"];
+ policyTableEntry = $pkg.policyTableEntry = $newType(0, $kindStruct, "net.policyTableEntry", true, "net", false, function(Prefix_, Precedence_, Label_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Prefix = ptrType$5.nil;
+ this.Precedence = 0;
+ this.Label = 0;
+ return;
+ }
+ this.Prefix = Prefix_;
+ this.Precedence = Precedence_;
+ this.Label = Label_;
+ });
+ policyTable = $pkg.policyTable = $newType(12, $kindSlice, "net.policyTable", true, "net", false, null);
+ byMaskLength = $pkg.byMaskLength = $newType(12, $kindSlice, "net.byMaskLength", true, "net", false, null);
+ dnsRR_Header = $pkg.dnsRR_Header = $newType(0, $kindStruct, "net.dnsRR_Header", true, "net", false, function(Name_, Rrtype_, Class_, Ttl_, Rdlength_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Name = "";
+ this.Rrtype = 0;
+ this.Class = 0;
+ this.Ttl = 0;
+ this.Rdlength = 0;
+ return;
+ }
+ this.Name = Name_;
+ this.Rrtype = Rrtype_;
+ this.Class = Class_;
+ this.Ttl = Ttl_;
+ this.Rdlength = Rdlength_;
+ });
+ dnsRR_CNAME = $pkg.dnsRR_CNAME = $newType(0, $kindStruct, "net.dnsRR_CNAME", true, "net", false, function(Hdr_, Cname_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Hdr = new dnsRR_Header.ptr("", 0, 0, 0, 0);
+ this.Cname = "";
+ return;
+ }
+ this.Hdr = Hdr_;
+ this.Cname = Cname_;
+ });
+ dnsRR_MX = $pkg.dnsRR_MX = $newType(0, $kindStruct, "net.dnsRR_MX", true, "net", false, function(Hdr_, Pref_, Mx_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Hdr = new dnsRR_Header.ptr("", 0, 0, 0, 0);
+ this.Pref = 0;
+ this.Mx = "";
+ return;
+ }
+ this.Hdr = Hdr_;
+ this.Pref = Pref_;
+ this.Mx = Mx_;
+ });
+ dnsRR_NS = $pkg.dnsRR_NS = $newType(0, $kindStruct, "net.dnsRR_NS", true, "net", false, function(Hdr_, Ns_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Hdr = new dnsRR_Header.ptr("", 0, 0, 0, 0);
+ this.Ns = "";
+ return;
+ }
+ this.Hdr = Hdr_;
+ this.Ns = Ns_;
+ });
+ dnsRR_PTR = $pkg.dnsRR_PTR = $newType(0, $kindStruct, "net.dnsRR_PTR", true, "net", false, function(Hdr_, Ptr_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Hdr = new dnsRR_Header.ptr("", 0, 0, 0, 0);
+ this.Ptr = "";
+ return;
+ }
+ this.Hdr = Hdr_;
+ this.Ptr = Ptr_;
+ });
+ dnsRR_SOA = $pkg.dnsRR_SOA = $newType(0, $kindStruct, "net.dnsRR_SOA", true, "net", false, function(Hdr_, Ns_, Mbox_, Serial_, Refresh_, Retry_, Expire_, Minttl_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Hdr = new dnsRR_Header.ptr("", 0, 0, 0, 0);
+ this.Ns = "";
+ this.Mbox = "";
+ this.Serial = 0;
+ this.Refresh = 0;
+ this.Retry = 0;
+ this.Expire = 0;
+ this.Minttl = 0;
+ return;
+ }
+ this.Hdr = Hdr_;
+ this.Ns = Ns_;
+ this.Mbox = Mbox_;
+ this.Serial = Serial_;
+ this.Refresh = Refresh_;
+ this.Retry = Retry_;
+ this.Expire = Expire_;
+ this.Minttl = Minttl_;
+ });
+ dnsRR_TXT = $pkg.dnsRR_TXT = $newType(0, $kindStruct, "net.dnsRR_TXT", true, "net", false, function(Hdr_, Txt_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Hdr = new dnsRR_Header.ptr("", 0, 0, 0, 0);
+ this.Txt = "";
+ return;
+ }
+ this.Hdr = Hdr_;
+ this.Txt = Txt_;
+ });
+ dnsRR_SRV = $pkg.dnsRR_SRV = $newType(0, $kindStruct, "net.dnsRR_SRV", true, "net", false, function(Hdr_, Priority_, Weight_, Port_, Target_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Hdr = new dnsRR_Header.ptr("", 0, 0, 0, 0);
+ this.Priority = 0;
+ this.Weight = 0;
+ this.Port = 0;
+ this.Target = "";
+ return;
+ }
+ this.Hdr = Hdr_;
+ this.Priority = Priority_;
+ this.Weight = Weight_;
+ this.Port = Port_;
+ this.Target = Target_;
+ });
+ dnsRR_A = $pkg.dnsRR_A = $newType(0, $kindStruct, "net.dnsRR_A", true, "net", false, function(Hdr_, A_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Hdr = new dnsRR_Header.ptr("", 0, 0, 0, 0);
+ this.A = 0;
+ return;
+ }
+ this.Hdr = Hdr_;
+ this.A = A_;
+ });
+ dnsRR_AAAA = $pkg.dnsRR_AAAA = $newType(0, $kindStruct, "net.dnsRR_AAAA", true, "net", false, function(Hdr_, AAAA_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Hdr = new dnsRR_Header.ptr("", 0, 0, 0, 0);
+ this.AAAA = arrayType.zero();
+ return;
+ }
+ this.Hdr = Hdr_;
+ this.AAAA = AAAA_;
+ });
+ Interface = $pkg.Interface = $newType(0, $kindStruct, "net.Interface", true, "net", true, function(Index_, MTU_, Name_, HardwareAddr_, Flags_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Index = 0;
+ this.MTU = 0;
+ this.Name = "";
+ this.HardwareAddr = HardwareAddr.nil;
+ this.Flags = 0;
+ return;
+ }
+ this.Index = Index_;
+ this.MTU = MTU_;
+ this.Name = Name_;
+ this.HardwareAddr = HardwareAddr_;
+ this.Flags = Flags_;
+ });
+ Flags = $pkg.Flags = $newType(4, $kindUint, "net.Flags", true, "net", true, null);
+ ipv6ZoneCache = $pkg.ipv6ZoneCache = $newType(0, $kindStruct, "net.ipv6ZoneCache", true, "net", false, function(RWMutex_, lastFetched_, toIndex_, toName_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.RWMutex = new sync.RWMutex.ptr(new sync.Mutex.ptr(0, 0), 0, 0, 0, 0);
+ this.lastFetched = new time.Time.ptr(new $Int64(0, 0), 0, ptrType.nil);
+ this.toIndex = false;
+ this.toName = false;
+ return;
+ }
+ this.RWMutex = RWMutex_;
+ this.lastFetched = lastFetched_;
+ this.toIndex = toIndex_;
+ this.toName = toName_;
+ });
+ IP = $pkg.IP = $newType(12, $kindSlice, "net.IP", true, "net", true, null);
+ IPMask = $pkg.IPMask = $newType(12, $kindSlice, "net.IPMask", true, "net", true, null);
+ IPNet = $pkg.IPNet = $newType(0, $kindStruct, "net.IPNet", true, "net", true, function(IP_, Mask_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.IP = IP.nil;
+ this.Mask = IPMask.nil;
+ return;
+ }
+ this.IP = IP_;
+ this.Mask = Mask_;
+ });
+ IPAddr = $pkg.IPAddr = $newType(0, $kindStruct, "net.IPAddr", true, "net", true, function(IP_, Zone_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.IP = IP.nil;
+ this.Zone = "";
+ return;
+ }
+ this.IP = IP_;
+ this.Zone = Zone_;
+ });
+ HardwareAddr = $pkg.HardwareAddr = $newType(12, $kindSlice, "net.HardwareAddr", true, "net", true, null);
+ Addr = $pkg.Addr = $newType(8, $kindInterface, "net.Addr", true, "net", true, null);
+ OpError = $pkg.OpError = $newType(0, $kindStruct, "net.OpError", true, "net", true, function(Op_, Net_, Source_, Addr_, Err_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Op = "";
+ this.Net = "";
+ this.Source = $ifaceNil;
+ this.Addr = $ifaceNil;
+ this.Err = $ifaceNil;
+ return;
+ }
+ this.Op = Op_;
+ this.Net = Net_;
+ this.Source = Source_;
+ this.Addr = Addr_;
+ this.Err = Err_;
+ });
+ timeout = $pkg.timeout = $newType(8, $kindInterface, "net.timeout", true, "net", false, null);
+ temporary = $pkg.temporary = $newType(8, $kindInterface, "net.temporary", true, "net", false, null);
+ ParseError = $pkg.ParseError = $newType(0, $kindStruct, "net.ParseError", true, "net", true, function(Type_, Text_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Type = "";
+ this.Text = "";
+ return;
+ }
+ this.Type = Type_;
+ this.Text = Text_;
+ });
+ AddrError = $pkg.AddrError = $newType(0, $kindStruct, "net.AddrError", true, "net", true, function(Err_, Addr_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Err = "";
+ this.Addr = "";
+ return;
+ }
+ this.Err = Err_;
+ this.Addr = Addr_;
+ });
+ file = $pkg.file = $newType(0, $kindStruct, "net.file", true, "net", false, function(file_, data_, atEOF_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.file = ptrType$33.nil;
+ this.data = sliceType$1.nil;
+ this.atEOF = false;
+ return;
+ }
+ this.file = file_;
+ this.data = data_;
+ this.atEOF = atEOF_;
+ });
+ sockaddr = $pkg.sockaddr = $newType(8, $kindInterface, "net.sockaddr", true, "net", false, null);
+ ptrType = $ptrType(time.Location);
+ sliceType = $sliceType($String);
+ arrayType = $arrayType($Uint8, 16);
+ sliceType$1 = $sliceType($Uint8);
+ structType$1 = $structType("", []);
+ ptrType$5 = $ptrType(IPNet);
+ ptrType$8 = $ptrType(IPAddr);
+ ptrType$12 = $ptrType(dnsRR_Header);
+ ptrType$13 = $ptrType(dnsRR_CNAME);
+ ptrType$17 = $ptrType(dnsRR_A);
+ ptrType$18 = $ptrType(dnsRR_AAAA);
+ ptrType$19 = $ptrType(dnsRR_PTR);
+ ptrType$20 = $ptrType($Uint32);
+ ptrType$21 = $ptrType($Uint16);
+ ptrType$22 = $ptrType($String);
+ ptrType$31 = $ptrType(os.SyscallError);
+ ptrType$33 = $ptrType(os.File);
+ ptrType$37 = $ptrType(file);
+ ptrType$38 = $ptrType(Interface);
+ sliceType$9 = $sliceType(Addr);
+ sliceType$10 = $sliceType(Interface);
+ ptrType$39 = $ptrType(syscall.IfInfomsg);
+ ptrType$40 = $ptrType(syscall.IfAddrmsg);
+ arrayType$1 = $arrayType($Uint8, 4);
+ ptrType$43 = $ptrType(dnsRR_SRV);
+ ptrType$45 = $ptrType(dnsRR_MX);
+ ptrType$47 = $ptrType(dnsRR_NS);
+ ptrType$48 = $ptrType(dnsRR_TXT);
+ ptrType$50 = $ptrType(OpError);
+ ptrType$51 = $ptrType(AddrError);
+ arrayType$4 = $arrayType($Uint8, 20);
+ funcType$2 = $funcType([$emptyInterface, $String, $String], [$Bool], false);
+ ptrType$63 = $ptrType(dnsRR_SOA);
+ ptrType$67 = $ptrType(ipv6ZoneCache);
+ mapType$1 = $mapType($String, $Int);
+ mapType$2 = $mapType($Int, $String);
+ ptrType$68 = $ptrType(IP);
+ ptrType$70 = $ptrType(ParseError);
+ byteIndex = function(s, c) {
+ var $ptr, c, s;
+ return $parseInt(s.indexOf($global.String.fromCharCode(c))) >> 0;
+ };
+ sysInit = function() {
+ var $ptr;
+ };
+ probeIPv4Stack = function() {
+ var $ptr;
+ return false;
+ };
+ probeIPv6Stack = function() {
+ var $ptr, _tmp, _tmp$1, supportsIPv4map$1, supportsIPv6$1;
+ supportsIPv6$1 = false;
+ supportsIPv4map$1 = false;
+ _tmp = false;
+ _tmp$1 = false;
+ supportsIPv6$1 = _tmp;
+ supportsIPv4map$1 = _tmp$1;
+ return [supportsIPv6$1, supportsIPv4map$1];
+ };
+ maxListenerBacklog = function() {
+ var $ptr;
+ return 128;
+ };
+ init = function() {
+ var $ptr, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = sort.Sort(sort.Reverse(($subslice(new byMaskLength(rfc6724policyTable.$array), rfc6724policyTable.$offset, rfc6724policyTable.$offset + rfc6724policyTable.$length)))); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: init }; } $f.$ptr = $ptr; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ byMaskLength.prototype.Len = function() {
+ var $ptr, s;
+ s = this;
+ return s.$length;
+ };
+ $ptrType(byMaskLength).prototype.Len = function() { return this.$get().Len(); };
+ byMaskLength.prototype.Swap = function(i, j) {
+ var $ptr, _tmp, _tmp$1, i, j, s;
+ s = this;
+ _tmp = $clone(((j < 0 || j >= s.$length) ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + j]), policyTableEntry);
+ _tmp$1 = $clone(((i < 0 || i >= s.$length) ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + i]), policyTableEntry);
+ policyTableEntry.copy(((i < 0 || i >= s.$length) ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + i]), _tmp);
+ policyTableEntry.copy(((j < 0 || j >= s.$length) ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + j]), _tmp$1);
+ };
+ $ptrType(byMaskLength).prototype.Swap = function(i, j) { return this.$get().Swap(i, j); };
+ byMaskLength.prototype.Less = function(i, j) {
+ var $ptr, _tuple, _tuple$1, i, isize, j, jsize, s;
+ s = this;
+ _tuple = ((i < 0 || i >= s.$length) ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + i]).Prefix.Mask.Size();
+ isize = _tuple[0];
+ _tuple$1 = ((j < 0 || j >= s.$length) ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + j]).Prefix.Mask.Size();
+ jsize = _tuple$1[0];
+ return isize < jsize;
+ };
+ $ptrType(byMaskLength).prototype.Less = function(i, j) { return this.$get().Less(i, j); };
+ mustCIDR = function(s) {
+ var $ptr, _r$9, _tuple, err, ip, ipNet, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$9 = $f._r$9; _tuple = $f._tuple; err = $f.err; ip = $f.ip; ipNet = $f.ipNet; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _tuple = ParseCIDR(s);
+ ip = _tuple[0];
+ ipNet = _tuple[1];
+ err = _tuple[2];
+ /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!($interfaceIsEqual(err, $ifaceNil))) { */ case 1:
+ _r$9 = err.Error(); /* */ $s = 3; case 3: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ $panic(new $String(_r$9));
+ /* } */ case 2:
+ if (!((ip.$length === 16))) {
+ $panic(new $String("unexpected IP length"));
+ }
+ $s = -1; return ipNet;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: mustCIDR }; } $f.$ptr = $ptr; $f._r$9 = _r$9; $f._tuple = _tuple; $f.err = err; $f.ip = ip; $f.ipNet = ipNet; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ policyTable.prototype.Classify = function(ip) {
+ var $ptr, _i, _ref, ent, ip, t;
+ t = this;
+ _ref = t;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ ent = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), policyTableEntry);
+ if (ent.Prefix.Contains(ip)) {
+ return ent;
+ }
+ _i++;
+ }
+ return new policyTableEntry.ptr(ptrType$5.nil, 0, 0);
+ };
+ $ptrType(policyTable).prototype.Classify = function(ip) { return this.$get().Classify(ip); };
+ init$1 = function() {
+ var $ptr;
+ netGo = true;
+ };
+ dnsRR_Header.ptr.prototype.Header = function() {
+ var $ptr, h;
+ h = this;
+ return h;
+ };
+ dnsRR_Header.prototype.Header = function() { return this.$val.Header(); };
+ dnsRR_Header.ptr.prototype.Walk = function(f) {
+ var $ptr, _r$10, _r$11, _r$12, _r$13, _r$9, _v, _v$1, _v$2, _v$3, f, h, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$9 = $f._r$9; _v = $f._v; _v$1 = $f._v$1; _v$2 = $f._v$2; _v$3 = $f._v$3; f = $f.f; h = $f.h; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ h = this;
+ _r$9 = f((h.$ptr_Name || (h.$ptr_Name = new ptrType$22(function() { return this.$target.Name; }, function($v) { this.$target.Name = $v; }, h))), "Name", "domain"); /* */ $s = 5; case 5: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ if (!(_r$9)) { _v$3 = false; $s = 4; continue s; }
+ _r$10 = f((h.$ptr_Rrtype || (h.$ptr_Rrtype = new ptrType$21(function() { return this.$target.Rrtype; }, function($v) { this.$target.Rrtype = $v; }, h))), "Rrtype", ""); /* */ $s = 6; case 6: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _v$3 = _r$10; case 4:
+ if (!(_v$3)) { _v$2 = false; $s = 3; continue s; }
+ _r$11 = f((h.$ptr_Class || (h.$ptr_Class = new ptrType$21(function() { return this.$target.Class; }, function($v) { this.$target.Class = $v; }, h))), "Class", ""); /* */ $s = 7; case 7: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _v$2 = _r$11; case 3:
+ if (!(_v$2)) { _v$1 = false; $s = 2; continue s; }
+ _r$12 = f((h.$ptr_Ttl || (h.$ptr_Ttl = new ptrType$20(function() { return this.$target.Ttl; }, function($v) { this.$target.Ttl = $v; }, h))), "Ttl", ""); /* */ $s = 8; case 8: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _v$1 = _r$12; case 2:
+ if (!(_v$1)) { _v = false; $s = 1; continue s; }
+ _r$13 = f((h.$ptr_Rdlength || (h.$ptr_Rdlength = new ptrType$21(function() { return this.$target.Rdlength; }, function($v) { this.$target.Rdlength = $v; }, h))), "Rdlength", ""); /* */ $s = 9; case 9: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _v = _r$13; case 1:
+ $s = -1; return _v;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: dnsRR_Header.ptr.prototype.Walk }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$9 = _r$9; $f._v = _v; $f._v$1 = _v$1; $f._v$2 = _v$2; $f._v$3 = _v$3; $f.f = f; $f.h = h; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ dnsRR_Header.prototype.Walk = function(f) { return this.$val.Walk(f); };
+ dnsRR_CNAME.ptr.prototype.Header = function() {
+ var $ptr, rr;
+ rr = this;
+ return rr.Hdr;
+ };
+ dnsRR_CNAME.prototype.Header = function() { return this.$val.Header(); };
+ dnsRR_CNAME.ptr.prototype.Walk = function(f) {
+ var $ptr, _r$10, _r$9, _v, f, rr, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$9 = $f._r$9; _v = $f._v; f = $f.f; rr = $f.rr; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ rr = this;
+ _r$9 = rr.Hdr.Walk(f); /* */ $s = 2; case 2: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ if (!(_r$9)) { _v = false; $s = 1; continue s; }
+ _r$10 = f((rr.$ptr_Cname || (rr.$ptr_Cname = new ptrType$22(function() { return this.$target.Cname; }, function($v) { this.$target.Cname = $v; }, rr))), "Cname", "domain"); /* */ $s = 3; case 3: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _v = _r$10; case 1:
+ $s = -1; return _v;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: dnsRR_CNAME.ptr.prototype.Walk }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$9 = _r$9; $f._v = _v; $f.f = f; $f.rr = rr; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ dnsRR_CNAME.prototype.Walk = function(f) { return this.$val.Walk(f); };
+ dnsRR_MX.ptr.prototype.Header = function() {
+ var $ptr, rr;
+ rr = this;
+ return rr.Hdr;
+ };
+ dnsRR_MX.prototype.Header = function() { return this.$val.Header(); };
+ dnsRR_MX.ptr.prototype.Walk = function(f) {
+ var $ptr, _r$10, _r$11, _r$9, _v, _v$1, f, rr, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$9 = $f._r$9; _v = $f._v; _v$1 = $f._v$1; f = $f.f; rr = $f.rr; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ rr = this;
+ _r$9 = rr.Hdr.Walk(f); /* */ $s = 3; case 3: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ if (!(_r$9)) { _v$1 = false; $s = 2; continue s; }
+ _r$10 = f((rr.$ptr_Pref || (rr.$ptr_Pref = new ptrType$21(function() { return this.$target.Pref; }, function($v) { this.$target.Pref = $v; }, rr))), "Pref", ""); /* */ $s = 4; case 4: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _v$1 = _r$10; case 2:
+ if (!(_v$1)) { _v = false; $s = 1; continue s; }
+ _r$11 = f((rr.$ptr_Mx || (rr.$ptr_Mx = new ptrType$22(function() { return this.$target.Mx; }, function($v) { this.$target.Mx = $v; }, rr))), "Mx", "domain"); /* */ $s = 5; case 5: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _v = _r$11; case 1:
+ $s = -1; return _v;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: dnsRR_MX.ptr.prototype.Walk }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$9 = _r$9; $f._v = _v; $f._v$1 = _v$1; $f.f = f; $f.rr = rr; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ dnsRR_MX.prototype.Walk = function(f) { return this.$val.Walk(f); };
+ dnsRR_NS.ptr.prototype.Header = function() {
+ var $ptr, rr;
+ rr = this;
+ return rr.Hdr;
+ };
+ dnsRR_NS.prototype.Header = function() { return this.$val.Header(); };
+ dnsRR_NS.ptr.prototype.Walk = function(f) {
+ var $ptr, _r$10, _r$9, _v, f, rr, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$9 = $f._r$9; _v = $f._v; f = $f.f; rr = $f.rr; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ rr = this;
+ _r$9 = rr.Hdr.Walk(f); /* */ $s = 2; case 2: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ if (!(_r$9)) { _v = false; $s = 1; continue s; }
+ _r$10 = f((rr.$ptr_Ns || (rr.$ptr_Ns = new ptrType$22(function() { return this.$target.Ns; }, function($v) { this.$target.Ns = $v; }, rr))), "Ns", "domain"); /* */ $s = 3; case 3: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _v = _r$10; case 1:
+ $s = -1; return _v;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: dnsRR_NS.ptr.prototype.Walk }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$9 = _r$9; $f._v = _v; $f.f = f; $f.rr = rr; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ dnsRR_NS.prototype.Walk = function(f) { return this.$val.Walk(f); };
+ dnsRR_PTR.ptr.prototype.Header = function() {
+ var $ptr, rr;
+ rr = this;
+ return rr.Hdr;
+ };
+ dnsRR_PTR.prototype.Header = function() { return this.$val.Header(); };
+ dnsRR_PTR.ptr.prototype.Walk = function(f) {
+ var $ptr, _r$10, _r$9, _v, f, rr, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$9 = $f._r$9; _v = $f._v; f = $f.f; rr = $f.rr; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ rr = this;
+ _r$9 = rr.Hdr.Walk(f); /* */ $s = 2; case 2: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ if (!(_r$9)) { _v = false; $s = 1; continue s; }
+ _r$10 = f((rr.$ptr_Ptr || (rr.$ptr_Ptr = new ptrType$22(function() { return this.$target.Ptr; }, function($v) { this.$target.Ptr = $v; }, rr))), "Ptr", "domain"); /* */ $s = 3; case 3: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _v = _r$10; case 1:
+ $s = -1; return _v;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: dnsRR_PTR.ptr.prototype.Walk }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$9 = _r$9; $f._v = _v; $f.f = f; $f.rr = rr; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ dnsRR_PTR.prototype.Walk = function(f) { return this.$val.Walk(f); };
+ dnsRR_SOA.ptr.prototype.Header = function() {
+ var $ptr, rr;
+ rr = this;
+ return rr.Hdr;
+ };
+ dnsRR_SOA.prototype.Header = function() { return this.$val.Header(); };
+ dnsRR_SOA.ptr.prototype.Walk = function(f) {
+ var $ptr, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$9, _v, _v$1, _v$2, _v$3, _v$4, _v$5, _v$6, f, rr, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$9 = $f._r$9; _v = $f._v; _v$1 = $f._v$1; _v$2 = $f._v$2; _v$3 = $f._v$3; _v$4 = $f._v$4; _v$5 = $f._v$5; _v$6 = $f._v$6; f = $f.f; rr = $f.rr; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ rr = this;
+ _r$9 = rr.Hdr.Walk(f); /* */ $s = 8; case 8: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ if (!(_r$9)) { _v$6 = false; $s = 7; continue s; }
+ _r$10 = f((rr.$ptr_Ns || (rr.$ptr_Ns = new ptrType$22(function() { return this.$target.Ns; }, function($v) { this.$target.Ns = $v; }, rr))), "Ns", "domain"); /* */ $s = 9; case 9: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _v$6 = _r$10; case 7:
+ if (!(_v$6)) { _v$5 = false; $s = 6; continue s; }
+ _r$11 = f((rr.$ptr_Mbox || (rr.$ptr_Mbox = new ptrType$22(function() { return this.$target.Mbox; }, function($v) { this.$target.Mbox = $v; }, rr))), "Mbox", "domain"); /* */ $s = 10; case 10: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _v$5 = _r$11; case 6:
+ if (!(_v$5)) { _v$4 = false; $s = 5; continue s; }
+ _r$12 = f((rr.$ptr_Serial || (rr.$ptr_Serial = new ptrType$20(function() { return this.$target.Serial; }, function($v) { this.$target.Serial = $v; }, rr))), "Serial", ""); /* */ $s = 11; case 11: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _v$4 = _r$12; case 5:
+ if (!(_v$4)) { _v$3 = false; $s = 4; continue s; }
+ _r$13 = f((rr.$ptr_Refresh || (rr.$ptr_Refresh = new ptrType$20(function() { return this.$target.Refresh; }, function($v) { this.$target.Refresh = $v; }, rr))), "Refresh", ""); /* */ $s = 12; case 12: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _v$3 = _r$13; case 4:
+ if (!(_v$3)) { _v$2 = false; $s = 3; continue s; }
+ _r$14 = f((rr.$ptr_Retry || (rr.$ptr_Retry = new ptrType$20(function() { return this.$target.Retry; }, function($v) { this.$target.Retry = $v; }, rr))), "Retry", ""); /* */ $s = 13; case 13: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ _v$2 = _r$14; case 3:
+ if (!(_v$2)) { _v$1 = false; $s = 2; continue s; }
+ _r$15 = f((rr.$ptr_Expire || (rr.$ptr_Expire = new ptrType$20(function() { return this.$target.Expire; }, function($v) { this.$target.Expire = $v; }, rr))), "Expire", ""); /* */ $s = 14; case 14: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ _v$1 = _r$15; case 2:
+ if (!(_v$1)) { _v = false; $s = 1; continue s; }
+ _r$16 = f((rr.$ptr_Minttl || (rr.$ptr_Minttl = new ptrType$20(function() { return this.$target.Minttl; }, function($v) { this.$target.Minttl = $v; }, rr))), "Minttl", ""); /* */ $s = 15; case 15: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ _v = _r$16; case 1:
+ $s = -1; return _v;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: dnsRR_SOA.ptr.prototype.Walk }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$9 = _r$9; $f._v = _v; $f._v$1 = _v$1; $f._v$2 = _v$2; $f._v$3 = _v$3; $f._v$4 = _v$4; $f._v$5 = _v$5; $f._v$6 = _v$6; $f.f = f; $f.rr = rr; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ dnsRR_SOA.prototype.Walk = function(f) { return this.$val.Walk(f); };
+ dnsRR_TXT.ptr.prototype.Header = function() {
+ var $ptr, rr;
+ rr = this;
+ return rr.Hdr;
+ };
+ dnsRR_TXT.prototype.Header = function() { return this.$val.Header(); };
+ dnsRR_TXT.ptr.prototype.Walk = function(f) {
+ var $ptr, _r$10, _r$9, f, n, rr, txt, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$9 = $f._r$9; f = $f.f; n = $f.n; rr = $f.rr; txt = $f.txt; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ rr = this;
+ _r$9 = rr.Hdr.Walk(f); /* */ $s = 3; case 3: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ /* */ if (!_r$9) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!_r$9) { */ case 1:
+ $s = -1; return false;
+ /* } */ case 2:
+ n = 0;
+ /* while (true) { */ case 4:
+ /* if (!(n < rr.Hdr.Rdlength)) { break; } */ if(!(n < rr.Hdr.Rdlength)) { $s = 5; continue; }
+ txt = [txt];
+ txt[0] = "";
+ _r$10 = f((txt.$ptr || (txt.$ptr = new ptrType$22(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, txt))), "Txt", ""); /* */ $s = 8; case 8: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ /* */ if (!_r$10) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (!_r$10) { */ case 6:
+ $s = -1; return false;
+ /* } */ case 7:
+ if ((rr.Hdr.Rdlength - n << 16 >>> 16) < (((txt[0].length << 16 >>> 16)) + 1 << 16 >>> 16)) {
+ $s = -1; return false;
+ }
+ n = n + ((((txt[0].length << 16 >>> 16)) + 1 << 16 >>> 16)) << 16 >>> 16;
+ rr.Txt = rr.Txt + (txt[0]);
+ /* } */ $s = 4; continue; case 5:
+ $s = -1; return true;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: dnsRR_TXT.ptr.prototype.Walk }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$9 = _r$9; $f.f = f; $f.n = n; $f.rr = rr; $f.txt = txt; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ dnsRR_TXT.prototype.Walk = function(f) { return this.$val.Walk(f); };
+ dnsRR_SRV.ptr.prototype.Header = function() {
+ var $ptr, rr;
+ rr = this;
+ return rr.Hdr;
+ };
+ dnsRR_SRV.prototype.Header = function() { return this.$val.Header(); };
+ dnsRR_SRV.ptr.prototype.Walk = function(f) {
+ var $ptr, _r$10, _r$11, _r$12, _r$13, _r$9, _v, _v$1, _v$2, _v$3, f, rr, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$9 = $f._r$9; _v = $f._v; _v$1 = $f._v$1; _v$2 = $f._v$2; _v$3 = $f._v$3; f = $f.f; rr = $f.rr; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ rr = this;
+ _r$9 = rr.Hdr.Walk(f); /* */ $s = 5; case 5: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ if (!(_r$9)) { _v$3 = false; $s = 4; continue s; }
+ _r$10 = f((rr.$ptr_Priority || (rr.$ptr_Priority = new ptrType$21(function() { return this.$target.Priority; }, function($v) { this.$target.Priority = $v; }, rr))), "Priority", ""); /* */ $s = 6; case 6: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _v$3 = _r$10; case 4:
+ if (!(_v$3)) { _v$2 = false; $s = 3; continue s; }
+ _r$11 = f((rr.$ptr_Weight || (rr.$ptr_Weight = new ptrType$21(function() { return this.$target.Weight; }, function($v) { this.$target.Weight = $v; }, rr))), "Weight", ""); /* */ $s = 7; case 7: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _v$2 = _r$11; case 3:
+ if (!(_v$2)) { _v$1 = false; $s = 2; continue s; }
+ _r$12 = f((rr.$ptr_Port || (rr.$ptr_Port = new ptrType$21(function() { return this.$target.Port; }, function($v) { this.$target.Port = $v; }, rr))), "Port", ""); /* */ $s = 8; case 8: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _v$1 = _r$12; case 2:
+ if (!(_v$1)) { _v = false; $s = 1; continue s; }
+ _r$13 = f((rr.$ptr_Target || (rr.$ptr_Target = new ptrType$22(function() { return this.$target.Target; }, function($v) { this.$target.Target = $v; }, rr))), "Target", "domain"); /* */ $s = 9; case 9: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _v = _r$13; case 1:
+ $s = -1; return _v;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: dnsRR_SRV.ptr.prototype.Walk }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$9 = _r$9; $f._v = _v; $f._v$1 = _v$1; $f._v$2 = _v$2; $f._v$3 = _v$3; $f.f = f; $f.rr = rr; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ dnsRR_SRV.prototype.Walk = function(f) { return this.$val.Walk(f); };
+ dnsRR_A.ptr.prototype.Header = function() {
+ var $ptr, rr;
+ rr = this;
+ return rr.Hdr;
+ };
+ dnsRR_A.prototype.Header = function() { return this.$val.Header(); };
+ dnsRR_A.ptr.prototype.Walk = function(f) {
+ var $ptr, _r$10, _r$9, _v, f, rr, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$9 = $f._r$9; _v = $f._v; f = $f.f; rr = $f.rr; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ rr = this;
+ _r$9 = rr.Hdr.Walk(f); /* */ $s = 2; case 2: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ if (!(_r$9)) { _v = false; $s = 1; continue s; }
+ _r$10 = f((rr.$ptr_A || (rr.$ptr_A = new ptrType$20(function() { return this.$target.A; }, function($v) { this.$target.A = $v; }, rr))), "A", "ipv4"); /* */ $s = 3; case 3: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _v = _r$10; case 1:
+ $s = -1; return _v;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: dnsRR_A.ptr.prototype.Walk }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$9 = _r$9; $f._v = _v; $f.f = f; $f.rr = rr; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ dnsRR_A.prototype.Walk = function(f) { return this.$val.Walk(f); };
+ dnsRR_AAAA.ptr.prototype.Header = function() {
+ var $ptr, rr;
+ rr = this;
+ return rr.Hdr;
+ };
+ dnsRR_AAAA.prototype.Header = function() { return this.$val.Header(); };
+ dnsRR_AAAA.ptr.prototype.Walk = function(f) {
+ var $ptr, _r$10, _r$9, _v, f, rr, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$9 = $f._r$9; _v = $f._v; f = $f.f; rr = $f.rr; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ rr = this;
+ _r$9 = rr.Hdr.Walk(f); /* */ $s = 2; case 2: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ if (!(_r$9)) { _v = false; $s = 1; continue s; }
+ _r$10 = f(new sliceType$1(rr.AAAA), "AAAA", "ipv6"); /* */ $s = 3; case 3: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _v = _r$10; case 1:
+ $s = -1; return _v;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: dnsRR_AAAA.ptr.prototype.Walk }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$9 = _r$9; $f._v = _v; $f.f = f; $f.rr = rr; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ dnsRR_AAAA.prototype.Walk = function(f) { return this.$val.Walk(f); };
+ Flags.prototype.String = function() {
+ var $ptr, _i, _ref, f, i, name, s, y;
+ f = this.$val;
+ s = "";
+ _ref = flagNames;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ name = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (!((((f & (((y = ((i >>> 0)), y < 32 ? (1 << y) : 0) >>> 0))) >>> 0) === 0))) {
+ if (!(s === "")) {
+ s = s + ("|");
+ }
+ s = s + (name);
+ }
+ _i++;
+ }
+ if (s === "") {
+ s = "0";
+ }
+ return s;
+ };
+ $ptrType(Flags).prototype.String = function() { return new Flags(this.$get()).String(); };
+ Interface.ptr.prototype.Addrs = function() {
+ var $ptr, _r$9, _tuple, err, ifat, ifi, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$9 = $f._r$9; _tuple = $f._tuple; err = $f.err; ifat = $f.ifat; ifi = $f.ifi; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ ifi = this;
+ if (ifi === ptrType$38.nil) {
+ $s = -1; return [sliceType$9.nil, new OpError.ptr("route", "ip+net", $ifaceNil, $ifaceNil, errInvalidInterface)];
+ }
+ _r$9 = interfaceAddrTable(ifi); /* */ $s = 1; case 1: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _tuple = _r$9;
+ ifat = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ err = new OpError.ptr("route", "ip+net", $ifaceNil, $ifaceNil, err);
+ }
+ $s = -1; return [ifat, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Interface.ptr.prototype.Addrs }; } $f.$ptr = $ptr; $f._r$9 = _r$9; $f._tuple = _tuple; $f.err = err; $f.ifat = ifat; $f.ifi = ifi; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Interface.prototype.Addrs = function() { return this.$val.Addrs(); };
+ Interface.ptr.prototype.MulticastAddrs = function() {
+ var $ptr, _r$9, _tuple, err, ifat, ifi, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$9 = $f._r$9; _tuple = $f._tuple; err = $f.err; ifat = $f.ifat; ifi = $f.ifi; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ ifi = this;
+ if (ifi === ptrType$38.nil) {
+ $s = -1; return [sliceType$9.nil, new OpError.ptr("route", "ip+net", $ifaceNil, $ifaceNil, errInvalidInterface)];
+ }
+ _r$9 = interfaceMulticastAddrTable(ifi); /* */ $s = 1; case 1: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _tuple = _r$9;
+ ifat = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ err = new OpError.ptr("route", "ip+net", $ifaceNil, $ifaceNil, err);
+ }
+ $s = -1; return [ifat, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Interface.ptr.prototype.MulticastAddrs }; } $f.$ptr = $ptr; $f._r$9 = _r$9; $f._tuple = _tuple; $f.err = err; $f.ifat = ifat; $f.ifi = ifi; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Interface.prototype.MulticastAddrs = function() { return this.$val.MulticastAddrs(); };
+ interfaceByIndex = function(ift, index) {
+ var $ptr, _i, _ref, ifi, ift, index;
+ _ref = ift;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ ifi = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), Interface);
+ if (index === ifi.Index) {
+ return [ifi, $ifaceNil];
+ }
+ _i++;
+ }
+ return [ptrType$38.nil, errNoSuchInterface];
+ };
+ interfaceTable = function(ifindex) {
+ var $ptr, _1, _i, _r$9, _ref, _tuple, _tuple$1, _tuple$2, attrs, err, err$1, ifim, ifindex, ift, m, msgs, tab, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _i = $f._i; _r$9 = $f._r$9; _ref = $f._ref; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; attrs = $f.attrs; err = $f.err; err$1 = $f.err$1; ifim = $f.ifim; ifindex = $f.ifindex; ift = $f.ift; m = $f.m; msgs = $f.msgs; tab = $f.tab; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ m = [m];
+ _r$9 = syscall.NetlinkRIB(18, 0); /* */ $s = 1; case 1: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _tuple = _r$9;
+ tab = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [sliceType$10.nil, os.NewSyscallError("netlinkrib", err)];
+ }
+ _tuple$1 = syscall.ParseNetlinkMessage(tab);
+ msgs = _tuple$1[0];
+ err = _tuple$1[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [sliceType$10.nil, os.NewSyscallError("parsenetlinkmessage", err)];
+ }
+ ift = sliceType$10.nil;
+ _ref = msgs;
+ _i = 0;
+ loop:
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ m[0] = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), syscall.NetlinkMessage);
+ _1 = m[0].Header.Type;
+ if (_1 === (3)) {
+ break loop;
+ } else if (_1 === (16)) {
+ ifim = ($pointerOfStructConversion(($sliceToArray(m[0].Data)), ptrType$39));
+ if ((ifindex === 0) || (ifindex === ((ifim.Index >> 0)))) {
+ _tuple$2 = syscall.ParseNetlinkRouteAttr(m[0]);
+ attrs = _tuple$2[0];
+ err$1 = _tuple$2[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return [sliceType$10.nil, os.NewSyscallError("parsenetlinkrouteattr", err$1)];
+ }
+ ift = $append(ift, newLink(ifim, attrs));
+ if (ifindex === ((ifim.Index >> 0))) {
+ break loop;
+ }
+ }
+ }
+ _i++;
+ }
+ $s = -1; return [ift, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: interfaceTable }; } $f.$ptr = $ptr; $f._1 = _1; $f._i = _i; $f._r$9 = _r$9; $f._ref = _ref; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f.attrs = attrs; $f.err = err; $f.err$1 = err$1; $f.ifim = ifim; $f.ifindex = ifindex; $f.ift = ift; $f.m = m; $f.msgs = msgs; $f.tab = tab; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ newLink = function(ifim, attrs) {
+ var $ptr, _1, _2, _3, _4, _i, _i$1, _ref, _ref$1, a, attrs, b, ifi, ifim, nonzero, x, x$1;
+ ifi = new Interface.ptr(((ifim.Index >> 0)), 0, "", HardwareAddr.nil, linkFlags(ifim.Flags));
+ _ref = attrs;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ a = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), syscall.NetlinkRouteAttr);
+ _1 = a.Attr.Type;
+ if (_1 === (1)) {
+ _2 = a.Value.$length;
+ if (_2 === (4)) {
+ _3 = ifim.Type;
+ if ((_3 === (768)) || (_3 === (778)) || (_3 === (776))) {
+ _i++;
+ continue;
+ }
+ } else if (_2 === (16)) {
+ _4 = ifim.Type;
+ if ((_4 === (769)) || (_4 === (823))) {
+ _i++;
+ continue;
+ }
+ }
+ nonzero = false;
+ _ref$1 = a.Value;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ b = ((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]);
+ if (!((b === 0))) {
+ nonzero = true;
+ break;
+ }
+ _i$1++;
+ }
+ if (nonzero) {
+ ifi.HardwareAddr = (x = a.Value, $subslice(new HardwareAddr(x.$array), x.$offset, x.$offset + x.$length));
+ }
+ } else if (_1 === (3)) {
+ ifi.Name = ($bytesToString($subslice(a.Value, 0, (a.Value.$length - 1 >> 0))));
+ } else if (_1 === (4)) {
+ ifi.MTU = (((x$1 = $subslice(a.Value, 0, 4), (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0])) >> 0));
+ }
+ _i++;
+ }
+ return ifi;
+ };
+ linkFlags = function(rawFlags) {
+ var $ptr, f, rawFlags;
+ f = 0;
+ if (!((((rawFlags & 1) >>> 0) === 0))) {
+ f = (f | (1)) >>> 0;
+ }
+ if (!((((rawFlags & 2) >>> 0) === 0))) {
+ f = (f | (2)) >>> 0;
+ }
+ if (!((((rawFlags & 8) >>> 0) === 0))) {
+ f = (f | (4)) >>> 0;
+ }
+ if (!((((rawFlags & 16) >>> 0) === 0))) {
+ f = (f | (8)) >>> 0;
+ }
+ if (!((((rawFlags & 4096) >>> 0) === 0))) {
+ f = (f | (16)) >>> 0;
+ }
+ return f;
+ };
+ interfaceAddrTable = function(ifi) {
+ var $ptr, _r$10, _r$9, _tuple, _tuple$1, _tuple$2, _tuple$3, err, err$1, ifat, ifi, ift, msgs, tab, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$9 = $f._r$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; err = $f.err; err$1 = $f.err$1; ifat = $f.ifat; ifi = $f.ifi; ift = $f.ift; msgs = $f.msgs; tab = $f.tab; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$9 = syscall.NetlinkRIB(22, 0); /* */ $s = 1; case 1: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _tuple = _r$9;
+ tab = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [sliceType$9.nil, os.NewSyscallError("netlinkrib", err)];
+ }
+ _tuple$1 = syscall.ParseNetlinkMessage(tab);
+ msgs = _tuple$1[0];
+ err = _tuple$1[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [sliceType$9.nil, os.NewSyscallError("parsenetlinkmessage", err)];
+ }
+ ift = sliceType$10.nil;
+ /* */ if (ifi === ptrType$38.nil) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (ifi === ptrType$38.nil) { */ case 2:
+ err$1 = $ifaceNil;
+ _r$10 = interfaceTable(0); /* */ $s = 4; case 4: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _tuple$2 = _r$10;
+ ift = _tuple$2[0];
+ err$1 = _tuple$2[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return [sliceType$9.nil, err$1];
+ }
+ /* } */ case 3:
+ _tuple$3 = addrTable(ift, ifi, msgs);
+ ifat = _tuple$3[0];
+ err = _tuple$3[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [sliceType$9.nil, err];
+ }
+ $s = -1; return [ifat, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: interfaceAddrTable }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$9 = _r$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f.err = err; $f.err$1 = err$1; $f.ifat = ifat; $f.ifi = ifi; $f.ift = ift; $f.msgs = msgs; $f.tab = tab; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ addrTable = function(ift, ifi, msgs) {
+ var $ptr, _1, _i, _ref, _tuple, _tuple$1, attrs, err, err$1, ifa, ifam, ifat, ifi, ift, m, msgs;
+ ifat = sliceType$9.nil;
+ _ref = msgs;
+ _i = 0;
+ loop:
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ m = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), syscall.NetlinkMessage);
+ _1 = m.Header.Type;
+ if (_1 === (3)) {
+ break loop;
+ } else if (_1 === (20)) {
+ ifam = ($pointerOfStructConversion(($sliceToArray(m.Data)), ptrType$40));
+ if (!((ift.$length === 0)) || (ifi.Index === ((ifam.Index >> 0)))) {
+ if (!((ift.$length === 0))) {
+ err = $ifaceNil;
+ _tuple = interfaceByIndex(ift, ((ifam.Index >> 0)));
+ ifi = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return [sliceType$9.nil, err];
+ }
+ }
+ _tuple$1 = syscall.ParseNetlinkRouteAttr(m);
+ attrs = _tuple$1[0];
+ err$1 = _tuple$1[1];
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ return [sliceType$9.nil, os.NewSyscallError("parsenetlinkrouteattr", err$1)];
+ }
+ ifa = newAddr(ifi, ifam, attrs);
+ if (!($interfaceIsEqual(ifa, $ifaceNil))) {
+ ifat = $append(ifat, ifa);
+ }
+ }
+ }
+ _i++;
+ }
+ return [ifat, $ifaceNil];
+ };
+ newAddr = function(ifi, ifam, attrs) {
+ var $ptr, _1, _i, _i$1, _ref, _ref$1, a, a$1, attrs, ifa, ifam, ifi, ipPointToPoint, x, x$1, x$2, x$3;
+ ipPointToPoint = false;
+ _ref = attrs;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ a = $clone(((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]), syscall.NetlinkRouteAttr);
+ if (a.Attr.Type === 2) {
+ ipPointToPoint = true;
+ break;
+ }
+ _i++;
+ }
+ _ref$1 = attrs;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < _ref$1.$length)) { break; }
+ a$1 = $clone(((_i$1 < 0 || _i$1 >= _ref$1.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref$1.$array[_ref$1.$offset + _i$1]), syscall.NetlinkRouteAttr);
+ if (ipPointToPoint && (a$1.Attr.Type === 1)) {
+ _i$1++;
+ continue;
+ }
+ _1 = ifam.Family;
+ if (_1 === (2)) {
+ return new IPNet.ptr(IPv4((x = a$1.Value, (0 >= x.$length ? ($throwRuntimeError("index out of range"), undefined) : x.$array[x.$offset + 0])), (x$1 = a$1.Value, (1 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 1])), (x$2 = a$1.Value, (2 >= x$2.$length ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + 2])), (x$3 = a$1.Value, (3 >= x$3.$length ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + 3]))), CIDRMask(((ifam.Prefixlen >> 0)), 32));
+ } else if (_1 === (10)) {
+ ifa = new IPNet.ptr($makeSlice(IP, 16), CIDRMask(((ifam.Prefixlen >> 0)), 128));
+ $copySlice(ifa.IP, a$1.Value);
+ return ifa;
+ }
+ _i$1++;
+ }
+ return $ifaceNil;
+ };
+ interfaceMulticastAddrTable = function(ifi) {
+ var $ptr, _r$10, _r$9, ifi, ifmat4, ifmat6, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$9 = $f._r$9; ifi = $f.ifi; ifmat4 = $f.ifmat4; ifmat6 = $f.ifmat6; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$9 = parseProcNetIGMP("/proc/net/igmp", ifi); /* */ $s = 1; case 1: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ ifmat4 = _r$9;
+ _r$10 = parseProcNetIGMP6("/proc/net/igmp6", ifi); /* */ $s = 2; case 2: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ ifmat6 = _r$10;
+ $s = -1; return [$appendSlice(ifmat4, ifmat6), $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: interfaceMulticastAddrTable }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$9 = _r$9; $f.ifi = ifi; $f.ifmat4 = ifmat4; $f.ifmat6 = ifmat6; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ parseProcNetIGMP = function(path, ifi) {
+ var $ptr, _q, _r$10, _r$11, _r$12, _r$9, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, b, err, f, fd, i, i$1, ifi, ifma, ifmat, l, name, ok, path, x, x$1, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$9 = $f._r$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; b = $f.b; err = $f.err; f = $f.f; fd = $f.fd; i = $f.i; i$1 = $f.i$1; ifi = $f.ifi; ifma = $f.ifma; ifmat = $f.ifmat; l = $f.l; name = $f.name; ok = $f.ok; path = $f.path; x = $f.x; x$1 = $f.x$1; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ _tuple = open(path);
+ fd = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return sliceType$9.nil;
+ }
+ $deferred.push([$methodVal(fd, "close"), []]);
+ ifmat = sliceType$9.nil;
+ name = "";
+ _r$9 = fd.readLine(); /* */ $s = 1; case 1: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _r$9;
+ b = $makeSlice(sliceType$1, 4);
+ _r$10 = fd.readLine(); /* */ $s = 2; case 2: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _tuple$1 = _r$10;
+ l = _tuple$1[0];
+ ok = _tuple$1[1];
+ /* while (true) { */ case 3:
+ /* if (!(ok)) { break; } */ if(!(ok)) { $s = 4; continue; }
+ f = splitAtBytes(l, " :\r\t\n");
+ /* */ if (f.$length < 4) { $s = 5; continue; }
+ /* */ $s = 6; continue;
+ /* if (f.$length < 4) { */ case 5:
+ _r$11 = fd.readLine(); /* */ $s = 7; case 7: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _tuple$2 = _r$11;
+ l = _tuple$2[0];
+ ok = _tuple$2[1];
+ /* continue; */ $s = 3; continue;
+ /* } */ case 6:
+ if (!((l.charCodeAt(0) === 32)) && !((l.charCodeAt(0) === 9))) {
+ name = (1 >= f.$length ? ($throwRuntimeError("index out of range"), undefined) : f.$array[f.$offset + 1]);
+ } else if (((0 >= f.$length ? ($throwRuntimeError("index out of range"), undefined) : f.$array[f.$offset + 0]).length === 8)) {
+ if (ifi === ptrType$38.nil || name === ifi.Name) {
+ i = 0;
+ while (true) {
+ if (!((i + 1 >> 0) < (0 >= f.$length ? ($throwRuntimeError("index out of range"), undefined) : f.$array[f.$offset + 0]).length)) { break; }
+ _tuple$3 = xtoi2($substring((0 >= f.$length ? ($throwRuntimeError("index out of range"), undefined) : f.$array[f.$offset + 0]), i, (i + 2 >> 0)), 0);
+ (x = (_q = i / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")), ((x < 0 || x >= b.$length) ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + x] = _tuple$3[0]));
+ i = i + (2) >> 0;
+ }
+ i$1 = (x$1 = $subslice(b, 0, 4), (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0]));
+ ifma = new IPAddr.ptr(IPv4((((i$1 >>> 24 >>> 0) << 24 >>> 24)), (((i$1 >>> 16 >>> 0) << 24 >>> 24)), (((i$1 >>> 8 >>> 0) << 24 >>> 24)), ((i$1 << 24 >>> 24))), "");
+ ifmat = $append(ifmat, ifma);
+ }
+ }
+ _r$12 = fd.readLine(); /* */ $s = 8; case 8: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _tuple$4 = _r$12;
+ l = _tuple$4[0];
+ ok = _tuple$4[1];
+ /* } */ $s = 3; continue; case 4:
+ $s = -1; return ifmat;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; return sliceType$9.nil; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: parseProcNetIGMP }; } $f.$ptr = $ptr; $f._q = _q; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$9 = _r$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f.b = b; $f.err = err; $f.f = f; $f.fd = fd; $f.i = i; $f.i$1 = i$1; $f.ifi = ifi; $f.ifma = ifma; $f.ifmat = ifmat; $f.l = l; $f.name = name; $f.ok = ok; $f.path = path; $f.x = x; $f.x$1 = x$1; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ parseProcNetIGMP6 = function(path, ifi) {
+ var $ptr, _q, _r$10, _r$11, _r$9, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, b, err, f, fd, i, ifi, ifma, ifmat, l, ok, path, x, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _q = $f._q; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$9 = $f._r$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; b = $f.b; err = $f.err; f = $f.f; fd = $f.fd; i = $f.i; ifi = $f.ifi; ifma = $f.ifma; ifmat = $f.ifmat; l = $f.l; ok = $f.ok; path = $f.path; x = $f.x; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ _tuple = open(path);
+ fd = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return sliceType$9.nil;
+ }
+ $deferred.push([$methodVal(fd, "close"), []]);
+ ifmat = sliceType$9.nil;
+ b = $makeSlice(sliceType$1, 16);
+ _r$9 = fd.readLine(); /* */ $s = 1; case 1: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _tuple$1 = _r$9;
+ l = _tuple$1[0];
+ ok = _tuple$1[1];
+ /* while (true) { */ case 2:
+ /* if (!(ok)) { break; } */ if(!(ok)) { $s = 3; continue; }
+ f = splitAtBytes(l, " \r\t\n");
+ /* */ if (f.$length < 6) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (f.$length < 6) { */ case 4:
+ _r$10 = fd.readLine(); /* */ $s = 6; case 6: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _tuple$2 = _r$10;
+ l = _tuple$2[0];
+ ok = _tuple$2[1];
+ /* continue; */ $s = 2; continue;
+ /* } */ case 5:
+ if (ifi === ptrType$38.nil || (1 >= f.$length ? ($throwRuntimeError("index out of range"), undefined) : f.$array[f.$offset + 1]) === ifi.Name) {
+ i = 0;
+ while (true) {
+ if (!((i + 1 >> 0) < (2 >= f.$length ? ($throwRuntimeError("index out of range"), undefined) : f.$array[f.$offset + 2]).length)) { break; }
+ _tuple$3 = xtoi2($substring((2 >= f.$length ? ($throwRuntimeError("index out of range"), undefined) : f.$array[f.$offset + 2]), i, (i + 2 >> 0)), 0);
+ (x = (_q = i / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")), ((x < 0 || x >= b.$length) ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + x] = _tuple$3[0]));
+ i = i + (2) >> 0;
+ }
+ ifma = new IPAddr.ptr(new IP([(0 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 0]), (1 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 1]), (2 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 2]), (3 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 3]), (4 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 4]), (5 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 5]), (6 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 6]), (7 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 7]), (8 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 8]), (9 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 9]), (10 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 10]), (11 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 11]), (12 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 12]), (13 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 13]), (14 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 14]), (15 >= b.$length ? ($throwRuntimeError("index out of range"), undefined) : b.$array[b.$offset + 15])]), "");
+ ifmat = $append(ifmat, ifma);
+ }
+ _r$11 = fd.readLine(); /* */ $s = 7; case 7: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _tuple$4 = _r$11;
+ l = _tuple$4[0];
+ ok = _tuple$4[1];
+ /* } */ $s = 2; continue; case 3:
+ $s = -1; return ifmat;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; return sliceType$9.nil; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: parseProcNetIGMP6 }; } $f.$ptr = $ptr; $f._q = _q; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$9 = _r$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f.b = b; $f.err = err; $f.f = f; $f.fd = fd; $f.i = i; $f.ifi = ifi; $f.ifma = ifma; $f.ifmat = ifmat; $f.l = l; $f.ok = ok; $f.path = path; $f.x = x; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ IPv4 = function(a, b, c, d) {
+ var $ptr, a, b, c, d, p;
+ p = $makeSlice(IP, 16);
+ $copySlice(p, v4InV6Prefix);
+ (12 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 12] = a);
+ (13 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 13] = b);
+ (14 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 14] = c);
+ (15 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 15] = d);
+ return p;
+ };
+ $pkg.IPv4 = IPv4;
+ IPv4Mask = function(a, b, c, d) {
+ var $ptr, a, b, c, d, p;
+ p = $makeSlice(IPMask, 4);
+ (0 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 0] = a);
+ (1 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 1] = b);
+ (2 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 2] = c);
+ (3 >= p.$length ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + 3] = d);
+ return p;
+ };
+ $pkg.IPv4Mask = IPv4Mask;
+ CIDRMask = function(ones, bits) {
+ var $ptr, _q, bits, i, l, m, n, ones, y;
+ if (!((bits === 32)) && !((bits === 128))) {
+ return IPMask.nil;
+ }
+ if (ones < 0 || ones > bits) {
+ return IPMask.nil;
+ }
+ l = (_q = bits / 8, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ m = $makeSlice(IPMask, l);
+ n = ((ones >>> 0));
+ i = 0;
+ while (true) {
+ if (!(i < l)) { break; }
+ if (n >= 8) {
+ ((i < 0 || i >= m.$length) ? ($throwRuntimeError("index out of range"), undefined) : m.$array[m.$offset + i] = 255);
+ n = n - (8) >>> 0;
+ i = i + (1) >> 0;
+ continue;
+ }
+ ((i < 0 || i >= m.$length) ? ($throwRuntimeError("index out of range"), undefined) : m.$array[m.$offset + i] = (~(((y = n, y < 32 ? (255 >>> y) : 0) << 24 >>> 24)) << 24 >>> 24));
+ n = 0;
+ i = i + (1) >> 0;
+ }
+ return m;
+ };
+ $pkg.CIDRMask = CIDRMask;
+ IP.prototype.IsUnspecified = function() {
+ var $ptr, ip;
+ ip = this;
+ return ip.Equal($pkg.IPv4zero) || ip.Equal($pkg.IPv6unspecified);
+ };
+ $ptrType(IP).prototype.IsUnspecified = function() { return this.$get().IsUnspecified(); };
+ IP.prototype.IsLoopback = function() {
+ var $ptr, ip, ip4;
+ ip = this;
+ ip4 = ip.To4();
+ if (!(ip4 === IP.nil)) {
+ return (0 >= ip4.$length ? ($throwRuntimeError("index out of range"), undefined) : ip4.$array[ip4.$offset + 0]) === 127;
+ }
+ return ip.Equal($pkg.IPv6loopback);
+ };
+ $ptrType(IP).prototype.IsLoopback = function() { return this.$get().IsLoopback(); };
+ IP.prototype.IsMulticast = function() {
+ var $ptr, ip, ip4;
+ ip = this;
+ ip4 = ip.To4();
+ if (!(ip4 === IP.nil)) {
+ return (((0 >= ip4.$length ? ($throwRuntimeError("index out of range"), undefined) : ip4.$array[ip4.$offset + 0]) & 240) >>> 0) === 224;
+ }
+ return (ip.$length === 16) && ((0 >= ip.$length ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + 0]) === 255);
+ };
+ $ptrType(IP).prototype.IsMulticast = function() { return this.$get().IsMulticast(); };
+ IP.prototype.IsInterfaceLocalMulticast = function() {
+ var $ptr, ip;
+ ip = this;
+ return (ip.$length === 16) && ((0 >= ip.$length ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + 0]) === 255) && ((((1 >= ip.$length ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + 1]) & 15) >>> 0) === 1);
+ };
+ $ptrType(IP).prototype.IsInterfaceLocalMulticast = function() { return this.$get().IsInterfaceLocalMulticast(); };
+ IP.prototype.IsLinkLocalMulticast = function() {
+ var $ptr, ip, ip4;
+ ip = this;
+ ip4 = ip.To4();
+ if (!(ip4 === IP.nil)) {
+ return ((0 >= ip4.$length ? ($throwRuntimeError("index out of range"), undefined) : ip4.$array[ip4.$offset + 0]) === 224) && ((1 >= ip4.$length ? ($throwRuntimeError("index out of range"), undefined) : ip4.$array[ip4.$offset + 1]) === 0) && ((2 >= ip4.$length ? ($throwRuntimeError("index out of range"), undefined) : ip4.$array[ip4.$offset + 2]) === 0);
+ }
+ return (ip.$length === 16) && ((0 >= ip.$length ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + 0]) === 255) && ((((1 >= ip.$length ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + 1]) & 15) >>> 0) === 2);
+ };
+ $ptrType(IP).prototype.IsLinkLocalMulticast = function() { return this.$get().IsLinkLocalMulticast(); };
+ IP.prototype.IsLinkLocalUnicast = function() {
+ var $ptr, ip, ip4;
+ ip = this;
+ ip4 = ip.To4();
+ if (!(ip4 === IP.nil)) {
+ return ((0 >= ip4.$length ? ($throwRuntimeError("index out of range"), undefined) : ip4.$array[ip4.$offset + 0]) === 169) && ((1 >= ip4.$length ? ($throwRuntimeError("index out of range"), undefined) : ip4.$array[ip4.$offset + 1]) === 254);
+ }
+ return (ip.$length === 16) && ((0 >= ip.$length ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + 0]) === 254) && ((((1 >= ip.$length ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + 1]) & 192) >>> 0) === 128);
+ };
+ $ptrType(IP).prototype.IsLinkLocalUnicast = function() { return this.$get().IsLinkLocalUnicast(); };
+ IP.prototype.IsGlobalUnicast = function() {
+ var $ptr, ip;
+ ip = this;
+ return ((ip.$length === 4) || (ip.$length === 16)) && !ip.Equal($pkg.IPv4bcast) && !ip.IsUnspecified() && !ip.IsLoopback() && !ip.IsMulticast() && !ip.IsLinkLocalUnicast();
+ };
+ $ptrType(IP).prototype.IsGlobalUnicast = function() { return this.$get().IsGlobalUnicast(); };
+ isZeros = function(p) {
+ var $ptr, i, p;
+ i = 0;
+ while (true) {
+ if (!(i < p.$length)) { break; }
+ if (!((((i < 0 || i >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + i]) === 0))) {
+ return false;
+ }
+ i = i + (1) >> 0;
+ }
+ return true;
+ };
+ IP.prototype.To4 = function() {
+ var $ptr, ip;
+ ip = this;
+ if (ip.$length === 4) {
+ return ip;
+ }
+ if ((ip.$length === 16) && isZeros($subslice(ip, 0, 10)) && ((10 >= ip.$length ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + 10]) === 255) && ((11 >= ip.$length ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + 11]) === 255)) {
+ return $subslice(ip, 12, 16);
+ }
+ return IP.nil;
+ };
+ $ptrType(IP).prototype.To4 = function() { return this.$get().To4(); };
+ IP.prototype.To16 = function() {
+ var $ptr, ip;
+ ip = this;
+ if (ip.$length === 4) {
+ return IPv4((0 >= ip.$length ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + 0]), (1 >= ip.$length ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + 1]), (2 >= ip.$length ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + 2]), (3 >= ip.$length ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + 3]));
+ }
+ if (ip.$length === 16) {
+ return ip;
+ }
+ return IP.nil;
+ };
+ $ptrType(IP).prototype.To16 = function() { return this.$get().To16(); };
+ IP.prototype.DefaultMask = function() {
+ var $ptr, _1, ip;
+ ip = this;
+ ip = ip.To4();
+ if (ip === IP.nil) {
+ return IPMask.nil;
+ }
+ _1 = true;
+ if (_1 === ((0 >= ip.$length ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + 0]) < 128)) {
+ return classAMask;
+ } else if (_1 === ((0 >= ip.$length ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + 0]) < 192)) {
+ return classBMask;
+ } else {
+ return classCMask;
+ }
+ };
+ $ptrType(IP).prototype.DefaultMask = function() { return this.$get().DefaultMask(); };
+ allFF = function(b) {
+ var $ptr, _i, _ref, b, c;
+ _ref = b;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ c = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (!((c === 255))) {
+ return false;
+ }
+ _i++;
+ }
+ return true;
+ };
+ IP.prototype.Mask = function(mask) {
+ var $ptr, i, ip, mask, n, out, x, x$1;
+ ip = this;
+ if ((mask.$length === 16) && (ip.$length === 4) && allFF((x = $subslice(mask, 0, 12), $subslice(new sliceType$1(x.$array), x.$offset, x.$offset + x.$length)))) {
+ mask = $subslice(mask, 12);
+ }
+ if ((mask.$length === 4) && (ip.$length === 16) && bytesEqual((x$1 = $subslice(ip, 0, 12), $subslice(new sliceType$1(x$1.$array), x$1.$offset, x$1.$offset + x$1.$length)), v4InV6Prefix)) {
+ ip = $subslice(ip, 12);
+ }
+ n = ip.$length;
+ if (!((n === mask.$length))) {
+ return IP.nil;
+ }
+ out = $makeSlice(IP, n);
+ i = 0;
+ while (true) {
+ if (!(i < n)) { break; }
+ ((i < 0 || i >= out.$length) ? ($throwRuntimeError("index out of range"), undefined) : out.$array[out.$offset + i] = ((((i < 0 || i >= ip.$length) ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + i]) & ((i < 0 || i >= mask.$length) ? ($throwRuntimeError("index out of range"), undefined) : mask.$array[mask.$offset + i])) >>> 0));
+ i = i + (1) >> 0;
+ }
+ return out;
+ };
+ $ptrType(IP).prototype.Mask = function(mask) { return this.$get().Mask(mask); };
+ IP.prototype.String = function() {
+ var $ptr, b, e0, e1, i, i$1, ip, j, p, p4, x, x$1;
+ ip = this;
+ p = ip;
+ if (ip.$length === 0) {
+ return "<nil>";
+ }
+ p4 = p.To4();
+ if (p4.$length === 4) {
+ return uitoa((((0 >= p4.$length ? ($throwRuntimeError("index out of range"), undefined) : p4.$array[p4.$offset + 0]) >>> 0))) + "." + uitoa((((1 >= p4.$length ? ($throwRuntimeError("index out of range"), undefined) : p4.$array[p4.$offset + 1]) >>> 0))) + "." + uitoa((((2 >= p4.$length ? ($throwRuntimeError("index out of range"), undefined) : p4.$array[p4.$offset + 2]) >>> 0))) + "." + uitoa((((3 >= p4.$length ? ($throwRuntimeError("index out of range"), undefined) : p4.$array[p4.$offset + 3]) >>> 0)));
+ }
+ if (!((p.$length === 16))) {
+ return "?" + hexString($subslice(new sliceType$1(ip.$array), ip.$offset, ip.$offset + ip.$length));
+ }
+ e0 = -1;
+ e1 = -1;
+ i = 0;
+ while (true) {
+ if (!(i < 16)) { break; }
+ j = i;
+ while (true) {
+ if (!(j < 16 && (((j < 0 || j >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + j]) === 0) && ((x = j + 1 >> 0, ((x < 0 || x >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x])) === 0))) { break; }
+ j = j + (2) >> 0;
+ }
+ if (j > i && (j - i >> 0) > (e1 - e0 >> 0)) {
+ e0 = i;
+ e1 = j;
+ i = j;
+ }
+ i = i + (2) >> 0;
+ }
+ if ((e1 - e0 >> 0) <= 2) {
+ e0 = -1;
+ e1 = -1;
+ }
+ b = $makeSlice(sliceType$1, 0, 39);
+ i$1 = 0;
+ while (true) {
+ if (!(i$1 < 16)) { break; }
+ if (i$1 === e0) {
+ b = $append(b, 58, 58);
+ i$1 = e1;
+ if (i$1 >= 16) {
+ break;
+ }
+ } else if (i$1 > 0) {
+ b = $append(b, 58);
+ }
+ b = appendHex(b, (((((((i$1 < 0 || i$1 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + i$1]) >>> 0)) << 8 >>> 0)) | (((x$1 = i$1 + 1 >> 0, ((x$1 < 0 || x$1 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$1])) >>> 0))) >>> 0);
+ i$1 = i$1 + (2) >> 0;
+ }
+ return ($bytesToString(b));
+ };
+ $ptrType(IP).prototype.String = function() { return this.$get().String(); };
+ hexString = function(b) {
+ var $ptr, _i, _ref, _tmp, _tmp$1, b, i, s, tn, x, x$1;
+ s = $makeSlice(sliceType$1, ($imul(b.$length, 2)));
+ _ref = b;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ tn = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ _tmp = "0123456789abcdef".charCodeAt((tn >>> 4 << 24 >>> 24));
+ _tmp$1 = "0123456789abcdef".charCodeAt(((tn & 15) >>> 0));
+ (x = $imul(i, 2), ((x < 0 || x >= s.$length) ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + x] = _tmp));
+ (x$1 = ($imul(i, 2)) + 1 >> 0, ((x$1 < 0 || x$1 >= s.$length) ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + x$1] = _tmp$1));
+ _i++;
+ }
+ return ($bytesToString(s));
+ };
+ ipEmptyString = function(ip) {
+ var $ptr, ip;
+ if (ip.$length === 0) {
+ return "";
+ }
+ return ip.String();
+ };
+ IP.prototype.MarshalText = function() {
+ var $ptr, ip;
+ ip = this;
+ if (ip.$length === 0) {
+ return [(new sliceType$1($stringToBytes(""))), $ifaceNil];
+ }
+ if (!((ip.$length === 4)) && !((ip.$length === 16))) {
+ return [sliceType$1.nil, new AddrError.ptr("invalid IP address", hexString($subslice(new sliceType$1(ip.$array), ip.$offset, ip.$offset + ip.$length)))];
+ }
+ return [(new sliceType$1($stringToBytes(ip.String()))), $ifaceNil];
+ };
+ $ptrType(IP).prototype.MarshalText = function() { return this.$get().MarshalText(); };
+ $ptrType(IP).prototype.UnmarshalText = function(text) {
+ var $ptr, ip, s, text, x;
+ ip = this;
+ if (text.$length === 0) {
+ ip.$set(IP.nil);
+ return $ifaceNil;
+ }
+ s = ($bytesToString(text));
+ x = ParseIP(s);
+ if (x === IP.nil) {
+ return new ParseError.ptr("IP address", s);
+ }
+ ip.$set(x);
+ return $ifaceNil;
+ };
+ IP.prototype.Equal = function(x) {
+ var $ptr, ip, x, x$1, x$2, x$3, x$4;
+ ip = this;
+ if (ip.$length === x.$length) {
+ return bytesEqual($subslice(new sliceType$1(ip.$array), ip.$offset, ip.$offset + ip.$length), $subslice(new sliceType$1(x.$array), x.$offset, x.$offset + x.$length));
+ }
+ if ((ip.$length === 4) && (x.$length === 16)) {
+ return bytesEqual((x$1 = $subslice(x, 0, 12), $subslice(new sliceType$1(x$1.$array), x$1.$offset, x$1.$offset + x$1.$length)), v4InV6Prefix) && bytesEqual($subslice(new sliceType$1(ip.$array), ip.$offset, ip.$offset + ip.$length), (x$2 = $subslice(x, 12), $subslice(new sliceType$1(x$2.$array), x$2.$offset, x$2.$offset + x$2.$length)));
+ }
+ if ((ip.$length === 16) && (x.$length === 4)) {
+ return bytesEqual((x$3 = $subslice(ip, 0, 12), $subslice(new sliceType$1(x$3.$array), x$3.$offset, x$3.$offset + x$3.$length)), v4InV6Prefix) && bytesEqual((x$4 = $subslice(ip, 12), $subslice(new sliceType$1(x$4.$array), x$4.$offset, x$4.$offset + x$4.$length)), $subslice(new sliceType$1(x.$array), x.$offset, x.$offset + x.$length));
+ }
+ return false;
+ };
+ $ptrType(IP).prototype.Equal = function(x) { return this.$get().Equal(x); };
+ bytesEqual = function(x, y) {
+ var $ptr, _i, _ref, b, i, x, y;
+ if (!((x.$length === y.$length))) {
+ return false;
+ }
+ _ref = x;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ b = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (!((((i < 0 || i >= y.$length) ? ($throwRuntimeError("index out of range"), undefined) : y.$array[y.$offset + i]) === b))) {
+ return false;
+ }
+ _i++;
+ }
+ return true;
+ };
+ simpleMaskLength = function(mask) {
+ var $ptr, _i, _ref, i, mask, n, v, y;
+ n = 0;
+ _ref = mask;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ v = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (v === 255) {
+ n = n + (8) >> 0;
+ _i++;
+ continue;
+ }
+ while (true) {
+ if (!(!((((v & 128) >>> 0) === 0)))) { break; }
+ n = n + (1) >> 0;
+ v = (y = (1), y < 32 ? (v << y) : 0) << 24 >>> 24;
+ }
+ if (!((v === 0))) {
+ return -1;
+ }
+ i = i + (1) >> 0;
+ while (true) {
+ if (!(i < mask.$length)) { break; }
+ if (!((((i < 0 || i >= mask.$length) ? ($throwRuntimeError("index out of range"), undefined) : mask.$array[mask.$offset + i]) === 0))) {
+ return -1;
+ }
+ i = i + (1) >> 0;
+ }
+ break;
+ }
+ return n;
+ };
+ IPMask.prototype.Size = function() {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, bits, m, ones;
+ ones = 0;
+ bits = 0;
+ m = this;
+ _tmp = simpleMaskLength(m);
+ _tmp$1 = $imul(m.$length, 8);
+ ones = _tmp;
+ bits = _tmp$1;
+ if (ones === -1) {
+ _tmp$2 = 0;
+ _tmp$3 = 0;
+ ones = _tmp$2;
+ bits = _tmp$3;
+ return [ones, bits];
+ }
+ return [ones, bits];
+ };
+ $ptrType(IPMask).prototype.Size = function() { return this.$get().Size(); };
+ IPMask.prototype.String = function() {
+ var $ptr, m;
+ m = this;
+ if (m.$length === 0) {
+ return "<nil>";
+ }
+ return hexString($subslice(new sliceType$1(m.$array), m.$offset, m.$offset + m.$length));
+ };
+ $ptrType(IPMask).prototype.String = function() { return this.$get().String(); };
+ networkNumberAndMask = function(n) {
+ var $ptr, _1, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, ip, m, n;
+ ip = IP.nil;
+ m = IPMask.nil;
+ ip = n.IP.To4();
+ if (ip === IP.nil) {
+ ip = n.IP;
+ if (!((ip.$length === 16))) {
+ _tmp = IP.nil;
+ _tmp$1 = IPMask.nil;
+ ip = _tmp;
+ m = _tmp$1;
+ return [ip, m];
+ }
+ }
+ m = n.Mask;
+ _1 = m.$length;
+ if (_1 === (4)) {
+ if (!((ip.$length === 4))) {
+ _tmp$2 = IP.nil;
+ _tmp$3 = IPMask.nil;
+ ip = _tmp$2;
+ m = _tmp$3;
+ return [ip, m];
+ }
+ } else if (_1 === (16)) {
+ if (ip.$length === 4) {
+ m = $subslice(m, 12);
+ }
+ } else {
+ _tmp$4 = IP.nil;
+ _tmp$5 = IPMask.nil;
+ ip = _tmp$4;
+ m = _tmp$5;
+ return [ip, m];
+ }
+ return [ip, m];
+ };
+ IPNet.ptr.prototype.Contains = function(ip) {
+ var $ptr, _tuple, i, ip, l, m, n, nn, x;
+ n = this;
+ _tuple = networkNumberAndMask(n);
+ nn = _tuple[0];
+ m = _tuple[1];
+ x = ip.To4();
+ if (!(x === IP.nil)) {
+ ip = x;
+ }
+ l = ip.$length;
+ if (!((l === nn.$length))) {
+ return false;
+ }
+ i = 0;
+ while (true) {
+ if (!(i < l)) { break; }
+ if (!((((((i < 0 || i >= nn.$length) ? ($throwRuntimeError("index out of range"), undefined) : nn.$array[nn.$offset + i]) & ((i < 0 || i >= m.$length) ? ($throwRuntimeError("index out of range"), undefined) : m.$array[m.$offset + i])) >>> 0) === ((((i < 0 || i >= ip.$length) ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + i]) & ((i < 0 || i >= m.$length) ? ($throwRuntimeError("index out of range"), undefined) : m.$array[m.$offset + i])) >>> 0)))) {
+ return false;
+ }
+ i = i + (1) >> 0;
+ }
+ return true;
+ };
+ IPNet.prototype.Contains = function(ip) { return this.$val.Contains(ip); };
+ IPNet.ptr.prototype.Network = function() {
+ var $ptr, n;
+ n = this;
+ return "ip+net";
+ };
+ IPNet.prototype.Network = function() { return this.$val.Network(); };
+ IPNet.ptr.prototype.String = function() {
+ var $ptr, _tuple, l, m, n, nn;
+ n = this;
+ _tuple = networkNumberAndMask(n);
+ nn = _tuple[0];
+ m = _tuple[1];
+ if (nn === IP.nil || m === IPMask.nil) {
+ return "<nil>";
+ }
+ l = simpleMaskLength(m);
+ if (l === -1) {
+ return nn.String() + "/" + m.String();
+ }
+ return nn.String() + "/" + uitoa(((l >>> 0)));
+ };
+ IPNet.prototype.String = function() { return this.$val.String(); };
+ parseIPv4 = function(s) {
+ var $ptr, _tuple, c, i, n, ok, p, s;
+ p = arrayType$1.zero();
+ i = 0;
+ while (true) {
+ if (!(i < 4)) { break; }
+ if (s.length === 0) {
+ return IP.nil;
+ }
+ if (i > 0) {
+ if (!((s.charCodeAt(0) === 46))) {
+ return IP.nil;
+ }
+ s = $substring(s, 1);
+ }
+ _tuple = dtoi(s);
+ n = _tuple[0];
+ c = _tuple[1];
+ ok = _tuple[2];
+ if (!ok || n > 255) {
+ return IP.nil;
+ }
+ s = $substring(s, c);
+ ((i < 0 || i >= p.length) ? ($throwRuntimeError("index out of range"), undefined) : p[i] = ((n << 24 >>> 24)));
+ i = i + (1) >> 0;
+ }
+ if (!((s.length === 0))) {
+ return IP.nil;
+ }
+ return IPv4(p[0], p[1], p[2], p[3]);
+ };
+ parseIPv6 = function(s, zoneAllowed) {
+ var $ptr, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$18, _tmp$19, _tmp$2, _tmp$20, _tmp$21, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, _tuple, _tuple$1, c, ellipsis, i, ip, ip4, j, j$1, n, n$1, ok, s, x, x$1, x$2, x$3, x$4, zone, zoneAllowed;
+ ip = IP.nil;
+ zone = "";
+ ip = $makeSlice(IP, 16);
+ ellipsis = -1;
+ if (zoneAllowed) {
+ _tuple = splitHostZone(s);
+ s = _tuple[0];
+ zone = _tuple[1];
+ }
+ if (s.length >= 2 && (s.charCodeAt(0) === 58) && (s.charCodeAt(1) === 58)) {
+ ellipsis = 0;
+ s = $substring(s, 2);
+ if (s.length === 0) {
+ _tmp = ip;
+ _tmp$1 = zone;
+ ip = _tmp;
+ zone = _tmp$1;
+ return [ip, zone];
+ }
+ }
+ i = 0;
+ while (true) {
+ if (!(i < 16)) { break; }
+ _tuple$1 = xtoi(s);
+ n = _tuple$1[0];
+ c = _tuple$1[1];
+ ok = _tuple$1[2];
+ if (!ok || n > 65535) {
+ _tmp$2 = IP.nil;
+ _tmp$3 = zone;
+ ip = _tmp$2;
+ zone = _tmp$3;
+ return [ip, zone];
+ }
+ if (c < s.length && (s.charCodeAt(c) === 46)) {
+ if (ellipsis < 0 && !((i === 12))) {
+ _tmp$4 = IP.nil;
+ _tmp$5 = zone;
+ ip = _tmp$4;
+ zone = _tmp$5;
+ return [ip, zone];
+ }
+ if ((i + 4 >> 0) > 16) {
+ _tmp$6 = IP.nil;
+ _tmp$7 = zone;
+ ip = _tmp$6;
+ zone = _tmp$7;
+ return [ip, zone];
+ }
+ ip4 = parseIPv4(s);
+ if (ip4 === IP.nil) {
+ _tmp$8 = IP.nil;
+ _tmp$9 = zone;
+ ip = _tmp$8;
+ zone = _tmp$9;
+ return [ip, zone];
+ }
+ ((i < 0 || i >= ip.$length) ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + i] = (12 >= ip4.$length ? ($throwRuntimeError("index out of range"), undefined) : ip4.$array[ip4.$offset + 12]));
+ (x = i + 1 >> 0, ((x < 0 || x >= ip.$length) ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + x] = (13 >= ip4.$length ? ($throwRuntimeError("index out of range"), undefined) : ip4.$array[ip4.$offset + 13])));
+ (x$1 = i + 2 >> 0, ((x$1 < 0 || x$1 >= ip.$length) ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + x$1] = (14 >= ip4.$length ? ($throwRuntimeError("index out of range"), undefined) : ip4.$array[ip4.$offset + 14])));
+ (x$2 = i + 3 >> 0, ((x$2 < 0 || x$2 >= ip.$length) ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + x$2] = (15 >= ip4.$length ? ($throwRuntimeError("index out of range"), undefined) : ip4.$array[ip4.$offset + 15])));
+ s = "";
+ i = i + (4) >> 0;
+ break;
+ }
+ ((i < 0 || i >= ip.$length) ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + i] = (((n >> 8 >> 0) << 24 >>> 24)));
+ (x$3 = i + 1 >> 0, ((x$3 < 0 || x$3 >= ip.$length) ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + x$3] = ((n << 24 >>> 24))));
+ i = i + (2) >> 0;
+ s = $substring(s, c);
+ if (s.length === 0) {
+ break;
+ }
+ if (!((s.charCodeAt(0) === 58)) || (s.length === 1)) {
+ _tmp$10 = IP.nil;
+ _tmp$11 = zone;
+ ip = _tmp$10;
+ zone = _tmp$11;
+ return [ip, zone];
+ }
+ s = $substring(s, 1);
+ if (s.charCodeAt(0) === 58) {
+ if (ellipsis >= 0) {
+ _tmp$12 = IP.nil;
+ _tmp$13 = zone;
+ ip = _tmp$12;
+ zone = _tmp$13;
+ return [ip, zone];
+ }
+ ellipsis = i;
+ s = $substring(s, 1);
+ if (s.length === 0) {
+ break;
+ }
+ }
+ }
+ if (!((s.length === 0))) {
+ _tmp$14 = IP.nil;
+ _tmp$15 = zone;
+ ip = _tmp$14;
+ zone = _tmp$15;
+ return [ip, zone];
+ }
+ if (i < 16) {
+ if (ellipsis < 0) {
+ _tmp$16 = IP.nil;
+ _tmp$17 = zone;
+ ip = _tmp$16;
+ zone = _tmp$17;
+ return [ip, zone];
+ }
+ n$1 = 16 - i >> 0;
+ j = i - 1 >> 0;
+ while (true) {
+ if (!(j >= ellipsis)) { break; }
+ (x$4 = j + n$1 >> 0, ((x$4 < 0 || x$4 >= ip.$length) ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + x$4] = ((j < 0 || j >= ip.$length) ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + j])));
+ j = j - (1) >> 0;
+ }
+ j$1 = (ellipsis + n$1 >> 0) - 1 >> 0;
+ while (true) {
+ if (!(j$1 >= ellipsis)) { break; }
+ ((j$1 < 0 || j$1 >= ip.$length) ? ($throwRuntimeError("index out of range"), undefined) : ip.$array[ip.$offset + j$1] = 0);
+ j$1 = j$1 - (1) >> 0;
+ }
+ } else if (ellipsis >= 0) {
+ _tmp$18 = IP.nil;
+ _tmp$19 = zone;
+ ip = _tmp$18;
+ zone = _tmp$19;
+ return [ip, zone];
+ }
+ _tmp$20 = ip;
+ _tmp$21 = zone;
+ ip = _tmp$20;
+ zone = _tmp$21;
+ return [ip, zone];
+ };
+ ParseIP = function(s) {
+ var $ptr, _1, _tuple, i, ip, s;
+ i = 0;
+ while (true) {
+ if (!(i < s.length)) { break; }
+ _1 = s.charCodeAt(i);
+ if (_1 === (46)) {
+ return parseIPv4(s);
+ } else if (_1 === (58)) {
+ _tuple = parseIPv6(s, false);
+ ip = _tuple[0];
+ return ip;
+ }
+ i = i + (1) >> 0;
+ }
+ return IP.nil;
+ };
+ $pkg.ParseIP = ParseIP;
+ ParseCIDR = function(s) {
+ var $ptr, _tmp, _tmp$1, _tuple, _tuple$1, addr, i, ip, iplen, m, mask, n, ok, s;
+ i = byteIndex(s, 47);
+ if (i < 0) {
+ return [IP.nil, ptrType$5.nil, new ParseError.ptr("CIDR address", s)];
+ }
+ _tmp = $substring(s, 0, i);
+ _tmp$1 = $substring(s, (i + 1 >> 0));
+ addr = _tmp;
+ mask = _tmp$1;
+ iplen = 4;
+ ip = parseIPv4(addr);
+ if (ip === IP.nil) {
+ iplen = 16;
+ _tuple = parseIPv6(addr, false);
+ ip = _tuple[0];
+ }
+ _tuple$1 = dtoi(mask);
+ n = _tuple$1[0];
+ i = _tuple$1[1];
+ ok = _tuple$1[2];
+ if (ip === IP.nil || !ok || !((i === mask.length)) || n < 0 || n > ($imul(8, iplen))) {
+ return [IP.nil, ptrType$5.nil, new ParseError.ptr("CIDR address", s)];
+ }
+ m = CIDRMask(n, $imul(8, iplen));
+ return [ip, new IPNet.ptr(ip.Mask(m), m), $ifaceNil];
+ };
+ $pkg.ParseCIDR = ParseCIDR;
+ IPAddr.ptr.prototype.Network = function() {
+ var $ptr, a;
+ a = this;
+ return "ip";
+ };
+ IPAddr.prototype.Network = function() { return this.$val.Network(); };
+ IPAddr.ptr.prototype.String = function() {
+ var $ptr, a, ip;
+ a = this;
+ if (a === ptrType$8.nil) {
+ return "<nil>";
+ }
+ ip = ipEmptyString(a.IP);
+ if (!(a.Zone === "")) {
+ return ip + "%" + a.Zone;
+ }
+ return ip;
+ };
+ IPAddr.prototype.String = function() { return this.$val.String(); };
+ SplitHostPort = function(hostport) {
+ var $ptr, _1, _r$10, _r$11, _r$12, _r$13, _r$14, _r$15, _r$16, _r$17, _r$9, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tuple, _tuple$1, _tuple$2, _tuple$3, _tuple$4, _tuple$5, _tuple$6, _tuple$7, _tuple$8, addrErr, end, err, host, hostport, i, j, k, port, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$12 = $f._r$12; _r$13 = $f._r$13; _r$14 = $f._r$14; _r$15 = $f._r$15; _r$16 = $f._r$16; _r$17 = $f._r$17; _r$9 = $f._r$9; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tmp$4 = $f._tmp$4; _tmp$5 = $f._tmp$5; _tmp$6 = $f._tmp$6; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _tuple$3 = $f._tuple$3; _tuple$4 = $f._tuple$4; _tuple$5 = $f._tuple$5; _tuple$6 = $f._tuple$6; _tuple$7 = $f._tuple$7; _tuple$8 = $f._tuple$8; addrErr = $f.addrErr; end = $f.end; err = $f.err; host = $f.host; hostport = $f.hostport; i = $f.i; j = $f.j; k = $f.k; port = $f.port; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ host = "";
+ port = "";
+ err = $ifaceNil;
+ addrErr = (function(addr, why) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, addr, err$1, host$1, port$1, why;
+ host$1 = "";
+ port$1 = "";
+ err$1 = $ifaceNil;
+ _tmp = "";
+ _tmp$1 = "";
+ _tmp$2 = new AddrError.ptr(why, addr);
+ host$1 = _tmp;
+ port$1 = _tmp$1;
+ err$1 = _tmp$2;
+ return [host$1, port$1, err$1];
+ });
+ _tmp = 0;
+ _tmp$1 = 0;
+ j = _tmp;
+ k = _tmp$1;
+ i = last(hostport, 58);
+ /* */ if (i < 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (i < 0) { */ case 1:
+ _r$9 = addrErr(hostport, "missing port in address"); /* */ $s = 3; case 3: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _tuple = _r$9;
+ host = _tuple[0];
+ port = _tuple[1];
+ err = _tuple[2];
+ $s = -1; return [host, port, err];
+ /* } */ case 2:
+ /* */ if (hostport.charCodeAt(0) === 91) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (hostport.charCodeAt(0) === 91) { */ case 4:
+ end = byteIndex(hostport, 93);
+ /* */ if (end < 0) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (end < 0) { */ case 7:
+ _r$10 = addrErr(hostport, "missing ']' in address"); /* */ $s = 9; case 9: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _tuple$1 = _r$10;
+ host = _tuple$1[0];
+ port = _tuple$1[1];
+ err = _tuple$1[2];
+ $s = -1; return [host, port, err];
+ /* } */ case 8:
+ _1 = end + 1 >> 0;
+ /* */ if (_1 === (hostport.length)) { $s = 11; continue; }
+ /* */ if (_1 === (i)) { $s = 12; continue; }
+ /* */ $s = 13; continue;
+ /* if (_1 === (hostport.length)) { */ case 11:
+ _r$11 = addrErr(hostport, "missing port in address"); /* */ $s = 15; case 15: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _tuple$2 = _r$11;
+ host = _tuple$2[0];
+ port = _tuple$2[1];
+ err = _tuple$2[2];
+ $s = -1; return [host, port, err];
+ /* } else if (_1 === (i)) { */ case 12:
+ $s = 14; continue;
+ /* } else { */ case 13:
+ /* */ if (hostport.charCodeAt((end + 1 >> 0)) === 58) { $s = 16; continue; }
+ /* */ $s = 17; continue;
+ /* if (hostport.charCodeAt((end + 1 >> 0)) === 58) { */ case 16:
+ _r$12 = addrErr(hostport, "too many colons in address"); /* */ $s = 18; case 18: if($c) { $c = false; _r$12 = _r$12.$blk(); } if (_r$12 && _r$12.$blk !== undefined) { break s; }
+ _tuple$3 = _r$12;
+ host = _tuple$3[0];
+ port = _tuple$3[1];
+ err = _tuple$3[2];
+ $s = -1; return [host, port, err];
+ /* } */ case 17:
+ _r$13 = addrErr(hostport, "missing port in address"); /* */ $s = 19; case 19: if($c) { $c = false; _r$13 = _r$13.$blk(); } if (_r$13 && _r$13.$blk !== undefined) { break s; }
+ _tuple$4 = _r$13;
+ host = _tuple$4[0];
+ port = _tuple$4[1];
+ err = _tuple$4[2];
+ $s = -1; return [host, port, err];
+ /* } */ case 14:
+ case 10:
+ host = $substring(hostport, 1, end);
+ _tmp$2 = 1;
+ _tmp$3 = end + 1 >> 0;
+ j = _tmp$2;
+ k = _tmp$3;
+ $s = 6; continue;
+ /* } else { */ case 5:
+ host = $substring(hostport, 0, i);
+ /* */ if (byteIndex(host, 58) >= 0) { $s = 20; continue; }
+ /* */ $s = 21; continue;
+ /* if (byteIndex(host, 58) >= 0) { */ case 20:
+ _r$14 = addrErr(hostport, "too many colons in address"); /* */ $s = 22; case 22: if($c) { $c = false; _r$14 = _r$14.$blk(); } if (_r$14 && _r$14.$blk !== undefined) { break s; }
+ _tuple$5 = _r$14;
+ host = _tuple$5[0];
+ port = _tuple$5[1];
+ err = _tuple$5[2];
+ $s = -1; return [host, port, err];
+ /* } */ case 21:
+ /* */ if (byteIndex(host, 37) >= 0) { $s = 23; continue; }
+ /* */ $s = 24; continue;
+ /* if (byteIndex(host, 37) >= 0) { */ case 23:
+ _r$15 = addrErr(hostport, "missing brackets in address"); /* */ $s = 25; case 25: if($c) { $c = false; _r$15 = _r$15.$blk(); } if (_r$15 && _r$15.$blk !== undefined) { break s; }
+ _tuple$6 = _r$15;
+ host = _tuple$6[0];
+ port = _tuple$6[1];
+ err = _tuple$6[2];
+ $s = -1; return [host, port, err];
+ /* } */ case 24:
+ /* } */ case 6:
+ /* */ if (byteIndex($substring(hostport, j), 91) >= 0) { $s = 26; continue; }
+ /* */ $s = 27; continue;
+ /* if (byteIndex($substring(hostport, j), 91) >= 0) { */ case 26:
+ _r$16 = addrErr(hostport, "unexpected '[' in address"); /* */ $s = 28; case 28: if($c) { $c = false; _r$16 = _r$16.$blk(); } if (_r$16 && _r$16.$blk !== undefined) { break s; }
+ _tuple$7 = _r$16;
+ host = _tuple$7[0];
+ port = _tuple$7[1];
+ err = _tuple$7[2];
+ $s = -1; return [host, port, err];
+ /* } */ case 27:
+ /* */ if (byteIndex($substring(hostport, k), 93) >= 0) { $s = 29; continue; }
+ /* */ $s = 30; continue;
+ /* if (byteIndex($substring(hostport, k), 93) >= 0) { */ case 29:
+ _r$17 = addrErr(hostport, "unexpected ']' in address"); /* */ $s = 31; case 31: if($c) { $c = false; _r$17 = _r$17.$blk(); } if (_r$17 && _r$17.$blk !== undefined) { break s; }
+ _tuple$8 = _r$17;
+ host = _tuple$8[0];
+ port = _tuple$8[1];
+ err = _tuple$8[2];
+ $s = -1; return [host, port, err];
+ /* } */ case 30:
+ port = $substring(hostport, (i + 1 >> 0));
+ _tmp$4 = host;
+ _tmp$5 = port;
+ _tmp$6 = $ifaceNil;
+ host = _tmp$4;
+ port = _tmp$5;
+ err = _tmp$6;
+ $s = -1; return [host, port, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: SplitHostPort }; } $f.$ptr = $ptr; $f._1 = _1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$12 = _r$12; $f._r$13 = _r$13; $f._r$14 = _r$14; $f._r$15 = _r$15; $f._r$16 = _r$16; $f._r$17 = _r$17; $f._r$9 = _r$9; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tmp$4 = _tmp$4; $f._tmp$5 = _tmp$5; $f._tmp$6 = _tmp$6; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._tuple$3 = _tuple$3; $f._tuple$4 = _tuple$4; $f._tuple$5 = _tuple$5; $f._tuple$6 = _tuple$6; $f._tuple$7 = _tuple$7; $f._tuple$8 = _tuple$8; $f.addrErr = addrErr; $f.end = end; $f.err = err; $f.host = host; $f.hostport = hostport; $f.i = i; $f.j = j; $f.k = k; $f.port = port; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.SplitHostPort = SplitHostPort;
+ splitHostZone = function(s) {
+ var $ptr, _tmp, _tmp$1, host, i, s, zone;
+ host = "";
+ zone = "";
+ i = last(s, 37);
+ if (i > 0) {
+ _tmp = $substring(s, 0, i);
+ _tmp$1 = $substring(s, (i + 1 >> 0));
+ host = _tmp;
+ zone = _tmp$1;
+ } else {
+ host = s;
+ }
+ return [host, zone];
+ };
+ HardwareAddr.prototype.String = function() {
+ var $ptr, _i, _ref, a, b, buf, i;
+ a = this;
+ if (a.$length === 0) {
+ return "";
+ }
+ buf = $makeSlice(sliceType$1, 0, (($imul(a.$length, 3)) - 1 >> 0));
+ _ref = a;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ b = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (i > 0) {
+ buf = $append(buf, 58);
+ }
+ buf = $append(buf, "0123456789abcdef".charCodeAt((b >>> 4 << 24 >>> 24)));
+ buf = $append(buf, "0123456789abcdef".charCodeAt(((b & 15) >>> 0)));
+ _i++;
+ }
+ return ($bytesToString(buf));
+ };
+ $ptrType(HardwareAddr).prototype.String = function() { return this.$get().String(); };
+ init$2 = function() {
+ var $ptr, _tuple;
+ sysInit();
+ supportsIPv4 = probeIPv4Stack();
+ _tuple = probeIPv6Stack();
+ supportsIPv6 = _tuple[0];
+ supportsIPv4map = _tuple[1];
+ };
+ OpError.ptr.prototype.Error = function() {
+ var $ptr, _r$10, _r$11, _r$9, e, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$9 = $f._r$9; e = $f.e; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ if (e === ptrType$50.nil) {
+ $s = -1; return "<nil>";
+ }
+ s = e.Op;
+ if (!(e.Net === "")) {
+ s = s + (" " + e.Net);
+ }
+ /* */ if (!($interfaceIsEqual(e.Source, $ifaceNil))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!($interfaceIsEqual(e.Source, $ifaceNil))) { */ case 1:
+ _r$9 = e.Source.String(); /* */ $s = 3; case 3: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ s = s + (" " + _r$9);
+ /* } */ case 2:
+ /* */ if (!($interfaceIsEqual(e.Addr, $ifaceNil))) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (!($interfaceIsEqual(e.Addr, $ifaceNil))) { */ case 4:
+ if (!($interfaceIsEqual(e.Source, $ifaceNil))) {
+ s = s + ("->");
+ } else {
+ s = s + (" ");
+ }
+ _r$10 = e.Addr.String(); /* */ $s = 6; case 6: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ s = s + (_r$10);
+ /* } */ case 5:
+ _r$11 = e.Err.Error(); /* */ $s = 7; case 7: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ s = s + (": " + _r$11);
+ $s = -1; return s;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: OpError.ptr.prototype.Error }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$9 = _r$9; $f.e = e; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ OpError.prototype.Error = function() { return this.$val.Error(); };
+ OpError.ptr.prototype.Timeout = function() {
+ var $ptr, _r$10, _r$9, _tuple, _tuple$1, _tuple$2, _v, _v$1, e, ne, ok, ok$1, ok$2, t, t$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$9 = $f._r$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _v = $f._v; _v$1 = $f._v$1; e = $f.e; ne = $f.ne; ok = $f.ok; ok$1 = $f.ok$1; ok$2 = $f.ok$2; t = $f.t; t$1 = $f.t$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ _tuple = $assertType(e.Err, ptrType$31, true);
+ ne = _tuple[0];
+ ok = _tuple[1];
+ /* */ if (ok) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (ok) { */ case 1:
+ _tuple$1 = $assertType(ne.Err, timeout, true);
+ t = _tuple$1[0];
+ ok$1 = _tuple$1[1];
+ if (!(ok$1)) { _v = false; $s = 3; continue s; }
+ _r$9 = t.Timeout(); /* */ $s = 4; case 4: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _v = _r$9; case 3:
+ $s = -1; return _v;
+ /* } */ case 2:
+ _tuple$2 = $assertType(e.Err, timeout, true);
+ t$1 = _tuple$2[0];
+ ok$2 = _tuple$2[1];
+ if (!(ok$2)) { _v$1 = false; $s = 5; continue s; }
+ _r$10 = t$1.Timeout(); /* */ $s = 6; case 6: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _v$1 = _r$10; case 5:
+ $s = -1; return _v$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: OpError.ptr.prototype.Timeout }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$9 = _r$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._v = _v; $f._v$1 = _v$1; $f.e = e; $f.ne = ne; $f.ok = ok; $f.ok$1 = ok$1; $f.ok$2 = ok$2; $f.t = t; $f.t$1 = t$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ OpError.prototype.Timeout = function() { return this.$val.Timeout(); };
+ OpError.ptr.prototype.Temporary = function() {
+ var $ptr, _r$10, _r$9, _tuple, _tuple$1, _tuple$2, _v, _v$1, e, ne, ok, ok$1, ok$2, t, t$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$10 = $f._r$10; _r$9 = $f._r$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; _v = $f._v; _v$1 = $f._v$1; e = $f.e; ne = $f.ne; ok = $f.ok; ok$1 = $f.ok$1; ok$2 = $f.ok$2; t = $f.t; t$1 = $f.t$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ e = this;
+ _tuple = $assertType(e.Err, ptrType$31, true);
+ ne = _tuple[0];
+ ok = _tuple[1];
+ /* */ if (ok) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (ok) { */ case 1:
+ _tuple$1 = $assertType(ne.Err, temporary, true);
+ t = _tuple$1[0];
+ ok$1 = _tuple$1[1];
+ if (!(ok$1)) { _v = false; $s = 3; continue s; }
+ _r$9 = t.Temporary(); /* */ $s = 4; case 4: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _v = _r$9; case 3:
+ $s = -1; return _v;
+ /* } */ case 2:
+ _tuple$2 = $assertType(e.Err, temporary, true);
+ t$1 = _tuple$2[0];
+ ok$2 = _tuple$2[1];
+ if (!(ok$2)) { _v$1 = false; $s = 5; continue s; }
+ _r$10 = t$1.Temporary(); /* */ $s = 6; case 6: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _v$1 = _r$10; case 5:
+ $s = -1; return _v$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: OpError.ptr.prototype.Temporary }; } $f.$ptr = $ptr; $f._r$10 = _r$10; $f._r$9 = _r$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f._v = _v; $f._v$1 = _v$1; $f.e = e; $f.ne = ne; $f.ok = ok; $f.ok$1 = ok$1; $f.ok$2 = ok$2; $f.t = t; $f.t$1 = t$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ OpError.prototype.Temporary = function() { return this.$val.Temporary(); };
+ ParseError.ptr.prototype.Error = function() {
+ var $ptr, e;
+ e = this;
+ return "invalid " + e.Type + ": " + e.Text;
+ };
+ ParseError.prototype.Error = function() { return this.$val.Error(); };
+ AddrError.ptr.prototype.Error = function() {
+ var $ptr, e, s;
+ e = this;
+ if (e === ptrType$51.nil) {
+ return "<nil>";
+ }
+ s = e.Err;
+ if (!(e.Addr === "")) {
+ s = "address " + e.Addr + ": " + s;
+ }
+ return s;
+ };
+ AddrError.prototype.Error = function() { return this.$val.Error(); };
+ AddrError.ptr.prototype.Timeout = function() {
+ var $ptr, e;
+ e = this;
+ return false;
+ };
+ AddrError.prototype.Timeout = function() { return this.$val.Timeout(); };
+ AddrError.ptr.prototype.Temporary = function() {
+ var $ptr, e;
+ e = this;
+ return false;
+ };
+ AddrError.prototype.Temporary = function() { return this.$val.Temporary(); };
+ file.ptr.prototype.close = function() {
+ var $ptr, f;
+ f = this;
+ f.file.Close();
+ };
+ file.prototype.close = function() { return this.$val.close(); };
+ file.ptr.prototype.getLineFromData = function() {
+ var $ptr, data, f, i, n, ok, s;
+ s = "";
+ ok = false;
+ f = this;
+ data = f.data;
+ i = 0;
+ i = 0;
+ while (true) {
+ if (!(i < data.$length)) { break; }
+ if (((i < 0 || i >= data.$length) ? ($throwRuntimeError("index out of range"), undefined) : data.$array[data.$offset + i]) === 10) {
+ s = ($bytesToString($subslice(data, 0, i)));
+ ok = true;
+ i = i + (1) >> 0;
+ n = data.$length - i >> 0;
+ $copySlice($subslice(data, 0), $subslice(data, i));
+ f.data = $subslice(data, 0, n);
+ return [s, ok];
+ }
+ i = i + (1) >> 0;
+ }
+ if (f.atEOF && f.data.$length > 0) {
+ s = ($bytesToString(data));
+ f.data = $subslice(f.data, 0, 0);
+ ok = true;
+ }
+ return [s, ok];
+ };
+ file.prototype.getLineFromData = function() { return this.$val.getLineFromData(); };
+ file.ptr.prototype.readLine = function() {
+ var $ptr, _r$9, _tuple, _tuple$1, _tuple$2, err, f, ln, n, ok, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$9 = $f._r$9; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; _tuple$2 = $f._tuple$2; err = $f.err; f = $f.f; ln = $f.ln; n = $f.n; ok = $f.ok; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ s = "";
+ ok = false;
+ f = this;
+ _tuple = f.getLineFromData();
+ s = _tuple[0];
+ ok = _tuple[1];
+ if (ok) {
+ $s = -1; return [s, ok];
+ }
+ /* */ if (f.data.$length < f.data.$capacity) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (f.data.$length < f.data.$capacity) { */ case 1:
+ ln = f.data.$length;
+ _r$9 = io.ReadFull(f.file, $subslice(f.data, ln, f.data.$capacity)); /* */ $s = 3; case 3: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _tuple$1 = _r$9;
+ n = _tuple$1[0];
+ err = _tuple$1[1];
+ if (n >= 0) {
+ f.data = $subslice(f.data, 0, (ln + n >> 0));
+ }
+ if ($interfaceIsEqual(err, io.EOF) || $interfaceIsEqual(err, io.ErrUnexpectedEOF)) {
+ f.atEOF = true;
+ }
+ /* } */ case 2:
+ _tuple$2 = f.getLineFromData();
+ s = _tuple$2[0];
+ ok = _tuple$2[1];
+ $s = -1; return [s, ok];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: file.ptr.prototype.readLine }; } $f.$ptr = $ptr; $f._r$9 = _r$9; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f._tuple$2 = _tuple$2; $f.err = err; $f.f = f; $f.ln = ln; $f.n = n; $f.ok = ok; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ file.prototype.readLine = function() { return this.$val.readLine(); };
+ open = function(name) {
+ var $ptr, _tuple, err, fd, name;
+ _tuple = os.Open(name);
+ fd = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ return [ptrType$37.nil, err];
+ }
+ return [new file.ptr(fd, $makeSlice(sliceType$1, 0, os.Getpagesize()), false), $ifaceNil];
+ };
+ countAnyByte = function(s, t) {
+ var $ptr, i, n, s, t;
+ n = 0;
+ i = 0;
+ while (true) {
+ if (!(i < s.length)) { break; }
+ if (byteIndex(t, s.charCodeAt(i)) >= 0) {
+ n = n + (1) >> 0;
+ }
+ i = i + (1) >> 0;
+ }
+ return n;
+ };
+ splitAtBytes = function(s, t) {
+ var $ptr, a, i, last$1, n, s, t;
+ a = $makeSlice(sliceType, (1 + countAnyByte(s, t) >> 0));
+ n = 0;
+ last$1 = 0;
+ i = 0;
+ while (true) {
+ if (!(i < s.length)) { break; }
+ if (byteIndex(t, s.charCodeAt(i)) >= 0) {
+ if (last$1 < i) {
+ ((n < 0 || n >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + n] = $substring(s, last$1, i));
+ n = n + (1) >> 0;
+ }
+ last$1 = i + 1 >> 0;
+ }
+ i = i + (1) >> 0;
+ }
+ if (last$1 < s.length) {
+ ((n < 0 || n >= a.$length) ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + n] = $substring(s, last$1));
+ n = n + (1) >> 0;
+ }
+ return $subslice(a, 0, n);
+ };
+ dtoi = function(s) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, i, n, ok, s;
+ n = 0;
+ i = 0;
+ ok = false;
+ n = 0;
+ i = 0;
+ while (true) {
+ if (!(i < s.length && 48 <= s.charCodeAt(i) && s.charCodeAt(i) <= 57)) { break; }
+ n = ($imul(n, 10)) + (((s.charCodeAt(i) - 48 << 24 >>> 24) >> 0)) >> 0;
+ if (n >= 16777215) {
+ _tmp = 16777215;
+ _tmp$1 = i;
+ _tmp$2 = false;
+ n = _tmp;
+ i = _tmp$1;
+ ok = _tmp$2;
+ return [n, i, ok];
+ }
+ i = i + (1) >> 0;
+ }
+ if (i === 0) {
+ _tmp$3 = 0;
+ _tmp$4 = 0;
+ _tmp$5 = false;
+ n = _tmp$3;
+ i = _tmp$4;
+ ok = _tmp$5;
+ return [n, i, ok];
+ }
+ _tmp$6 = n;
+ _tmp$7 = i;
+ _tmp$8 = true;
+ n = _tmp$6;
+ i = _tmp$7;
+ ok = _tmp$8;
+ return [n, i, ok];
+ };
+ xtoi = function(s) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, i, n, ok, s;
+ n = 0;
+ i = 0;
+ ok = false;
+ n = 0;
+ i = 0;
+ while (true) {
+ if (!(i < s.length)) { break; }
+ if (48 <= s.charCodeAt(i) && s.charCodeAt(i) <= 57) {
+ n = $imul(n, (16));
+ n = n + ((((s.charCodeAt(i) - 48 << 24 >>> 24) >> 0))) >> 0;
+ } else if (97 <= s.charCodeAt(i) && s.charCodeAt(i) <= 102) {
+ n = $imul(n, (16));
+ n = n + (((((s.charCodeAt(i) - 97 << 24 >>> 24) >> 0)) + 10 >> 0)) >> 0;
+ } else if (65 <= s.charCodeAt(i) && s.charCodeAt(i) <= 70) {
+ n = $imul(n, (16));
+ n = n + (((((s.charCodeAt(i) - 65 << 24 >>> 24) >> 0)) + 10 >> 0)) >> 0;
+ } else {
+ break;
+ }
+ if (n >= 16777215) {
+ _tmp = 0;
+ _tmp$1 = i;
+ _tmp$2 = false;
+ n = _tmp;
+ i = _tmp$1;
+ ok = _tmp$2;
+ return [n, i, ok];
+ }
+ i = i + (1) >> 0;
+ }
+ if (i === 0) {
+ _tmp$3 = 0;
+ _tmp$4 = i;
+ _tmp$5 = false;
+ n = _tmp$3;
+ i = _tmp$4;
+ ok = _tmp$5;
+ return [n, i, ok];
+ }
+ _tmp$6 = n;
+ _tmp$7 = i;
+ _tmp$8 = true;
+ n = _tmp$6;
+ i = _tmp$7;
+ ok = _tmp$8;
+ return [n, i, ok];
+ };
+ xtoi2 = function(s, e) {
+ var $ptr, _tuple, e, ei, n, ok, s;
+ if (s.length > 2 && !((s.charCodeAt(2) === e))) {
+ return [0, false];
+ }
+ _tuple = xtoi($substring(s, 0, 2));
+ n = _tuple[0];
+ ei = _tuple[1];
+ ok = _tuple[2];
+ return [((n << 24 >>> 24)), ok && (ei === 2)];
+ };
+ uitoa = function(val) {
+ var $ptr, _q, buf, i, q, val;
+ if (val === 0) {
+ return "0";
+ }
+ buf = arrayType$4.zero();
+ i = 19;
+ while (true) {
+ if (!(val >= 10)) { break; }
+ q = (_q = val / 10, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >>> 0 : $throwRuntimeError("integer divide by zero"));
+ ((i < 0 || i >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[i] = ((((48 + val >>> 0) - (q * 10 >>> 0) >>> 0) << 24 >>> 24)));
+ i = i - (1) >> 0;
+ val = q;
+ }
+ ((i < 0 || i >= buf.length) ? ($throwRuntimeError("index out of range"), undefined) : buf[i] = (((48 + val >>> 0) << 24 >>> 24)));
+ return ($bytesToString($subslice(new sliceType$1(buf), i)));
+ };
+ appendHex = function(dst, i) {
+ var $ptr, dst, i, j, v, y;
+ if (i === 0) {
+ return $append(dst, 48);
+ }
+ j = 7;
+ while (true) {
+ if (!(j >= 0)) { break; }
+ v = (y = ((($imul(j, 4)) >>> 0)), y < 32 ? (i >>> y) : 0) >>> 0;
+ if (v > 0) {
+ dst = $append(dst, "0123456789abcdef".charCodeAt(((v & 15) >>> 0)));
+ }
+ j = j - (1) >> 0;
+ }
+ return dst;
+ };
+ last = function(s, b) {
+ var $ptr, b, i, s;
+ i = s.length;
+ i = i - (1) >> 0;
+ while (true) {
+ if (!(i >= 0)) { break; }
+ if (s.charCodeAt(i) === b) {
+ break;
+ }
+ i = i - (1) >> 0;
+ }
+ return i;
+ };
+ policyTable.methods = [{prop: "Classify", name: "Classify", pkg: "", typ: $funcType([IP], [policyTableEntry], false)}];
+ byMaskLength.methods = [{prop: "Len", name: "Len", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Swap", name: "Swap", pkg: "", typ: $funcType([$Int, $Int], [], false)}, {prop: "Less", name: "Less", pkg: "", typ: $funcType([$Int, $Int], [$Bool], false)}];
+ ptrType$12.methods = [{prop: "Header", name: "Header", pkg: "", typ: $funcType([], [ptrType$12], false)}, {prop: "Walk", name: "Walk", pkg: "", typ: $funcType([funcType$2], [$Bool], false)}];
+ ptrType$13.methods = [{prop: "Header", name: "Header", pkg: "", typ: $funcType([], [ptrType$12], false)}, {prop: "Walk", name: "Walk", pkg: "", typ: $funcType([funcType$2], [$Bool], false)}];
+ ptrType$45.methods = [{prop: "Header", name: "Header", pkg: "", typ: $funcType([], [ptrType$12], false)}, {prop: "Walk", name: "Walk", pkg: "", typ: $funcType([funcType$2], [$Bool], false)}];
+ ptrType$47.methods = [{prop: "Header", name: "Header", pkg: "", typ: $funcType([], [ptrType$12], false)}, {prop: "Walk", name: "Walk", pkg: "", typ: $funcType([funcType$2], [$Bool], false)}];
+ ptrType$19.methods = [{prop: "Header", name: "Header", pkg: "", typ: $funcType([], [ptrType$12], false)}, {prop: "Walk", name: "Walk", pkg: "", typ: $funcType([funcType$2], [$Bool], false)}];
+ ptrType$63.methods = [{prop: "Header", name: "Header", pkg: "", typ: $funcType([], [ptrType$12], false)}, {prop: "Walk", name: "Walk", pkg: "", typ: $funcType([funcType$2], [$Bool], false)}];
+ ptrType$48.methods = [{prop: "Header", name: "Header", pkg: "", typ: $funcType([], [ptrType$12], false)}, {prop: "Walk", name: "Walk", pkg: "", typ: $funcType([funcType$2], [$Bool], false)}];
+ ptrType$43.methods = [{prop: "Header", name: "Header", pkg: "", typ: $funcType([], [ptrType$12], false)}, {prop: "Walk", name: "Walk", pkg: "", typ: $funcType([funcType$2], [$Bool], false)}];
+ ptrType$17.methods = [{prop: "Header", name: "Header", pkg: "", typ: $funcType([], [ptrType$12], false)}, {prop: "Walk", name: "Walk", pkg: "", typ: $funcType([funcType$2], [$Bool], false)}];
+ ptrType$18.methods = [{prop: "Header", name: "Header", pkg: "", typ: $funcType([], [ptrType$12], false)}, {prop: "Walk", name: "Walk", pkg: "", typ: $funcType([funcType$2], [$Bool], false)}];
+ ptrType$38.methods = [{prop: "Addrs", name: "Addrs", pkg: "", typ: $funcType([], [sliceType$9, $error], false)}, {prop: "MulticastAddrs", name: "MulticastAddrs", pkg: "", typ: $funcType([], [sliceType$9, $error], false)}];
+ Flags.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$67.methods = [{prop: "update", name: "update", pkg: "net", typ: $funcType([sliceType$10], [], false)}];
+ IP.methods = [{prop: "IsUnspecified", name: "IsUnspecified", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "IsLoopback", name: "IsLoopback", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "IsMulticast", name: "IsMulticast", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "IsInterfaceLocalMulticast", name: "IsInterfaceLocalMulticast", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "IsLinkLocalMulticast", name: "IsLinkLocalMulticast", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "IsLinkLocalUnicast", name: "IsLinkLocalUnicast", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "IsGlobalUnicast", name: "IsGlobalUnicast", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "To4", name: "To4", pkg: "", typ: $funcType([], [IP], false)}, {prop: "To16", name: "To16", pkg: "", typ: $funcType([], [IP], false)}, {prop: "DefaultMask", name: "DefaultMask", pkg: "", typ: $funcType([], [IPMask], false)}, {prop: "Mask", name: "Mask", pkg: "", typ: $funcType([IPMask], [IP], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "MarshalText", name: "MarshalText", pkg: "", typ: $funcType([], [sliceType$1, $error], false)}, {prop: "Equal", name: "Equal", pkg: "", typ: $funcType([IP], [$Bool], false)}, {prop: "matchAddrFamily", name: "matchAddrFamily", pkg: "net", typ: $funcType([IP], [$Bool], false)}];
+ ptrType$68.methods = [{prop: "UnmarshalText", name: "UnmarshalText", pkg: "", typ: $funcType([sliceType$1], [$error], false)}];
+ IPMask.methods = [{prop: "Size", name: "Size", pkg: "", typ: $funcType([], [$Int, $Int], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$5.methods = [{prop: "Contains", name: "Contains", pkg: "", typ: $funcType([IP], [$Bool], false)}, {prop: "Network", name: "Network", pkg: "", typ: $funcType([], [$String], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$8.methods = [{prop: "Network", name: "Network", pkg: "", typ: $funcType([], [$String], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "isWildcard", name: "isWildcard", pkg: "net", typ: $funcType([], [$Bool], false)}, {prop: "opAddr", name: "opAddr", pkg: "net", typ: $funcType([], [Addr], false)}, {prop: "family", name: "family", pkg: "net", typ: $funcType([], [$Int], false)}, {prop: "sockaddr", name: "sockaddr", pkg: "net", typ: $funcType([$Int], [syscall.Sockaddr, $error], false)}, {prop: "toLocal", name: "toLocal", pkg: "net", typ: $funcType([$String], [sockaddr], false)}];
+ HardwareAddr.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$50.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Timeout", name: "Timeout", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Temporary", name: "Temporary", pkg: "", typ: $funcType([], [$Bool], false)}];
+ ptrType$70.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$51.methods = [{prop: "Error", name: "Error", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Timeout", name: "Timeout", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Temporary", name: "Temporary", pkg: "", typ: $funcType([], [$Bool], false)}];
+ ptrType$37.methods = [{prop: "close", name: "close", pkg: "net", typ: $funcType([], [], false)}, {prop: "getLineFromData", name: "getLineFromData", pkg: "net", typ: $funcType([], [$String, $Bool], false)}, {prop: "readLine", name: "readLine", pkg: "net", typ: $funcType([], [$String, $Bool], false)}];
+ policyTableEntry.init("", [{prop: "Prefix", name: "Prefix", exported: true, typ: ptrType$5, tag: ""}, {prop: "Precedence", name: "Precedence", exported: true, typ: $Uint8, tag: ""}, {prop: "Label", name: "Label", exported: true, typ: $Uint8, tag: ""}]);
+ policyTable.init(policyTableEntry);
+ byMaskLength.init(policyTableEntry);
+ dnsRR_Header.init("", [{prop: "Name", name: "Name", exported: true, typ: $String, tag: ""}, {prop: "Rrtype", name: "Rrtype", exported: true, typ: $Uint16, tag: ""}, {prop: "Class", name: "Class", exported: true, typ: $Uint16, tag: ""}, {prop: "Ttl", name: "Ttl", exported: true, typ: $Uint32, tag: ""}, {prop: "Rdlength", name: "Rdlength", exported: true, typ: $Uint16, tag: ""}]);
+ dnsRR_CNAME.init("", [{prop: "Hdr", name: "Hdr", exported: true, typ: dnsRR_Header, tag: ""}, {prop: "Cname", name: "Cname", exported: true, typ: $String, tag: ""}]);
+ dnsRR_MX.init("", [{prop: "Hdr", name: "Hdr", exported: true, typ: dnsRR_Header, tag: ""}, {prop: "Pref", name: "Pref", exported: true, typ: $Uint16, tag: ""}, {prop: "Mx", name: "Mx", exported: true, typ: $String, tag: ""}]);
+ dnsRR_NS.init("", [{prop: "Hdr", name: "Hdr", exported: true, typ: dnsRR_Header, tag: ""}, {prop: "Ns", name: "Ns", exported: true, typ: $String, tag: ""}]);
+ dnsRR_PTR.init("", [{prop: "Hdr", name: "Hdr", exported: true, typ: dnsRR_Header, tag: ""}, {prop: "Ptr", name: "Ptr", exported: true, typ: $String, tag: ""}]);
+ dnsRR_SOA.init("", [{prop: "Hdr", name: "Hdr", exported: true, typ: dnsRR_Header, tag: ""}, {prop: "Ns", name: "Ns", exported: true, typ: $String, tag: ""}, {prop: "Mbox", name: "Mbox", exported: true, typ: $String, tag: ""}, {prop: "Serial", name: "Serial", exported: true, typ: $Uint32, tag: ""}, {prop: "Refresh", name: "Refresh", exported: true, typ: $Uint32, tag: ""}, {prop: "Retry", name: "Retry", exported: true, typ: $Uint32, tag: ""}, {prop: "Expire", name: "Expire", exported: true, typ: $Uint32, tag: ""}, {prop: "Minttl", name: "Minttl", exported: true, typ: $Uint32, tag: ""}]);
+ dnsRR_TXT.init("", [{prop: "Hdr", name: "Hdr", exported: true, typ: dnsRR_Header, tag: ""}, {prop: "Txt", name: "Txt", exported: true, typ: $String, tag: ""}]);
+ dnsRR_SRV.init("", [{prop: "Hdr", name: "Hdr", exported: true, typ: dnsRR_Header, tag: ""}, {prop: "Priority", name: "Priority", exported: true, typ: $Uint16, tag: ""}, {prop: "Weight", name: "Weight", exported: true, typ: $Uint16, tag: ""}, {prop: "Port", name: "Port", exported: true, typ: $Uint16, tag: ""}, {prop: "Target", name: "Target", exported: true, typ: $String, tag: ""}]);
+ dnsRR_A.init("", [{prop: "Hdr", name: "Hdr", exported: true, typ: dnsRR_Header, tag: ""}, {prop: "A", name: "A", exported: true, typ: $Uint32, tag: ""}]);
+ dnsRR_AAAA.init("", [{prop: "Hdr", name: "Hdr", exported: true, typ: dnsRR_Header, tag: ""}, {prop: "AAAA", name: "AAAA", exported: true, typ: arrayType, tag: ""}]);
+ Interface.init("", [{prop: "Index", name: "Index", exported: true, typ: $Int, tag: ""}, {prop: "MTU", name: "MTU", exported: true, typ: $Int, tag: ""}, {prop: "Name", name: "Name", exported: true, typ: $String, tag: ""}, {prop: "HardwareAddr", name: "HardwareAddr", exported: true, typ: HardwareAddr, tag: ""}, {prop: "Flags", name: "Flags", exported: true, typ: Flags, tag: ""}]);
+ ipv6ZoneCache.init("net", [{prop: "RWMutex", name: "", exported: true, typ: sync.RWMutex, tag: ""}, {prop: "lastFetched", name: "lastFetched", exported: false, typ: time.Time, tag: ""}, {prop: "toIndex", name: "toIndex", exported: false, typ: mapType$1, tag: ""}, {prop: "toName", name: "toName", exported: false, typ: mapType$2, tag: ""}]);
+ IP.init($Uint8);
+ IPMask.init($Uint8);
+ IPNet.init("", [{prop: "IP", name: "IP", exported: true, typ: IP, tag: ""}, {prop: "Mask", name: "Mask", exported: true, typ: IPMask, tag: ""}]);
+ IPAddr.init("", [{prop: "IP", name: "IP", exported: true, typ: IP, tag: ""}, {prop: "Zone", name: "Zone", exported: true, typ: $String, tag: ""}]);
+ HardwareAddr.init($Uint8);
+ Addr.init([{prop: "Network", name: "Network", pkg: "", typ: $funcType([], [$String], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}]);
+ OpError.init("", [{prop: "Op", name: "Op", exported: true, typ: $String, tag: ""}, {prop: "Net", name: "Net", exported: true, typ: $String, tag: ""}, {prop: "Source", name: "Source", exported: true, typ: Addr, tag: ""}, {prop: "Addr", name: "Addr", exported: true, typ: Addr, tag: ""}, {prop: "Err", name: "Err", exported: true, typ: $error, tag: ""}]);
+ timeout.init([{prop: "Timeout", name: "Timeout", pkg: "", typ: $funcType([], [$Bool], false)}]);
+ temporary.init([{prop: "Temporary", name: "Temporary", pkg: "", typ: $funcType([], [$Bool], false)}]);
+ ParseError.init("", [{prop: "Type", name: "Type", exported: true, typ: $String, tag: ""}, {prop: "Text", name: "Text", exported: true, typ: $String, tag: ""}]);
+ AddrError.init("", [{prop: "Err", name: "Err", exported: true, typ: $String, tag: ""}, {prop: "Addr", name: "Addr", exported: true, typ: $String, tag: ""}]);
+ file.init("net", [{prop: "file", name: "file", exported: false, typ: ptrType$33, tag: ""}, {prop: "data", name: "data", exported: false, typ: sliceType$1, tag: ""}, {prop: "atEOF", name: "atEOF", exported: false, typ: $Bool, tag: ""}]);
+ sockaddr.init([{prop: "Network", name: "Network", pkg: "", typ: $funcType([], [$String], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "family", name: "family", pkg: "net", typ: $funcType([], [$Int], false)}, {prop: "isWildcard", name: "isWildcard", pkg: "net", typ: $funcType([], [$Bool], false)}, {prop: "sockaddr", name: "sockaddr", pkg: "net", typ: $funcType([$Int], [syscall.Sockaddr, $error], false)}, {prop: "toLocal", name: "toLocal", pkg: "net", typ: $funcType([$String], [sockaddr], false)}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = context.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = js.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = nettrace.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = singleflight.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = rand.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = os.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = runtime.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sort.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = atomic.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = syscall.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = time.$init(); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ supportsIPv4 = false;
+ supportsIPv6 = false;
+ supportsIPv4map = false;
+ netGo = false;
+ rr_mk = $makeMap($Int.keyFor, [{ k: 5, v: (function() {
+ var $ptr;
+ return new dnsRR_CNAME.ptr(new dnsRR_Header.ptr("", 0, 0, 0, 0), "");
+ }) }, { k: 15, v: (function() {
+ var $ptr;
+ return new dnsRR_MX.ptr(new dnsRR_Header.ptr("", 0, 0, 0, 0), 0, "");
+ }) }, { k: 2, v: (function() {
+ var $ptr;
+ return new dnsRR_NS.ptr(new dnsRR_Header.ptr("", 0, 0, 0, 0), "");
+ }) }, { k: 12, v: (function() {
+ var $ptr;
+ return new dnsRR_PTR.ptr(new dnsRR_Header.ptr("", 0, 0, 0, 0), "");
+ }) }, { k: 6, v: (function() {
+ var $ptr;
+ return new dnsRR_SOA.ptr(new dnsRR_Header.ptr("", 0, 0, 0, 0), "", "", 0, 0, 0, 0, 0);
+ }) }, { k: 16, v: (function() {
+ var $ptr;
+ return new dnsRR_TXT.ptr(new dnsRR_Header.ptr("", 0, 0, 0, 0), "");
+ }) }, { k: 33, v: (function() {
+ var $ptr;
+ return new dnsRR_SRV.ptr(new dnsRR_Header.ptr("", 0, 0, 0, 0), 0, 0, 0, "");
+ }) }, { k: 1, v: (function() {
+ var $ptr;
+ return new dnsRR_A.ptr(new dnsRR_Header.ptr("", 0, 0, 0, 0), 0);
+ }) }, { k: 28, v: (function() {
+ var $ptr;
+ return new dnsRR_AAAA.ptr(new dnsRR_Header.ptr("", 0, 0, 0, 0), arrayType.zero());
+ }) }]);
+ testHookLookupIP = (function $b(ctx, fn, host) {
+ var $ptr, _r, ctx, fn, host, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; ctx = $f.ctx; fn = $f.fn; host = $f.host; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = fn(ctx, host); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f.$ptr = $ptr; $f._r = _r; $f.ctx = ctx; $f.fn = fn; $f.host = host; $f.$s = $s; $f.$r = $r; return $f;
+ });
+ errInvalidInterface = errors.New("invalid network interface");
+ errInvalidInterfaceIndex = errors.New("invalid network interface index");
+ errInvalidInterfaceName = errors.New("invalid network interface name");
+ errNoSuchInterface = errors.New("no such network interface");
+ errNoSuchMulticastInterface = errors.New("no such multicast network interface");
+ flagNames = new sliceType(["up", "broadcast", "loopback", "pointtopoint", "multicast"]);
+ zoneCache = new ipv6ZoneCache.ptr(new sync.RWMutex.ptr(new sync.Mutex.ptr(0, 0), 0, 0, 0, 0), new time.Time.ptr(new $Int64(0, 0), 0, ptrType.nil), {}, {});
+ v4InV6Prefix = new sliceType$1([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255]);
+ $pkg.IPv4bcast = IPv4(255, 255, 255, 255);
+ $pkg.IPv4allsys = IPv4(224, 0, 0, 1);
+ $pkg.IPv4allrouter = IPv4(224, 0, 0, 2);
+ $pkg.IPv4zero = IPv4(0, 0, 0, 0);
+ $pkg.IPv6unspecified = new IP([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);
+ $pkg.IPv6loopback = new IP([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]);
+ classAMask = IPv4Mask(255, 0, 0, 0);
+ classBMask = IPv4Mask(255, 255, 0, 0);
+ classCMask = IPv4Mask(255, 255, 255, 0);
+ listenerBacklog = maxListenerBacklog();
+ errNoSuitableAddress = errors.New("no suitable address found");
+ errMissingAddress = errors.New("missing address");
+ errCanceled = errors.New("operation was canceled");
+ errClosing = errors.New("use of closed network connection");
+ $pkg.ErrWriteToConnected = errors.New("use of WriteTo with pre-connected connection");
+ aLongTimeAgo = $clone(time.Unix(new $Int64(0, 1), new $Int64(0, 0)), time.Time);
+ errNoSuchHost = errors.New("no such host");
+ threadLimit = new $Chan(structType$1, 500);
+ _r = mustCIDR("::1/128"); /* */ $s = 15; case 15: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = mustCIDR("::/0"); /* */ $s = 16; case 16: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$2 = mustCIDR("::ffff:0:0/96"); /* */ $s = 17; case 17: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$3 = mustCIDR("2002::/16"); /* */ $s = 18; case 18: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$4 = mustCIDR("2001::/32"); /* */ $s = 19; case 19: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$5 = mustCIDR("fc00::/7"); /* */ $s = 20; case 20: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _r$6 = mustCIDR("::/96"); /* */ $s = 21; case 21: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$7 = mustCIDR("fec0::/10"); /* */ $s = 22; case 22: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _r$8 = mustCIDR("3ffe::/16"); /* */ $s = 23; case 23: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ rfc6724policyTable = new policyTable([new policyTableEntry.ptr(_r, 50, 0), new policyTableEntry.ptr(_r$1, 40, 1), new policyTableEntry.ptr(_r$2, 35, 4), new policyTableEntry.ptr(_r$3, 30, 2), new policyTableEntry.ptr(_r$4, 5, 5), new policyTableEntry.ptr(_r$5, 3, 13), new policyTableEntry.ptr(_r$6, 1, 3), new policyTableEntry.ptr(_r$7, 1, 11), new policyTableEntry.ptr(_r$8, 1, 12)]);
+ $r = init(); /* */ $s = 24; case 24: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ init$1();
+ init$2();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["github.com/satori/go.uuid"] = (function() {
+ var $pkg = {}, $init, bytes, md5, rand, sha1, driver, binary, hex, fmt, hash, net, os, sync, time, UUID, sliceType, sliceType$1, arrayType$1, sliceType$2, ptrType, posixUID, posixGID, urnPrefix, byteGroups, _tuple, _r, _tuple$1, _r$1, _tuple$2, _r$2, _tuple$3, _r$3, Equal, FromString, NewV5, newFromHash;
+ bytes = $packages["bytes"];
+ md5 = $packages["crypto/md5"];
+ rand = $packages["crypto/rand"];
+ sha1 = $packages["crypto/sha1"];
+ driver = $packages["database/sql/driver"];
+ binary = $packages["encoding/binary"];
+ hex = $packages["encoding/hex"];
+ fmt = $packages["fmt"];
+ hash = $packages["hash"];
+ net = $packages["net"];
+ os = $packages["os"];
+ sync = $packages["sync"];
+ time = $packages["time"];
+ UUID = $pkg.UUID = $newType(16, $kindArray, "uuid.UUID", true, "github.com/satori/go.uuid", true, null);
+ sliceType = $sliceType($Uint8);
+ sliceType$1 = $sliceType($Int);
+ arrayType$1 = $arrayType($Uint8, 16);
+ sliceType$2 = $sliceType($emptyInterface);
+ ptrType = $ptrType(UUID);
+ Equal = function(u1, u2) {
+ var $ptr, u1, u2;
+ return bytes.Equal(new sliceType(u1), new sliceType(u2));
+ };
+ $pkg.Equal = Equal;
+ UUID.prototype.Version = function() {
+ var $ptr, u;
+ u = this.$val;
+ return (((u[6] >>> 4 << 24 >>> 24) >>> 0));
+ };
+ $ptrType(UUID).prototype.Version = function() { return new UUID(this.$get()).Version(); };
+ UUID.prototype.Variant = function() {
+ var $ptr, u;
+ u = this.$val;
+ if (((((u[8] & 128) >>> 0)) === 0)) {
+ return 0;
+ } else if (((((((u[8] & 192) >>> 0)) | 128) >>> 0) === 128)) {
+ return 1;
+ } else if (((((((u[8] & 224) >>> 0)) | 192) >>> 0) === 192)) {
+ return 2;
+ }
+ return 3;
+ };
+ $ptrType(UUID).prototype.Variant = function() { return new UUID(this.$get()).Variant(); };
+ UUID.prototype.Bytes = function() {
+ var $ptr, u;
+ u = this.$val;
+ return new sliceType(u);
+ };
+ $ptrType(UUID).prototype.Bytes = function() { return new UUID(this.$get()).Bytes(); };
+ UUID.prototype.String = function() {
+ var $ptr, buf, u;
+ u = this.$val;
+ buf = $makeSlice(sliceType, 36);
+ hex.Encode($subslice(buf, 0, 8), $subslice(new sliceType(u), 0, 4));
+ (8 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 8] = 45);
+ hex.Encode($subslice(buf, 9, 13), $subslice(new sliceType(u), 4, 6));
+ (13 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 13] = 45);
+ hex.Encode($subslice(buf, 14, 18), $subslice(new sliceType(u), 6, 8));
+ (18 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 18] = 45);
+ hex.Encode($subslice(buf, 19, 23), $subslice(new sliceType(u), 8, 10));
+ (23 >= buf.$length ? ($throwRuntimeError("index out of range"), undefined) : buf.$array[buf.$offset + 23] = 45);
+ hex.Encode($subslice(buf, 24), $subslice(new sliceType(u), 10));
+ return ($bytesToString(buf));
+ };
+ $ptrType(UUID).prototype.String = function() { return new UUID(this.$get()).String(); };
+ UUID.prototype.SetVersion = function(v) {
+ var $ptr, u, v;
+ u = this.$val;
+ u.nilCheck, u[6] = ((((((u.nilCheck, u[6]) & 15) >>> 0)) | ((v << 4 << 24 >>> 24))) >>> 0);
+ };
+ $ptrType(UUID).prototype.SetVersion = function(v) { return (new UUID(this.$get())).SetVersion(v); };
+ UUID.prototype.SetVariant = function() {
+ var $ptr, u;
+ u = this.$val;
+ u.nilCheck, u[8] = ((((((u.nilCheck, u[8]) & 191) >>> 0)) | 128) >>> 0);
+ };
+ $ptrType(UUID).prototype.SetVariant = function() { return (new UUID(this.$get())).SetVariant(); };
+ UUID.prototype.MarshalText = function() {
+ var $ptr, err, text, u;
+ text = sliceType.nil;
+ err = $ifaceNil;
+ u = this.$val;
+ text = (new sliceType($stringToBytes(new UUID($clone(u, UUID)).String())));
+ return [text, err];
+ };
+ $ptrType(UUID).prototype.MarshalText = function() { return new UUID(this.$get()).MarshalText(); };
+ UUID.prototype.UnmarshalText = function(text) {
+ var $ptr, _i, _q, _q$1, _r$4, _r$5, _r$6, _r$7, _ref, _tuple$4, b, braced, byteGroup, err, i, t, text, u, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _q = $f._q; _q$1 = $f._q$1; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _ref = $f._ref; _tuple$4 = $f._tuple$4; b = $f.b; braced = $f.braced; byteGroup = $f.byteGroup; err = $f.err; i = $f.i; t = $f.t; text = $f.text; u = $f.u; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ err = $ifaceNil;
+ u = this.$val;
+ /* */ if (text.$length < 32) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (text.$length < 32) { */ case 1:
+ _r$4 = fmt.Errorf("uuid: UUID string too short: %s", new sliceType$2([text])); /* */ $s = 3; case 3: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ err = _r$4;
+ $s = -1; return err;
+ /* } */ case 2:
+ t = text;
+ braced = false;
+ if (bytes.Equal($subslice(t, 0, 9), urnPrefix)) {
+ t = $subslice(t, 9);
+ } else if ((0 >= t.$length ? ($throwRuntimeError("index out of range"), undefined) : t.$array[t.$offset + 0]) === 123) {
+ braced = true;
+ t = $subslice(t, 1);
+ }
+ b = new sliceType(u);
+ _ref = byteGroups;
+ _i = 0;
+ /* while (true) { */ case 4:
+ /* if (!(_i < _ref.$length)) { break; } */ if(!(_i < _ref.$length)) { $s = 5; continue; }
+ i = _i;
+ byteGroup = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ /* */ if (i > 0) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (i > 0) { */ case 6:
+ /* */ if (!(((0 >= t.$length ? ($throwRuntimeError("index out of range"), undefined) : t.$array[t.$offset + 0]) === 45))) { $s = 8; continue; }
+ /* */ $s = 9; continue;
+ /* if (!(((0 >= t.$length ? ($throwRuntimeError("index out of range"), undefined) : t.$array[t.$offset + 0]) === 45))) { */ case 8:
+ _r$5 = fmt.Errorf("uuid: invalid string format", new sliceType$2([])); /* */ $s = 10; case 10: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ err = _r$5;
+ $s = -1; return err;
+ /* } */ case 9:
+ t = $subslice(t, 1);
+ /* } */ case 7:
+ /* */ if (t.$length < byteGroup) { $s = 11; continue; }
+ /* */ $s = 12; continue;
+ /* if (t.$length < byteGroup) { */ case 11:
+ _r$6 = fmt.Errorf("uuid: UUID string too short: %s", new sliceType$2([text])); /* */ $s = 13; case 13: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ err = _r$6;
+ $s = -1; return err;
+ /* } */ case 12:
+ /* */ if ((i === 4) && t.$length > byteGroup && ((braced && !((((byteGroup < 0 || byteGroup >= t.$length) ? ($throwRuntimeError("index out of range"), undefined) : t.$array[t.$offset + byteGroup]) === 125))) || $subslice(t, byteGroup).$length > 1 || !braced)) { $s = 14; continue; }
+ /* */ $s = 15; continue;
+ /* if ((i === 4) && t.$length > byteGroup && ((braced && !((((byteGroup < 0 || byteGroup >= t.$length) ? ($throwRuntimeError("index out of range"), undefined) : t.$array[t.$offset + byteGroup]) === 125))) || $subslice(t, byteGroup).$length > 1 || !braced)) { */ case 14:
+ _r$7 = fmt.Errorf("uuid: UUID string too long: %s", new sliceType$2([text])); /* */ $s = 16; case 16: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ err = _r$7;
+ $s = -1; return err;
+ /* } */ case 15:
+ _tuple$4 = hex.Decode($subslice(b, 0, (_q = byteGroup / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"))), $subslice(t, 0, byteGroup));
+ err = _tuple$4[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ t = $subslice(t, byteGroup);
+ b = $subslice(b, (_q$1 = byteGroup / 2, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero")));
+ _i++;
+ /* } */ $s = 4; continue; case 5:
+ $s = -1; return err;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: UUID.prototype.UnmarshalText }; } $f.$ptr = $ptr; $f._i = _i; $f._q = _q; $f._q$1 = _q$1; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._ref = _ref; $f._tuple$4 = _tuple$4; $f.b = b; $f.braced = braced; $f.byteGroup = byteGroup; $f.err = err; $f.i = i; $f.t = t; $f.text = text; $f.u = u; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(UUID).prototype.UnmarshalText = function(text) { return (new UUID(this.$get())).UnmarshalText(text); };
+ UUID.prototype.MarshalBinary = function() {
+ var $ptr, data, err, u;
+ data = sliceType.nil;
+ err = $ifaceNil;
+ u = this.$val;
+ data = new UUID($clone(u, UUID)).Bytes();
+ return [data, err];
+ };
+ $ptrType(UUID).prototype.MarshalBinary = function() { return new UUID(this.$get()).MarshalBinary(); };
+ UUID.prototype.UnmarshalBinary = function(data) {
+ var $ptr, _r$4, data, err, u, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; data = $f.data; err = $f.err; u = $f.u; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ err = $ifaceNil;
+ u = this.$val;
+ /* */ if (!((data.$length === 16))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!((data.$length === 16))) { */ case 1:
+ _r$4 = fmt.Errorf("uuid: UUID must be exactly 16 bytes long, got %d bytes", new sliceType$2([new $Int(data.$length)])); /* */ $s = 3; case 3: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ err = _r$4;
+ $s = -1; return err;
+ /* } */ case 2:
+ $copySlice(new sliceType(u), data);
+ $s = -1; return err;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: UUID.prototype.UnmarshalBinary }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f.data = data; $f.err = err; $f.u = u; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(UUID).prototype.UnmarshalBinary = function(data) { return (new UUID(this.$get())).UnmarshalBinary(data); };
+ UUID.prototype.Value = function() {
+ var $ptr, u;
+ u = this.$val;
+ return [new $String(new UUID($clone(u, UUID)).String()), $ifaceNil];
+ };
+ $ptrType(UUID).prototype.Value = function() { return new UUID(this.$get()).Value(); };
+ UUID.prototype.Scan = function(src) {
+ var $ptr, _r$4, _r$5, _r$6, _r$7, _ref, src, src$1, src$2, u, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _ref = $f._ref; src = $f.src; src$1 = $f.src$1; src$2 = $f.src$2; u = $f.u; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ u = this.$val;
+ _ref = src;
+ /* */ if ($assertType(_ref, sliceType, true)[1]) { $s = 1; continue; }
+ /* */ if ($assertType(_ref, $String, true)[1]) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if ($assertType(_ref, sliceType, true)[1]) { */ case 1:
+ src$1 = _ref.$val;
+ /* */ if (src$1.$length === 16) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (src$1.$length === 16) { */ case 4:
+ _r$4 = new ptrType(u).UnmarshalBinary(src$1); /* */ $s = 6; case 6: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ $s = -1; return _r$4;
+ /* } */ case 5:
+ _r$5 = new ptrType(u).UnmarshalText(src$1); /* */ $s = 7; case 7: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ $s = -1; return _r$5;
+ /* } else if ($assertType(_ref, $String, true)[1]) { */ case 2:
+ src$2 = _ref.$val;
+ _r$6 = new ptrType(u).UnmarshalText((new sliceType($stringToBytes(src$2)))); /* */ $s = 8; case 8: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return _r$6;
+ /* } */ case 3:
+ _r$7 = fmt.Errorf("uuid: cannot convert %T to UUID", new sliceType$2([src])); /* */ $s = 9; case 9: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ $s = -1; return _r$7;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: UUID.prototype.Scan }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._ref = _ref; $f.src = src; $f.src$1 = src$1; $f.src$2 = src$2; $f.u = u; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(UUID).prototype.Scan = function(src) { return (new UUID(this.$get())).Scan(src); };
+ FromString = function(input) {
+ var $ptr, _r$4, err, input, u, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; err = $f.err; input = $f.input; u = $f.u; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ u = arrayType$1.zero();
+ err = $ifaceNil;
+ _r$4 = new ptrType(u).UnmarshalText((new sliceType($stringToBytes(input)))); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ err = _r$4;
+ $s = -1; return [u, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: FromString }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f.err = err; $f.input = input; $f.u = u; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.FromString = FromString;
+ NewV5 = function(ns, name) {
+ var $ptr, _r$4, name, ns, u, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; name = $f.name; ns = $f.ns; u = $f.u; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$4 = newFromHash(sha1.New(), $clone(ns, UUID), name); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ u = $clone(_r$4, UUID);
+ new ptrType(u).SetVersion(5);
+ new ptrType(u).SetVariant();
+ $s = -1; return u;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: NewV5 }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f.name = name; $f.ns = ns; $f.u = u; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.NewV5 = NewV5;
+ newFromHash = function(h, ns, name) {
+ var $ptr, _r$4, _r$5, _r$6, h, name, ns, u, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; h = $f.h; name = $f.name; ns = $f.ns; u = $f.u; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ u = arrayType$1.zero();
+ _r$4 = h.Write(new sliceType(ns)); /* */ $s = 1; case 1: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$4;
+ _r$5 = h.Write((new sliceType($stringToBytes(name)))); /* */ $s = 2; case 2: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _r$5;
+ _r$6 = h.Sum(sliceType.nil); /* */ $s = 3; case 3: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $copySlice(new sliceType(u), _r$6);
+ $s = -1; return u;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: newFromHash }; } $f.$ptr = $ptr; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f.h = h; $f.name = name; $f.ns = ns; $f.u = u; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ UUID.methods = [{prop: "Version", name: "Version", pkg: "", typ: $funcType([], [$Uint], false)}, {prop: "Variant", name: "Variant", pkg: "", typ: $funcType([], [$Uint], false)}, {prop: "Bytes", name: "Bytes", pkg: "", typ: $funcType([], [sliceType], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "MarshalText", name: "MarshalText", pkg: "", typ: $funcType([], [sliceType, $error], false)}, {prop: "MarshalBinary", name: "MarshalBinary", pkg: "", typ: $funcType([], [sliceType, $error], false)}, {prop: "Value", name: "Value", pkg: "", typ: $funcType([], [driver.Value, $error], false)}];
+ ptrType.methods = [{prop: "SetVersion", name: "SetVersion", pkg: "", typ: $funcType([$Uint8], [], false)}, {prop: "SetVariant", name: "SetVariant", pkg: "", typ: $funcType([], [], false)}, {prop: "UnmarshalText", name: "UnmarshalText", pkg: "", typ: $funcType([sliceType], [$error], false)}, {prop: "UnmarshalBinary", name: "UnmarshalBinary", pkg: "", typ: $funcType([sliceType], [$error], false)}, {prop: "Scan", name: "Scan", pkg: "", typ: $funcType([$emptyInterface], [$error], false)}];
+ UUID.init($Uint8, 16);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = md5.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = rand.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sha1.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = driver.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = binary.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hex.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hash.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = net.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = os.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = time.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ posixUID = ((os.Getuid() >>> 0));
+ posixGID = ((os.Getgid() >>> 0));
+ urnPrefix = (new sliceType($stringToBytes("urn:uuid:")));
+ byteGroups = new sliceType$1([8, 4, 4, 4, 12]);
+ $pkg.Nil = arrayType$1.zero();
+ _r = FromString("6ba7b810-9dad-11d1-80b4-00c04fd430c8"); /* */ $s = 14; case 14: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ $pkg.NamespaceDNS = $clone(_tuple[0], UUID);
+ _r$1 = FromString("6ba7b811-9dad-11d1-80b4-00c04fd430c8"); /* */ $s = 15; case 15: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ $pkg.NamespaceURL = $clone(_tuple$1[0], UUID);
+ _r$2 = FromString("6ba7b812-9dad-11d1-80b4-00c04fd430c8"); /* */ $s = 16; case 16: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$2 = _r$2;
+ $pkg.NamespaceOID = $clone(_tuple$2[0], UUID);
+ _r$3 = FromString("6ba7b814-9dad-11d1-80b4-00c04fd430c8"); /* */ $s = 17; case 17: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _tuple$3 = _r$3;
+ $pkg.NamespaceX500 = $clone(_tuple$3[0], UUID);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["crypto/sha256"] = (function() {
+ var $pkg = {}, $init, crypto, hash, digest, sliceType, arrayType, arrayType$1, sliceType$1, arrayType$2, arrayType$4, ptrType, _K, block, init, New, New224, blockGeneric;
+ crypto = $packages["crypto"];
+ hash = $packages["hash"];
+ digest = $pkg.digest = $newType(0, $kindStruct, "sha256.digest", true, "crypto/sha256", false, function(h_, x_, nx_, len_, is224_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.h = arrayType.zero();
+ this.x = arrayType$1.zero();
+ this.nx = 0;
+ this.len = new $Uint64(0, 0);
+ this.is224 = false;
+ return;
+ }
+ this.h = h_;
+ this.x = x_;
+ this.nx = nx_;
+ this.len = len_;
+ this.is224 = is224_;
+ });
+ sliceType = $sliceType($Uint32);
+ arrayType = $arrayType($Uint32, 8);
+ arrayType$1 = $arrayType($Uint8, 64);
+ sliceType$1 = $sliceType($Uint8);
+ arrayType$2 = $arrayType($Uint8, 32);
+ arrayType$4 = $arrayType($Uint32, 64);
+ ptrType = $ptrType(digest);
+ init = function() {
+ var $ptr;
+ crypto.RegisterHash(4, New224);
+ crypto.RegisterHash(5, New);
+ };
+ digest.ptr.prototype.Reset = function() {
+ var $ptr, d;
+ d = this;
+ if (!d.is224) {
+ d.h[0] = 1779033703;
+ d.h[1] = 3144134277;
+ d.h[2] = 1013904242;
+ d.h[3] = 2773480762;
+ d.h[4] = 1359893119;
+ d.h[5] = 2600822924;
+ d.h[6] = 528734635;
+ d.h[7] = 1541459225;
+ } else {
+ d.h[0] = 3238371032;
+ d.h[1] = 914150663;
+ d.h[2] = 812702999;
+ d.h[3] = 4144912697;
+ d.h[4] = 4290775857;
+ d.h[5] = 1750603025;
+ d.h[6] = 1694076839;
+ d.h[7] = 3204075428;
+ }
+ d.nx = 0;
+ d.len = new $Uint64(0, 0);
+ };
+ digest.prototype.Reset = function() { return this.$val.Reset(); };
+ New = function() {
+ var $ptr, d;
+ d = new digest.ptr(arrayType.zero(), arrayType$1.zero(), 0, new $Uint64(0, 0), false);
+ d.Reset();
+ return d;
+ };
+ $pkg.New = New;
+ New224 = function() {
+ var $ptr, d;
+ d = new digest.ptr(arrayType.zero(), arrayType$1.zero(), 0, new $Uint64(0, 0), false);
+ d.is224 = true;
+ d.Reset();
+ return d;
+ };
+ $pkg.New224 = New224;
+ digest.ptr.prototype.Size = function() {
+ var $ptr, d;
+ d = this;
+ if (!d.is224) {
+ return 32;
+ }
+ return 28;
+ };
+ digest.prototype.Size = function() { return this.$val.Size(); };
+ digest.ptr.prototype.BlockSize = function() {
+ var $ptr, d;
+ d = this;
+ return 64;
+ };
+ digest.prototype.BlockSize = function() { return this.$val.BlockSize(); };
+ digest.ptr.prototype.Write = function(p) {
+ var $ptr, d, err, n, n$1, nn, p, x, x$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; d = $f.d; err = $f.err; n = $f.n; n$1 = $f.n$1; nn = $f.nn; p = $f.p; x = $f.x; x$1 = $f.x$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ nn = 0;
+ err = $ifaceNil;
+ d = this;
+ nn = p.$length;
+ d.len = (x = d.len, x$1 = (new $Uint64(0, nn)), new $Uint64(x.$high + x$1.$high, x.$low + x$1.$low));
+ /* */ if (d.nx > 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (d.nx > 0) { */ case 1:
+ n = $copySlice($subslice(new sliceType$1(d.x), d.nx), p);
+ d.nx = d.nx + (n) >> 0;
+ /* */ if (d.nx === 64) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (d.nx === 64) { */ case 3:
+ $r = block(d, new sliceType$1(d.x)); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ d.nx = 0;
+ /* } */ case 4:
+ p = $subslice(p, n);
+ /* } */ case 2:
+ /* */ if (p.$length >= 64) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (p.$length >= 64) { */ case 6:
+ n$1 = (p.$length & ~63) >> 0;
+ $r = block(d, $subslice(p, 0, n$1)); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ p = $subslice(p, n$1);
+ /* } */ case 7:
+ if (p.$length > 0) {
+ d.nx = $copySlice(new sliceType$1(d.x), p);
+ }
+ $s = -1; return [nn, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: digest.ptr.prototype.Write }; } $f.$ptr = $ptr; $f.d = d; $f.err = err; $f.n = n; $f.n$1 = n$1; $f.nn = nn; $f.p = p; $f.x = x; $f.x$1 = x$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ digest.prototype.Write = function(p) { return this.$val.Write(p); };
+ digest.ptr.prototype.Sum = function(in$1) {
+ var $ptr, _r, d, d0, hash$1, in$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; d = $f.d; d0 = $f.d0; hash$1 = $f.hash$1; in$1 = $f.in$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d0 = this;
+ d = $clone(d0, digest);
+ _r = d.checkSum(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ hash$1 = $clone(_r, arrayType$2);
+ if (d.is224) {
+ $s = -1; return $appendSlice(in$1, $subslice(new sliceType$1(hash$1), 0, 28));
+ }
+ $s = -1; return $appendSlice(in$1, new sliceType$1(hash$1));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: digest.ptr.prototype.Sum }; } $f.$ptr = $ptr; $f._r = _r; $f.d = d; $f.d0 = d0; $f.hash$1 = hash$1; $f.in$1 = in$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ digest.prototype.Sum = function(in$1) { return this.$val.Sum(in$1); };
+ digest.ptr.prototype.checkSum = function() {
+ var $ptr, _i, _r, _r$1, _r$2, _ref, d, digest$1, h, i, i$1, len, s, tmp, x, x$1, x$2, x$3, x$4, x$5, x$6, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _ref = $f._ref; d = $f.d; digest$1 = $f.digest$1; h = $f.h; i = $f.i; i$1 = $f.i$1; len = $f.len; s = $f.s; tmp = $f.tmp; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ len = d.len;
+ tmp = arrayType$1.zero();
+ tmp[0] = 128;
+ /* */ if ((x = $div64(len, new $Uint64(0, 64), true), (x.$high < 0 || (x.$high === 0 && x.$low < 56)))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ((x = $div64(len, new $Uint64(0, 64), true), (x.$high < 0 || (x.$high === 0 && x.$low < 56)))) { */ case 1:
+ _r = d.Write($subslice(new sliceType$1(tmp), 0, $flatten64((x$1 = $div64(len, new $Uint64(0, 64), true), new $Uint64(0 - x$1.$high, 56 - x$1.$low))))); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = 3; continue;
+ /* } else { */ case 2:
+ _r$1 = d.Write($subslice(new sliceType$1(tmp), 0, $flatten64((x$2 = $div64(len, new $Uint64(0, 64), true), new $Uint64(0 - x$2.$high, 120 - x$2.$low))))); /* */ $s = 5; case 5: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ /* } */ case 3:
+ len = $shiftLeft64(len, (3));
+ i = 0;
+ while (true) {
+ if (!(i < 8)) { break; }
+ ((i < 0 || i >= tmp.length) ? ($throwRuntimeError("index out of range"), undefined) : tmp[i] = (($shiftRightUint64(len, ((56 - (8 * i >>> 0) >>> 0))).$low << 24 >>> 24)));
+ i = i + (1) >>> 0;
+ }
+ _r$2 = d.Write($subslice(new sliceType$1(tmp), 0, 8)); /* */ $s = 6; case 6: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ if (!((d.nx === 0))) {
+ $panic(new $String("d.nx != 0"));
+ }
+ h = new sliceType(d.h);
+ if (d.is224) {
+ h = $subslice(new sliceType(d.h), 0, 7);
+ }
+ digest$1 = arrayType$2.zero();
+ _ref = h;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i$1 = _i;
+ s = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ (x$3 = $imul(i$1, 4), ((x$3 < 0 || x$3 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$3] = (((s >>> 24 >>> 0) << 24 >>> 24))));
+ (x$4 = ($imul(i$1, 4)) + 1 >> 0, ((x$4 < 0 || x$4 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$4] = (((s >>> 16 >>> 0) << 24 >>> 24))));
+ (x$5 = ($imul(i$1, 4)) + 2 >> 0, ((x$5 < 0 || x$5 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$5] = (((s >>> 8 >>> 0) << 24 >>> 24))));
+ (x$6 = ($imul(i$1, 4)) + 3 >> 0, ((x$6 < 0 || x$6 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$6] = ((s << 24 >>> 24))));
+ _i++;
+ }
+ $s = -1; return digest$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: digest.ptr.prototype.checkSum }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._ref = _ref; $f.d = d; $f.digest$1 = digest$1; $f.h = h; $f.i = i; $f.i$1 = i$1; $f.len = len; $f.s = s; $f.tmp = tmp; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ digest.prototype.checkSum = function() { return this.$val.checkSum(); };
+ blockGeneric = function(dig, p) {
+ var $ptr, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$18, _tmp$19, _tmp$2, _tmp$20, _tmp$21, _tmp$22, _tmp$23, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, a, b, c, d, dig, e, f, g, h, h0, h1, h2, h3, h4, h5, h6, h7, i, i$1, i$2, j, p, t1, t1$1, t2, t2$1, v1, v2, w, x, x$1, x$2, x$3, x$4, x$5, x$6;
+ w = arrayType$4.zero();
+ _tmp = dig.h[0];
+ _tmp$1 = dig.h[1];
+ _tmp$2 = dig.h[2];
+ _tmp$3 = dig.h[3];
+ _tmp$4 = dig.h[4];
+ _tmp$5 = dig.h[5];
+ _tmp$6 = dig.h[6];
+ _tmp$7 = dig.h[7];
+ h0 = _tmp;
+ h1 = _tmp$1;
+ h2 = _tmp$2;
+ h3 = _tmp$3;
+ h4 = _tmp$4;
+ h5 = _tmp$5;
+ h6 = _tmp$6;
+ h7 = _tmp$7;
+ while (true) {
+ if (!(p.$length >= 64)) { break; }
+ i = 0;
+ while (true) {
+ if (!(i < 16)) { break; }
+ j = $imul(i, 4);
+ ((i < 0 || i >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[i] = (((((((((((j < 0 || j >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + j]) >>> 0)) << 24 >>> 0) | ((((x = j + 1 >> 0, ((x < 0 || x >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x])) >>> 0)) << 16 >>> 0)) >>> 0) | ((((x$1 = j + 2 >> 0, ((x$1 < 0 || x$1 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$1])) >>> 0)) << 8 >>> 0)) >>> 0) | (((x$2 = j + 3 >> 0, ((x$2 < 0 || x$2 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$2])) >>> 0))) >>> 0));
+ i = i + (1) >> 0;
+ }
+ i$1 = 16;
+ while (true) {
+ if (!(i$1 < 64)) { break; }
+ v1 = (x$3 = i$1 - 2 >> 0, ((x$3 < 0 || x$3 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$3]));
+ t1 = (((((((v1 >>> 17 >>> 0) | (v1 << 15 >>> 0)) >>> 0)) ^ ((((v1 >>> 19 >>> 0) | (v1 << 13 >>> 0)) >>> 0))) >>> 0) ^ ((v1 >>> 10 >>> 0))) >>> 0;
+ v2 = (x$4 = i$1 - 15 >> 0, ((x$4 < 0 || x$4 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$4]));
+ t2 = (((((((v2 >>> 7 >>> 0) | (v2 << 25 >>> 0)) >>> 0)) ^ ((((v2 >>> 18 >>> 0) | (v2 << 14 >>> 0)) >>> 0))) >>> 0) ^ ((v2 >>> 3 >>> 0))) >>> 0;
+ ((i$1 < 0 || i$1 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[i$1] = (((t1 + (x$5 = i$1 - 7 >> 0, ((x$5 < 0 || x$5 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$5])) >>> 0) + t2 >>> 0) + (x$6 = i$1 - 16 >> 0, ((x$6 < 0 || x$6 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$6])) >>> 0));
+ i$1 = i$1 + (1) >> 0;
+ }
+ _tmp$8 = h0;
+ _tmp$9 = h1;
+ _tmp$10 = h2;
+ _tmp$11 = h3;
+ _tmp$12 = h4;
+ _tmp$13 = h5;
+ _tmp$14 = h6;
+ _tmp$15 = h7;
+ a = _tmp$8;
+ b = _tmp$9;
+ c = _tmp$10;
+ d = _tmp$11;
+ e = _tmp$12;
+ f = _tmp$13;
+ g = _tmp$14;
+ h = _tmp$15;
+ i$2 = 0;
+ while (true) {
+ if (!(i$2 < 64)) { break; }
+ t1$1 = (((h + (((((((((e >>> 6 >>> 0) | (e << 26 >>> 0)) >>> 0)) ^ ((((e >>> 11 >>> 0) | (e << 21 >>> 0)) >>> 0))) >>> 0) ^ ((((e >>> 25 >>> 0) | (e << 7 >>> 0)) >>> 0))) >>> 0)) >>> 0) + ((((((e & f) >>> 0)) ^ ((((~e >>> 0) & g) >>> 0))) >>> 0)) >>> 0) + ((i$2 < 0 || i$2 >= _K.$length) ? ($throwRuntimeError("index out of range"), undefined) : _K.$array[_K.$offset + i$2]) >>> 0) + ((i$2 < 0 || i$2 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[i$2]) >>> 0;
+ t2$1 = (((((((((a >>> 2 >>> 0) | (a << 30 >>> 0)) >>> 0)) ^ ((((a >>> 13 >>> 0) | (a << 19 >>> 0)) >>> 0))) >>> 0) ^ ((((a >>> 22 >>> 0) | (a << 10 >>> 0)) >>> 0))) >>> 0)) + ((((((((a & b) >>> 0)) ^ (((a & c) >>> 0))) >>> 0) ^ (((b & c) >>> 0))) >>> 0)) >>> 0;
+ h = g;
+ g = f;
+ f = e;
+ e = d + t1$1 >>> 0;
+ d = c;
+ c = b;
+ b = a;
+ a = t1$1 + t2$1 >>> 0;
+ i$2 = i$2 + (1) >> 0;
+ }
+ h0 = h0 + (a) >>> 0;
+ h1 = h1 + (b) >>> 0;
+ h2 = h2 + (c) >>> 0;
+ h3 = h3 + (d) >>> 0;
+ h4 = h4 + (e) >>> 0;
+ h5 = h5 + (f) >>> 0;
+ h6 = h6 + (g) >>> 0;
+ h7 = h7 + (h) >>> 0;
+ p = $subslice(p, 64);
+ }
+ _tmp$16 = h0;
+ _tmp$17 = h1;
+ _tmp$18 = h2;
+ _tmp$19 = h3;
+ _tmp$20 = h4;
+ _tmp$21 = h5;
+ _tmp$22 = h6;
+ _tmp$23 = h7;
+ dig.h[0] = _tmp$16;
+ dig.h[1] = _tmp$17;
+ dig.h[2] = _tmp$18;
+ dig.h[3] = _tmp$19;
+ dig.h[4] = _tmp$20;
+ dig.h[5] = _tmp$21;
+ dig.h[6] = _tmp$22;
+ dig.h[7] = _tmp$23;
+ };
+ ptrType.methods = [{prop: "Reset", name: "Reset", pkg: "", typ: $funcType([], [], false)}, {prop: "Size", name: "Size", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "BlockSize", name: "BlockSize", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$1], [$Int, $error], false)}, {prop: "Sum", name: "Sum", pkg: "", typ: $funcType([sliceType$1], [sliceType$1], false)}, {prop: "checkSum", name: "checkSum", pkg: "crypto/sha256", typ: $funcType([], [arrayType$2], false)}];
+ digest.init("crypto/sha256", [{prop: "h", name: "h", exported: false, typ: arrayType, tag: ""}, {prop: "x", name: "x", exported: false, typ: arrayType$1, tag: ""}, {prop: "nx", name: "nx", exported: false, typ: $Int, tag: ""}, {prop: "len", name: "len", exported: false, typ: $Uint64, tag: ""}, {prop: "is224", name: "is224", exported: false, typ: $Bool, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = crypto.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hash.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _K = new sliceType([1116352408, 1899447441, 3049323471, 3921009573, 961987163, 1508970993, 2453635748, 2870763221, 3624381080, 310598401, 607225278, 1426881987, 1925078388, 2162078206, 2614888103, 3248222580, 3835390401, 4022224774, 264347078, 604807628, 770255983, 1249150122, 1555081692, 1996064986, 2554220882, 2821834349, 2952996808, 3210313671, 3336571891, 3584528711, 113926993, 338241895, 666307205, 773529912, 1294757372, 1396182291, 1695183700, 1986661051, 2177026350, 2456956037, 2730485921, 2820302411, 3259730800, 3345764771, 3516065817, 3600352804, 4094571909, 275423344, 430227734, 506948616, 659060556, 883997877, 958139571, 1322822218, 1537002063, 1747873779, 1955562222, 2024104815, 2227730452, 2361852424, 2428436474, 2756734187, 3204031479, 3329325298]);
+ block = blockGeneric;
+ init();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["crypto/sha512"] = (function() {
+ var $pkg = {}, $init, crypto, hash, digest, sliceType, arrayType, arrayType$1, sliceType$1, arrayType$2, arrayType$6, ptrType, _K, block, init, New, New512_224, New512_256, New384, Sum512, blockGeneric;
+ crypto = $packages["crypto"];
+ hash = $packages["hash"];
+ digest = $pkg.digest = $newType(0, $kindStruct, "sha512.digest", true, "crypto/sha512", false, function(h_, x_, nx_, len_, function$4_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.h = arrayType.zero();
+ this.x = arrayType$1.zero();
+ this.nx = 0;
+ this.len = new $Uint64(0, 0);
+ this.function$4 = 0;
+ return;
+ }
+ this.h = h_;
+ this.x = x_;
+ this.nx = nx_;
+ this.len = len_;
+ this.function$4 = function$4_;
+ });
+ sliceType = $sliceType($Uint64);
+ arrayType = $arrayType($Uint64, 8);
+ arrayType$1 = $arrayType($Uint8, 128);
+ sliceType$1 = $sliceType($Uint8);
+ arrayType$2 = $arrayType($Uint8, 64);
+ arrayType$6 = $arrayType($Uint64, 80);
+ ptrType = $ptrType(digest);
+ init = function() {
+ var $ptr;
+ crypto.RegisterHash(6, New384);
+ crypto.RegisterHash(7, New);
+ crypto.RegisterHash(14, New512_224);
+ crypto.RegisterHash(15, New512_256);
+ };
+ digest.ptr.prototype.Reset = function() {
+ var $ptr, _1, d;
+ d = this;
+ _1 = d.function$4;
+ if (_1 === (6)) {
+ d.h[0] = new $Uint64(3418070365, 3238371032);
+ d.h[1] = new $Uint64(1654270250, 914150663);
+ d.h[2] = new $Uint64(2438529370, 812702999);
+ d.h[3] = new $Uint64(355462360, 4144912697);
+ d.h[4] = new $Uint64(1731405415, 4290775857);
+ d.h[5] = new $Uint64(2394180231, 1750603025);
+ d.h[6] = new $Uint64(3675008525, 1694076839);
+ d.h[7] = new $Uint64(1203062813, 3204075428);
+ } else if (_1 === (14)) {
+ d.h[0] = new $Uint64(2352822216, 424955298);
+ d.h[1] = new $Uint64(1944164710, 2312950998);
+ d.h[2] = new $Uint64(502970286, 855612546);
+ d.h[3] = new $Uint64(1738396948, 1479516111);
+ d.h[4] = new $Uint64(258812777, 2077511080);
+ d.h[5] = new $Uint64(2011393907, 79989058);
+ d.h[6] = new $Uint64(1067287976, 1780299464);
+ d.h[7] = new $Uint64(286451373, 2446758561);
+ } else if (_1 === (15)) {
+ d.h[0] = new $Uint64(573645204, 4230739756);
+ d.h[1] = new $Uint64(2673172387, 3360449730);
+ d.h[2] = new $Uint64(596883563, 1867755857);
+ d.h[3] = new $Uint64(2520282905, 1497426621);
+ d.h[4] = new $Uint64(2519219938, 2827943907);
+ d.h[5] = new $Uint64(3193839141, 1401305490);
+ d.h[6] = new $Uint64(721525244, 746961066);
+ d.h[7] = new $Uint64(246885852, 2177182882);
+ } else {
+ d.h[0] = new $Uint64(1779033703, 4089235720);
+ d.h[1] = new $Uint64(3144134277, 2227873595);
+ d.h[2] = new $Uint64(1013904242, 4271175723);
+ d.h[3] = new $Uint64(2773480762, 1595750129);
+ d.h[4] = new $Uint64(1359893119, 2917565137);
+ d.h[5] = new $Uint64(2600822924, 725511199);
+ d.h[6] = new $Uint64(528734635, 4215389547);
+ d.h[7] = new $Uint64(1541459225, 327033209);
+ }
+ d.nx = 0;
+ d.len = new $Uint64(0, 0);
+ };
+ digest.prototype.Reset = function() { return this.$val.Reset(); };
+ New = function() {
+ var $ptr, d;
+ d = new digest.ptr(arrayType.zero(), arrayType$1.zero(), 0, new $Uint64(0, 0), 7);
+ d.Reset();
+ return d;
+ };
+ $pkg.New = New;
+ New512_224 = function() {
+ var $ptr, d;
+ d = new digest.ptr(arrayType.zero(), arrayType$1.zero(), 0, new $Uint64(0, 0), 14);
+ d.Reset();
+ return d;
+ };
+ $pkg.New512_224 = New512_224;
+ New512_256 = function() {
+ var $ptr, d;
+ d = new digest.ptr(arrayType.zero(), arrayType$1.zero(), 0, new $Uint64(0, 0), 15);
+ d.Reset();
+ return d;
+ };
+ $pkg.New512_256 = New512_256;
+ New384 = function() {
+ var $ptr, d;
+ d = new digest.ptr(arrayType.zero(), arrayType$1.zero(), 0, new $Uint64(0, 0), 6);
+ d.Reset();
+ return d;
+ };
+ $pkg.New384 = New384;
+ digest.ptr.prototype.Size = function() {
+ var $ptr, _1, d;
+ d = this;
+ _1 = d.function$4;
+ if (_1 === (14)) {
+ return 28;
+ } else if (_1 === (15)) {
+ return 32;
+ } else if (_1 === (6)) {
+ return 48;
+ } else {
+ return 64;
+ }
+ };
+ digest.prototype.Size = function() { return this.$val.Size(); };
+ digest.ptr.prototype.BlockSize = function() {
+ var $ptr, d;
+ d = this;
+ return 128;
+ };
+ digest.prototype.BlockSize = function() { return this.$val.BlockSize(); };
+ digest.ptr.prototype.Write = function(p) {
+ var $ptr, d, err, n, n$1, nn, p, x, x$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; d = $f.d; err = $f.err; n = $f.n; n$1 = $f.n$1; nn = $f.nn; p = $f.p; x = $f.x; x$1 = $f.x$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ nn = 0;
+ err = $ifaceNil;
+ d = this;
+ nn = p.$length;
+ d.len = (x = d.len, x$1 = (new $Uint64(0, nn)), new $Uint64(x.$high + x$1.$high, x.$low + x$1.$low));
+ /* */ if (d.nx > 0) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (d.nx > 0) { */ case 1:
+ n = $copySlice($subslice(new sliceType$1(d.x), d.nx), p);
+ d.nx = d.nx + (n) >> 0;
+ /* */ if (d.nx === 128) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (d.nx === 128) { */ case 3:
+ $r = block(d, new sliceType$1(d.x)); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ d.nx = 0;
+ /* } */ case 4:
+ p = $subslice(p, n);
+ /* } */ case 2:
+ /* */ if (p.$length >= 128) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (p.$length >= 128) { */ case 6:
+ n$1 = (p.$length & ~127) >> 0;
+ $r = block(d, $subslice(p, 0, n$1)); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ p = $subslice(p, n$1);
+ /* } */ case 7:
+ if (p.$length > 0) {
+ d.nx = $copySlice(new sliceType$1(d.x), p);
+ }
+ $s = -1; return [nn, err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: digest.ptr.prototype.Write }; } $f.$ptr = $ptr; $f.d = d; $f.err = err; $f.n = n; $f.n$1 = n$1; $f.nn = nn; $f.p = p; $f.x = x; $f.x$1 = x$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ digest.prototype.Write = function(p) { return this.$val.Write(p); };
+ digest.ptr.prototype.Sum = function(in$1) {
+ var $ptr, _1, _r, d, d0, hash$1, in$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _1 = $f._1; _r = $f._r; d = $f.d; d0 = $f.d0; hash$1 = $f.hash$1; in$1 = $f.in$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d0 = this;
+ d = new digest.ptr(arrayType.zero(), arrayType$1.zero(), 0, new $Uint64(0, 0), 0);
+ digest.copy(d, d0);
+ _r = d.checkSum(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ hash$1 = $clone(_r, arrayType$2);
+ _1 = d.function$4;
+ if (_1 === (6)) {
+ $s = -1; return $appendSlice(in$1, $subslice(new sliceType$1(hash$1), 0, 48));
+ } else if (_1 === (14)) {
+ $s = -1; return $appendSlice(in$1, $subslice(new sliceType$1(hash$1), 0, 28));
+ } else if (_1 === (15)) {
+ $s = -1; return $appendSlice(in$1, $subslice(new sliceType$1(hash$1), 0, 32));
+ } else {
+ $s = -1; return $appendSlice(in$1, new sliceType$1(hash$1));
+ }
+ $s = -1; return sliceType$1.nil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: digest.ptr.prototype.Sum }; } $f.$ptr = $ptr; $f._1 = _1; $f._r = _r; $f.d = d; $f.d0 = d0; $f.hash$1 = hash$1; $f.in$1 = in$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ digest.prototype.Sum = function(in$1) { return this.$val.Sum(in$1); };
+ digest.ptr.prototype.checkSum = function() {
+ var $ptr, _i, _r, _r$1, _r$2, _ref, d, digest$1, h, i, i$1, len, s, tmp, x, x$1, x$10, x$2, x$3, x$4, x$5, x$6, x$7, x$8, x$9, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _ref = $f._ref; d = $f.d; digest$1 = $f.digest$1; h = $f.h; i = $f.i; i$1 = $f.i$1; len = $f.len; s = $f.s; tmp = $f.tmp; x = $f.x; x$1 = $f.x$1; x$10 = $f.x$10; x$2 = $f.x$2; x$3 = $f.x$3; x$4 = $f.x$4; x$5 = $f.x$5; x$6 = $f.x$6; x$7 = $f.x$7; x$8 = $f.x$8; x$9 = $f.x$9; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = this;
+ len = d.len;
+ tmp = arrayType$1.zero();
+ tmp[0] = 128;
+ /* */ if ((x = $div64(len, new $Uint64(0, 128), true), (x.$high < 0 || (x.$high === 0 && x.$low < 112)))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if ((x = $div64(len, new $Uint64(0, 128), true), (x.$high < 0 || (x.$high === 0 && x.$low < 112)))) { */ case 1:
+ _r = d.Write($subslice(new sliceType$1(tmp), 0, $flatten64((x$1 = $div64(len, new $Uint64(0, 128), true), new $Uint64(0 - x$1.$high, 112 - x$1.$low))))); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = 3; continue;
+ /* } else { */ case 2:
+ _r$1 = d.Write($subslice(new sliceType$1(tmp), 0, $flatten64((x$2 = $div64(len, new $Uint64(0, 128), true), new $Uint64(0 - x$2.$high, 240 - x$2.$low))))); /* */ $s = 5; case 5: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ /* } */ case 3:
+ len = $shiftLeft64(len, (3));
+ i = 0;
+ while (true) {
+ if (!(i < 16)) { break; }
+ ((i < 0 || i >= tmp.length) ? ($throwRuntimeError("index out of range"), undefined) : tmp[i] = (($shiftRightUint64(len, ((120 - (8 * i >>> 0) >>> 0))).$low << 24 >>> 24)));
+ i = i + (1) >>> 0;
+ }
+ _r$2 = d.Write($subslice(new sliceType$1(tmp), 0, 16)); /* */ $s = 6; case 6: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ if (!((d.nx === 0))) {
+ $panic(new $String("d.nx != 0"));
+ }
+ h = new sliceType(d.h);
+ if (d.function$4 === 6) {
+ h = $subslice(new sliceType(d.h), 0, 6);
+ }
+ digest$1 = arrayType$2.zero();
+ _ref = h;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i$1 = _i;
+ s = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ (x$3 = $imul(i$1, 8), ((x$3 < 0 || x$3 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$3] = (($shiftRightUint64(s, 56).$low << 24 >>> 24))));
+ (x$4 = ($imul(i$1, 8)) + 1 >> 0, ((x$4 < 0 || x$4 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$4] = (($shiftRightUint64(s, 48).$low << 24 >>> 24))));
+ (x$5 = ($imul(i$1, 8)) + 2 >> 0, ((x$5 < 0 || x$5 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$5] = (($shiftRightUint64(s, 40).$low << 24 >>> 24))));
+ (x$6 = ($imul(i$1, 8)) + 3 >> 0, ((x$6 < 0 || x$6 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$6] = (($shiftRightUint64(s, 32).$low << 24 >>> 24))));
+ (x$7 = ($imul(i$1, 8)) + 4 >> 0, ((x$7 < 0 || x$7 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$7] = (($shiftRightUint64(s, 24).$low << 24 >>> 24))));
+ (x$8 = ($imul(i$1, 8)) + 5 >> 0, ((x$8 < 0 || x$8 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$8] = (($shiftRightUint64(s, 16).$low << 24 >>> 24))));
+ (x$9 = ($imul(i$1, 8)) + 6 >> 0, ((x$9 < 0 || x$9 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$9] = (($shiftRightUint64(s, 8).$low << 24 >>> 24))));
+ (x$10 = ($imul(i$1, 8)) + 7 >> 0, ((x$10 < 0 || x$10 >= digest$1.length) ? ($throwRuntimeError("index out of range"), undefined) : digest$1[x$10] = ((s.$low << 24 >>> 24))));
+ _i++;
+ }
+ $s = -1; return digest$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: digest.ptr.prototype.checkSum }; } $f.$ptr = $ptr; $f._i = _i; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._ref = _ref; $f.d = d; $f.digest$1 = digest$1; $f.h = h; $f.i = i; $f.i$1 = i$1; $f.len = len; $f.s = s; $f.tmp = tmp; $f.x = x; $f.x$1 = x$1; $f.x$10 = x$10; $f.x$2 = x$2; $f.x$3 = x$3; $f.x$4 = x$4; $f.x$5 = x$5; $f.x$6 = x$6; $f.x$7 = x$7; $f.x$8 = x$8; $f.x$9 = x$9; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ digest.prototype.checkSum = function() { return this.$val.checkSum(); };
+ Sum512 = function(data) {
+ var $ptr, _r, _r$1, d, data, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; d = $f.d; data = $f.data; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ d = new digest.ptr(arrayType.zero(), arrayType$1.zero(), 0, new $Uint64(0, 0), 7);
+ d.Reset();
+ _r = d.Write(data); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ _r$1 = d.checkSum(); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Sum512 }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.d = d; $f.data = data; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Sum512 = Sum512;
+ blockGeneric = function(dig, p) {
+ var $ptr, _tmp, _tmp$1, _tmp$10, _tmp$11, _tmp$12, _tmp$13, _tmp$14, _tmp$15, _tmp$16, _tmp$17, _tmp$18, _tmp$19, _tmp$2, _tmp$20, _tmp$21, _tmp$22, _tmp$23, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, a, b, c, d, dig, e, f, g, h, h0, h1, h2, h3, h4, h5, h6, h7, i, i$1, i$2, j, p, t1, t1$1, t2, t2$1, v1, v2, w, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$19, x$2, x$20, x$21, x$22, x$23, x$24, x$25, x$26, x$27, x$28, x$29, x$3, x$30, x$31, x$32, x$33, x$34, x$35, x$36, x$37, x$38, x$39, x$4, x$40, x$41, x$42, x$43, x$44, x$45, x$46, x$47, x$48, x$49, x$5, x$50, x$51, x$52, x$53, x$54, x$55, x$56, x$57, x$58, x$59, x$6, x$60, x$61, x$62, x$63, x$64, x$65, x$66, x$67, x$68, x$69, x$7, x$70, x$71, x$72, x$73, x$74, x$75, x$76, x$77, x$78, x$79, x$8, x$80, x$81, x$82, x$83, x$84, x$85, x$86, x$87, x$88, x$9;
+ w = arrayType$6.zero();
+ _tmp = dig.h[0];
+ _tmp$1 = dig.h[1];
+ _tmp$2 = dig.h[2];
+ _tmp$3 = dig.h[3];
+ _tmp$4 = dig.h[4];
+ _tmp$5 = dig.h[5];
+ _tmp$6 = dig.h[6];
+ _tmp$7 = dig.h[7];
+ h0 = _tmp;
+ h1 = _tmp$1;
+ h2 = _tmp$2;
+ h3 = _tmp$3;
+ h4 = _tmp$4;
+ h5 = _tmp$5;
+ h6 = _tmp$6;
+ h7 = _tmp$7;
+ while (true) {
+ if (!(p.$length >= 128)) { break; }
+ i = 0;
+ while (true) {
+ if (!(i < 16)) { break; }
+ j = $imul(i, 8);
+ ((i < 0 || i >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[i] = (x = (x$1 = (x$2 = (x$3 = (x$4 = (x$5 = (x$6 = $shiftLeft64((new $Uint64(0, ((j < 0 || j >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + j]))), 56), x$7 = $shiftLeft64((new $Uint64(0, (x$8 = j + 1 >> 0, ((x$8 < 0 || x$8 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$8])))), 48), new $Uint64(x$6.$high | x$7.$high, (x$6.$low | x$7.$low) >>> 0)), x$9 = $shiftLeft64((new $Uint64(0, (x$10 = j + 2 >> 0, ((x$10 < 0 || x$10 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$10])))), 40), new $Uint64(x$5.$high | x$9.$high, (x$5.$low | x$9.$low) >>> 0)), x$11 = $shiftLeft64((new $Uint64(0, (x$12 = j + 3 >> 0, ((x$12 < 0 || x$12 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$12])))), 32), new $Uint64(x$4.$high | x$11.$high, (x$4.$low | x$11.$low) >>> 0)), x$13 = $shiftLeft64((new $Uint64(0, (x$14 = j + 4 >> 0, ((x$14 < 0 || x$14 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$14])))), 24), new $Uint64(x$3.$high | x$13.$high, (x$3.$low | x$13.$low) >>> 0)), x$15 = $shiftLeft64((new $Uint64(0, (x$16 = j + 5 >> 0, ((x$16 < 0 || x$16 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$16])))), 16), new $Uint64(x$2.$high | x$15.$high, (x$2.$low | x$15.$low) >>> 0)), x$17 = $shiftLeft64((new $Uint64(0, (x$18 = j + 6 >> 0, ((x$18 < 0 || x$18 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$18])))), 8), new $Uint64(x$1.$high | x$17.$high, (x$1.$low | x$17.$low) >>> 0)), x$19 = (new $Uint64(0, (x$20 = j + 7 >> 0, ((x$20 < 0 || x$20 >= p.$length) ? ($throwRuntimeError("index out of range"), undefined) : p.$array[p.$offset + x$20])))), new $Uint64(x.$high | x$19.$high, (x.$low | x$19.$low) >>> 0)));
+ i = i + (1) >> 0;
+ }
+ i$1 = 16;
+ while (true) {
+ if (!(i$1 < 80)) { break; }
+ v1 = (x$21 = i$1 - 2 >> 0, ((x$21 < 0 || x$21 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$21]));
+ t1 = (x$22 = (x$23 = (x$24 = $shiftRightUint64(v1, 19), x$25 = $shiftLeft64(v1, 45), new $Uint64(x$24.$high | x$25.$high, (x$24.$low | x$25.$low) >>> 0)), x$26 = (x$27 = $shiftRightUint64(v1, 61), x$28 = $shiftLeft64(v1, 3), new $Uint64(x$27.$high | x$28.$high, (x$27.$low | x$28.$low) >>> 0)), new $Uint64(x$23.$high ^ x$26.$high, (x$23.$low ^ x$26.$low) >>> 0)), x$29 = $shiftRightUint64(v1, 6), new $Uint64(x$22.$high ^ x$29.$high, (x$22.$low ^ x$29.$low) >>> 0));
+ v2 = (x$30 = i$1 - 15 >> 0, ((x$30 < 0 || x$30 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$30]));
+ t2 = (x$31 = (x$32 = (x$33 = $shiftRightUint64(v2, 1), x$34 = $shiftLeft64(v2, 63), new $Uint64(x$33.$high | x$34.$high, (x$33.$low | x$34.$low) >>> 0)), x$35 = (x$36 = $shiftRightUint64(v2, 8), x$37 = $shiftLeft64(v2, 56), new $Uint64(x$36.$high | x$37.$high, (x$36.$low | x$37.$low) >>> 0)), new $Uint64(x$32.$high ^ x$35.$high, (x$32.$low ^ x$35.$low) >>> 0)), x$38 = $shiftRightUint64(v2, 7), new $Uint64(x$31.$high ^ x$38.$high, (x$31.$low ^ x$38.$low) >>> 0));
+ ((i$1 < 0 || i$1 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[i$1] = (x$39 = (x$40 = (x$41 = (x$42 = i$1 - 7 >> 0, ((x$42 < 0 || x$42 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$42])), new $Uint64(t1.$high + x$41.$high, t1.$low + x$41.$low)), new $Uint64(x$40.$high + t2.$high, x$40.$low + t2.$low)), x$43 = (x$44 = i$1 - 16 >> 0, ((x$44 < 0 || x$44 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[x$44])), new $Uint64(x$39.$high + x$43.$high, x$39.$low + x$43.$low)));
+ i$1 = i$1 + (1) >> 0;
+ }
+ _tmp$8 = h0;
+ _tmp$9 = h1;
+ _tmp$10 = h2;
+ _tmp$11 = h3;
+ _tmp$12 = h4;
+ _tmp$13 = h5;
+ _tmp$14 = h6;
+ _tmp$15 = h7;
+ a = _tmp$8;
+ b = _tmp$9;
+ c = _tmp$10;
+ d = _tmp$11;
+ e = _tmp$12;
+ f = _tmp$13;
+ g = _tmp$14;
+ h = _tmp$15;
+ i$2 = 0;
+ while (true) {
+ if (!(i$2 < 80)) { break; }
+ t1$1 = (x$45 = (x$46 = (x$47 = (x$48 = (x$49 = (x$50 = (x$51 = $shiftRightUint64(e, 14), x$52 = $shiftLeft64(e, 50), new $Uint64(x$51.$high | x$52.$high, (x$51.$low | x$52.$low) >>> 0)), x$53 = (x$54 = $shiftRightUint64(e, 18), x$55 = $shiftLeft64(e, 46), new $Uint64(x$54.$high | x$55.$high, (x$54.$low | x$55.$low) >>> 0)), new $Uint64(x$50.$high ^ x$53.$high, (x$50.$low ^ x$53.$low) >>> 0)), x$56 = (x$57 = $shiftRightUint64(e, 41), x$58 = $shiftLeft64(e, 23), new $Uint64(x$57.$high | x$58.$high, (x$57.$low | x$58.$low) >>> 0)), new $Uint64(x$49.$high ^ x$56.$high, (x$49.$low ^ x$56.$low) >>> 0)), new $Uint64(h.$high + x$48.$high, h.$low + x$48.$low)), x$59 = (x$60 = new $Uint64(e.$high & f.$high, (e.$low & f.$low) >>> 0), x$61 = (x$62 = new $Uint64(~e.$high, ~e.$low >>> 0), new $Uint64(x$62.$high & g.$high, (x$62.$low & g.$low) >>> 0)), new $Uint64(x$60.$high ^ x$61.$high, (x$60.$low ^ x$61.$low) >>> 0)), new $Uint64(x$47.$high + x$59.$high, x$47.$low + x$59.$low)), x$63 = ((i$2 < 0 || i$2 >= _K.$length) ? ($throwRuntimeError("index out of range"), undefined) : _K.$array[_K.$offset + i$2]), new $Uint64(x$46.$high + x$63.$high, x$46.$low + x$63.$low)), x$64 = ((i$2 < 0 || i$2 >= w.length) ? ($throwRuntimeError("index out of range"), undefined) : w[i$2]), new $Uint64(x$45.$high + x$64.$high, x$45.$low + x$64.$low));
+ t2$1 = (x$65 = (x$66 = (x$67 = (x$68 = $shiftRightUint64(a, 28), x$69 = $shiftLeft64(a, 36), new $Uint64(x$68.$high | x$69.$high, (x$68.$low | x$69.$low) >>> 0)), x$70 = (x$71 = $shiftRightUint64(a, 34), x$72 = $shiftLeft64(a, 30), new $Uint64(x$71.$high | x$72.$high, (x$71.$low | x$72.$low) >>> 0)), new $Uint64(x$67.$high ^ x$70.$high, (x$67.$low ^ x$70.$low) >>> 0)), x$73 = (x$74 = $shiftRightUint64(a, 39), x$75 = $shiftLeft64(a, 25), new $Uint64(x$74.$high | x$75.$high, (x$74.$low | x$75.$low) >>> 0)), new $Uint64(x$66.$high ^ x$73.$high, (x$66.$low ^ x$73.$low) >>> 0)), x$76 = (x$77 = (x$78 = new $Uint64(a.$high & b.$high, (a.$low & b.$low) >>> 0), x$79 = new $Uint64(a.$high & c.$high, (a.$low & c.$low) >>> 0), new $Uint64(x$78.$high ^ x$79.$high, (x$78.$low ^ x$79.$low) >>> 0)), x$80 = new $Uint64(b.$high & c.$high, (b.$low & c.$low) >>> 0), new $Uint64(x$77.$high ^ x$80.$high, (x$77.$low ^ x$80.$low) >>> 0)), new $Uint64(x$65.$high + x$76.$high, x$65.$low + x$76.$low));
+ h = g;
+ g = f;
+ f = e;
+ e = new $Uint64(d.$high + t1$1.$high, d.$low + t1$1.$low);
+ d = c;
+ c = b;
+ b = a;
+ a = new $Uint64(t1$1.$high + t2$1.$high, t1$1.$low + t2$1.$low);
+ i$2 = i$2 + (1) >> 0;
+ }
+ h0 = (x$81 = a, new $Uint64(h0.$high + x$81.$high, h0.$low + x$81.$low));
+ h1 = (x$82 = b, new $Uint64(h1.$high + x$82.$high, h1.$low + x$82.$low));
+ h2 = (x$83 = c, new $Uint64(h2.$high + x$83.$high, h2.$low + x$83.$low));
+ h3 = (x$84 = d, new $Uint64(h3.$high + x$84.$high, h3.$low + x$84.$low));
+ h4 = (x$85 = e, new $Uint64(h4.$high + x$85.$high, h4.$low + x$85.$low));
+ h5 = (x$86 = f, new $Uint64(h5.$high + x$86.$high, h5.$low + x$86.$low));
+ h6 = (x$87 = g, new $Uint64(h6.$high + x$87.$high, h6.$low + x$87.$low));
+ h7 = (x$88 = h, new $Uint64(h7.$high + x$88.$high, h7.$low + x$88.$low));
+ p = $subslice(p, 128);
+ }
+ _tmp$16 = h0;
+ _tmp$17 = h1;
+ _tmp$18 = h2;
+ _tmp$19 = h3;
+ _tmp$20 = h4;
+ _tmp$21 = h5;
+ _tmp$22 = h6;
+ _tmp$23 = h7;
+ dig.h[0] = _tmp$16;
+ dig.h[1] = _tmp$17;
+ dig.h[2] = _tmp$18;
+ dig.h[3] = _tmp$19;
+ dig.h[4] = _tmp$20;
+ dig.h[5] = _tmp$21;
+ dig.h[6] = _tmp$22;
+ dig.h[7] = _tmp$23;
+ };
+ ptrType.methods = [{prop: "Reset", name: "Reset", pkg: "", typ: $funcType([], [], false)}, {prop: "Size", name: "Size", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "BlockSize", name: "BlockSize", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Write", name: "Write", pkg: "", typ: $funcType([sliceType$1], [$Int, $error], false)}, {prop: "Sum", name: "Sum", pkg: "", typ: $funcType([sliceType$1], [sliceType$1], false)}, {prop: "checkSum", name: "checkSum", pkg: "crypto/sha512", typ: $funcType([], [arrayType$2], false)}];
+ digest.init("crypto/sha512", [{prop: "h", name: "h", exported: false, typ: arrayType, tag: ""}, {prop: "x", name: "x", exported: false, typ: arrayType$1, tag: ""}, {prop: "nx", name: "nx", exported: false, typ: $Int, tag: ""}, {prop: "len", name: "len", exported: false, typ: $Uint64, tag: ""}, {prop: "function$4", name: "function", exported: false, typ: crypto.Hash, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = crypto.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hash.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _K = new sliceType([new $Uint64(1116352408, 3609767458), new $Uint64(1899447441, 602891725), new $Uint64(3049323471, 3964484399), new $Uint64(3921009573, 2173295548), new $Uint64(961987163, 4081628472), new $Uint64(1508970993, 3053834265), new $Uint64(2453635748, 2937671579), new $Uint64(2870763221, 3664609560), new $Uint64(3624381080, 2734883394), new $Uint64(310598401, 1164996542), new $Uint64(607225278, 1323610764), new $Uint64(1426881987, 3590304994), new $Uint64(1925078388, 4068182383), new $Uint64(2162078206, 991336113), new $Uint64(2614888103, 633803317), new $Uint64(3248222580, 3479774868), new $Uint64(3835390401, 2666613458), new $Uint64(4022224774, 944711139), new $Uint64(264347078, 2341262773), new $Uint64(604807628, 2007800933), new $Uint64(770255983, 1495990901), new $Uint64(1249150122, 1856431235), new $Uint64(1555081692, 3175218132), new $Uint64(1996064986, 2198950837), new $Uint64(2554220882, 3999719339), new $Uint64(2821834349, 766784016), new $Uint64(2952996808, 2566594879), new $Uint64(3210313671, 3203337956), new $Uint64(3336571891, 1034457026), new $Uint64(3584528711, 2466948901), new $Uint64(113926993, 3758326383), new $Uint64(338241895, 168717936), new $Uint64(666307205, 1188179964), new $Uint64(773529912, 1546045734), new $Uint64(1294757372, 1522805485), new $Uint64(1396182291, 2643833823), new $Uint64(1695183700, 2343527390), new $Uint64(1986661051, 1014477480), new $Uint64(2177026350, 1206759142), new $Uint64(2456956037, 344077627), new $Uint64(2730485921, 1290863460), new $Uint64(2820302411, 3158454273), new $Uint64(3259730800, 3505952657), new $Uint64(3345764771, 106217008), new $Uint64(3516065817, 3606008344), new $Uint64(3600352804, 1432725776), new $Uint64(4094571909, 1467031594), new $Uint64(275423344, 851169720), new $Uint64(430227734, 3100823752), new $Uint64(506948616, 1363258195), new $Uint64(659060556, 3750685593), new $Uint64(883997877, 3785050280), new $Uint64(958139571, 3318307427), new $Uint64(1322822218, 3812723403), new $Uint64(1537002063, 2003034995), new $Uint64(1747873779, 3602036899), new $Uint64(1955562222, 1575990012), new $Uint64(2024104815, 1125592928), new $Uint64(2227730452, 2716904306), new $Uint64(2361852424, 442776044), new $Uint64(2428436474, 593698344), new $Uint64(2756734187, 3733110249), new $Uint64(3204031479, 2999351573), new $Uint64(3329325298, 3815920427), new $Uint64(3391569614, 3928383900), new $Uint64(3515267271, 566280711), new $Uint64(3940187606, 3454069534), new $Uint64(4118630271, 4000239992), new $Uint64(116418474, 1914138554), new $Uint64(174292421, 2731055270), new $Uint64(289380356, 3203993006), new $Uint64(460393269, 320620315), new $Uint64(685471733, 587496836), new $Uint64(852142971, 1086792851), new $Uint64(1017036298, 365543100), new $Uint64(1126000580, 2618297676), new $Uint64(1288033470, 3409855158), new $Uint64(1501505948, 4234509866), new $Uint64(1607167915, 987167468), new $Uint64(1816402316, 1246189591)]);
+ block = blockGeneric;
+ init();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/crypto.v0/cipher/sha3"] = (function() {
+ var $pkg = {}, $init, crypto, binary, abstract$1, cipher, hash, io, sponge, sliceType, sliceType$1, sliceType$2, arrayType$4, ptrType$1, sha3opts, rc, shakeOpts, NewCipher224, NewCipher256, NewCipher384, NewCipher512, New224, New256, New384, New512, keccakF1600, init, NewShakeCipher128, newKeccak256, newKeccak448, newKeccak512, newKeccak768, newKeccak1024;
+ crypto = $packages["crypto"];
+ binary = $packages["encoding/binary"];
+ abstract$1 = $packages["gopkg.in/dedis/crypto.v0/abstract"];
+ cipher = $packages["gopkg.in/dedis/crypto.v0/cipher"];
+ hash = $packages["hash"];
+ io = $packages["io"];
+ sponge = $pkg.sponge = $newType(0, $kindStruct, "sha3.sponge", true, "gopkg.in/dedis/crypto.v0/cipher/sha3", false, function(a_, rate_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.a = arrayType$4.zero();
+ this.rate = 0;
+ return;
+ }
+ this.a = a_;
+ this.rate = rate_;
+ });
+ sliceType = $sliceType($emptyInterface);
+ sliceType$1 = $sliceType($Uint8);
+ sliceType$2 = $sliceType($Uint64);
+ arrayType$4 = $arrayType($Uint64, 25);
+ ptrType$1 = $ptrType(sponge);
+ NewCipher224 = function(key, options) {
+ var $ptr, _r, key, options, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; key = $f.key; options = $f.options; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = cipher.FromSponge(newKeccak448(), key, $appendSlice(sha3opts, options)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: NewCipher224 }; } $f.$ptr = $ptr; $f._r = _r; $f.key = key; $f.options = options; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.NewCipher224 = NewCipher224;
+ NewCipher256 = function(key, options) {
+ var $ptr, _r, key, options, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; key = $f.key; options = $f.options; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = cipher.FromSponge(newKeccak512(), key, $appendSlice(sha3opts, options)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: NewCipher256 }; } $f.$ptr = $ptr; $f._r = _r; $f.key = key; $f.options = options; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.NewCipher256 = NewCipher256;
+ NewCipher384 = function(key, options) {
+ var $ptr, _r, key, options, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; key = $f.key; options = $f.options; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = cipher.FromSponge(newKeccak768(), key, $appendSlice(sha3opts, options)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: NewCipher384 }; } $f.$ptr = $ptr; $f._r = _r; $f.key = key; $f.options = options; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.NewCipher384 = NewCipher384;
+ NewCipher512 = function(key, options) {
+ var $ptr, _r, key, options, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; key = $f.key; options = $f.options; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = cipher.FromSponge(newKeccak1024(), key, $appendSlice(sha3opts, options)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: NewCipher512 }; } $f.$ptr = $ptr; $f._r = _r; $f.key = key; $f.options = options; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.NewCipher512 = NewCipher512;
+ New224 = function() {
+ var $ptr, _r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = cipher.NewHash(NewCipher224, 28); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: New224 }; } $f.$ptr = $ptr; $f._r = _r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.New224 = New224;
+ New256 = function() {
+ var $ptr, _r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = cipher.NewHash(NewCipher256, 32); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: New256 }; } $f.$ptr = $ptr; $f._r = _r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.New256 = New256;
+ New384 = function() {
+ var $ptr, _r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = cipher.NewHash(NewCipher384, 48); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: New384 }; } $f.$ptr = $ptr; $f._r = _r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.New384 = New384;
+ New512 = function() {
+ var $ptr, _r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = cipher.NewHash(NewCipher512, 64); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: New512 }; } $f.$ptr = $ptr; $f._r = _r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.New512 = New512;
+ keccakF1600 = function(a) {
+ var $ptr, _tmp, _tmp$1, _tmp$10, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, _tmp$7, _tmp$8, _tmp$9, a, bc0, bc1, bc2, bc3, bc4, d0, d1, d2, d3, d4, i, t, x, x$1, x$10, x$100, x$101, x$102, x$103, x$104, x$105, x$106, x$107, x$108, x$109, x$11, x$110, x$111, x$112, x$113, x$114, x$115, x$116, x$117, x$118, x$119, x$12, x$120, x$121, x$122, x$123, x$124, x$125, x$126, x$127, x$128, x$129, x$13, x$130, x$131, x$132, x$133, x$134, x$135, x$136, x$137, x$138, x$139, x$14, x$140, x$141, x$142, x$143, x$144, x$145, x$146, x$147, x$148, x$149, x$15, x$150, x$151, x$152, x$153, x$154, x$155, x$156, x$157, x$158, x$159, x$16, x$160, x$161, x$162, x$163, x$164, x$165, x$166, x$167, x$168, x$169, x$17, x$170, x$171, x$172, x$173, x$174, x$175, x$176, x$177, x$178, x$179, x$18, x$180, x$181, x$182, x$183, x$184, x$185, x$186, x$187, x$188, x$189, x$19, x$190, x$191, x$192, x$193, x$194, x$195, x$196, x$197, x$198, x$199, x$2, x$20, x$200, x$201, x$202, x$203, x$204, x$205, x$206, x$207, x$208, x$209, x$21, x$210, x$211, x$212, x$213, x$214, x$215, x$216, x$217, x$218, x$219, x$22, x$220, x$221, x$222, x$223, x$224, x$225, x$226, x$227, x$228, x$229, x$23, x$230, x$231, x$232, x$233, x$234, x$235, x$236, x$237, x$238, x$239, x$24, x$240, x$241, x$242, x$243, x$244, x$245, x$246, x$247, x$248, x$249, x$25, x$250, x$251, x$252, x$253, x$254, x$255, x$256, x$257, x$258, x$259, x$26, x$260, x$261, x$262, x$263, x$264, x$265, x$266, x$267, x$268, x$269, x$27, x$270, x$271, x$272, x$273, x$274, x$275, x$276, x$277, x$278, x$279, x$28, x$280, x$281, x$282, x$283, x$284, x$285, x$286, x$287, x$288, x$289, x$29, x$290, x$291, x$292, x$293, x$294, x$295, x$296, x$297, x$298, x$299, x$3, x$30, x$300, x$301, x$302, x$303, x$304, x$305, x$306, x$307, x$308, x$309, x$31, x$310, x$311, x$312, x$313, x$314, x$315, x$316, x$317, x$318, x$319, x$32, x$320, x$321, x$322, x$323, x$324, x$325, x$326, x$327, x$328, x$329, x$33, x$330, x$331, x$332, x$333, x$334, x$335, x$336, x$337, x$338, x$339, x$34, x$340, x$341, x$342, x$343, x$344, x$345, x$346, x$347, x$348, x$349, x$35, x$350, x$351, x$352, x$353, x$354, x$355, x$356, x$357, x$358, x$359, x$36, x$360, x$361, x$362, x$363, x$364, x$365, x$366, x$367, x$368, x$369, x$37, x$370, x$371, x$372, x$373, x$374, x$375, x$376, x$377, x$378, x$379, x$38, x$380, x$381, x$382, x$383, x$384, x$385, x$386, x$387, x$388, x$389, x$39, x$390, x$391, x$392, x$393, x$394, x$395, x$396, x$397, x$398, x$399, x$4, x$40, x$400, x$401, x$402, x$403, x$404, x$405, x$406, x$407, x$408, x$409, x$41, x$410, x$411, x$412, x$413, x$414, x$415, x$416, x$417, x$418, x$419, x$42, x$420, x$421, x$422, x$423, x$424, x$425, x$426, x$427, x$428, x$429, x$43, x$430, x$431, x$432, x$433, x$434, x$435, x$436, x$437, x$438, x$439, x$44, x$440, x$441, x$442, x$443, x$444, x$445, x$446, x$447, x$448, x$449, x$45, x$450, x$451, x$452, x$453, x$454, x$455, x$456, x$457, x$458, x$459, x$46, x$460, x$461, x$462, x$463, x$464, x$465, x$466, x$467, x$468, x$469, x$47, x$470, x$471, x$472, x$473, x$474, x$475, x$476, x$477, x$478, x$479, x$48, x$480, x$481, x$482, x$483, x$484, x$485, x$486, x$487, x$488, x$489, x$49, x$490, x$491, x$492, x$493, x$494, x$495, x$496, x$497, x$498, x$499, x$5, x$50, x$500, x$501, x$502, x$503, x$504, x$505, x$506, x$507, x$508, x$509, x$51, x$510, x$511, x$512, x$513, x$514, x$515, x$516, x$517, x$518, x$519, x$52, x$520, x$521, x$522, x$523, x$524, x$525, x$526, x$527, x$528, x$529, x$53, x$530, x$531, x$532, x$533, x$534, x$535, x$536, x$537, x$538, x$539, x$54, x$540, x$541, x$542, x$543, x$544, x$545, x$546, x$547, x$548, x$549, x$55, x$550, x$551, x$552, x$553, x$554, x$555, x$556, x$557, x$558, x$559, x$56, x$560, x$561, x$562, x$563, x$564, x$565, x$566, x$567, x$568, x$569, x$57, x$570, x$571, x$572, x$573, x$574, x$575, x$576, x$577, x$578, x$579, x$58, x$580, x$581, x$582, x$583, x$584, x$585, x$586, x$587, x$588, x$589, x$59, x$590, x$591, x$592, x$593, x$594, x$595, x$596, x$597, x$598, x$599, x$6, x$60, x$600, x$601, x$602, x$603, x$604, x$605, x$606, x$607, x$608, x$609, x$61, x$610, x$611, x$612, x$613, x$614, x$615, x$616, x$617, x$618, x$619, x$62, x$620, x$621, x$622, x$63, x$64, x$65, x$66, x$67, x$68, x$69, x$7, x$70, x$71, x$72, x$73, x$74, x$75, x$76, x$77, x$78, x$79, x$8, x$80, x$81, x$82, x$83, x$84, x$85, x$86, x$87, x$88, x$89, x$9, x$90, x$91, x$92, x$93, x$94, x$95, x$96, x$97, x$98, x$99;
+ _tmp = new $Uint64(0, 0);
+ _tmp$1 = new $Uint64(0, 0);
+ _tmp$2 = new $Uint64(0, 0);
+ _tmp$3 = new $Uint64(0, 0);
+ _tmp$4 = new $Uint64(0, 0);
+ _tmp$5 = new $Uint64(0, 0);
+ _tmp$6 = new $Uint64(0, 0);
+ _tmp$7 = new $Uint64(0, 0);
+ _tmp$8 = new $Uint64(0, 0);
+ _tmp$9 = new $Uint64(0, 0);
+ _tmp$10 = new $Uint64(0, 0);
+ t = _tmp;
+ bc0 = _tmp$1;
+ bc1 = _tmp$2;
+ bc2 = _tmp$3;
+ bc3 = _tmp$4;
+ bc4 = _tmp$5;
+ d0 = _tmp$6;
+ d1 = _tmp$7;
+ d2 = _tmp$8;
+ d3 = _tmp$9;
+ d4 = _tmp$10;
+ i = 0;
+ while (true) {
+ if (!(i < 24)) { break; }
+ bc0 = (x = (x$1 = (x$2 = (x$3 = (a.nilCheck, a[0]), x$4 = (a.nilCheck, a[5]), new $Uint64(x$3.$high ^ x$4.$high, (x$3.$low ^ x$4.$low) >>> 0)), x$5 = (a.nilCheck, a[10]), new $Uint64(x$2.$high ^ x$5.$high, (x$2.$low ^ x$5.$low) >>> 0)), x$6 = (a.nilCheck, a[15]), new $Uint64(x$1.$high ^ x$6.$high, (x$1.$low ^ x$6.$low) >>> 0)), x$7 = (a.nilCheck, a[20]), new $Uint64(x.$high ^ x$7.$high, (x.$low ^ x$7.$low) >>> 0));
+ bc1 = (x$8 = (x$9 = (x$10 = (x$11 = (a.nilCheck, a[1]), x$12 = (a.nilCheck, a[6]), new $Uint64(x$11.$high ^ x$12.$high, (x$11.$low ^ x$12.$low) >>> 0)), x$13 = (a.nilCheck, a[11]), new $Uint64(x$10.$high ^ x$13.$high, (x$10.$low ^ x$13.$low) >>> 0)), x$14 = (a.nilCheck, a[16]), new $Uint64(x$9.$high ^ x$14.$high, (x$9.$low ^ x$14.$low) >>> 0)), x$15 = (a.nilCheck, a[21]), new $Uint64(x$8.$high ^ x$15.$high, (x$8.$low ^ x$15.$low) >>> 0));
+ bc2 = (x$16 = (x$17 = (x$18 = (x$19 = (a.nilCheck, a[2]), x$20 = (a.nilCheck, a[7]), new $Uint64(x$19.$high ^ x$20.$high, (x$19.$low ^ x$20.$low) >>> 0)), x$21 = (a.nilCheck, a[12]), new $Uint64(x$18.$high ^ x$21.$high, (x$18.$low ^ x$21.$low) >>> 0)), x$22 = (a.nilCheck, a[17]), new $Uint64(x$17.$high ^ x$22.$high, (x$17.$low ^ x$22.$low) >>> 0)), x$23 = (a.nilCheck, a[22]), new $Uint64(x$16.$high ^ x$23.$high, (x$16.$low ^ x$23.$low) >>> 0));
+ bc3 = (x$24 = (x$25 = (x$26 = (x$27 = (a.nilCheck, a[3]), x$28 = (a.nilCheck, a[8]), new $Uint64(x$27.$high ^ x$28.$high, (x$27.$low ^ x$28.$low) >>> 0)), x$29 = (a.nilCheck, a[13]), new $Uint64(x$26.$high ^ x$29.$high, (x$26.$low ^ x$29.$low) >>> 0)), x$30 = (a.nilCheck, a[18]), new $Uint64(x$25.$high ^ x$30.$high, (x$25.$low ^ x$30.$low) >>> 0)), x$31 = (a.nilCheck, a[23]), new $Uint64(x$24.$high ^ x$31.$high, (x$24.$low ^ x$31.$low) >>> 0));
+ bc4 = (x$32 = (x$33 = (x$34 = (x$35 = (a.nilCheck, a[4]), x$36 = (a.nilCheck, a[9]), new $Uint64(x$35.$high ^ x$36.$high, (x$35.$low ^ x$36.$low) >>> 0)), x$37 = (a.nilCheck, a[14]), new $Uint64(x$34.$high ^ x$37.$high, (x$34.$low ^ x$37.$low) >>> 0)), x$38 = (a.nilCheck, a[19]), new $Uint64(x$33.$high ^ x$38.$high, (x$33.$low ^ x$38.$low) >>> 0)), x$39 = (a.nilCheck, a[24]), new $Uint64(x$32.$high ^ x$39.$high, (x$32.$low ^ x$39.$low) >>> 0));
+ d0 = (x$40 = (x$41 = $shiftLeft64(bc1, 1), x$42 = $shiftRightUint64(bc1, 63), new $Uint64(x$41.$high | x$42.$high, (x$41.$low | x$42.$low) >>> 0)), new $Uint64(bc4.$high ^ x$40.$high, (bc4.$low ^ x$40.$low) >>> 0));
+ d1 = (x$43 = (x$44 = $shiftLeft64(bc2, 1), x$45 = $shiftRightUint64(bc2, 63), new $Uint64(x$44.$high | x$45.$high, (x$44.$low | x$45.$low) >>> 0)), new $Uint64(bc0.$high ^ x$43.$high, (bc0.$low ^ x$43.$low) >>> 0));
+ d2 = (x$46 = (x$47 = $shiftLeft64(bc3, 1), x$48 = $shiftRightUint64(bc3, 63), new $Uint64(x$47.$high | x$48.$high, (x$47.$low | x$48.$low) >>> 0)), new $Uint64(bc1.$high ^ x$46.$high, (bc1.$low ^ x$46.$low) >>> 0));
+ d3 = (x$49 = (x$50 = $shiftLeft64(bc4, 1), x$51 = $shiftRightUint64(bc4, 63), new $Uint64(x$50.$high | x$51.$high, (x$50.$low | x$51.$low) >>> 0)), new $Uint64(bc2.$high ^ x$49.$high, (bc2.$low ^ x$49.$low) >>> 0));
+ d4 = (x$52 = (x$53 = $shiftLeft64(bc0, 1), x$54 = $shiftRightUint64(bc0, 63), new $Uint64(x$53.$high | x$54.$high, (x$53.$low | x$54.$low) >>> 0)), new $Uint64(bc3.$high ^ x$52.$high, (bc3.$low ^ x$52.$low) >>> 0));
+ bc0 = (x$55 = (a.nilCheck, a[0]), new $Uint64(x$55.$high ^ d0.$high, (x$55.$low ^ d0.$low) >>> 0));
+ t = (x$56 = (a.nilCheck, a[6]), new $Uint64(x$56.$high ^ d1.$high, (x$56.$low ^ d1.$low) >>> 0));
+ bc1 = (x$57 = $shiftLeft64(t, 44), x$58 = $shiftRightUint64(t, 20), new $Uint64(x$57.$high | x$58.$high, (x$57.$low | x$58.$low) >>> 0));
+ t = (x$59 = (a.nilCheck, a[12]), new $Uint64(x$59.$high ^ d2.$high, (x$59.$low ^ d2.$low) >>> 0));
+ bc2 = (x$60 = $shiftLeft64(t, 43), x$61 = $shiftRightUint64(t, 21), new $Uint64(x$60.$high | x$61.$high, (x$60.$low | x$61.$low) >>> 0));
+ t = (x$62 = (a.nilCheck, a[18]), new $Uint64(x$62.$high ^ d3.$high, (x$62.$low ^ d3.$low) >>> 0));
+ bc3 = (x$63 = $shiftLeft64(t, 21), x$64 = $shiftRightUint64(t, 43), new $Uint64(x$63.$high | x$64.$high, (x$63.$low | x$64.$low) >>> 0));
+ t = (x$65 = (a.nilCheck, a[24]), new $Uint64(x$65.$high ^ d4.$high, (x$65.$low ^ d4.$low) >>> 0));
+ bc4 = (x$66 = $shiftLeft64(t, 14), x$67 = $shiftRightUint64(t, 50), new $Uint64(x$66.$high | x$67.$high, (x$66.$low | x$67.$low) >>> 0));
+ a.nilCheck, a[0] = (x$68 = (x$69 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$69.$high, (bc0.$low ^ x$69.$low) >>> 0)), x$70 = ((i < 0 || i >= rc.length) ? ($throwRuntimeError("index out of range"), undefined) : rc[i]), new $Uint64(x$68.$high ^ x$70.$high, (x$68.$low ^ x$70.$low) >>> 0));
+ a.nilCheck, a[6] = (x$71 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$71.$high, (bc1.$low ^ x$71.$low) >>> 0));
+ a.nilCheck, a[12] = (x$72 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$72.$high, (bc2.$low ^ x$72.$low) >>> 0));
+ a.nilCheck, a[18] = (x$73 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$73.$high, (bc3.$low ^ x$73.$low) >>> 0));
+ a.nilCheck, a[24] = (x$74 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$74.$high, (bc4.$low ^ x$74.$low) >>> 0));
+ t = (x$75 = (a.nilCheck, a[10]), new $Uint64(x$75.$high ^ d0.$high, (x$75.$low ^ d0.$low) >>> 0));
+ bc2 = (x$76 = $shiftLeft64(t, 3), x$77 = $shiftRightUint64(t, 61), new $Uint64(x$76.$high | x$77.$high, (x$76.$low | x$77.$low) >>> 0));
+ t = (x$78 = (a.nilCheck, a[16]), new $Uint64(x$78.$high ^ d1.$high, (x$78.$low ^ d1.$low) >>> 0));
+ bc3 = (x$79 = $shiftLeft64(t, 45), x$80 = $shiftRightUint64(t, 19), new $Uint64(x$79.$high | x$80.$high, (x$79.$low | x$80.$low) >>> 0));
+ t = (x$81 = (a.nilCheck, a[22]), new $Uint64(x$81.$high ^ d2.$high, (x$81.$low ^ d2.$low) >>> 0));
+ bc4 = (x$82 = $shiftLeft64(t, 61), x$83 = $shiftRightUint64(t, 3), new $Uint64(x$82.$high | x$83.$high, (x$82.$low | x$83.$low) >>> 0));
+ t = (x$84 = (a.nilCheck, a[3]), new $Uint64(x$84.$high ^ d3.$high, (x$84.$low ^ d3.$low) >>> 0));
+ bc0 = (x$85 = $shiftLeft64(t, 28), x$86 = $shiftRightUint64(t, 36), new $Uint64(x$85.$high | x$86.$high, (x$85.$low | x$86.$low) >>> 0));
+ t = (x$87 = (a.nilCheck, a[9]), new $Uint64(x$87.$high ^ d4.$high, (x$87.$low ^ d4.$low) >>> 0));
+ bc1 = (x$88 = $shiftLeft64(t, 20), x$89 = $shiftRightUint64(t, 44), new $Uint64(x$88.$high | x$89.$high, (x$88.$low | x$89.$low) >>> 0));
+ a.nilCheck, a[10] = (x$90 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$90.$high, (bc0.$low ^ x$90.$low) >>> 0));
+ a.nilCheck, a[16] = (x$91 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$91.$high, (bc1.$low ^ x$91.$low) >>> 0));
+ a.nilCheck, a[22] = (x$92 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$92.$high, (bc2.$low ^ x$92.$low) >>> 0));
+ a.nilCheck, a[3] = (x$93 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$93.$high, (bc3.$low ^ x$93.$low) >>> 0));
+ a.nilCheck, a[9] = (x$94 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$94.$high, (bc4.$low ^ x$94.$low) >>> 0));
+ t = (x$95 = (a.nilCheck, a[20]), new $Uint64(x$95.$high ^ d0.$high, (x$95.$low ^ d0.$low) >>> 0));
+ bc4 = (x$96 = $shiftLeft64(t, 18), x$97 = $shiftRightUint64(t, 46), new $Uint64(x$96.$high | x$97.$high, (x$96.$low | x$97.$low) >>> 0));
+ t = (x$98 = (a.nilCheck, a[1]), new $Uint64(x$98.$high ^ d1.$high, (x$98.$low ^ d1.$low) >>> 0));
+ bc0 = (x$99 = $shiftLeft64(t, 1), x$100 = $shiftRightUint64(t, 63), new $Uint64(x$99.$high | x$100.$high, (x$99.$low | x$100.$low) >>> 0));
+ t = (x$101 = (a.nilCheck, a[7]), new $Uint64(x$101.$high ^ d2.$high, (x$101.$low ^ d2.$low) >>> 0));
+ bc1 = (x$102 = $shiftLeft64(t, 6), x$103 = $shiftRightUint64(t, 58), new $Uint64(x$102.$high | x$103.$high, (x$102.$low | x$103.$low) >>> 0));
+ t = (x$104 = (a.nilCheck, a[13]), new $Uint64(x$104.$high ^ d3.$high, (x$104.$low ^ d3.$low) >>> 0));
+ bc2 = (x$105 = $shiftLeft64(t, 25), x$106 = $shiftRightUint64(t, 39), new $Uint64(x$105.$high | x$106.$high, (x$105.$low | x$106.$low) >>> 0));
+ t = (x$107 = (a.nilCheck, a[19]), new $Uint64(x$107.$high ^ d4.$high, (x$107.$low ^ d4.$low) >>> 0));
+ bc3 = (x$108 = $shiftLeft64(t, 8), x$109 = $shiftRightUint64(t, 56), new $Uint64(x$108.$high | x$109.$high, (x$108.$low | x$109.$low) >>> 0));
+ a.nilCheck, a[20] = (x$110 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$110.$high, (bc0.$low ^ x$110.$low) >>> 0));
+ a.nilCheck, a[1] = (x$111 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$111.$high, (bc1.$low ^ x$111.$low) >>> 0));
+ a.nilCheck, a[7] = (x$112 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$112.$high, (bc2.$low ^ x$112.$low) >>> 0));
+ a.nilCheck, a[13] = (x$113 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$113.$high, (bc3.$low ^ x$113.$low) >>> 0));
+ a.nilCheck, a[19] = (x$114 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$114.$high, (bc4.$low ^ x$114.$low) >>> 0));
+ t = (x$115 = (a.nilCheck, a[5]), new $Uint64(x$115.$high ^ d0.$high, (x$115.$low ^ d0.$low) >>> 0));
+ bc1 = (x$116 = $shiftLeft64(t, 36), x$117 = $shiftRightUint64(t, 28), new $Uint64(x$116.$high | x$117.$high, (x$116.$low | x$117.$low) >>> 0));
+ t = (x$118 = (a.nilCheck, a[11]), new $Uint64(x$118.$high ^ d1.$high, (x$118.$low ^ d1.$low) >>> 0));
+ bc2 = (x$119 = $shiftLeft64(t, 10), x$120 = $shiftRightUint64(t, 54), new $Uint64(x$119.$high | x$120.$high, (x$119.$low | x$120.$low) >>> 0));
+ t = (x$121 = (a.nilCheck, a[17]), new $Uint64(x$121.$high ^ d2.$high, (x$121.$low ^ d2.$low) >>> 0));
+ bc3 = (x$122 = $shiftLeft64(t, 15), x$123 = $shiftRightUint64(t, 49), new $Uint64(x$122.$high | x$123.$high, (x$122.$low | x$123.$low) >>> 0));
+ t = (x$124 = (a.nilCheck, a[23]), new $Uint64(x$124.$high ^ d3.$high, (x$124.$low ^ d3.$low) >>> 0));
+ bc4 = (x$125 = $shiftLeft64(t, 56), x$126 = $shiftRightUint64(t, 8), new $Uint64(x$125.$high | x$126.$high, (x$125.$low | x$126.$low) >>> 0));
+ t = (x$127 = (a.nilCheck, a[4]), new $Uint64(x$127.$high ^ d4.$high, (x$127.$low ^ d4.$low) >>> 0));
+ bc0 = (x$128 = $shiftLeft64(t, 27), x$129 = $shiftRightUint64(t, 37), new $Uint64(x$128.$high | x$129.$high, (x$128.$low | x$129.$low) >>> 0));
+ a.nilCheck, a[5] = (x$130 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$130.$high, (bc0.$low ^ x$130.$low) >>> 0));
+ a.nilCheck, a[11] = (x$131 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$131.$high, (bc1.$low ^ x$131.$low) >>> 0));
+ a.nilCheck, a[17] = (x$132 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$132.$high, (bc2.$low ^ x$132.$low) >>> 0));
+ a.nilCheck, a[23] = (x$133 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$133.$high, (bc3.$low ^ x$133.$low) >>> 0));
+ a.nilCheck, a[4] = (x$134 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$134.$high, (bc4.$low ^ x$134.$low) >>> 0));
+ t = (x$135 = (a.nilCheck, a[15]), new $Uint64(x$135.$high ^ d0.$high, (x$135.$low ^ d0.$low) >>> 0));
+ bc3 = (x$136 = $shiftLeft64(t, 41), x$137 = $shiftRightUint64(t, 23), new $Uint64(x$136.$high | x$137.$high, (x$136.$low | x$137.$low) >>> 0));
+ t = (x$138 = (a.nilCheck, a[21]), new $Uint64(x$138.$high ^ d1.$high, (x$138.$low ^ d1.$low) >>> 0));
+ bc4 = (x$139 = $shiftLeft64(t, 2), x$140 = $shiftRightUint64(t, 62), new $Uint64(x$139.$high | x$140.$high, (x$139.$low | x$140.$low) >>> 0));
+ t = (x$141 = (a.nilCheck, a[2]), new $Uint64(x$141.$high ^ d2.$high, (x$141.$low ^ d2.$low) >>> 0));
+ bc0 = (x$142 = $shiftLeft64(t, 62), x$143 = $shiftRightUint64(t, 2), new $Uint64(x$142.$high | x$143.$high, (x$142.$low | x$143.$low) >>> 0));
+ t = (x$144 = (a.nilCheck, a[8]), new $Uint64(x$144.$high ^ d3.$high, (x$144.$low ^ d3.$low) >>> 0));
+ bc1 = (x$145 = $shiftLeft64(t, 55), x$146 = $shiftRightUint64(t, 9), new $Uint64(x$145.$high | x$146.$high, (x$145.$low | x$146.$low) >>> 0));
+ t = (x$147 = (a.nilCheck, a[14]), new $Uint64(x$147.$high ^ d4.$high, (x$147.$low ^ d4.$low) >>> 0));
+ bc2 = (x$148 = $shiftLeft64(t, 39), x$149 = $shiftRightUint64(t, 25), new $Uint64(x$148.$high | x$149.$high, (x$148.$low | x$149.$low) >>> 0));
+ a.nilCheck, a[15] = (x$150 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$150.$high, (bc0.$low ^ x$150.$low) >>> 0));
+ a.nilCheck, a[21] = (x$151 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$151.$high, (bc1.$low ^ x$151.$low) >>> 0));
+ a.nilCheck, a[2] = (x$152 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$152.$high, (bc2.$low ^ x$152.$low) >>> 0));
+ a.nilCheck, a[8] = (x$153 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$153.$high, (bc3.$low ^ x$153.$low) >>> 0));
+ a.nilCheck, a[14] = (x$154 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$154.$high, (bc4.$low ^ x$154.$low) >>> 0));
+ bc0 = (x$155 = (x$156 = (x$157 = (x$158 = (a.nilCheck, a[0]), x$159 = (a.nilCheck, a[5]), new $Uint64(x$158.$high ^ x$159.$high, (x$158.$low ^ x$159.$low) >>> 0)), x$160 = (a.nilCheck, a[10]), new $Uint64(x$157.$high ^ x$160.$high, (x$157.$low ^ x$160.$low) >>> 0)), x$161 = (a.nilCheck, a[15]), new $Uint64(x$156.$high ^ x$161.$high, (x$156.$low ^ x$161.$low) >>> 0)), x$162 = (a.nilCheck, a[20]), new $Uint64(x$155.$high ^ x$162.$high, (x$155.$low ^ x$162.$low) >>> 0));
+ bc1 = (x$163 = (x$164 = (x$165 = (x$166 = (a.nilCheck, a[1]), x$167 = (a.nilCheck, a[6]), new $Uint64(x$166.$high ^ x$167.$high, (x$166.$low ^ x$167.$low) >>> 0)), x$168 = (a.nilCheck, a[11]), new $Uint64(x$165.$high ^ x$168.$high, (x$165.$low ^ x$168.$low) >>> 0)), x$169 = (a.nilCheck, a[16]), new $Uint64(x$164.$high ^ x$169.$high, (x$164.$low ^ x$169.$low) >>> 0)), x$170 = (a.nilCheck, a[21]), new $Uint64(x$163.$high ^ x$170.$high, (x$163.$low ^ x$170.$low) >>> 0));
+ bc2 = (x$171 = (x$172 = (x$173 = (x$174 = (a.nilCheck, a[2]), x$175 = (a.nilCheck, a[7]), new $Uint64(x$174.$high ^ x$175.$high, (x$174.$low ^ x$175.$low) >>> 0)), x$176 = (a.nilCheck, a[12]), new $Uint64(x$173.$high ^ x$176.$high, (x$173.$low ^ x$176.$low) >>> 0)), x$177 = (a.nilCheck, a[17]), new $Uint64(x$172.$high ^ x$177.$high, (x$172.$low ^ x$177.$low) >>> 0)), x$178 = (a.nilCheck, a[22]), new $Uint64(x$171.$high ^ x$178.$high, (x$171.$low ^ x$178.$low) >>> 0));
+ bc3 = (x$179 = (x$180 = (x$181 = (x$182 = (a.nilCheck, a[3]), x$183 = (a.nilCheck, a[8]), new $Uint64(x$182.$high ^ x$183.$high, (x$182.$low ^ x$183.$low) >>> 0)), x$184 = (a.nilCheck, a[13]), new $Uint64(x$181.$high ^ x$184.$high, (x$181.$low ^ x$184.$low) >>> 0)), x$185 = (a.nilCheck, a[18]), new $Uint64(x$180.$high ^ x$185.$high, (x$180.$low ^ x$185.$low) >>> 0)), x$186 = (a.nilCheck, a[23]), new $Uint64(x$179.$high ^ x$186.$high, (x$179.$low ^ x$186.$low) >>> 0));
+ bc4 = (x$187 = (x$188 = (x$189 = (x$190 = (a.nilCheck, a[4]), x$191 = (a.nilCheck, a[9]), new $Uint64(x$190.$high ^ x$191.$high, (x$190.$low ^ x$191.$low) >>> 0)), x$192 = (a.nilCheck, a[14]), new $Uint64(x$189.$high ^ x$192.$high, (x$189.$low ^ x$192.$low) >>> 0)), x$193 = (a.nilCheck, a[19]), new $Uint64(x$188.$high ^ x$193.$high, (x$188.$low ^ x$193.$low) >>> 0)), x$194 = (a.nilCheck, a[24]), new $Uint64(x$187.$high ^ x$194.$high, (x$187.$low ^ x$194.$low) >>> 0));
+ d0 = (x$195 = (x$196 = $shiftLeft64(bc1, 1), x$197 = $shiftRightUint64(bc1, 63), new $Uint64(x$196.$high | x$197.$high, (x$196.$low | x$197.$low) >>> 0)), new $Uint64(bc4.$high ^ x$195.$high, (bc4.$low ^ x$195.$low) >>> 0));
+ d1 = (x$198 = (x$199 = $shiftLeft64(bc2, 1), x$200 = $shiftRightUint64(bc2, 63), new $Uint64(x$199.$high | x$200.$high, (x$199.$low | x$200.$low) >>> 0)), new $Uint64(bc0.$high ^ x$198.$high, (bc0.$low ^ x$198.$low) >>> 0));
+ d2 = (x$201 = (x$202 = $shiftLeft64(bc3, 1), x$203 = $shiftRightUint64(bc3, 63), new $Uint64(x$202.$high | x$203.$high, (x$202.$low | x$203.$low) >>> 0)), new $Uint64(bc1.$high ^ x$201.$high, (bc1.$low ^ x$201.$low) >>> 0));
+ d3 = (x$204 = (x$205 = $shiftLeft64(bc4, 1), x$206 = $shiftRightUint64(bc4, 63), new $Uint64(x$205.$high | x$206.$high, (x$205.$low | x$206.$low) >>> 0)), new $Uint64(bc2.$high ^ x$204.$high, (bc2.$low ^ x$204.$low) >>> 0));
+ d4 = (x$207 = (x$208 = $shiftLeft64(bc0, 1), x$209 = $shiftRightUint64(bc0, 63), new $Uint64(x$208.$high | x$209.$high, (x$208.$low | x$209.$low) >>> 0)), new $Uint64(bc3.$high ^ x$207.$high, (bc3.$low ^ x$207.$low) >>> 0));
+ bc0 = (x$210 = (a.nilCheck, a[0]), new $Uint64(x$210.$high ^ d0.$high, (x$210.$low ^ d0.$low) >>> 0));
+ t = (x$211 = (a.nilCheck, a[16]), new $Uint64(x$211.$high ^ d1.$high, (x$211.$low ^ d1.$low) >>> 0));
+ bc1 = (x$212 = $shiftLeft64(t, 44), x$213 = $shiftRightUint64(t, 20), new $Uint64(x$212.$high | x$213.$high, (x$212.$low | x$213.$low) >>> 0));
+ t = (x$214 = (a.nilCheck, a[7]), new $Uint64(x$214.$high ^ d2.$high, (x$214.$low ^ d2.$low) >>> 0));
+ bc2 = (x$215 = $shiftLeft64(t, 43), x$216 = $shiftRightUint64(t, 21), new $Uint64(x$215.$high | x$216.$high, (x$215.$low | x$216.$low) >>> 0));
+ t = (x$217 = (a.nilCheck, a[23]), new $Uint64(x$217.$high ^ d3.$high, (x$217.$low ^ d3.$low) >>> 0));
+ bc3 = (x$218 = $shiftLeft64(t, 21), x$219 = $shiftRightUint64(t, 43), new $Uint64(x$218.$high | x$219.$high, (x$218.$low | x$219.$low) >>> 0));
+ t = (x$220 = (a.nilCheck, a[14]), new $Uint64(x$220.$high ^ d4.$high, (x$220.$low ^ d4.$low) >>> 0));
+ bc4 = (x$221 = $shiftLeft64(t, 14), x$222 = $shiftRightUint64(t, 50), new $Uint64(x$221.$high | x$222.$high, (x$221.$low | x$222.$low) >>> 0));
+ a.nilCheck, a[0] = (x$223 = (x$224 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$224.$high, (bc0.$low ^ x$224.$low) >>> 0)), x$225 = (x$226 = i + 1 >> 0, ((x$226 < 0 || x$226 >= rc.length) ? ($throwRuntimeError("index out of range"), undefined) : rc[x$226])), new $Uint64(x$223.$high ^ x$225.$high, (x$223.$low ^ x$225.$low) >>> 0));
+ a.nilCheck, a[16] = (x$227 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$227.$high, (bc1.$low ^ x$227.$low) >>> 0));
+ a.nilCheck, a[7] = (x$228 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$228.$high, (bc2.$low ^ x$228.$low) >>> 0));
+ a.nilCheck, a[23] = (x$229 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$229.$high, (bc3.$low ^ x$229.$low) >>> 0));
+ a.nilCheck, a[14] = (x$230 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$230.$high, (bc4.$low ^ x$230.$low) >>> 0));
+ t = (x$231 = (a.nilCheck, a[20]), new $Uint64(x$231.$high ^ d0.$high, (x$231.$low ^ d0.$low) >>> 0));
+ bc2 = (x$232 = $shiftLeft64(t, 3), x$233 = $shiftRightUint64(t, 61), new $Uint64(x$232.$high | x$233.$high, (x$232.$low | x$233.$low) >>> 0));
+ t = (x$234 = (a.nilCheck, a[11]), new $Uint64(x$234.$high ^ d1.$high, (x$234.$low ^ d1.$low) >>> 0));
+ bc3 = (x$235 = $shiftLeft64(t, 45), x$236 = $shiftRightUint64(t, 19), new $Uint64(x$235.$high | x$236.$high, (x$235.$low | x$236.$low) >>> 0));
+ t = (x$237 = (a.nilCheck, a[2]), new $Uint64(x$237.$high ^ d2.$high, (x$237.$low ^ d2.$low) >>> 0));
+ bc4 = (x$238 = $shiftLeft64(t, 61), x$239 = $shiftRightUint64(t, 3), new $Uint64(x$238.$high | x$239.$high, (x$238.$low | x$239.$low) >>> 0));
+ t = (x$240 = (a.nilCheck, a[18]), new $Uint64(x$240.$high ^ d3.$high, (x$240.$low ^ d3.$low) >>> 0));
+ bc0 = (x$241 = $shiftLeft64(t, 28), x$242 = $shiftRightUint64(t, 36), new $Uint64(x$241.$high | x$242.$high, (x$241.$low | x$242.$low) >>> 0));
+ t = (x$243 = (a.nilCheck, a[9]), new $Uint64(x$243.$high ^ d4.$high, (x$243.$low ^ d4.$low) >>> 0));
+ bc1 = (x$244 = $shiftLeft64(t, 20), x$245 = $shiftRightUint64(t, 44), new $Uint64(x$244.$high | x$245.$high, (x$244.$low | x$245.$low) >>> 0));
+ a.nilCheck, a[20] = (x$246 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$246.$high, (bc0.$low ^ x$246.$low) >>> 0));
+ a.nilCheck, a[11] = (x$247 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$247.$high, (bc1.$low ^ x$247.$low) >>> 0));
+ a.nilCheck, a[2] = (x$248 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$248.$high, (bc2.$low ^ x$248.$low) >>> 0));
+ a.nilCheck, a[18] = (x$249 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$249.$high, (bc3.$low ^ x$249.$low) >>> 0));
+ a.nilCheck, a[9] = (x$250 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$250.$high, (bc4.$low ^ x$250.$low) >>> 0));
+ t = (x$251 = (a.nilCheck, a[15]), new $Uint64(x$251.$high ^ d0.$high, (x$251.$low ^ d0.$low) >>> 0));
+ bc4 = (x$252 = $shiftLeft64(t, 18), x$253 = $shiftRightUint64(t, 46), new $Uint64(x$252.$high | x$253.$high, (x$252.$low | x$253.$low) >>> 0));
+ t = (x$254 = (a.nilCheck, a[6]), new $Uint64(x$254.$high ^ d1.$high, (x$254.$low ^ d1.$low) >>> 0));
+ bc0 = (x$255 = $shiftLeft64(t, 1), x$256 = $shiftRightUint64(t, 63), new $Uint64(x$255.$high | x$256.$high, (x$255.$low | x$256.$low) >>> 0));
+ t = (x$257 = (a.nilCheck, a[22]), new $Uint64(x$257.$high ^ d2.$high, (x$257.$low ^ d2.$low) >>> 0));
+ bc1 = (x$258 = $shiftLeft64(t, 6), x$259 = $shiftRightUint64(t, 58), new $Uint64(x$258.$high | x$259.$high, (x$258.$low | x$259.$low) >>> 0));
+ t = (x$260 = (a.nilCheck, a[13]), new $Uint64(x$260.$high ^ d3.$high, (x$260.$low ^ d3.$low) >>> 0));
+ bc2 = (x$261 = $shiftLeft64(t, 25), x$262 = $shiftRightUint64(t, 39), new $Uint64(x$261.$high | x$262.$high, (x$261.$low | x$262.$low) >>> 0));
+ t = (x$263 = (a.nilCheck, a[4]), new $Uint64(x$263.$high ^ d4.$high, (x$263.$low ^ d4.$low) >>> 0));
+ bc3 = (x$264 = $shiftLeft64(t, 8), x$265 = $shiftRightUint64(t, 56), new $Uint64(x$264.$high | x$265.$high, (x$264.$low | x$265.$low) >>> 0));
+ a.nilCheck, a[15] = (x$266 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$266.$high, (bc0.$low ^ x$266.$low) >>> 0));
+ a.nilCheck, a[6] = (x$267 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$267.$high, (bc1.$low ^ x$267.$low) >>> 0));
+ a.nilCheck, a[22] = (x$268 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$268.$high, (bc2.$low ^ x$268.$low) >>> 0));
+ a.nilCheck, a[13] = (x$269 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$269.$high, (bc3.$low ^ x$269.$low) >>> 0));
+ a.nilCheck, a[4] = (x$270 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$270.$high, (bc4.$low ^ x$270.$low) >>> 0));
+ t = (x$271 = (a.nilCheck, a[10]), new $Uint64(x$271.$high ^ d0.$high, (x$271.$low ^ d0.$low) >>> 0));
+ bc1 = (x$272 = $shiftLeft64(t, 36), x$273 = $shiftRightUint64(t, 28), new $Uint64(x$272.$high | x$273.$high, (x$272.$low | x$273.$low) >>> 0));
+ t = (x$274 = (a.nilCheck, a[1]), new $Uint64(x$274.$high ^ d1.$high, (x$274.$low ^ d1.$low) >>> 0));
+ bc2 = (x$275 = $shiftLeft64(t, 10), x$276 = $shiftRightUint64(t, 54), new $Uint64(x$275.$high | x$276.$high, (x$275.$low | x$276.$low) >>> 0));
+ t = (x$277 = (a.nilCheck, a[17]), new $Uint64(x$277.$high ^ d2.$high, (x$277.$low ^ d2.$low) >>> 0));
+ bc3 = (x$278 = $shiftLeft64(t, 15), x$279 = $shiftRightUint64(t, 49), new $Uint64(x$278.$high | x$279.$high, (x$278.$low | x$279.$low) >>> 0));
+ t = (x$280 = (a.nilCheck, a[8]), new $Uint64(x$280.$high ^ d3.$high, (x$280.$low ^ d3.$low) >>> 0));
+ bc4 = (x$281 = $shiftLeft64(t, 56), x$282 = $shiftRightUint64(t, 8), new $Uint64(x$281.$high | x$282.$high, (x$281.$low | x$282.$low) >>> 0));
+ t = (x$283 = (a.nilCheck, a[24]), new $Uint64(x$283.$high ^ d4.$high, (x$283.$low ^ d4.$low) >>> 0));
+ bc0 = (x$284 = $shiftLeft64(t, 27), x$285 = $shiftRightUint64(t, 37), new $Uint64(x$284.$high | x$285.$high, (x$284.$low | x$285.$low) >>> 0));
+ a.nilCheck, a[10] = (x$286 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$286.$high, (bc0.$low ^ x$286.$low) >>> 0));
+ a.nilCheck, a[1] = (x$287 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$287.$high, (bc1.$low ^ x$287.$low) >>> 0));
+ a.nilCheck, a[17] = (x$288 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$288.$high, (bc2.$low ^ x$288.$low) >>> 0));
+ a.nilCheck, a[8] = (x$289 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$289.$high, (bc3.$low ^ x$289.$low) >>> 0));
+ a.nilCheck, a[24] = (x$290 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$290.$high, (bc4.$low ^ x$290.$low) >>> 0));
+ t = (x$291 = (a.nilCheck, a[5]), new $Uint64(x$291.$high ^ d0.$high, (x$291.$low ^ d0.$low) >>> 0));
+ bc3 = (x$292 = $shiftLeft64(t, 41), x$293 = $shiftRightUint64(t, 23), new $Uint64(x$292.$high | x$293.$high, (x$292.$low | x$293.$low) >>> 0));
+ t = (x$294 = (a.nilCheck, a[21]), new $Uint64(x$294.$high ^ d1.$high, (x$294.$low ^ d1.$low) >>> 0));
+ bc4 = (x$295 = $shiftLeft64(t, 2), x$296 = $shiftRightUint64(t, 62), new $Uint64(x$295.$high | x$296.$high, (x$295.$low | x$296.$low) >>> 0));
+ t = (x$297 = (a.nilCheck, a[12]), new $Uint64(x$297.$high ^ d2.$high, (x$297.$low ^ d2.$low) >>> 0));
+ bc0 = (x$298 = $shiftLeft64(t, 62), x$299 = $shiftRightUint64(t, 2), new $Uint64(x$298.$high | x$299.$high, (x$298.$low | x$299.$low) >>> 0));
+ t = (x$300 = (a.nilCheck, a[3]), new $Uint64(x$300.$high ^ d3.$high, (x$300.$low ^ d3.$low) >>> 0));
+ bc1 = (x$301 = $shiftLeft64(t, 55), x$302 = $shiftRightUint64(t, 9), new $Uint64(x$301.$high | x$302.$high, (x$301.$low | x$302.$low) >>> 0));
+ t = (x$303 = (a.nilCheck, a[19]), new $Uint64(x$303.$high ^ d4.$high, (x$303.$low ^ d4.$low) >>> 0));
+ bc2 = (x$304 = $shiftLeft64(t, 39), x$305 = $shiftRightUint64(t, 25), new $Uint64(x$304.$high | x$305.$high, (x$304.$low | x$305.$low) >>> 0));
+ a.nilCheck, a[5] = (x$306 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$306.$high, (bc0.$low ^ x$306.$low) >>> 0));
+ a.nilCheck, a[21] = (x$307 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$307.$high, (bc1.$low ^ x$307.$low) >>> 0));
+ a.nilCheck, a[12] = (x$308 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$308.$high, (bc2.$low ^ x$308.$low) >>> 0));
+ a.nilCheck, a[3] = (x$309 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$309.$high, (bc3.$low ^ x$309.$low) >>> 0));
+ a.nilCheck, a[19] = (x$310 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$310.$high, (bc4.$low ^ x$310.$low) >>> 0));
+ bc0 = (x$311 = (x$312 = (x$313 = (x$314 = (a.nilCheck, a[0]), x$315 = (a.nilCheck, a[5]), new $Uint64(x$314.$high ^ x$315.$high, (x$314.$low ^ x$315.$low) >>> 0)), x$316 = (a.nilCheck, a[10]), new $Uint64(x$313.$high ^ x$316.$high, (x$313.$low ^ x$316.$low) >>> 0)), x$317 = (a.nilCheck, a[15]), new $Uint64(x$312.$high ^ x$317.$high, (x$312.$low ^ x$317.$low) >>> 0)), x$318 = (a.nilCheck, a[20]), new $Uint64(x$311.$high ^ x$318.$high, (x$311.$low ^ x$318.$low) >>> 0));
+ bc1 = (x$319 = (x$320 = (x$321 = (x$322 = (a.nilCheck, a[1]), x$323 = (a.nilCheck, a[6]), new $Uint64(x$322.$high ^ x$323.$high, (x$322.$low ^ x$323.$low) >>> 0)), x$324 = (a.nilCheck, a[11]), new $Uint64(x$321.$high ^ x$324.$high, (x$321.$low ^ x$324.$low) >>> 0)), x$325 = (a.nilCheck, a[16]), new $Uint64(x$320.$high ^ x$325.$high, (x$320.$low ^ x$325.$low) >>> 0)), x$326 = (a.nilCheck, a[21]), new $Uint64(x$319.$high ^ x$326.$high, (x$319.$low ^ x$326.$low) >>> 0));
+ bc2 = (x$327 = (x$328 = (x$329 = (x$330 = (a.nilCheck, a[2]), x$331 = (a.nilCheck, a[7]), new $Uint64(x$330.$high ^ x$331.$high, (x$330.$low ^ x$331.$low) >>> 0)), x$332 = (a.nilCheck, a[12]), new $Uint64(x$329.$high ^ x$332.$high, (x$329.$low ^ x$332.$low) >>> 0)), x$333 = (a.nilCheck, a[17]), new $Uint64(x$328.$high ^ x$333.$high, (x$328.$low ^ x$333.$low) >>> 0)), x$334 = (a.nilCheck, a[22]), new $Uint64(x$327.$high ^ x$334.$high, (x$327.$low ^ x$334.$low) >>> 0));
+ bc3 = (x$335 = (x$336 = (x$337 = (x$338 = (a.nilCheck, a[3]), x$339 = (a.nilCheck, a[8]), new $Uint64(x$338.$high ^ x$339.$high, (x$338.$low ^ x$339.$low) >>> 0)), x$340 = (a.nilCheck, a[13]), new $Uint64(x$337.$high ^ x$340.$high, (x$337.$low ^ x$340.$low) >>> 0)), x$341 = (a.nilCheck, a[18]), new $Uint64(x$336.$high ^ x$341.$high, (x$336.$low ^ x$341.$low) >>> 0)), x$342 = (a.nilCheck, a[23]), new $Uint64(x$335.$high ^ x$342.$high, (x$335.$low ^ x$342.$low) >>> 0));
+ bc4 = (x$343 = (x$344 = (x$345 = (x$346 = (a.nilCheck, a[4]), x$347 = (a.nilCheck, a[9]), new $Uint64(x$346.$high ^ x$347.$high, (x$346.$low ^ x$347.$low) >>> 0)), x$348 = (a.nilCheck, a[14]), new $Uint64(x$345.$high ^ x$348.$high, (x$345.$low ^ x$348.$low) >>> 0)), x$349 = (a.nilCheck, a[19]), new $Uint64(x$344.$high ^ x$349.$high, (x$344.$low ^ x$349.$low) >>> 0)), x$350 = (a.nilCheck, a[24]), new $Uint64(x$343.$high ^ x$350.$high, (x$343.$low ^ x$350.$low) >>> 0));
+ d0 = (x$351 = (x$352 = $shiftLeft64(bc1, 1), x$353 = $shiftRightUint64(bc1, 63), new $Uint64(x$352.$high | x$353.$high, (x$352.$low | x$353.$low) >>> 0)), new $Uint64(bc4.$high ^ x$351.$high, (bc4.$low ^ x$351.$low) >>> 0));
+ d1 = (x$354 = (x$355 = $shiftLeft64(bc2, 1), x$356 = $shiftRightUint64(bc2, 63), new $Uint64(x$355.$high | x$356.$high, (x$355.$low | x$356.$low) >>> 0)), new $Uint64(bc0.$high ^ x$354.$high, (bc0.$low ^ x$354.$low) >>> 0));
+ d2 = (x$357 = (x$358 = $shiftLeft64(bc3, 1), x$359 = $shiftRightUint64(bc3, 63), new $Uint64(x$358.$high | x$359.$high, (x$358.$low | x$359.$low) >>> 0)), new $Uint64(bc1.$high ^ x$357.$high, (bc1.$low ^ x$357.$low) >>> 0));
+ d3 = (x$360 = (x$361 = $shiftLeft64(bc4, 1), x$362 = $shiftRightUint64(bc4, 63), new $Uint64(x$361.$high | x$362.$high, (x$361.$low | x$362.$low) >>> 0)), new $Uint64(bc2.$high ^ x$360.$high, (bc2.$low ^ x$360.$low) >>> 0));
+ d4 = (x$363 = (x$364 = $shiftLeft64(bc0, 1), x$365 = $shiftRightUint64(bc0, 63), new $Uint64(x$364.$high | x$365.$high, (x$364.$low | x$365.$low) >>> 0)), new $Uint64(bc3.$high ^ x$363.$high, (bc3.$low ^ x$363.$low) >>> 0));
+ bc0 = (x$366 = (a.nilCheck, a[0]), new $Uint64(x$366.$high ^ d0.$high, (x$366.$low ^ d0.$low) >>> 0));
+ t = (x$367 = (a.nilCheck, a[11]), new $Uint64(x$367.$high ^ d1.$high, (x$367.$low ^ d1.$low) >>> 0));
+ bc1 = (x$368 = $shiftLeft64(t, 44), x$369 = $shiftRightUint64(t, 20), new $Uint64(x$368.$high | x$369.$high, (x$368.$low | x$369.$low) >>> 0));
+ t = (x$370 = (a.nilCheck, a[22]), new $Uint64(x$370.$high ^ d2.$high, (x$370.$low ^ d2.$low) >>> 0));
+ bc2 = (x$371 = $shiftLeft64(t, 43), x$372 = $shiftRightUint64(t, 21), new $Uint64(x$371.$high | x$372.$high, (x$371.$low | x$372.$low) >>> 0));
+ t = (x$373 = (a.nilCheck, a[8]), new $Uint64(x$373.$high ^ d3.$high, (x$373.$low ^ d3.$low) >>> 0));
+ bc3 = (x$374 = $shiftLeft64(t, 21), x$375 = $shiftRightUint64(t, 43), new $Uint64(x$374.$high | x$375.$high, (x$374.$low | x$375.$low) >>> 0));
+ t = (x$376 = (a.nilCheck, a[19]), new $Uint64(x$376.$high ^ d4.$high, (x$376.$low ^ d4.$low) >>> 0));
+ bc4 = (x$377 = $shiftLeft64(t, 14), x$378 = $shiftRightUint64(t, 50), new $Uint64(x$377.$high | x$378.$high, (x$377.$low | x$378.$low) >>> 0));
+ a.nilCheck, a[0] = (x$379 = (x$380 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$380.$high, (bc0.$low ^ x$380.$low) >>> 0)), x$381 = (x$382 = i + 2 >> 0, ((x$382 < 0 || x$382 >= rc.length) ? ($throwRuntimeError("index out of range"), undefined) : rc[x$382])), new $Uint64(x$379.$high ^ x$381.$high, (x$379.$low ^ x$381.$low) >>> 0));
+ a.nilCheck, a[11] = (x$383 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$383.$high, (bc1.$low ^ x$383.$low) >>> 0));
+ a.nilCheck, a[22] = (x$384 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$384.$high, (bc2.$low ^ x$384.$low) >>> 0));
+ a.nilCheck, a[8] = (x$385 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$385.$high, (bc3.$low ^ x$385.$low) >>> 0));
+ a.nilCheck, a[19] = (x$386 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$386.$high, (bc4.$low ^ x$386.$low) >>> 0));
+ t = (x$387 = (a.nilCheck, a[15]), new $Uint64(x$387.$high ^ d0.$high, (x$387.$low ^ d0.$low) >>> 0));
+ bc2 = (x$388 = $shiftLeft64(t, 3), x$389 = $shiftRightUint64(t, 61), new $Uint64(x$388.$high | x$389.$high, (x$388.$low | x$389.$low) >>> 0));
+ t = (x$390 = (a.nilCheck, a[1]), new $Uint64(x$390.$high ^ d1.$high, (x$390.$low ^ d1.$low) >>> 0));
+ bc3 = (x$391 = $shiftLeft64(t, 45), x$392 = $shiftRightUint64(t, 19), new $Uint64(x$391.$high | x$392.$high, (x$391.$low | x$392.$low) >>> 0));
+ t = (x$393 = (a.nilCheck, a[12]), new $Uint64(x$393.$high ^ d2.$high, (x$393.$low ^ d2.$low) >>> 0));
+ bc4 = (x$394 = $shiftLeft64(t, 61), x$395 = $shiftRightUint64(t, 3), new $Uint64(x$394.$high | x$395.$high, (x$394.$low | x$395.$low) >>> 0));
+ t = (x$396 = (a.nilCheck, a[23]), new $Uint64(x$396.$high ^ d3.$high, (x$396.$low ^ d3.$low) >>> 0));
+ bc0 = (x$397 = $shiftLeft64(t, 28), x$398 = $shiftRightUint64(t, 36), new $Uint64(x$397.$high | x$398.$high, (x$397.$low | x$398.$low) >>> 0));
+ t = (x$399 = (a.nilCheck, a[9]), new $Uint64(x$399.$high ^ d4.$high, (x$399.$low ^ d4.$low) >>> 0));
+ bc1 = (x$400 = $shiftLeft64(t, 20), x$401 = $shiftRightUint64(t, 44), new $Uint64(x$400.$high | x$401.$high, (x$400.$low | x$401.$low) >>> 0));
+ a.nilCheck, a[15] = (x$402 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$402.$high, (bc0.$low ^ x$402.$low) >>> 0));
+ a.nilCheck, a[1] = (x$403 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$403.$high, (bc1.$low ^ x$403.$low) >>> 0));
+ a.nilCheck, a[12] = (x$404 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$404.$high, (bc2.$low ^ x$404.$low) >>> 0));
+ a.nilCheck, a[23] = (x$405 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$405.$high, (bc3.$low ^ x$405.$low) >>> 0));
+ a.nilCheck, a[9] = (x$406 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$406.$high, (bc4.$low ^ x$406.$low) >>> 0));
+ t = (x$407 = (a.nilCheck, a[5]), new $Uint64(x$407.$high ^ d0.$high, (x$407.$low ^ d0.$low) >>> 0));
+ bc4 = (x$408 = $shiftLeft64(t, 18), x$409 = $shiftRightUint64(t, 46), new $Uint64(x$408.$high | x$409.$high, (x$408.$low | x$409.$low) >>> 0));
+ t = (x$410 = (a.nilCheck, a[16]), new $Uint64(x$410.$high ^ d1.$high, (x$410.$low ^ d1.$low) >>> 0));
+ bc0 = (x$411 = $shiftLeft64(t, 1), x$412 = $shiftRightUint64(t, 63), new $Uint64(x$411.$high | x$412.$high, (x$411.$low | x$412.$low) >>> 0));
+ t = (x$413 = (a.nilCheck, a[2]), new $Uint64(x$413.$high ^ d2.$high, (x$413.$low ^ d2.$low) >>> 0));
+ bc1 = (x$414 = $shiftLeft64(t, 6), x$415 = $shiftRightUint64(t, 58), new $Uint64(x$414.$high | x$415.$high, (x$414.$low | x$415.$low) >>> 0));
+ t = (x$416 = (a.nilCheck, a[13]), new $Uint64(x$416.$high ^ d3.$high, (x$416.$low ^ d3.$low) >>> 0));
+ bc2 = (x$417 = $shiftLeft64(t, 25), x$418 = $shiftRightUint64(t, 39), new $Uint64(x$417.$high | x$418.$high, (x$417.$low | x$418.$low) >>> 0));
+ t = (x$419 = (a.nilCheck, a[24]), new $Uint64(x$419.$high ^ d4.$high, (x$419.$low ^ d4.$low) >>> 0));
+ bc3 = (x$420 = $shiftLeft64(t, 8), x$421 = $shiftRightUint64(t, 56), new $Uint64(x$420.$high | x$421.$high, (x$420.$low | x$421.$low) >>> 0));
+ a.nilCheck, a[5] = (x$422 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$422.$high, (bc0.$low ^ x$422.$low) >>> 0));
+ a.nilCheck, a[16] = (x$423 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$423.$high, (bc1.$low ^ x$423.$low) >>> 0));
+ a.nilCheck, a[2] = (x$424 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$424.$high, (bc2.$low ^ x$424.$low) >>> 0));
+ a.nilCheck, a[13] = (x$425 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$425.$high, (bc3.$low ^ x$425.$low) >>> 0));
+ a.nilCheck, a[24] = (x$426 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$426.$high, (bc4.$low ^ x$426.$low) >>> 0));
+ t = (x$427 = (a.nilCheck, a[20]), new $Uint64(x$427.$high ^ d0.$high, (x$427.$low ^ d0.$low) >>> 0));
+ bc1 = (x$428 = $shiftLeft64(t, 36), x$429 = $shiftRightUint64(t, 28), new $Uint64(x$428.$high | x$429.$high, (x$428.$low | x$429.$low) >>> 0));
+ t = (x$430 = (a.nilCheck, a[6]), new $Uint64(x$430.$high ^ d1.$high, (x$430.$low ^ d1.$low) >>> 0));
+ bc2 = (x$431 = $shiftLeft64(t, 10), x$432 = $shiftRightUint64(t, 54), new $Uint64(x$431.$high | x$432.$high, (x$431.$low | x$432.$low) >>> 0));
+ t = (x$433 = (a.nilCheck, a[17]), new $Uint64(x$433.$high ^ d2.$high, (x$433.$low ^ d2.$low) >>> 0));
+ bc3 = (x$434 = $shiftLeft64(t, 15), x$435 = $shiftRightUint64(t, 49), new $Uint64(x$434.$high | x$435.$high, (x$434.$low | x$435.$low) >>> 0));
+ t = (x$436 = (a.nilCheck, a[3]), new $Uint64(x$436.$high ^ d3.$high, (x$436.$low ^ d3.$low) >>> 0));
+ bc4 = (x$437 = $shiftLeft64(t, 56), x$438 = $shiftRightUint64(t, 8), new $Uint64(x$437.$high | x$438.$high, (x$437.$low | x$438.$low) >>> 0));
+ t = (x$439 = (a.nilCheck, a[14]), new $Uint64(x$439.$high ^ d4.$high, (x$439.$low ^ d4.$low) >>> 0));
+ bc0 = (x$440 = $shiftLeft64(t, 27), x$441 = $shiftRightUint64(t, 37), new $Uint64(x$440.$high | x$441.$high, (x$440.$low | x$441.$low) >>> 0));
+ a.nilCheck, a[20] = (x$442 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$442.$high, (bc0.$low ^ x$442.$low) >>> 0));
+ a.nilCheck, a[6] = (x$443 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$443.$high, (bc1.$low ^ x$443.$low) >>> 0));
+ a.nilCheck, a[17] = (x$444 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$444.$high, (bc2.$low ^ x$444.$low) >>> 0));
+ a.nilCheck, a[3] = (x$445 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$445.$high, (bc3.$low ^ x$445.$low) >>> 0));
+ a.nilCheck, a[14] = (x$446 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$446.$high, (bc4.$low ^ x$446.$low) >>> 0));
+ t = (x$447 = (a.nilCheck, a[10]), new $Uint64(x$447.$high ^ d0.$high, (x$447.$low ^ d0.$low) >>> 0));
+ bc3 = (x$448 = $shiftLeft64(t, 41), x$449 = $shiftRightUint64(t, 23), new $Uint64(x$448.$high | x$449.$high, (x$448.$low | x$449.$low) >>> 0));
+ t = (x$450 = (a.nilCheck, a[21]), new $Uint64(x$450.$high ^ d1.$high, (x$450.$low ^ d1.$low) >>> 0));
+ bc4 = (x$451 = $shiftLeft64(t, 2), x$452 = $shiftRightUint64(t, 62), new $Uint64(x$451.$high | x$452.$high, (x$451.$low | x$452.$low) >>> 0));
+ t = (x$453 = (a.nilCheck, a[7]), new $Uint64(x$453.$high ^ d2.$high, (x$453.$low ^ d2.$low) >>> 0));
+ bc0 = (x$454 = $shiftLeft64(t, 62), x$455 = $shiftRightUint64(t, 2), new $Uint64(x$454.$high | x$455.$high, (x$454.$low | x$455.$low) >>> 0));
+ t = (x$456 = (a.nilCheck, a[18]), new $Uint64(x$456.$high ^ d3.$high, (x$456.$low ^ d3.$low) >>> 0));
+ bc1 = (x$457 = $shiftLeft64(t, 55), x$458 = $shiftRightUint64(t, 9), new $Uint64(x$457.$high | x$458.$high, (x$457.$low | x$458.$low) >>> 0));
+ t = (x$459 = (a.nilCheck, a[4]), new $Uint64(x$459.$high ^ d4.$high, (x$459.$low ^ d4.$low) >>> 0));
+ bc2 = (x$460 = $shiftLeft64(t, 39), x$461 = $shiftRightUint64(t, 25), new $Uint64(x$460.$high | x$461.$high, (x$460.$low | x$461.$low) >>> 0));
+ a.nilCheck, a[10] = (x$462 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$462.$high, (bc0.$low ^ x$462.$low) >>> 0));
+ a.nilCheck, a[21] = (x$463 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$463.$high, (bc1.$low ^ x$463.$low) >>> 0));
+ a.nilCheck, a[7] = (x$464 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$464.$high, (bc2.$low ^ x$464.$low) >>> 0));
+ a.nilCheck, a[18] = (x$465 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$465.$high, (bc3.$low ^ x$465.$low) >>> 0));
+ a.nilCheck, a[4] = (x$466 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$466.$high, (bc4.$low ^ x$466.$low) >>> 0));
+ bc0 = (x$467 = (x$468 = (x$469 = (x$470 = (a.nilCheck, a[0]), x$471 = (a.nilCheck, a[5]), new $Uint64(x$470.$high ^ x$471.$high, (x$470.$low ^ x$471.$low) >>> 0)), x$472 = (a.nilCheck, a[10]), new $Uint64(x$469.$high ^ x$472.$high, (x$469.$low ^ x$472.$low) >>> 0)), x$473 = (a.nilCheck, a[15]), new $Uint64(x$468.$high ^ x$473.$high, (x$468.$low ^ x$473.$low) >>> 0)), x$474 = (a.nilCheck, a[20]), new $Uint64(x$467.$high ^ x$474.$high, (x$467.$low ^ x$474.$low) >>> 0));
+ bc1 = (x$475 = (x$476 = (x$477 = (x$478 = (a.nilCheck, a[1]), x$479 = (a.nilCheck, a[6]), new $Uint64(x$478.$high ^ x$479.$high, (x$478.$low ^ x$479.$low) >>> 0)), x$480 = (a.nilCheck, a[11]), new $Uint64(x$477.$high ^ x$480.$high, (x$477.$low ^ x$480.$low) >>> 0)), x$481 = (a.nilCheck, a[16]), new $Uint64(x$476.$high ^ x$481.$high, (x$476.$low ^ x$481.$low) >>> 0)), x$482 = (a.nilCheck, a[21]), new $Uint64(x$475.$high ^ x$482.$high, (x$475.$low ^ x$482.$low) >>> 0));
+ bc2 = (x$483 = (x$484 = (x$485 = (x$486 = (a.nilCheck, a[2]), x$487 = (a.nilCheck, a[7]), new $Uint64(x$486.$high ^ x$487.$high, (x$486.$low ^ x$487.$low) >>> 0)), x$488 = (a.nilCheck, a[12]), new $Uint64(x$485.$high ^ x$488.$high, (x$485.$low ^ x$488.$low) >>> 0)), x$489 = (a.nilCheck, a[17]), new $Uint64(x$484.$high ^ x$489.$high, (x$484.$low ^ x$489.$low) >>> 0)), x$490 = (a.nilCheck, a[22]), new $Uint64(x$483.$high ^ x$490.$high, (x$483.$low ^ x$490.$low) >>> 0));
+ bc3 = (x$491 = (x$492 = (x$493 = (x$494 = (a.nilCheck, a[3]), x$495 = (a.nilCheck, a[8]), new $Uint64(x$494.$high ^ x$495.$high, (x$494.$low ^ x$495.$low) >>> 0)), x$496 = (a.nilCheck, a[13]), new $Uint64(x$493.$high ^ x$496.$high, (x$493.$low ^ x$496.$low) >>> 0)), x$497 = (a.nilCheck, a[18]), new $Uint64(x$492.$high ^ x$497.$high, (x$492.$low ^ x$497.$low) >>> 0)), x$498 = (a.nilCheck, a[23]), new $Uint64(x$491.$high ^ x$498.$high, (x$491.$low ^ x$498.$low) >>> 0));
+ bc4 = (x$499 = (x$500 = (x$501 = (x$502 = (a.nilCheck, a[4]), x$503 = (a.nilCheck, a[9]), new $Uint64(x$502.$high ^ x$503.$high, (x$502.$low ^ x$503.$low) >>> 0)), x$504 = (a.nilCheck, a[14]), new $Uint64(x$501.$high ^ x$504.$high, (x$501.$low ^ x$504.$low) >>> 0)), x$505 = (a.nilCheck, a[19]), new $Uint64(x$500.$high ^ x$505.$high, (x$500.$low ^ x$505.$low) >>> 0)), x$506 = (a.nilCheck, a[24]), new $Uint64(x$499.$high ^ x$506.$high, (x$499.$low ^ x$506.$low) >>> 0));
+ d0 = (x$507 = (x$508 = $shiftLeft64(bc1, 1), x$509 = $shiftRightUint64(bc1, 63), new $Uint64(x$508.$high | x$509.$high, (x$508.$low | x$509.$low) >>> 0)), new $Uint64(bc4.$high ^ x$507.$high, (bc4.$low ^ x$507.$low) >>> 0));
+ d1 = (x$510 = (x$511 = $shiftLeft64(bc2, 1), x$512 = $shiftRightUint64(bc2, 63), new $Uint64(x$511.$high | x$512.$high, (x$511.$low | x$512.$low) >>> 0)), new $Uint64(bc0.$high ^ x$510.$high, (bc0.$low ^ x$510.$low) >>> 0));
+ d2 = (x$513 = (x$514 = $shiftLeft64(bc3, 1), x$515 = $shiftRightUint64(bc3, 63), new $Uint64(x$514.$high | x$515.$high, (x$514.$low | x$515.$low) >>> 0)), new $Uint64(bc1.$high ^ x$513.$high, (bc1.$low ^ x$513.$low) >>> 0));
+ d3 = (x$516 = (x$517 = $shiftLeft64(bc4, 1), x$518 = $shiftRightUint64(bc4, 63), new $Uint64(x$517.$high | x$518.$high, (x$517.$low | x$518.$low) >>> 0)), new $Uint64(bc2.$high ^ x$516.$high, (bc2.$low ^ x$516.$low) >>> 0));
+ d4 = (x$519 = (x$520 = $shiftLeft64(bc0, 1), x$521 = $shiftRightUint64(bc0, 63), new $Uint64(x$520.$high | x$521.$high, (x$520.$low | x$521.$low) >>> 0)), new $Uint64(bc3.$high ^ x$519.$high, (bc3.$low ^ x$519.$low) >>> 0));
+ bc0 = (x$522 = (a.nilCheck, a[0]), new $Uint64(x$522.$high ^ d0.$high, (x$522.$low ^ d0.$low) >>> 0));
+ t = (x$523 = (a.nilCheck, a[1]), new $Uint64(x$523.$high ^ d1.$high, (x$523.$low ^ d1.$low) >>> 0));
+ bc1 = (x$524 = $shiftLeft64(t, 44), x$525 = $shiftRightUint64(t, 20), new $Uint64(x$524.$high | x$525.$high, (x$524.$low | x$525.$low) >>> 0));
+ t = (x$526 = (a.nilCheck, a[2]), new $Uint64(x$526.$high ^ d2.$high, (x$526.$low ^ d2.$low) >>> 0));
+ bc2 = (x$527 = $shiftLeft64(t, 43), x$528 = $shiftRightUint64(t, 21), new $Uint64(x$527.$high | x$528.$high, (x$527.$low | x$528.$low) >>> 0));
+ t = (x$529 = (a.nilCheck, a[3]), new $Uint64(x$529.$high ^ d3.$high, (x$529.$low ^ d3.$low) >>> 0));
+ bc3 = (x$530 = $shiftLeft64(t, 21), x$531 = $shiftRightUint64(t, 43), new $Uint64(x$530.$high | x$531.$high, (x$530.$low | x$531.$low) >>> 0));
+ t = (x$532 = (a.nilCheck, a[4]), new $Uint64(x$532.$high ^ d4.$high, (x$532.$low ^ d4.$low) >>> 0));
+ bc4 = (x$533 = $shiftLeft64(t, 14), x$534 = $shiftRightUint64(t, 50), new $Uint64(x$533.$high | x$534.$high, (x$533.$low | x$534.$low) >>> 0));
+ a.nilCheck, a[0] = (x$535 = (x$536 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$536.$high, (bc0.$low ^ x$536.$low) >>> 0)), x$537 = (x$538 = i + 3 >> 0, ((x$538 < 0 || x$538 >= rc.length) ? ($throwRuntimeError("index out of range"), undefined) : rc[x$538])), new $Uint64(x$535.$high ^ x$537.$high, (x$535.$low ^ x$537.$low) >>> 0));
+ a.nilCheck, a[1] = (x$539 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$539.$high, (bc1.$low ^ x$539.$low) >>> 0));
+ a.nilCheck, a[2] = (x$540 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$540.$high, (bc2.$low ^ x$540.$low) >>> 0));
+ a.nilCheck, a[3] = (x$541 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$541.$high, (bc3.$low ^ x$541.$low) >>> 0));
+ a.nilCheck, a[4] = (x$542 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$542.$high, (bc4.$low ^ x$542.$low) >>> 0));
+ t = (x$543 = (a.nilCheck, a[5]), new $Uint64(x$543.$high ^ d0.$high, (x$543.$low ^ d0.$low) >>> 0));
+ bc2 = (x$544 = $shiftLeft64(t, 3), x$545 = $shiftRightUint64(t, 61), new $Uint64(x$544.$high | x$545.$high, (x$544.$low | x$545.$low) >>> 0));
+ t = (x$546 = (a.nilCheck, a[6]), new $Uint64(x$546.$high ^ d1.$high, (x$546.$low ^ d1.$low) >>> 0));
+ bc3 = (x$547 = $shiftLeft64(t, 45), x$548 = $shiftRightUint64(t, 19), new $Uint64(x$547.$high | x$548.$high, (x$547.$low | x$548.$low) >>> 0));
+ t = (x$549 = (a.nilCheck, a[7]), new $Uint64(x$549.$high ^ d2.$high, (x$549.$low ^ d2.$low) >>> 0));
+ bc4 = (x$550 = $shiftLeft64(t, 61), x$551 = $shiftRightUint64(t, 3), new $Uint64(x$550.$high | x$551.$high, (x$550.$low | x$551.$low) >>> 0));
+ t = (x$552 = (a.nilCheck, a[8]), new $Uint64(x$552.$high ^ d3.$high, (x$552.$low ^ d3.$low) >>> 0));
+ bc0 = (x$553 = $shiftLeft64(t, 28), x$554 = $shiftRightUint64(t, 36), new $Uint64(x$553.$high | x$554.$high, (x$553.$low | x$554.$low) >>> 0));
+ t = (x$555 = (a.nilCheck, a[9]), new $Uint64(x$555.$high ^ d4.$high, (x$555.$low ^ d4.$low) >>> 0));
+ bc1 = (x$556 = $shiftLeft64(t, 20), x$557 = $shiftRightUint64(t, 44), new $Uint64(x$556.$high | x$557.$high, (x$556.$low | x$557.$low) >>> 0));
+ a.nilCheck, a[5] = (x$558 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$558.$high, (bc0.$low ^ x$558.$low) >>> 0));
+ a.nilCheck, a[6] = (x$559 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$559.$high, (bc1.$low ^ x$559.$low) >>> 0));
+ a.nilCheck, a[7] = (x$560 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$560.$high, (bc2.$low ^ x$560.$low) >>> 0));
+ a.nilCheck, a[8] = (x$561 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$561.$high, (bc3.$low ^ x$561.$low) >>> 0));
+ a.nilCheck, a[9] = (x$562 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$562.$high, (bc4.$low ^ x$562.$low) >>> 0));
+ t = (x$563 = (a.nilCheck, a[10]), new $Uint64(x$563.$high ^ d0.$high, (x$563.$low ^ d0.$low) >>> 0));
+ bc4 = (x$564 = $shiftLeft64(t, 18), x$565 = $shiftRightUint64(t, 46), new $Uint64(x$564.$high | x$565.$high, (x$564.$low | x$565.$low) >>> 0));
+ t = (x$566 = (a.nilCheck, a[11]), new $Uint64(x$566.$high ^ d1.$high, (x$566.$low ^ d1.$low) >>> 0));
+ bc0 = (x$567 = $shiftLeft64(t, 1), x$568 = $shiftRightUint64(t, 63), new $Uint64(x$567.$high | x$568.$high, (x$567.$low | x$568.$low) >>> 0));
+ t = (x$569 = (a.nilCheck, a[12]), new $Uint64(x$569.$high ^ d2.$high, (x$569.$low ^ d2.$low) >>> 0));
+ bc1 = (x$570 = $shiftLeft64(t, 6), x$571 = $shiftRightUint64(t, 58), new $Uint64(x$570.$high | x$571.$high, (x$570.$low | x$571.$low) >>> 0));
+ t = (x$572 = (a.nilCheck, a[13]), new $Uint64(x$572.$high ^ d3.$high, (x$572.$low ^ d3.$low) >>> 0));
+ bc2 = (x$573 = $shiftLeft64(t, 25), x$574 = $shiftRightUint64(t, 39), new $Uint64(x$573.$high | x$574.$high, (x$573.$low | x$574.$low) >>> 0));
+ t = (x$575 = (a.nilCheck, a[14]), new $Uint64(x$575.$high ^ d4.$high, (x$575.$low ^ d4.$low) >>> 0));
+ bc3 = (x$576 = $shiftLeft64(t, 8), x$577 = $shiftRightUint64(t, 56), new $Uint64(x$576.$high | x$577.$high, (x$576.$low | x$577.$low) >>> 0));
+ a.nilCheck, a[10] = (x$578 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$578.$high, (bc0.$low ^ x$578.$low) >>> 0));
+ a.nilCheck, a[11] = (x$579 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$579.$high, (bc1.$low ^ x$579.$low) >>> 0));
+ a.nilCheck, a[12] = (x$580 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$580.$high, (bc2.$low ^ x$580.$low) >>> 0));
+ a.nilCheck, a[13] = (x$581 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$581.$high, (bc3.$low ^ x$581.$low) >>> 0));
+ a.nilCheck, a[14] = (x$582 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$582.$high, (bc4.$low ^ x$582.$low) >>> 0));
+ t = (x$583 = (a.nilCheck, a[15]), new $Uint64(x$583.$high ^ d0.$high, (x$583.$low ^ d0.$low) >>> 0));
+ bc1 = (x$584 = $shiftLeft64(t, 36), x$585 = $shiftRightUint64(t, 28), new $Uint64(x$584.$high | x$585.$high, (x$584.$low | x$585.$low) >>> 0));
+ t = (x$586 = (a.nilCheck, a[16]), new $Uint64(x$586.$high ^ d1.$high, (x$586.$low ^ d1.$low) >>> 0));
+ bc2 = (x$587 = $shiftLeft64(t, 10), x$588 = $shiftRightUint64(t, 54), new $Uint64(x$587.$high | x$588.$high, (x$587.$low | x$588.$low) >>> 0));
+ t = (x$589 = (a.nilCheck, a[17]), new $Uint64(x$589.$high ^ d2.$high, (x$589.$low ^ d2.$low) >>> 0));
+ bc3 = (x$590 = $shiftLeft64(t, 15), x$591 = $shiftRightUint64(t, 49), new $Uint64(x$590.$high | x$591.$high, (x$590.$low | x$591.$low) >>> 0));
+ t = (x$592 = (a.nilCheck, a[18]), new $Uint64(x$592.$high ^ d3.$high, (x$592.$low ^ d3.$low) >>> 0));
+ bc4 = (x$593 = $shiftLeft64(t, 56), x$594 = $shiftRightUint64(t, 8), new $Uint64(x$593.$high | x$594.$high, (x$593.$low | x$594.$low) >>> 0));
+ t = (x$595 = (a.nilCheck, a[19]), new $Uint64(x$595.$high ^ d4.$high, (x$595.$low ^ d4.$low) >>> 0));
+ bc0 = (x$596 = $shiftLeft64(t, 27), x$597 = $shiftRightUint64(t, 37), new $Uint64(x$596.$high | x$597.$high, (x$596.$low | x$597.$low) >>> 0));
+ a.nilCheck, a[15] = (x$598 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$598.$high, (bc0.$low ^ x$598.$low) >>> 0));
+ a.nilCheck, a[16] = (x$599 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$599.$high, (bc1.$low ^ x$599.$low) >>> 0));
+ a.nilCheck, a[17] = (x$600 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$600.$high, (bc2.$low ^ x$600.$low) >>> 0));
+ a.nilCheck, a[18] = (x$601 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$601.$high, (bc3.$low ^ x$601.$low) >>> 0));
+ a.nilCheck, a[19] = (x$602 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$602.$high, (bc4.$low ^ x$602.$low) >>> 0));
+ t = (x$603 = (a.nilCheck, a[20]), new $Uint64(x$603.$high ^ d0.$high, (x$603.$low ^ d0.$low) >>> 0));
+ bc3 = (x$604 = $shiftLeft64(t, 41), x$605 = $shiftRightUint64(t, 23), new $Uint64(x$604.$high | x$605.$high, (x$604.$low | x$605.$low) >>> 0));
+ t = (x$606 = (a.nilCheck, a[21]), new $Uint64(x$606.$high ^ d1.$high, (x$606.$low ^ d1.$low) >>> 0));
+ bc4 = (x$607 = $shiftLeft64(t, 2), x$608 = $shiftRightUint64(t, 62), new $Uint64(x$607.$high | x$608.$high, (x$607.$low | x$608.$low) >>> 0));
+ t = (x$609 = (a.nilCheck, a[22]), new $Uint64(x$609.$high ^ d2.$high, (x$609.$low ^ d2.$low) >>> 0));
+ bc0 = (x$610 = $shiftLeft64(t, 62), x$611 = $shiftRightUint64(t, 2), new $Uint64(x$610.$high | x$611.$high, (x$610.$low | x$611.$low) >>> 0));
+ t = (x$612 = (a.nilCheck, a[23]), new $Uint64(x$612.$high ^ d3.$high, (x$612.$low ^ d3.$low) >>> 0));
+ bc1 = (x$613 = $shiftLeft64(t, 55), x$614 = $shiftRightUint64(t, 9), new $Uint64(x$613.$high | x$614.$high, (x$613.$low | x$614.$low) >>> 0));
+ t = (x$615 = (a.nilCheck, a[24]), new $Uint64(x$615.$high ^ d4.$high, (x$615.$low ^ d4.$low) >>> 0));
+ bc2 = (x$616 = $shiftLeft64(t, 39), x$617 = $shiftRightUint64(t, 25), new $Uint64(x$616.$high | x$617.$high, (x$616.$low | x$617.$low) >>> 0));
+ a.nilCheck, a[20] = (x$618 = new $Uint64(bc2.$high & ~bc1.$high, (bc2.$low & ~bc1.$low) >>> 0), new $Uint64(bc0.$high ^ x$618.$high, (bc0.$low ^ x$618.$low) >>> 0));
+ a.nilCheck, a[21] = (x$619 = new $Uint64(bc3.$high & ~bc2.$high, (bc3.$low & ~bc2.$low) >>> 0), new $Uint64(bc1.$high ^ x$619.$high, (bc1.$low ^ x$619.$low) >>> 0));
+ a.nilCheck, a[22] = (x$620 = new $Uint64(bc4.$high & ~bc3.$high, (bc4.$low & ~bc3.$low) >>> 0), new $Uint64(bc2.$high ^ x$620.$high, (bc2.$low ^ x$620.$low) >>> 0));
+ a.nilCheck, a[23] = (x$621 = new $Uint64(bc0.$high & ~bc4.$high, (bc0.$low & ~bc4.$low) >>> 0), new $Uint64(bc3.$high ^ x$621.$high, (bc3.$low ^ x$621.$low) >>> 0));
+ a.nilCheck, a[24] = (x$622 = new $Uint64(bc1.$high & ~bc0.$high, (bc1.$low & ~bc0.$low) >>> 0), new $Uint64(bc4.$high ^ x$622.$high, (bc4.$low ^ x$622.$low) >>> 0));
+ i = i + (4) >> 0;
+ }
+ };
+ init = function() {
+ var $ptr;
+ crypto.RegisterHash(10, New224);
+ crypto.RegisterHash(11, New256);
+ crypto.RegisterHash(12, New384);
+ crypto.RegisterHash(13, New512);
+ };
+ NewShakeCipher128 = function(key, options) {
+ var $ptr, _r, key, options, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; key = $f.key; options = $f.options; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = cipher.FromSponge(newKeccak256(), key, $appendSlice(shakeOpts, options)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: NewShakeCipher128 }; } $f.$ptr = $ptr; $f._r = _r; $f.key = key; $f.options = options; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.NewShakeCipher128 = NewShakeCipher128;
+ sponge.ptr.prototype.Rate = function() {
+ var $ptr, d;
+ d = this;
+ return d.rate;
+ };
+ sponge.prototype.Rate = function() { return this.$val.Rate(); };
+ sponge.ptr.prototype.Capacity = function() {
+ var $ptr, d;
+ d = this;
+ return 200 - d.rate >> 0;
+ };
+ sponge.prototype.Capacity = function() { return this.$val.Capacity(); };
+ sponge.ptr.prototype.Clone = function() {
+ var $ptr, c, d;
+ d = this;
+ c = $clone(d, sponge);
+ return c;
+ };
+ sponge.prototype.Clone = function() { return this.$val.Clone(); };
+ sponge.ptr.prototype.Transform = function(dst, src) {
+ var $ptr, a, d, dst, src, x, x$1;
+ d = this;
+ a = new sliceType$2(d.a);
+ while (true) {
+ if (!(src.$length > 0)) { break; }
+ (0 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 0] = (x = (0 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 0]), x$1 = $clone(binary.LittleEndian, binary.littleEndian).Uint64(src), new $Uint64(x.$high ^ x$1.$high, (x.$low ^ x$1.$low) >>> 0)));
+ src = $subslice(src, 8);
+ a = $subslice(a, 1);
+ }
+ keccakF1600(d.a);
+ a = new sliceType$2(d.a);
+ while (true) {
+ if (!(dst.$length > 0)) { break; }
+ $clone(binary.LittleEndian, binary.littleEndian).PutUint64(dst, (0 >= a.$length ? ($throwRuntimeError("index out of range"), undefined) : a.$array[a.$offset + 0]));
+ a = $subslice(a, 1);
+ dst = $subslice(dst, 8);
+ }
+ };
+ sponge.prototype.Transform = function(dst, src) { return this.$val.Transform(dst, src); };
+ newKeccak256 = function() {
+ var $ptr;
+ return new sponge.ptr(arrayType$4.zero(), 168);
+ };
+ newKeccak448 = function() {
+ var $ptr;
+ return new sponge.ptr(arrayType$4.zero(), 144);
+ };
+ newKeccak512 = function() {
+ var $ptr;
+ return new sponge.ptr(arrayType$4.zero(), 136);
+ };
+ newKeccak768 = function() {
+ var $ptr;
+ return new sponge.ptr(arrayType$4.zero(), 104);
+ };
+ newKeccak1024 = function() {
+ var $ptr;
+ return new sponge.ptr(arrayType$4.zero(), 72);
+ };
+ ptrType$1.methods = [{prop: "Rate", name: "Rate", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Capacity", name: "Capacity", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Clone", name: "Clone", pkg: "", typ: $funcType([], [cipher.Sponge], false)}, {prop: "Transform", name: "Transform", pkg: "", typ: $funcType([sliceType$1, sliceType$1], [], false)}];
+ sponge.init("gopkg.in/dedis/crypto.v0/cipher/sha3", [{prop: "a", name: "a", exported: false, typ: arrayType$4, tag: ""}, {prop: "rate", name: "rate", exported: false, typ: $Int, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = crypto.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = binary.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = abstract$1.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = cipher.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hash.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ sha3opts = new sliceType([new cipher.Padding(6)]);
+ rc = $toNativeArray($kindUint64, [new $Uint64(0, 1), new $Uint64(0, 32898), new $Uint64(2147483648, 32906), new $Uint64(2147483648, 2147516416), new $Uint64(0, 32907), new $Uint64(0, 2147483649), new $Uint64(2147483648, 2147516545), new $Uint64(2147483648, 32777), new $Uint64(0, 138), new $Uint64(0, 136), new $Uint64(0, 2147516425), new $Uint64(0, 2147483658), new $Uint64(0, 2147516555), new $Uint64(2147483648, 139), new $Uint64(2147483648, 32905), new $Uint64(2147483648, 32771), new $Uint64(2147483648, 32770), new $Uint64(2147483648, 128), new $Uint64(0, 32778), new $Uint64(2147483648, 2147483658), new $Uint64(2147483648, 2147516545), new $Uint64(2147483648, 32896), new $Uint64(0, 2147483649), new $Uint64(2147483648, 2147516424)]);
+ shakeOpts = new sliceType([new cipher.Padding(31)]);
+ init();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/crypto.v0/group"] = (function() {
+ var $pkg = {}, $init, cipher, abstract$1, io, sliceType, PointMarshalTo, PointUnmarshalFrom, ScalarMarshalTo, ScalarUnmarshalFrom;
+ cipher = $packages["crypto/cipher"];
+ abstract$1 = $packages["gopkg.in/dedis/crypto.v0/abstract"];
+ io = $packages["io"];
+ sliceType = $sliceType($Uint8);
+ PointMarshalTo = function(p, w) {
+ var $ptr, _r, _r$1, _tuple, buf, err, p, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; buf = $f.buf; err = $f.err; p = $f.p; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = p.MarshalBinary(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ buf = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [0, err];
+ }
+ _r$1 = w.Write(buf); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: PointMarshalTo }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.buf = buf; $f.err = err; $f.p = p; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.PointMarshalTo = PointMarshalTo;
+ PointUnmarshalFrom = function(p, r) {
+ var $ptr, _r, _r$1, _r$2, _r$3, _tuple, _tuple$1, buf, err, n, ok, p, r, strm, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; buf = $f.buf; err = $f.err; n = $f.n; ok = $f.ok; p = $f.p; r = $f.r; strm = $f.strm; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _tuple = $assertType(r, cipher.Stream, true);
+ strm = _tuple[0];
+ ok = _tuple[1];
+ /* */ if (ok) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (ok) { */ case 1:
+ _r = p.Pick(sliceType.nil, strm); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return [-1, $ifaceNil];
+ /* } */ case 2:
+ _r$1 = p.MarshalSize(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ buf = $makeSlice(sliceType, _r$1);
+ _r$2 = io.ReadFull(r, buf); /* */ $s = 5; case 5: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$1 = _r$2;
+ n = _tuple$1[0];
+ err = _tuple$1[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [n, err];
+ }
+ _r$3 = p.UnmarshalBinary(buf); /* */ $s = 6; case 6: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $s = -1; return [n, _r$3];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: PointUnmarshalFrom }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.buf = buf; $f.err = err; $f.n = n; $f.ok = ok; $f.p = p; $f.r = r; $f.strm = strm; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.PointUnmarshalFrom = PointUnmarshalFrom;
+ ScalarMarshalTo = function(s, w) {
+ var $ptr, _r, _r$1, _tuple, buf, err, s, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; buf = $f.buf; err = $f.err; s = $f.s; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = s.MarshalBinary(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ buf = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [0, err];
+ }
+ _r$1 = w.Write(buf); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ScalarMarshalTo }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.buf = buf; $f.err = err; $f.s = s; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.ScalarMarshalTo = ScalarMarshalTo;
+ ScalarUnmarshalFrom = function(s, r) {
+ var $ptr, _r, _r$1, _r$2, _r$3, _tuple, _tuple$1, buf, err, n, ok, r, s, strm, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; buf = $f.buf; err = $f.err; n = $f.n; ok = $f.ok; r = $f.r; s = $f.s; strm = $f.strm; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _tuple = $assertType(r, cipher.Stream, true);
+ strm = _tuple[0];
+ ok = _tuple[1];
+ /* */ if (ok) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (ok) { */ case 1:
+ _r = s.Pick(strm); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return [-1, $ifaceNil];
+ /* } */ case 2:
+ _r$1 = s.MarshalSize(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ buf = $makeSlice(sliceType, _r$1);
+ _r$2 = io.ReadFull(r, buf); /* */ $s = 5; case 5: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$1 = _r$2;
+ n = _tuple$1[0];
+ err = _tuple$1[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [n, err];
+ }
+ _r$3 = s.UnmarshalBinary(buf); /* */ $s = 6; case 6: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $s = -1; return [n, _r$3];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ScalarUnmarshalFrom }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.buf = buf; $f.err = err; $f.n = n; $f.ok = ok; $f.r = r; $f.s = s; $f.strm = strm; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.ScalarUnmarshalFrom = ScalarUnmarshalFrom;
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = cipher.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = abstract$1.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["crypto/dsa"] = (function() {
+ var $pkg = {}, $init, errors, io, big;
+ errors = $packages["errors"];
+ io = $packages["io"];
+ big = $packages["math/big"];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = errors.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = big.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $pkg.ErrInvalidPublicKey = errors.New("crypto/dsa: invalid public key");
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["crypto/elliptic"] = (function() {
+ var $pkg = {}, $init, io, big, sync;
+ io = $packages["io"];
+ big = $packages["math/big"];
+ sync = $packages["sync"];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = io.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = big.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/crypto.v0/math"] = (function() {
+ var $pkg = {}, $init, big, zero, one, two, Jacobi, Sqrt;
+ big = $packages["math/big"];
+ Jacobi = function(x, y) {
+ var $ptr, _r, _tmp, _tmp$1, _tmp$2, a, b, bmod8, c, j, s, x, x$1, x$2, x$3, y, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; a = $f.a; b = $f.b; bmod8 = $f.bmod8; c = $f.c; j = $f.j; s = $f.s; x = $f.x; x$1 = $f.x$1; x$2 = $f.x$2; x$3 = $f.x$3; y = $f.y; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ a = [a];
+ b = [b];
+ c = [c];
+ _tmp = new big.Int.ptr(false, big.nat.nil);
+ _tmp$1 = new big.Int.ptr(false, big.nat.nil);
+ _tmp$2 = new big.Int.ptr(false, big.nat.nil);
+ a[0] = $clone(_tmp, big.Int);
+ b[0] = $clone(_tmp$1, big.Int);
+ c[0] = $clone(_tmp$2, big.Int);
+ a[0].Set(x);
+ b[0].Set(y);
+ j = 1;
+ /* while (true) { */ case 1:
+ if (a[0].Cmp(zero) === 0) {
+ $s = -1; return 0;
+ }
+ if (b[0].Cmp(one) === 0) {
+ $s = -1; return j;
+ }
+ _r = a[0].Mod(a[0], b[0]); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ s = 0;
+ while (true) {
+ if (!(a[0].Bit(s) === 0)) { break; }
+ s = s + (1) >> 0;
+ }
+ if (!(((s & 1) === 0))) {
+ bmod8 = ((x$1 = b[0].Bits(), (0 >= x$1.$length ? ($throwRuntimeError("index out of range"), undefined) : x$1.$array[x$1.$offset + 0])) & 7) >>> 0;
+ if ((bmod8 === 3) || (bmod8 === 5)) {
+ j = -j;
+ }
+ }
+ c[0].Rsh(a[0], ((s >>> 0)));
+ if (((((x$2 = b[0].Bits(), (0 >= x$2.$length ? ($throwRuntimeError("index out of range"), undefined) : x$2.$array[x$2.$offset + 0])) & 3) >>> 0) === 3) && ((((x$3 = c[0].Bits(), (0 >= x$3.$length ? ($throwRuntimeError("index out of range"), undefined) : x$3.$array[x$3.$offset + 0])) & 3) >>> 0) === 3)) {
+ j = -j;
+ }
+ a[0].Set(b[0]);
+ b[0].Set(c[0]);
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return 0;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Jacobi }; } $f.$ptr = $ptr; $f._r = _r; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f.a = a; $f.b = b; $f.bmod8 = bmod8; $f.c = c; $f.j = j; $f.s = s; $f.x = x; $f.x$1 = x$1; $f.x$2 = x$2; $f.x$3 = x$3; $f.y = y; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Jacobi = Jacobi;
+ Sqrt = function(z, a, p) {
+ var $ptr, _r, _r$1, _r$10, _r$11, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tmp, _tmp$1, _tmp$2, _tmp$3, a, b, e, g, m, n, p, r, s, t, x, z, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$10 = $f._r$10; _r$11 = $f._r$11; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; a = $f.a; b = $f.b; e = $f.e; g = $f.g; m = $f.m; n = $f.n; p = $f.p; r = $f.r; s = $f.s; t = $f.t; x = $f.x; z = $f.z; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ b = [b];
+ g = [g];
+ n = [n];
+ s = [s];
+ t = [t];
+ x = [x];
+ if (a.Sign() === 0) {
+ z.SetInt64(new $Int64(0, 0));
+ $s = -1; return true;
+ }
+ _r = Jacobi(a, p); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ /* */ if (!((_r === 1))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!((_r === 1))) { */ case 1:
+ $s = -1; return false;
+ /* } */ case 2:
+ s[0] = new big.Int.ptr(false, big.nat.nil);
+ e = 0;
+ s[0].Sub(p, one);
+ /* while (true) { */ case 4:
+ /* if (!(s[0].Bit(0) === 0)) { break; } */ if(!(s[0].Bit(0) === 0)) { $s = 5; continue; }
+ _r$1 = s[0].Div(s[0], two); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ e = e + (1) >> 0;
+ /* } */ $s = 4; continue; case 5:
+ n[0] = new big.Int.ptr(false, big.nat.nil);
+ n[0].SetInt64(new $Int64(0, 2));
+ /* while (true) { */ case 7:
+ _r$2 = Jacobi(n[0], p); /* */ $s = 9; case 9: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ /* if (!(!((_r$2 === -1)))) { break; } */ if(!(!((_r$2 === -1)))) { $s = 8; continue; }
+ n[0].Add(n[0], one);
+ /* } */ $s = 7; continue; case 8:
+ _tmp = new big.Int.ptr(false, big.nat.nil);
+ _tmp$1 = new big.Int.ptr(false, big.nat.nil);
+ _tmp$2 = new big.Int.ptr(false, big.nat.nil);
+ _tmp$3 = new big.Int.ptr(false, big.nat.nil);
+ x[0] = $clone(_tmp, big.Int);
+ b[0] = $clone(_tmp$1, big.Int);
+ g[0] = $clone(_tmp$2, big.Int);
+ t[0] = $clone(_tmp$3, big.Int);
+ _r$3 = x[0].Add(s[0], one).Div(x[0], two); /* */ $s = 10; case 10: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$4 = _r$3.Exp(a, x[0], p); /* */ $s = 11; case 11: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$4;
+ _r$5 = b[0].Exp(a, s[0], p); /* */ $s = 12; case 12: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _r$5;
+ _r$6 = g[0].Exp(n[0], s[0], p); /* */ $s = 13; case 13: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$6;
+ r = e;
+ /* while (true) { */ case 14:
+ m = 0;
+ t[0].Set(b[0]);
+ /* while (true) { */ case 16:
+ /* if (!(!((t[0].Cmp(one) === 0)))) { break; } */ if(!(!((t[0].Cmp(one) === 0)))) { $s = 17; continue; }
+ _r$7 = t[0].Exp(t[0], two, p); /* */ $s = 18; case 18: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _r$7;
+ m = m + (1) >> 0;
+ /* } */ $s = 16; continue; case 17:
+ if (m === 0) {
+ z.Set(x[0]);
+ $s = -1; return true;
+ }
+ _r$8 = t[0].SetInt64(new $Int64(0, 0)).SetBit(t[0], (r - m >> 0) - 1 >> 0, 1).Exp(g[0], t[0], p); /* */ $s = 19; case 19: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _r$8;
+ _r$9 = g[0].Mul(t[0], t[0]).Mod(g[0], p); /* */ $s = 20; case 20: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ _r$9;
+ _r$10 = x[0].Mul(x[0], t[0]).Mod(x[0], p); /* */ $s = 21; case 21: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _r$10;
+ _r$11 = b[0].Mul(b[0], g[0]).Mod(b[0], p); /* */ $s = 22; case 22: if($c) { $c = false; _r$11 = _r$11.$blk(); } if (_r$11 && _r$11.$blk !== undefined) { break s; }
+ _r$11;
+ r = m;
+ /* } */ $s = 14; continue; case 15:
+ $s = -1; return false;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Sqrt }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$10 = _r$10; $f._r$11 = _r$11; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f.a = a; $f.b = b; $f.e = e; $f.g = g; $f.m = m; $f.n = n; $f.p = p; $f.r = r; $f.s = s; $f.t = t; $f.x = x; $f.z = z; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Sqrt = Sqrt;
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = big.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ zero = big.NewInt(new $Int64(0, 0));
+ one = big.NewInt(new $Int64(0, 1));
+ two = big.NewInt(new $Int64(0, 2));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/crypto.v0/nist"] = (function() {
+ var $pkg = {}, $init, cipher, dsa, elliptic, sha256, hex, errors, fmt, abstract$1, sha3, group, math, random, util, hash, io, big, reflect, ByteOrder, Int, sliceType, ptrType$1, ptrType$2, arrayType, one, two, NewInt64;
+ cipher = $packages["crypto/cipher"];
+ dsa = $packages["crypto/dsa"];
+ elliptic = $packages["crypto/elliptic"];
+ sha256 = $packages["crypto/sha256"];
+ hex = $packages["encoding/hex"];
+ errors = $packages["errors"];
+ fmt = $packages["fmt"];
+ abstract$1 = $packages["gopkg.in/dedis/crypto.v0/abstract"];
+ sha3 = $packages["gopkg.in/dedis/crypto.v0/cipher/sha3"];
+ group = $packages["gopkg.in/dedis/crypto.v0/group"];
+ math = $packages["gopkg.in/dedis/crypto.v0/math"];
+ random = $packages["gopkg.in/dedis/crypto.v0/random"];
+ util = $packages["gopkg.in/dedis/crypto.v0/util"];
+ hash = $packages["hash"];
+ io = $packages["io"];
+ big = $packages["math/big"];
+ reflect = $packages["reflect"];
+ ByteOrder = $pkg.ByteOrder = $newType(1, $kindBool, "nist.ByteOrder", true, "gopkg.in/dedis/crypto.v0/nist", true, null);
+ Int = $pkg.Int = $newType(0, $kindStruct, "nist.Int", true, "gopkg.in/dedis/crypto.v0/nist", true, function(V_, M_, BO_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.V = new big.Int.ptr(false, big.nat.nil);
+ this.M = ptrType$2.nil;
+ this.BO = false;
+ return;
+ }
+ this.V = V_;
+ this.M = M_;
+ this.BO = BO_;
+ });
+ sliceType = $sliceType($Uint8);
+ ptrType$1 = $ptrType(Int);
+ ptrType$2 = $ptrType(big.Int);
+ arrayType = $arrayType($Uint8, 1);
+ NewInt64 = function(v, M) {
+ var $ptr, M, _r, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; M = $f.M; _r = $f._r; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = new Int.ptr(new big.Int.ptr(false, big.nat.nil), ptrType$2.nil, false).Init64(v, M); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: NewInt64 }; } $f.$ptr = $ptr; $f.M = M; $f._r = _r; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.NewInt64 = NewInt64;
+ Int.ptr.prototype.Init = function(V, m) {
+ var $ptr, V, _r, i, m, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; V = $f.V; _r = $f._r; i = $f.i; m = $f.m; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ i.M = m;
+ i.BO = false;
+ _r = i.V.Set(V).Mod(i.V, m); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Init }; } $f.$ptr = $ptr; $f.V = V; $f._r = _r; $f.i = i; $f.m = m; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Init = function(V, m) { return this.$val.Init(V, m); };
+ Int.ptr.prototype.Init64 = function(v, m) {
+ var $ptr, _r, i, m, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; i = $f.i; m = $f.m; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ i.M = m;
+ i.BO = false;
+ _r = i.V.SetInt64(v).Mod(i.V, m); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Init64 }; } $f.$ptr = $ptr; $f._r = _r; $f.i = i; $f.m = m; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Init64 = function(v, m) { return this.$val.Init64(v, m); };
+ Int.ptr.prototype.InitBytes = function(a, m) {
+ var $ptr, _r, a, i, m, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; i = $f.i; m = $f.m; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ i.M = m;
+ i.BO = false;
+ _r = i.V.SetBytes(a).Mod(i.V, i.M); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.InitBytes }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.i = i; $f.m = m; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.InitBytes = function(a, m) { return this.$val.InitBytes(a, m); };
+ Int.ptr.prototype.InitString = function(n, d, base, m) {
+ var $ptr, _r, _tuple, base, d, i, m, n, succ, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; base = $f.base; d = $f.d; i = $f.i; m = $f.m; n = $f.n; succ = $f.succ; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ i.M = m;
+ i.BO = false;
+ _r = i.SetString(n, d, base); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ succ = _tuple[1];
+ if (!succ) {
+ $panic(new $String("InitString: invalid fraction representation"));
+ }
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.InitString }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.base = base; $f.d = d; $f.i = i; $f.m = m; $f.n = n; $f.succ = succ; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.InitString = function(n, d, base, m) { return this.$val.InitString(n, d, base, m); };
+ Int.ptr.prototype.String = function() {
+ var $ptr, i;
+ i = this;
+ return hex.EncodeToString(i.V.Bytes());
+ };
+ Int.prototype.String = function() { return this.$val.String(); };
+ Int.ptr.prototype.SetString = function(n, d, base) {
+ var $ptr, _r, _r$1, _r$2, _tuple, _tuple$1, base, d, di, i, n, succ, succ$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; base = $f.base; d = $f.d; di = $f.di; i = $f.i; n = $f.n; succ = $f.succ; succ$1 = $f.succ$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ di = [di];
+ i = this;
+ _r = i.V.SetString(n, base); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ succ = _tuple[1];
+ if (!succ) {
+ $s = -1; return [ptrType$1.nil, false];
+ }
+ /* */ if (!(d === "")) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!(d === "")) { */ case 2:
+ di[0] = new Int.ptr(new big.Int.ptr(false, big.nat.nil), ptrType$2.nil, false);
+ di[0].M = i.M;
+ _r$1 = di[0].SetString(d, "", base); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ succ$1 = _tuple$1[1];
+ if (!succ$1) {
+ $s = -1; return [ptrType$1.nil, false];
+ }
+ _r$2 = i.Div(i, di[0]); /* */ $s = 5; case 5: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ /* } */ case 3:
+ $s = -1; return [i, true];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.SetString }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.base = base; $f.d = d; $f.di = di; $f.i = i; $f.n = n; $f.succ = succ; $f.succ$1 = succ$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.SetString = function(n, d, base) { return this.$val.SetString(n, d, base); };
+ Int.ptr.prototype.Cmp = function(s2) {
+ var $ptr, i, s2;
+ i = this;
+ return i.V.Cmp($assertType(s2, ptrType$1).V);
+ };
+ Int.prototype.Cmp = function(s2) { return this.$val.Cmp(s2); };
+ Int.ptr.prototype.Equal = function(s2) {
+ var $ptr, i, s2;
+ i = this;
+ return i.V.Cmp($assertType(s2, ptrType$1).V) === 0;
+ };
+ Int.prototype.Equal = function(s2) { return this.$val.Equal(s2); };
+ Int.ptr.prototype.Nonzero = function() {
+ var $ptr, i;
+ i = this;
+ return !((i.V.Sign() === 0));
+ };
+ Int.prototype.Nonzero = function() { return this.$val.Nonzero(); };
+ Int.ptr.prototype.Set = function(a) {
+ var $ptr, a, ai, i;
+ i = this;
+ ai = $assertType(a, ptrType$1);
+ i.V.Set(ai.V);
+ i.M = ai.M;
+ return i;
+ };
+ Int.prototype.Set = function(a) { return this.$val.Set(a); };
+ Int.ptr.prototype.Clone = function() {
+ var $ptr, _r, i, ni, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; i = $f.i; ni = $f.ni; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ _r = new Int.ptr(new big.Int.ptr(false, big.nat.nil), ptrType$2.nil, false).Init(i.V, i.M); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ ni = _r;
+ ni.BO = i.BO;
+ $s = -1; return ni;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Clone }; } $f.$ptr = $ptr; $f._r = _r; $f.i = i; $f.ni = ni; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Clone = function() { return this.$val.Clone(); };
+ Int.ptr.prototype.Zero = function() {
+ var $ptr, i;
+ i = this;
+ i.V.SetInt64(new $Int64(0, 0));
+ return i;
+ };
+ Int.prototype.Zero = function() { return this.$val.Zero(); };
+ Int.ptr.prototype.One = function() {
+ var $ptr, i;
+ i = this;
+ i.V.SetInt64(new $Int64(0, 1));
+ return i;
+ };
+ Int.prototype.One = function() { return this.$val.One(); };
+ Int.ptr.prototype.SetInt64 = function(v) {
+ var $ptr, _r, i, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; i = $f.i; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ _r = i.V.SetInt64(v).Mod(i.V, i.M); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.SetInt64 }; } $f.$ptr = $ptr; $f._r = _r; $f.i = i; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.SetInt64 = function(v) { return this.$val.SetInt64(v); };
+ Int.ptr.prototype.Int64 = function() {
+ var $ptr, i;
+ i = this;
+ return i.V.Int64();
+ };
+ Int.prototype.Int64 = function() { return this.$val.Int64(); };
+ Int.ptr.prototype.SetUint64 = function(v) {
+ var $ptr, _r, i, v, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; i = $f.i; v = $f.v; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ _r = i.V.SetUint64(v).Mod(i.V, i.M); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.SetUint64 }; } $f.$ptr = $ptr; $f._r = _r; $f.i = i; $f.v = v; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.SetUint64 = function(v) { return this.$val.SetUint64(v); };
+ Int.ptr.prototype.Uint64 = function() {
+ var $ptr, i;
+ i = this;
+ return i.V.Uint64();
+ };
+ Int.prototype.Uint64 = function() { return this.$val.Uint64(); };
+ Int.ptr.prototype.Add = function(a, b) {
+ var $ptr, _r, a, ai, b, bi, i, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; ai = $f.ai; b = $f.b; bi = $f.bi; i = $f.i; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ ai = $assertType(a, ptrType$1);
+ bi = $assertType(b, ptrType$1);
+ i.M = ai.M;
+ _r = i.V.Add(ai.V, bi.V).Mod(i.V, i.M); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Add }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.ai = ai; $f.b = b; $f.bi = bi; $f.i = i; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Add = function(a, b) { return this.$val.Add(a, b); };
+ Int.ptr.prototype.Sub = function(a, b) {
+ var $ptr, _r, a, ai, b, bi, i, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; ai = $f.ai; b = $f.b; bi = $f.bi; i = $f.i; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ ai = $assertType(a, ptrType$1);
+ bi = $assertType(b, ptrType$1);
+ i.M = ai.M;
+ _r = i.V.Sub(ai.V, bi.V).Mod(i.V, i.M); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Sub }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.ai = ai; $f.b = b; $f.bi = bi; $f.i = i; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Sub = function(a, b) { return this.$val.Sub(a, b); };
+ Int.ptr.prototype.Neg = function(a) {
+ var $ptr, a, ai, i;
+ i = this;
+ ai = $assertType(a, ptrType$1);
+ i.M = ai.M;
+ if (ai.V.Sign() > 0) {
+ i.V.Sub(i.M, ai.V);
+ } else {
+ i.V.SetUint64(new $Uint64(0, 0));
+ }
+ return i;
+ };
+ Int.prototype.Neg = function(a) { return this.$val.Neg(a); };
+ Int.ptr.prototype.Mul = function(a, b) {
+ var $ptr, _r, a, ai, b, bi, i, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; ai = $f.ai; b = $f.b; bi = $f.bi; i = $f.i; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ ai = $assertType(a, ptrType$1);
+ bi = $assertType(b, ptrType$1);
+ i.M = ai.M;
+ _r = i.V.Mul(ai.V, bi.V).Mod(i.V, i.M); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Mul }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.ai = ai; $f.b = b; $f.bi = bi; $f.i = i; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Mul = function(a, b) { return this.$val.Mul(a, b); };
+ Int.ptr.prototype.Div = function(a, b) {
+ var $ptr, _arg, _arg$1, _r, _r$1, _r$2, a, ai, b, bi, i, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; a = $f.a; ai = $f.ai; b = $f.b; bi = $f.bi; i = $f.i; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ ai = $assertType(a, ptrType$1);
+ bi = $assertType(b, ptrType$1);
+ t = new big.Int.ptr(false, big.nat.nil);
+ i.M = ai.M;
+ _arg = ai.V;
+ _r = t.ModInverse(bi.V, i.M); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg$1 = _r;
+ _r$1 = i.V.Mul(_arg, _arg$1); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ _r$2 = i.V.Mod(i.V, i.M); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Div }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.a = a; $f.ai = ai; $f.b = b; $f.bi = bi; $f.i = i; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Div = function(a, b) { return this.$val.Div(a, b); };
+ Int.ptr.prototype.Inv = function(a) {
+ var $ptr, _r, a, ai, i, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; ai = $f.ai; i = $f.i; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ ai = $assertType(a, ptrType$1);
+ i.M = ai.M;
+ _r = i.V.ModInverse($assertType(a, ptrType$1).V, i.M); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Inv }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.ai = ai; $f.i = i; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Inv = function(a) { return this.$val.Inv(a); };
+ Int.ptr.prototype.Exp = function(a, e) {
+ var $ptr, _r, a, ai, e, i, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; ai = $f.ai; e = $f.e; i = $f.i; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ ai = $assertType(a, ptrType$1);
+ i.M = ai.M;
+ _r = i.V.Exp(ai.V, e, i.M); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Exp }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.ai = ai; $f.e = e; $f.i = i; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Exp = function(a, e) { return this.$val.Exp(a, e); };
+ Int.ptr.prototype.Jacobi = function(as) {
+ var $ptr, _r, _r$1, ai, as, i, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; ai = $f.ai; as = $f.as; i = $f.i; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ ai = $assertType(as, ptrType$1);
+ i.M = ai.M;
+ _r = math.Jacobi(ai.V, i.M); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = i.V.SetInt64((new $Int64(0, _r))); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Jacobi }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.ai = ai; $f.as = as; $f.i = i; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Jacobi = function(as) { return this.$val.Jacobi(as); };
+ Int.ptr.prototype.Sqrt = function(as) {
+ var $ptr, _r, ai, as, i, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; ai = $f.ai; as = $f.as; i = $f.i; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ ai = $assertType(as, ptrType$1);
+ i.M = ai.M;
+ _r = math.Sqrt(i.V, ai.V, ai.M); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Sqrt }; } $f.$ptr = $ptr; $f._r = _r; $f.ai = ai; $f.as = as; $f.i = i; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Sqrt = function(as) { return this.$val.Sqrt(as); };
+ Int.ptr.prototype.Pick = function(rand) {
+ var $ptr, _r, _r$1, i, rand, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; i = $f.i; rand = $f.rand; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ _r = random.Int(i.M, rand); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = i.V.Set(_r); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.Pick }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.i = i; $f.rand = rand; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.Pick = function(rand) { return this.$val.Pick(rand); };
+ Int.ptr.prototype.MarshalSize = function() {
+ var $ptr, _q, i;
+ i = this;
+ return (_q = ((i.M.BitLen() + 7 >> 0)) / 8, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero"));
+ };
+ Int.prototype.MarshalSize = function() { return this.$val.MarshalSize(); };
+ Int.ptr.prototype.MarshalBinary = function() {
+ var $ptr, b, i, l, nb, offset;
+ i = this;
+ l = i.MarshalSize();
+ b = i.V.Bytes();
+ offset = l - b.$length >> 0;
+ if (i.BO) {
+ return [i.LittleEndian(l, l), $ifaceNil];
+ }
+ if (!((offset === 0))) {
+ nb = $makeSlice(sliceType, l);
+ $copySlice($subslice(nb, offset), b);
+ b = nb;
+ }
+ return [b, $ifaceNil];
+ };
+ Int.prototype.MarshalBinary = function() { return this.$val.MarshalBinary(); };
+ Int.ptr.prototype.UnmarshalBinary = function(buf) {
+ var $ptr, buf, i;
+ i = this;
+ if (!((buf.$length === i.MarshalSize()))) {
+ return errors.New("Int.Decode: wrong size buffer");
+ }
+ if (i.BO) {
+ buf = util.Reverse(sliceType.nil, buf);
+ }
+ i.V.SetBytes(buf);
+ if (i.V.Cmp(i.M) >= 0) {
+ return errors.New("Int.Decode: value out of range");
+ }
+ return $ifaceNil;
+ };
+ Int.prototype.UnmarshalBinary = function(buf) { return this.$val.UnmarshalBinary(buf); };
+ Int.ptr.prototype.MarshalTo = function(w) {
+ var $ptr, _r, i, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; i = $f.i; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ _r = group.ScalarMarshalTo(i, w); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.MarshalTo }; } $f.$ptr = $ptr; $f._r = _r; $f.i = i; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.MarshalTo = function(w) { return this.$val.MarshalTo(w); };
+ Int.ptr.prototype.UnmarshalFrom = function(r) {
+ var $ptr, _r, i, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; i = $f.i; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ _r = group.ScalarUnmarshalFrom(i, r); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.UnmarshalFrom }; } $f.$ptr = $ptr; $f._r = _r; $f.i = i; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.UnmarshalFrom = function(r) { return this.$val.UnmarshalFrom(r); };
+ Int.ptr.prototype.BigEndian = function(min, max) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, act, buf, i, max, min, ofs, pad;
+ i = this;
+ act = i.MarshalSize();
+ _tmp = act;
+ _tmp$1 = 0;
+ pad = _tmp;
+ ofs = _tmp$1;
+ if (pad < min) {
+ _tmp$2 = min;
+ _tmp$3 = min - act >> 0;
+ pad = _tmp$2;
+ ofs = _tmp$3;
+ }
+ if (!((max === 0)) && pad > max) {
+ $panic(new $String("Int not representable in max bytes"));
+ }
+ buf = $makeSlice(sliceType, pad);
+ $copySlice($subslice(buf, ofs), i.V.Bytes());
+ return buf;
+ };
+ Int.prototype.BigEndian = function(min, max) { return this.$val.BigEndian(min, max); };
+ Int.ptr.prototype.SetBytes = function(a) {
+ var $ptr, _r, a, buff, i, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; a = $f.a; buff = $f.buff; i = $f.i; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ buff = a;
+ if (i.BO) {
+ buff = util.Reverse(sliceType.nil, a);
+ }
+ _r = i.V.SetBytes(buff).Mod(i.V, i.M); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.SetBytes }; } $f.$ptr = $ptr; $f._r = _r; $f.a = a; $f.buff = buff; $f.i = i; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.SetBytes = function(a) { return this.$val.SetBytes(a); };
+ Int.ptr.prototype.Bytes = function() {
+ var $ptr, buff, i;
+ i = this;
+ buff = i.V.Bytes();
+ if (i.BO) {
+ buff = util.Reverse(buff, buff);
+ }
+ return buff;
+ };
+ Int.prototype.Bytes = function() { return this.$val.Bytes(); };
+ Int.ptr.prototype.LittleEndian = function(min, max) {
+ var $ptr, act, buf, i, max, min, pad, vBytes, vSize;
+ i = this;
+ act = i.MarshalSize();
+ vBytes = i.V.Bytes();
+ vSize = vBytes.$length;
+ if (vSize < act) {
+ act = vSize;
+ }
+ pad = act;
+ if (pad < min) {
+ pad = min;
+ }
+ if (!((max === 0)) && pad > max) {
+ $panic(new $String("Int not representable in max bytes"));
+ }
+ buf = $makeSlice(sliceType, pad);
+ util.Reverse($subslice(buf, 0, act), vBytes);
+ return buf;
+ };
+ Int.prototype.LittleEndian = function(min, max) { return this.$val.LittleEndian(min, max); };
+ Int.ptr.prototype.HideLen = function() {
+ var $ptr, i;
+ i = this;
+ return i.MarshalSize();
+ };
+ Int.prototype.HideLen = function() { return this.$val.HideLen(); };
+ Int.ptr.prototype.HideEncode = function(rand) {
+ var $ptr, b, b$1, enc, hidelen, highbit, i, mult, ofs, rand, y, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; b = $f.b; b$1 = $f.b$1; enc = $f.enc; hidelen = $f.hidelen; highbit = $f.highbit; i = $f.i; mult = $f.mult; ofs = $f.ofs; rand = $f.rand; y = $f.y; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ enc = [enc];
+ i = this;
+ hidelen = i.HideLen();
+ highbit = (((((i.M.BitLen() - 1 >> 0)) & 7) >>> 0));
+ enc[0] = new big.Int.ptr(false, big.nat.nil);
+ /* while (true) { */ case 1:
+ b = arrayType.zero();
+ $r = rand.XORKeyStream(new sliceType(b), new sliceType(b)); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ mult = (new $Int64(0, ((y = highbit, y < 32 ? (b[0] >>> y) : 0) << 24 >>> 24)));
+ enc[0].SetInt64(mult).Mul(i.V, enc[0]);
+ if (enc[0].BitLen() <= ($imul(hidelen, 8))) {
+ /* break; */ $s = 2; continue;
+ }
+ /* } */ $s = 1; continue; case 2:
+ b$1 = enc[0].Bytes();
+ ofs = hidelen - b$1.$length >> 0;
+ if (!((ofs === 0))) {
+ b$1 = $appendSlice($makeSlice(sliceType, ofs), b$1);
+ }
+ $s = -1; return b$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.HideEncode }; } $f.$ptr = $ptr; $f.b = b; $f.b$1 = b$1; $f.enc = enc; $f.hidelen = hidelen; $f.highbit = highbit; $f.i = i; $f.mult = mult; $f.ofs = ofs; $f.rand = rand; $f.y = y; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.HideEncode = function(rand) { return this.$val.HideEncode(rand); };
+ Int.ptr.prototype.HideDecode = function(buf) {
+ var $ptr, _r, buf, i, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; buf = $f.buf; i = $f.i; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ i = this;
+ if (!((buf.$length === i.HideLen()))) {
+ $panic(new $String("Int.HideDecode: wrong size buffer"));
+ }
+ i.V.SetBytes(buf);
+ _r = i.V.Mod(i.V, i.M); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Int.ptr.prototype.HideDecode }; } $f.$ptr = $ptr; $f._r = _r; $f.buf = buf; $f.i = i; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Int.prototype.HideDecode = function(buf) { return this.$val.HideDecode(buf); };
+ ptrType$1.methods = [{prop: "Init", name: "Init", pkg: "", typ: $funcType([ptrType$2, ptrType$2], [ptrType$1], false)}, {prop: "Init64", name: "Init64", pkg: "", typ: $funcType([$Int64, ptrType$2], [ptrType$1], false)}, {prop: "InitBytes", name: "InitBytes", pkg: "", typ: $funcType([sliceType, ptrType$2], [ptrType$1], false)}, {prop: "InitString", name: "InitString", pkg: "", typ: $funcType([$String, $String, $Int, ptrType$2], [ptrType$1], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "SetString", name: "SetString", pkg: "", typ: $funcType([$String, $String, $Int], [ptrType$1, $Bool], false)}, {prop: "Cmp", name: "Cmp", pkg: "", typ: $funcType([abstract$1.Scalar], [$Int], false)}, {prop: "Equal", name: "Equal", pkg: "", typ: $funcType([abstract$1.Scalar], [$Bool], false)}, {prop: "Nonzero", name: "Nonzero", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "Set", name: "Set", pkg: "", typ: $funcType([abstract$1.Scalar], [abstract$1.Scalar], false)}, {prop: "Clone", name: "Clone", pkg: "", typ: $funcType([], [abstract$1.Scalar], false)}, {prop: "Zero", name: "Zero", pkg: "", typ: $funcType([], [abstract$1.Scalar], false)}, {prop: "One", name: "One", pkg: "", typ: $funcType([], [abstract$1.Scalar], false)}, {prop: "SetInt64", name: "SetInt64", pkg: "", typ: $funcType([$Int64], [abstract$1.Scalar], false)}, {prop: "Int64", name: "Int64", pkg: "", typ: $funcType([], [$Int64], false)}, {prop: "SetUint64", name: "SetUint64", pkg: "", typ: $funcType([$Uint64], [abstract$1.Scalar], false)}, {prop: "Uint64", name: "Uint64", pkg: "", typ: $funcType([], [$Uint64], false)}, {prop: "Add", name: "Add", pkg: "", typ: $funcType([abstract$1.Scalar, abstract$1.Scalar], [abstract$1.Scalar], false)}, {prop: "Sub", name: "Sub", pkg: "", typ: $funcType([abstract$1.Scalar, abstract$1.Scalar], [abstract$1.Scalar], false)}, {prop: "Neg", name: "Neg", pkg: "", typ: $funcType([abstract$1.Scalar], [abstract$1.Scalar], false)}, {prop: "Mul", name: "Mul", pkg: "", typ: $funcType([abstract$1.Scalar, abstract$1.Scalar], [abstract$1.Scalar], false)}, {prop: "Div", name: "Div", pkg: "", typ: $funcType([abstract$1.Scalar, abstract$1.Scalar], [abstract$1.Scalar], false)}, {prop: "Inv", name: "Inv", pkg: "", typ: $funcType([abstract$1.Scalar], [abstract$1.Scalar], false)}, {prop: "Exp", name: "Exp", pkg: "", typ: $funcType([abstract$1.Scalar, ptrType$2], [abstract$1.Scalar], false)}, {prop: "legendre", name: "legendre", pkg: "gopkg.in/dedis/crypto.v0/nist", typ: $funcType([], [$Int], false)}, {prop: "Jacobi", name: "Jacobi", pkg: "", typ: $funcType([abstract$1.Scalar], [abstract$1.Scalar], false)}, {prop: "Sqrt", name: "Sqrt", pkg: "", typ: $funcType([abstract$1.Scalar], [$Bool], false)}, {prop: "Pick", name: "Pick", pkg: "", typ: $funcType([cipher.Stream], [abstract$1.Scalar], false)}, {prop: "MarshalSize", name: "MarshalSize", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "MarshalBinary", name: "MarshalBinary", pkg: "", typ: $funcType([], [sliceType, $error], false)}, {prop: "UnmarshalBinary", name: "UnmarshalBinary", pkg: "", typ: $funcType([sliceType], [$error], false)}, {prop: "MarshalTo", name: "MarshalTo", pkg: "", typ: $funcType([io.Writer], [$Int, $error], false)}, {prop: "UnmarshalFrom", name: "UnmarshalFrom", pkg: "", typ: $funcType([io.Reader], [$Int, $error], false)}, {prop: "BigEndian", name: "BigEndian", pkg: "", typ: $funcType([$Int, $Int], [sliceType], false)}, {prop: "SetBytes", name: "SetBytes", pkg: "", typ: $funcType([sliceType], [abstract$1.Scalar], false)}, {prop: "Bytes", name: "Bytes", pkg: "", typ: $funcType([], [sliceType], false)}, {prop: "LittleEndian", name: "LittleEndian", pkg: "", typ: $funcType([$Int, $Int], [sliceType], false)}, {prop: "HideLen", name: "HideLen", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "HideEncode", name: "HideEncode", pkg: "", typ: $funcType([cipher.Stream], [sliceType], false)}, {prop: "HideDecode", name: "HideDecode", pkg: "", typ: $funcType([sliceType], [], false)}];
+ Int.init("", [{prop: "V", name: "V", exported: true, typ: big.Int, tag: ""}, {prop: "M", name: "M", exported: true, typ: ptrType$2, tag: ""}, {prop: "BO", name: "BO", exported: true, typ: ByteOrder, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = cipher.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = dsa.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = elliptic.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sha256.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hex.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = abstract$1.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sha3.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = group.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = math.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = random.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = util.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hash.$init(); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = big.$init(); /* */ $s = 16; case 16: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = reflect.$init(); /* */ $s = 17; case 17: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ one = big.NewInt(new $Int64(0, 1));
+ two = big.NewInt(new $Int64(0, 2));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/crypto.v0/ed25519"] = (function() {
+ var $pkg = {}, $init, cipher, sha256, sha512, hex, errors, fmt, abstract$1, sha3, group, nist, random, hash, io, big, reflect, fieldElement, projectiveGroupElement, extendedGroupElement, completedGroupElement, preComputedGroupElement, cachedGroupElement, point, Curve, suiteEd25519, ptrType, arrayType, arrayType$1, sliceType, arrayType$2, arrayType$3, sliceType$1, ptrType$1, arrayType$5, arrayType$6, ptrType$2, ptrType$3, arrayType$9, ptrType$4, ptrType$5, ptrType$6, ptrType$7, ptrType$8, ptrType$9, ptrType$10, ptrType$11, prime, primeOrder, cofactor, fullOrder, nullPoint, d, d$24ptr, d2, d2$24ptr, sqrtM1, sqrtM1$24ptr, baseext, base, _tuple, _r, _tuple$1, _r$1, _r$2, feZero, feOne, feAdd, feSub, feCopy, feCMove, load3, load4, feFromBytes, feToBytes, feIsNegative, feIsNonZero, feNeg, feMul, feSquare, feSquare2, feInvert, fePow22523, equal, negative, selectPreComputed, geScalarMultBase, selectCached, geScalarMult, NewAES128SHA256Ed25519;
+ cipher = $packages["crypto/cipher"];
+ sha256 = $packages["crypto/sha256"];
+ sha512 = $packages["crypto/sha512"];
+ hex = $packages["encoding/hex"];
+ errors = $packages["errors"];
+ fmt = $packages["fmt"];
+ abstract$1 = $packages["gopkg.in/dedis/crypto.v0/abstract"];
+ sha3 = $packages["gopkg.in/dedis/crypto.v0/cipher/sha3"];
+ group = $packages["gopkg.in/dedis/crypto.v0/group"];
+ nist = $packages["gopkg.in/dedis/crypto.v0/nist"];
+ random = $packages["gopkg.in/dedis/crypto.v0/random"];
+ hash = $packages["hash"];
+ io = $packages["io"];
+ big = $packages["math/big"];
+ reflect = $packages["reflect"];
+ fieldElement = $pkg.fieldElement = $newType(40, $kindArray, "ed25519.fieldElement", true, "gopkg.in/dedis/crypto.v0/ed25519", false, null);
+ projectiveGroupElement = $pkg.projectiveGroupElement = $newType(0, $kindStruct, "ed25519.projectiveGroupElement", true, "gopkg.in/dedis/crypto.v0/ed25519", false, function(X_, Y_, Z_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.X = arrayType.zero();
+ this.Y = arrayType.zero();
+ this.Z = arrayType.zero();
+ return;
+ }
+ this.X = X_;
+ this.Y = Y_;
+ this.Z = Z_;
+ });
+ extendedGroupElement = $pkg.extendedGroupElement = $newType(0, $kindStruct, "ed25519.extendedGroupElement", true, "gopkg.in/dedis/crypto.v0/ed25519", false, function(X_, Y_, Z_, T_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.X = arrayType.zero();
+ this.Y = arrayType.zero();
+ this.Z = arrayType.zero();
+ this.T = arrayType.zero();
+ return;
+ }
+ this.X = X_;
+ this.Y = Y_;
+ this.Z = Z_;
+ this.T = T_;
+ });
+ completedGroupElement = $pkg.completedGroupElement = $newType(0, $kindStruct, "ed25519.completedGroupElement", true, "gopkg.in/dedis/crypto.v0/ed25519", false, function(X_, Y_, Z_, T_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.X = arrayType.zero();
+ this.Y = arrayType.zero();
+ this.Z = arrayType.zero();
+ this.T = arrayType.zero();
+ return;
+ }
+ this.X = X_;
+ this.Y = Y_;
+ this.Z = Z_;
+ this.T = T_;
+ });
+ preComputedGroupElement = $pkg.preComputedGroupElement = $newType(0, $kindStruct, "ed25519.preComputedGroupElement", true, "gopkg.in/dedis/crypto.v0/ed25519", false, function(yPlusX_, yMinusX_, xy2d_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.yPlusX = arrayType.zero();
+ this.yMinusX = arrayType.zero();
+ this.xy2d = arrayType.zero();
+ return;
+ }
+ this.yPlusX = yPlusX_;
+ this.yMinusX = yMinusX_;
+ this.xy2d = xy2d_;
+ });
+ cachedGroupElement = $pkg.cachedGroupElement = $newType(0, $kindStruct, "ed25519.cachedGroupElement", true, "gopkg.in/dedis/crypto.v0/ed25519", false, function(yPlusX_, yMinusX_, Z_, T2d_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.yPlusX = arrayType.zero();
+ this.yMinusX = arrayType.zero();
+ this.Z = arrayType.zero();
+ this.T2d = arrayType.zero();
+ return;
+ }
+ this.yPlusX = yPlusX_;
+ this.yMinusX = yMinusX_;
+ this.Z = Z_;
+ this.T2d = T2d_;
+ });
+ point = $pkg.point = $newType(0, $kindStruct, "ed25519.point", true, "gopkg.in/dedis/crypto.v0/ed25519", false, function(ge_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.ge = new extendedGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero(), arrayType.zero());
+ return;
+ }
+ this.ge = ge_;
+ });
+ Curve = $pkg.Curve = $newType(0, $kindStruct, "ed25519.Curve", true, "gopkg.in/dedis/crypto.v0/ed25519", true, function() {
+ this.$val = this;
+ if (arguments.length === 0) {
+ return;
+ }
+ });
+ suiteEd25519 = $pkg.suiteEd25519 = $newType(0, $kindStruct, "ed25519.suiteEd25519", true, "gopkg.in/dedis/crypto.v0/ed25519", false, function(Curve_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Curve = new Curve.ptr();
+ return;
+ }
+ this.Curve = Curve_;
+ });
+ ptrType = $ptrType(big.Int);
+ arrayType = $arrayType($Int32, 10);
+ arrayType$1 = $arrayType(preComputedGroupElement, 8);
+ sliceType = $sliceType($Uint8);
+ arrayType$2 = $arrayType($Uint8, 32);
+ arrayType$3 = $arrayType($Int64, 10);
+ sliceType$1 = $sliceType($emptyInterface);
+ ptrType$1 = $ptrType(fieldElement);
+ arrayType$5 = $arrayType(cachedGroupElement, 8);
+ arrayType$6 = $arrayType($Int8, 64);
+ ptrType$2 = $ptrType(point);
+ ptrType$3 = $ptrType(nist.Int);
+ arrayType$9 = $arrayType($Uint8, 64);
+ ptrType$4 = $ptrType(completedGroupElement);
+ ptrType$5 = $ptrType(arrayType$2);
+ ptrType$6 = $ptrType(projectiveGroupElement);
+ ptrType$7 = $ptrType(extendedGroupElement);
+ ptrType$8 = $ptrType(cachedGroupElement);
+ ptrType$9 = $ptrType(preComputedGroupElement);
+ ptrType$10 = $ptrType(Curve);
+ ptrType$11 = $ptrType(suiteEd25519);
+ feZero = function(fe) {
+ var $ptr, _i, _ref, fe, i;
+ _ref = fe;
+ _i = 0;
+ while (true) {
+ if (!(_i < 10)) { break; }
+ i = _i;
+ fe.nilCheck, ((i < 0 || i >= fe.length) ? ($throwRuntimeError("index out of range"), undefined) : fe[i] = 0);
+ _i++;
+ }
+ };
+ feOne = function(fe) {
+ var $ptr, fe;
+ feZero(fe);
+ fe.nilCheck, fe[0] = 1;
+ };
+ feAdd = function(dst, a, b) {
+ var $ptr, _i, _ref, a, b, dst, i;
+ _ref = dst;
+ _i = 0;
+ while (true) {
+ if (!(_i < 10)) { break; }
+ i = _i;
+ dst.nilCheck, ((i < 0 || i >= dst.length) ? ($throwRuntimeError("index out of range"), undefined) : dst[i] = ((a.nilCheck, ((i < 0 || i >= a.length) ? ($throwRuntimeError("index out of range"), undefined) : a[i])) + (b.nilCheck, ((i < 0 || i >= b.length) ? ($throwRuntimeError("index out of range"), undefined) : b[i])) >> 0));
+ _i++;
+ }
+ };
+ feSub = function(dst, a, b) {
+ var $ptr, _i, _ref, a, b, dst, i;
+ _ref = dst;
+ _i = 0;
+ while (true) {
+ if (!(_i < 10)) { break; }
+ i = _i;
+ dst.nilCheck, ((i < 0 || i >= dst.length) ? ($throwRuntimeError("index out of range"), undefined) : dst[i] = ((a.nilCheck, ((i < 0 || i >= a.length) ? ($throwRuntimeError("index out of range"), undefined) : a[i])) - (b.nilCheck, ((i < 0 || i >= b.length) ? ($throwRuntimeError("index out of range"), undefined) : b[i])) >> 0));
+ _i++;
+ }
+ };
+ feCopy = function(dst, src) {
+ var $ptr, _i, _ref, dst, i, src;
+ _ref = dst;
+ _i = 0;
+ while (true) {
+ if (!(_i < 10)) { break; }
+ i = _i;
+ dst.nilCheck, ((i < 0 || i >= dst.length) ? ($throwRuntimeError("index out of range"), undefined) : dst[i] = (src.nilCheck, ((i < 0 || i >= src.length) ? ($throwRuntimeError("index out of range"), undefined) : src[i])));
+ _i++;
+ }
+ };
+ feCMove = function(f, g, b) {
+ var $ptr, _i, _i$1, _ref, _ref$1, b, f, g, i, i$1, x;
+ x = arrayType.zero();
+ b = -b;
+ _ref = x;
+ _i = 0;
+ while (true) {
+ if (!(_i < 10)) { break; }
+ i = _i;
+ ((i < 0 || i >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[i] = (b & ((((f.nilCheck, ((i < 0 || i >= f.length) ? ($throwRuntimeError("index out of range"), undefined) : f[i])) ^ (g.nilCheck, ((i < 0 || i >= g.length) ? ($throwRuntimeError("index out of range"), undefined) : g[i]))) >> 0))));
+ _i++;
+ }
+ _ref$1 = f;
+ _i$1 = 0;
+ while (true) {
+ if (!(_i$1 < 10)) { break; }
+ i$1 = _i$1;
+ f.nilCheck, ((i$1 < 0 || i$1 >= f.length) ? ($throwRuntimeError("index out of range"), undefined) : f[i$1] = (((f.nilCheck, ((i$1 < 0 || i$1 >= f.length) ? ($throwRuntimeError("index out of range"), undefined) : f[i$1])) ^ (((i$1 < 0 || i$1 >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[i$1]))) >> 0));
+ _i$1++;
+ }
+ };
+ load3 = function(in$1) {
+ var $ptr, in$1, r, x, x$1;
+ r = new $Int64(0, 0);
+ r = (new $Int64(0, (0 >= in$1.$length ? ($throwRuntimeError("index out of range"), undefined) : in$1.$array[in$1.$offset + 0])));
+ r = (x = $shiftLeft64((new $Int64(0, (1 >= in$1.$length ? ($throwRuntimeError("index out of range"), undefined) : in$1.$array[in$1.$offset + 1]))), 8), new $Int64(r.$high | x.$high, (r.$low | x.$low) >>> 0));
+ r = (x$1 = $shiftLeft64((new $Int64(0, (2 >= in$1.$length ? ($throwRuntimeError("index out of range"), undefined) : in$1.$array[in$1.$offset + 2]))), 16), new $Int64(r.$high | x$1.$high, (r.$low | x$1.$low) >>> 0));
+ return r;
+ };
+ load4 = function(in$1) {
+ var $ptr, in$1, r, x, x$1, x$2;
+ r = new $Int64(0, 0);
+ r = (new $Int64(0, (0 >= in$1.$length ? ($throwRuntimeError("index out of range"), undefined) : in$1.$array[in$1.$offset + 0])));
+ r = (x = $shiftLeft64((new $Int64(0, (1 >= in$1.$length ? ($throwRuntimeError("index out of range"), undefined) : in$1.$array[in$1.$offset + 1]))), 8), new $Int64(r.$high | x.$high, (r.$low | x.$low) >>> 0));
+ r = (x$1 = $shiftLeft64((new $Int64(0, (2 >= in$1.$length ? ($throwRuntimeError("index out of range"), undefined) : in$1.$array[in$1.$offset + 2]))), 16), new $Int64(r.$high | x$1.$high, (r.$low | x$1.$low) >>> 0));
+ r = (x$2 = $shiftLeft64((new $Int64(0, (3 >= in$1.$length ? ($throwRuntimeError("index out of range"), undefined) : in$1.$array[in$1.$offset + 3]))), 24), new $Int64(r.$high | x$2.$high, (r.$low | x$2.$low) >>> 0));
+ return r;
+ };
+ feFromBytes = function(dst, src) {
+ var $ptr, carry, dst, h0, h1, h2, h3, h4, h5, h6, h7, h8, h9, src, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$19, x$2, x$20, x$3, x$4, x$5, x$6, x$7, x$8, x$9;
+ h0 = load4(src);
+ h1 = $shiftLeft64(load3($subslice(src, 4)), 6);
+ h2 = $shiftLeft64(load3($subslice(src, 7)), 5);
+ h3 = $shiftLeft64(load3($subslice(src, 10)), 3);
+ h4 = $shiftLeft64(load3($subslice(src, 13)), 2);
+ h5 = load4($subslice(src, 16));
+ h6 = $shiftLeft64(load3($subslice(src, 20)), 7);
+ h7 = $shiftLeft64(load3($subslice(src, 23)), 5);
+ h8 = $shiftLeft64(load3($subslice(src, 26)), 4);
+ h9 = $shiftLeft64(((x = load3($subslice(src, 29)), new $Int64(x.$high & 0, (x.$low & 8388607) >>> 0))), 2);
+ carry = arrayType$3.zero();
+ carry[9] = $shiftRightInt64((new $Int64(h9.$high + 0, h9.$low + 16777216)), 25);
+ h0 = (x$1 = $mul64(carry[9], new $Int64(0, 19)), new $Int64(h0.$high + x$1.$high, h0.$low + x$1.$low));
+ h9 = (x$2 = $shiftLeft64(carry[9], 25), new $Int64(h9.$high - x$2.$high, h9.$low - x$2.$low));
+ carry[1] = $shiftRightInt64((new $Int64(h1.$high + 0, h1.$low + 16777216)), 25);
+ h2 = (x$3 = carry[1], new $Int64(h2.$high + x$3.$high, h2.$low + x$3.$low));
+ h1 = (x$4 = $shiftLeft64(carry[1], 25), new $Int64(h1.$high - x$4.$high, h1.$low - x$4.$low));
+ carry[3] = $shiftRightInt64((new $Int64(h3.$high + 0, h3.$low + 16777216)), 25);
+ h4 = (x$5 = carry[3], new $Int64(h4.$high + x$5.$high, h4.$low + x$5.$low));
+ h3 = (x$6 = $shiftLeft64(carry[3], 25), new $Int64(h3.$high - x$6.$high, h3.$low - x$6.$low));
+ carry[5] = $shiftRightInt64((new $Int64(h5.$high + 0, h5.$low + 16777216)), 25);
+ h6 = (x$7 = carry[5], new $Int64(h6.$high + x$7.$high, h6.$low + x$7.$low));
+ h5 = (x$8 = $shiftLeft64(carry[5], 25), new $Int64(h5.$high - x$8.$high, h5.$low - x$8.$low));
+ carry[7] = $shiftRightInt64((new $Int64(h7.$high + 0, h7.$low + 16777216)), 25);
+ h8 = (x$9 = carry[7], new $Int64(h8.$high + x$9.$high, h8.$low + x$9.$low));
+ h7 = (x$10 = $shiftLeft64(carry[7], 25), new $Int64(h7.$high - x$10.$high, h7.$low - x$10.$low));
+ carry[0] = $shiftRightInt64((new $Int64(h0.$high + 0, h0.$low + 33554432)), 26);
+ h1 = (x$11 = carry[0], new $Int64(h1.$high + x$11.$high, h1.$low + x$11.$low));
+ h0 = (x$12 = $shiftLeft64(carry[0], 26), new $Int64(h0.$high - x$12.$high, h0.$low - x$12.$low));
+ carry[2] = $shiftRightInt64((new $Int64(h2.$high + 0, h2.$low + 33554432)), 26);
+ h3 = (x$13 = carry[2], new $Int64(h3.$high + x$13.$high, h3.$low + x$13.$low));
+ h2 = (x$14 = $shiftLeft64(carry[2], 26), new $Int64(h2.$high - x$14.$high, h2.$low - x$14.$low));
+ carry[4] = $shiftRightInt64((new $Int64(h4.$high + 0, h4.$low + 33554432)), 26);
+ h5 = (x$15 = carry[4], new $Int64(h5.$high + x$15.$high, h5.$low + x$15.$low));
+ h4 = (x$16 = $shiftLeft64(carry[4], 26), new $Int64(h4.$high - x$16.$high, h4.$low - x$16.$low));
+ carry[6] = $shiftRightInt64((new $Int64(h6.$high + 0, h6.$low + 33554432)), 26);
+ h7 = (x$17 = carry[6], new $Int64(h7.$high + x$17.$high, h7.$low + x$17.$low));
+ h6 = (x$18 = $shiftLeft64(carry[6], 26), new $Int64(h6.$high - x$18.$high, h6.$low - x$18.$low));
+ carry[8] = $shiftRightInt64((new $Int64(h8.$high + 0, h8.$low + 33554432)), 26);
+ h9 = (x$19 = carry[8], new $Int64(h9.$high + x$19.$high, h9.$low + x$19.$low));
+ h8 = (x$20 = $shiftLeft64(carry[8], 26), new $Int64(h8.$high - x$20.$high, h8.$low - x$20.$low));
+ dst.nilCheck, dst[0] = (((h0.$low + ((h0.$high >> 31) * 4294967296)) >> 0));
+ dst.nilCheck, dst[1] = (((h1.$low + ((h1.$high >> 31) * 4294967296)) >> 0));
+ dst.nilCheck, dst[2] = (((h2.$low + ((h2.$high >> 31) * 4294967296)) >> 0));
+ dst.nilCheck, dst[3] = (((h3.$low + ((h3.$high >> 31) * 4294967296)) >> 0));
+ dst.nilCheck, dst[4] = (((h4.$low + ((h4.$high >> 31) * 4294967296)) >> 0));
+ dst.nilCheck, dst[5] = (((h5.$low + ((h5.$high >> 31) * 4294967296)) >> 0));
+ dst.nilCheck, dst[6] = (((h6.$low + ((h6.$high >> 31) * 4294967296)) >> 0));
+ dst.nilCheck, dst[7] = (((h7.$low + ((h7.$high >> 31) * 4294967296)) >> 0));
+ dst.nilCheck, dst[8] = (((h8.$low + ((h8.$high >> 31) * 4294967296)) >> 0));
+ dst.nilCheck, dst[9] = (((h9.$low + ((h9.$high >> 31) * 4294967296)) >> 0));
+ };
+ feToBytes = function(s, h) {
+ var $ptr, carry, h, q, s;
+ carry = arrayType.zero();
+ q = ((($imul(19, (h.nilCheck, h[9]))) + 16777216 >> 0)) >> 25 >> 0;
+ q = (((h.nilCheck, h[0]) + q >> 0)) >> 26 >> 0;
+ q = (((h.nilCheck, h[1]) + q >> 0)) >> 25 >> 0;
+ q = (((h.nilCheck, h[2]) + q >> 0)) >> 26 >> 0;
+ q = (((h.nilCheck, h[3]) + q >> 0)) >> 25 >> 0;
+ q = (((h.nilCheck, h[4]) + q >> 0)) >> 26 >> 0;
+ q = (((h.nilCheck, h[5]) + q >> 0)) >> 25 >> 0;
+ q = (((h.nilCheck, h[6]) + q >> 0)) >> 26 >> 0;
+ q = (((h.nilCheck, h[7]) + q >> 0)) >> 25 >> 0;
+ q = (((h.nilCheck, h[8]) + q >> 0)) >> 26 >> 0;
+ q = (((h.nilCheck, h[9]) + q >> 0)) >> 25 >> 0;
+ h.nilCheck, h[0] = ((h.nilCheck, h[0]) + (($imul(19, q))) >> 0);
+ carry[0] = ((h.nilCheck, h[0]) >> 26 >> 0);
+ h.nilCheck, h[1] = ((h.nilCheck, h[1]) + (carry[0]) >> 0);
+ h.nilCheck, h[0] = ((h.nilCheck, h[0]) - ((carry[0] << 26 >> 0)) >> 0);
+ carry[1] = ((h.nilCheck, h[1]) >> 25 >> 0);
+ h.nilCheck, h[2] = ((h.nilCheck, h[2]) + (carry[1]) >> 0);
+ h.nilCheck, h[1] = ((h.nilCheck, h[1]) - ((carry[1] << 25 >> 0)) >> 0);
+ carry[2] = ((h.nilCheck, h[2]) >> 26 >> 0);
+ h.nilCheck, h[3] = ((h.nilCheck, h[3]) + (carry[2]) >> 0);
+ h.nilCheck, h[2] = ((h.nilCheck, h[2]) - ((carry[2] << 26 >> 0)) >> 0);
+ carry[3] = ((h.nilCheck, h[3]) >> 25 >> 0);
+ h.nilCheck, h[4] = ((h.nilCheck, h[4]) + (carry[3]) >> 0);
+ h.nilCheck, h[3] = ((h.nilCheck, h[3]) - ((carry[3] << 25 >> 0)) >> 0);
+ carry[4] = ((h.nilCheck, h[4]) >> 26 >> 0);
+ h.nilCheck, h[5] = ((h.nilCheck, h[5]) + (carry[4]) >> 0);
+ h.nilCheck, h[4] = ((h.nilCheck, h[4]) - ((carry[4] << 26 >> 0)) >> 0);
+ carry[5] = ((h.nilCheck, h[5]) >> 25 >> 0);
+ h.nilCheck, h[6] = ((h.nilCheck, h[6]) + (carry[5]) >> 0);
+ h.nilCheck, h[5] = ((h.nilCheck, h[5]) - ((carry[5] << 25 >> 0)) >> 0);
+ carry[6] = ((h.nilCheck, h[6]) >> 26 >> 0);
+ h.nilCheck, h[7] = ((h.nilCheck, h[7]) + (carry[6]) >> 0);
+ h.nilCheck, h[6] = ((h.nilCheck, h[6]) - ((carry[6] << 26 >> 0)) >> 0);
+ carry[7] = ((h.nilCheck, h[7]) >> 25 >> 0);
+ h.nilCheck, h[8] = ((h.nilCheck, h[8]) + (carry[7]) >> 0);
+ h.nilCheck, h[7] = ((h.nilCheck, h[7]) - ((carry[7] << 25 >> 0)) >> 0);
+ carry[8] = ((h.nilCheck, h[8]) >> 26 >> 0);
+ h.nilCheck, h[9] = ((h.nilCheck, h[9]) + (carry[8]) >> 0);
+ h.nilCheck, h[8] = ((h.nilCheck, h[8]) - ((carry[8] << 26 >> 0)) >> 0);
+ carry[9] = ((h.nilCheck, h[9]) >> 25 >> 0);
+ h.nilCheck, h[9] = ((h.nilCheck, h[9]) - ((carry[9] << 25 >> 0)) >> 0);
+ s.nilCheck, s[0] = ((((h.nilCheck, h[0]) >> 0 >> 0) << 24 >>> 24));
+ s.nilCheck, s[1] = ((((h.nilCheck, h[0]) >> 8 >> 0) << 24 >>> 24));
+ s.nilCheck, s[2] = ((((h.nilCheck, h[0]) >> 16 >> 0) << 24 >>> 24));
+ s.nilCheck, s[3] = ((((((h.nilCheck, h[0]) >> 24 >> 0)) | (((h.nilCheck, h[1]) << 2 >> 0))) << 24 >>> 24));
+ s.nilCheck, s[4] = ((((h.nilCheck, h[1]) >> 6 >> 0) << 24 >>> 24));
+ s.nilCheck, s[5] = ((((h.nilCheck, h[1]) >> 14 >> 0) << 24 >>> 24));
+ s.nilCheck, s[6] = ((((((h.nilCheck, h[1]) >> 22 >> 0)) | (((h.nilCheck, h[2]) << 3 >> 0))) << 24 >>> 24));
+ s.nilCheck, s[7] = ((((h.nilCheck, h[2]) >> 5 >> 0) << 24 >>> 24));
+ s.nilCheck, s[8] = ((((h.nilCheck, h[2]) >> 13 >> 0) << 24 >>> 24));
+ s.nilCheck, s[9] = ((((((h.nilCheck, h[2]) >> 21 >> 0)) | (((h.nilCheck, h[3]) << 5 >> 0))) << 24 >>> 24));
+ s.nilCheck, s[10] = ((((h.nilCheck, h[3]) >> 3 >> 0) << 24 >>> 24));
+ s.nilCheck, s[11] = ((((h.nilCheck, h[3]) >> 11 >> 0) << 24 >>> 24));
+ s.nilCheck, s[12] = ((((((h.nilCheck, h[3]) >> 19 >> 0)) | (((h.nilCheck, h[4]) << 6 >> 0))) << 24 >>> 24));
+ s.nilCheck, s[13] = ((((h.nilCheck, h[4]) >> 2 >> 0) << 24 >>> 24));
+ s.nilCheck, s[14] = ((((h.nilCheck, h[4]) >> 10 >> 0) << 24 >>> 24));
+ s.nilCheck, s[15] = ((((h.nilCheck, h[4]) >> 18 >> 0) << 24 >>> 24));
+ s.nilCheck, s[16] = ((((h.nilCheck, h[5]) >> 0 >> 0) << 24 >>> 24));
+ s.nilCheck, s[17] = ((((h.nilCheck, h[5]) >> 8 >> 0) << 24 >>> 24));
+ s.nilCheck, s[18] = ((((h.nilCheck, h[5]) >> 16 >> 0) << 24 >>> 24));
+ s.nilCheck, s[19] = ((((((h.nilCheck, h[5]) >> 24 >> 0)) | (((h.nilCheck, h[6]) << 1 >> 0))) << 24 >>> 24));
+ s.nilCheck, s[20] = ((((h.nilCheck, h[6]) >> 7 >> 0) << 24 >>> 24));
+ s.nilCheck, s[21] = ((((h.nilCheck, h[6]) >> 15 >> 0) << 24 >>> 24));
+ s.nilCheck, s[22] = ((((((h.nilCheck, h[6]) >> 23 >> 0)) | (((h.nilCheck, h[7]) << 3 >> 0))) << 24 >>> 24));
+ s.nilCheck, s[23] = ((((h.nilCheck, h[7]) >> 5 >> 0) << 24 >>> 24));
+ s.nilCheck, s[24] = ((((h.nilCheck, h[7]) >> 13 >> 0) << 24 >>> 24));
+ s.nilCheck, s[25] = ((((((h.nilCheck, h[7]) >> 21 >> 0)) | (((h.nilCheck, h[8]) << 4 >> 0))) << 24 >>> 24));
+ s.nilCheck, s[26] = ((((h.nilCheck, h[8]) >> 4 >> 0) << 24 >>> 24));
+ s.nilCheck, s[27] = ((((h.nilCheck, h[8]) >> 12 >> 0) << 24 >>> 24));
+ s.nilCheck, s[28] = ((((((h.nilCheck, h[8]) >> 20 >> 0)) | (((h.nilCheck, h[9]) << 6 >> 0))) << 24 >>> 24));
+ s.nilCheck, s[29] = ((((h.nilCheck, h[9]) >> 2 >> 0) << 24 >>> 24));
+ s.nilCheck, s[30] = ((((h.nilCheck, h[9]) >> 10 >> 0) << 24 >>> 24));
+ s.nilCheck, s[31] = ((((h.nilCheck, h[9]) >> 18 >> 0) << 24 >>> 24));
+ };
+ feIsNegative = function(f) {
+ var $ptr, f, s;
+ s = arrayType$2.zero();
+ feToBytes(s, f);
+ return (s[0] & 1) >>> 0;
+ };
+ feIsNonZero = function(f) {
+ var $ptr, _i, _ref, b, f, s, x;
+ s = arrayType$2.zero();
+ feToBytes(s, f);
+ x = 0;
+ _ref = s;
+ _i = 0;
+ while (true) {
+ if (!(_i < 32)) { break; }
+ b = ((_i < 0 || _i >= _ref.length) ? ($throwRuntimeError("index out of range"), undefined) : _ref[_i]);
+ x = (x | (b)) >>> 0;
+ _i++;
+ }
+ x = (x | ((x >>> 4 << 24 >>> 24))) >>> 0;
+ x = (x | ((x >>> 2 << 24 >>> 24))) >>> 0;
+ x = (x | ((x >>> 1 << 24 >>> 24))) >>> 0;
+ return ((((x & 1) >>> 0) >> 0));
+ };
+ feNeg = function(h, f) {
+ var $ptr, _i, _ref, f, h, i;
+ _ref = h;
+ _i = 0;
+ while (true) {
+ if (!(_i < 10)) { break; }
+ i = _i;
+ h.nilCheck, ((i < 0 || i >= h.length) ? ($throwRuntimeError("index out of range"), undefined) : h[i] = -(f.nilCheck, ((i < 0 || i >= f.length) ? ($throwRuntimeError("index out of range"), undefined) : f[i])));
+ _i++;
+ }
+ };
+ feMul = function(h, f, g) {
+ var $ptr, carry, f, f0, f0g0, f0g1, f0g2, f0g3, f0g4, f0g5, f0g6, f0g7, f0g8, f0g9, f1, f1_2, f1g0, f1g1_2, f1g2, f1g3_2, f1g4, f1g5_2, f1g6, f1g7_2, f1g8, f1g9_38, f2, f2g0, f2g1, f2g2, f2g3, f2g4, f2g5, f2g6, f2g7, f2g8_19, f2g9_19, f3, f3_2, f3g0, f3g1_2, f3g2, f3g3_2, f3g4, f3g5_2, f3g6, f3g7_38, f3g8_19, f3g9_38, f4, f4g0, f4g1, f4g2, f4g3, f4g4, f4g5, f4g6_19, f4g7_19, f4g8_19, f4g9_19, f5, f5_2, f5g0, f5g1_2, f5g2, f5g3_2, f5g4, f5g5_38, f5g6_19, f5g7_38, f5g8_19, f5g9_38, f6, f6g0, f6g1, f6g2, f6g3, f6g4_19, f6g5_19, f6g6_19, f6g7_19, f6g8_19, f6g9_19, f7, f7_2, f7g0, f7g1_2, f7g2, f7g3_38, f7g4_19, f7g5_38, f7g6_19, f7g7_38, f7g8_19, f7g9_38, f8, f8g0, f8g1, f8g2_19, f8g3_19, f8g4_19, f8g5_19, f8g6_19, f8g7_19, f8g8_19, f8g9_19, f9, f9_2, f9g0, f9g1_38, f9g2_19, f9g3_38, f9g4_19, f9g5_38, f9g6_19, f9g7_38, f9g8_19, f9g9_38, g, g0, g1, g1_19, g2, g2_19, g3, g3_19, g4, g4_19, g5, g5_19, g6, g6_19, g7, g7_19, g8, g8_19, g9, g9_19, h, h0, h1, h2, h3, h4, h5, h6, h7, h8, h9, x, x$1, x$10, x$100, x$101, x$102, x$103, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$19, x$2, x$20, x$21, x$22, x$23, x$24, x$25, x$26, x$27, x$28, x$29, x$3, x$30, x$31, x$32, x$33, x$34, x$35, x$36, x$37, x$38, x$39, x$4, x$40, x$41, x$42, x$43, x$44, x$45, x$46, x$47, x$48, x$49, x$5, x$50, x$51, x$52, x$53, x$54, x$55, x$56, x$57, x$58, x$59, x$6, x$60, x$61, x$62, x$63, x$64, x$65, x$66, x$67, x$68, x$69, x$7, x$70, x$71, x$72, x$73, x$74, x$75, x$76, x$77, x$78, x$79, x$8, x$80, x$81, x$82, x$83, x$84, x$85, x$86, x$87, x$88, x$89, x$9, x$90, x$91, x$92, x$93, x$94, x$95, x$96, x$97, x$98, x$99;
+ f0 = (f.nilCheck, f[0]);
+ f1 = (f.nilCheck, f[1]);
+ f2 = (f.nilCheck, f[2]);
+ f3 = (f.nilCheck, f[3]);
+ f4 = (f.nilCheck, f[4]);
+ f5 = (f.nilCheck, f[5]);
+ f6 = (f.nilCheck, f[6]);
+ f7 = (f.nilCheck, f[7]);
+ f8 = (f.nilCheck, f[8]);
+ f9 = (f.nilCheck, f[9]);
+ g0 = (g.nilCheck, g[0]);
+ g1 = (g.nilCheck, g[1]);
+ g2 = (g.nilCheck, g[2]);
+ g3 = (g.nilCheck, g[3]);
+ g4 = (g.nilCheck, g[4]);
+ g5 = (g.nilCheck, g[5]);
+ g6 = (g.nilCheck, g[6]);
+ g7 = (g.nilCheck, g[7]);
+ g8 = (g.nilCheck, g[8]);
+ g9 = (g.nilCheck, g[9]);
+ g1_19 = $imul(19, g1);
+ g2_19 = $imul(19, g2);
+ g3_19 = $imul(19, g3);
+ g4_19 = $imul(19, g4);
+ g5_19 = $imul(19, g5);
+ g6_19 = $imul(19, g6);
+ g7_19 = $imul(19, g7);
+ g8_19 = $imul(19, g8);
+ g9_19 = $imul(19, g9);
+ f1_2 = $imul(2, f1);
+ f3_2 = $imul(2, f3);
+ f5_2 = $imul(2, f5);
+ f7_2 = $imul(2, f7);
+ f9_2 = $imul(2, f9);
+ f0g0 = $mul64((new $Int64(0, f0)), (new $Int64(0, g0)));
+ f0g1 = $mul64((new $Int64(0, f0)), (new $Int64(0, g1)));
+ f0g2 = $mul64((new $Int64(0, f0)), (new $Int64(0, g2)));
+ f0g3 = $mul64((new $Int64(0, f0)), (new $Int64(0, g3)));
+ f0g4 = $mul64((new $Int64(0, f0)), (new $Int64(0, g4)));
+ f0g5 = $mul64((new $Int64(0, f0)), (new $Int64(0, g5)));
+ f0g6 = $mul64((new $Int64(0, f0)), (new $Int64(0, g6)));
+ f0g7 = $mul64((new $Int64(0, f0)), (new $Int64(0, g7)));
+ f0g8 = $mul64((new $Int64(0, f0)), (new $Int64(0, g8)));
+ f0g9 = $mul64((new $Int64(0, f0)), (new $Int64(0, g9)));
+ f1g0 = $mul64((new $Int64(0, f1)), (new $Int64(0, g0)));
+ f1g1_2 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, g1)));
+ f1g2 = $mul64((new $Int64(0, f1)), (new $Int64(0, g2)));
+ f1g3_2 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, g3)));
+ f1g4 = $mul64((new $Int64(0, f1)), (new $Int64(0, g4)));
+ f1g5_2 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, g5)));
+ f1g6 = $mul64((new $Int64(0, f1)), (new $Int64(0, g6)));
+ f1g7_2 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, g7)));
+ f1g8 = $mul64((new $Int64(0, f1)), (new $Int64(0, g8)));
+ f1g9_38 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, g9_19)));
+ f2g0 = $mul64((new $Int64(0, f2)), (new $Int64(0, g0)));
+ f2g1 = $mul64((new $Int64(0, f2)), (new $Int64(0, g1)));
+ f2g2 = $mul64((new $Int64(0, f2)), (new $Int64(0, g2)));
+ f2g3 = $mul64((new $Int64(0, f2)), (new $Int64(0, g3)));
+ f2g4 = $mul64((new $Int64(0, f2)), (new $Int64(0, g4)));
+ f2g5 = $mul64((new $Int64(0, f2)), (new $Int64(0, g5)));
+ f2g6 = $mul64((new $Int64(0, f2)), (new $Int64(0, g6)));
+ f2g7 = $mul64((new $Int64(0, f2)), (new $Int64(0, g7)));
+ f2g8_19 = $mul64((new $Int64(0, f2)), (new $Int64(0, g8_19)));
+ f2g9_19 = $mul64((new $Int64(0, f2)), (new $Int64(0, g9_19)));
+ f3g0 = $mul64((new $Int64(0, f3)), (new $Int64(0, g0)));
+ f3g1_2 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, g1)));
+ f3g2 = $mul64((new $Int64(0, f3)), (new $Int64(0, g2)));
+ f3g3_2 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, g3)));
+ f3g4 = $mul64((new $Int64(0, f3)), (new $Int64(0, g4)));
+ f3g5_2 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, g5)));
+ f3g6 = $mul64((new $Int64(0, f3)), (new $Int64(0, g6)));
+ f3g7_38 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, g7_19)));
+ f3g8_19 = $mul64((new $Int64(0, f3)), (new $Int64(0, g8_19)));
+ f3g9_38 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, g9_19)));
+ f4g0 = $mul64((new $Int64(0, f4)), (new $Int64(0, g0)));
+ f4g1 = $mul64((new $Int64(0, f4)), (new $Int64(0, g1)));
+ f4g2 = $mul64((new $Int64(0, f4)), (new $Int64(0, g2)));
+ f4g3 = $mul64((new $Int64(0, f4)), (new $Int64(0, g3)));
+ f4g4 = $mul64((new $Int64(0, f4)), (new $Int64(0, g4)));
+ f4g5 = $mul64((new $Int64(0, f4)), (new $Int64(0, g5)));
+ f4g6_19 = $mul64((new $Int64(0, f4)), (new $Int64(0, g6_19)));
+ f4g7_19 = $mul64((new $Int64(0, f4)), (new $Int64(0, g7_19)));
+ f4g8_19 = $mul64((new $Int64(0, f4)), (new $Int64(0, g8_19)));
+ f4g9_19 = $mul64((new $Int64(0, f4)), (new $Int64(0, g9_19)));
+ f5g0 = $mul64((new $Int64(0, f5)), (new $Int64(0, g0)));
+ f5g1_2 = $mul64((new $Int64(0, f5_2)), (new $Int64(0, g1)));
+ f5g2 = $mul64((new $Int64(0, f5)), (new $Int64(0, g2)));
+ f5g3_2 = $mul64((new $Int64(0, f5_2)), (new $Int64(0, g3)));
+ f5g4 = $mul64((new $Int64(0, f5)), (new $Int64(0, g4)));
+ f5g5_38 = $mul64((new $Int64(0, f5_2)), (new $Int64(0, g5_19)));
+ f5g6_19 = $mul64((new $Int64(0, f5)), (new $Int64(0, g6_19)));
+ f5g7_38 = $mul64((new $Int64(0, f5_2)), (new $Int64(0, g7_19)));
+ f5g8_19 = $mul64((new $Int64(0, f5)), (new $Int64(0, g8_19)));
+ f5g9_38 = $mul64((new $Int64(0, f5_2)), (new $Int64(0, g9_19)));
+ f6g0 = $mul64((new $Int64(0, f6)), (new $Int64(0, g0)));
+ f6g1 = $mul64((new $Int64(0, f6)), (new $Int64(0, g1)));
+ f6g2 = $mul64((new $Int64(0, f6)), (new $Int64(0, g2)));
+ f6g3 = $mul64((new $Int64(0, f6)), (new $Int64(0, g3)));
+ f6g4_19 = $mul64((new $Int64(0, f6)), (new $Int64(0, g4_19)));
+ f6g5_19 = $mul64((new $Int64(0, f6)), (new $Int64(0, g5_19)));
+ f6g6_19 = $mul64((new $Int64(0, f6)), (new $Int64(0, g6_19)));
+ f6g7_19 = $mul64((new $Int64(0, f6)), (new $Int64(0, g7_19)));
+ f6g8_19 = $mul64((new $Int64(0, f6)), (new $Int64(0, g8_19)));
+ f6g9_19 = $mul64((new $Int64(0, f6)), (new $Int64(0, g9_19)));
+ f7g0 = $mul64((new $Int64(0, f7)), (new $Int64(0, g0)));
+ f7g1_2 = $mul64((new $Int64(0, f7_2)), (new $Int64(0, g1)));
+ f7g2 = $mul64((new $Int64(0, f7)), (new $Int64(0, g2)));
+ f7g3_38 = $mul64((new $Int64(0, f7_2)), (new $Int64(0, g3_19)));
+ f7g4_19 = $mul64((new $Int64(0, f7)), (new $Int64(0, g4_19)));
+ f7g5_38 = $mul64((new $Int64(0, f7_2)), (new $Int64(0, g5_19)));
+ f7g6_19 = $mul64((new $Int64(0, f7)), (new $Int64(0, g6_19)));
+ f7g7_38 = $mul64((new $Int64(0, f7_2)), (new $Int64(0, g7_19)));
+ f7g8_19 = $mul64((new $Int64(0, f7)), (new $Int64(0, g8_19)));
+ f7g9_38 = $mul64((new $Int64(0, f7_2)), (new $Int64(0, g9_19)));
+ f8g0 = $mul64((new $Int64(0, f8)), (new $Int64(0, g0)));
+ f8g1 = $mul64((new $Int64(0, f8)), (new $Int64(0, g1)));
+ f8g2_19 = $mul64((new $Int64(0, f8)), (new $Int64(0, g2_19)));
+ f8g3_19 = $mul64((new $Int64(0, f8)), (new $Int64(0, g3_19)));
+ f8g4_19 = $mul64((new $Int64(0, f8)), (new $Int64(0, g4_19)));
+ f8g5_19 = $mul64((new $Int64(0, f8)), (new $Int64(0, g5_19)));
+ f8g6_19 = $mul64((new $Int64(0, f8)), (new $Int64(0, g6_19)));
+ f8g7_19 = $mul64((new $Int64(0, f8)), (new $Int64(0, g7_19)));
+ f8g8_19 = $mul64((new $Int64(0, f8)), (new $Int64(0, g8_19)));
+ f8g9_19 = $mul64((new $Int64(0, f8)), (new $Int64(0, g9_19)));
+ f9g0 = $mul64((new $Int64(0, f9)), (new $Int64(0, g0)));
+ f9g1_38 = $mul64((new $Int64(0, f9_2)), (new $Int64(0, g1_19)));
+ f9g2_19 = $mul64((new $Int64(0, f9)), (new $Int64(0, g2_19)));
+ f9g3_38 = $mul64((new $Int64(0, f9_2)), (new $Int64(0, g3_19)));
+ f9g4_19 = $mul64((new $Int64(0, f9)), (new $Int64(0, g4_19)));
+ f9g5_38 = $mul64((new $Int64(0, f9_2)), (new $Int64(0, g5_19)));
+ f9g6_19 = $mul64((new $Int64(0, f9)), (new $Int64(0, g6_19)));
+ f9g7_38 = $mul64((new $Int64(0, f9_2)), (new $Int64(0, g7_19)));
+ f9g8_19 = $mul64((new $Int64(0, f9)), (new $Int64(0, g8_19)));
+ f9g9_38 = $mul64((new $Int64(0, f9_2)), (new $Int64(0, g9_19)));
+ h0 = (x = (x$1 = (x$2 = (x$3 = (x$4 = (x$5 = (x$6 = (x$7 = new $Int64(f0g0.$high + f1g9_38.$high, f0g0.$low + f1g9_38.$low), new $Int64(x$7.$high + f2g8_19.$high, x$7.$low + f2g8_19.$low)), new $Int64(x$6.$high + f3g7_38.$high, x$6.$low + f3g7_38.$low)), new $Int64(x$5.$high + f4g6_19.$high, x$5.$low + f4g6_19.$low)), new $Int64(x$4.$high + f5g5_38.$high, x$4.$low + f5g5_38.$low)), new $Int64(x$3.$high + f6g4_19.$high, x$3.$low + f6g4_19.$low)), new $Int64(x$2.$high + f7g3_38.$high, x$2.$low + f7g3_38.$low)), new $Int64(x$1.$high + f8g2_19.$high, x$1.$low + f8g2_19.$low)), new $Int64(x.$high + f9g1_38.$high, x.$low + f9g1_38.$low));
+ h1 = (x$8 = (x$9 = (x$10 = (x$11 = (x$12 = (x$13 = (x$14 = (x$15 = new $Int64(f0g1.$high + f1g0.$high, f0g1.$low + f1g0.$low), new $Int64(x$15.$high + f2g9_19.$high, x$15.$low + f2g9_19.$low)), new $Int64(x$14.$high + f3g8_19.$high, x$14.$low + f3g8_19.$low)), new $Int64(x$13.$high + f4g7_19.$high, x$13.$low + f4g7_19.$low)), new $Int64(x$12.$high + f5g6_19.$high, x$12.$low + f5g6_19.$low)), new $Int64(x$11.$high + f6g5_19.$high, x$11.$low + f6g5_19.$low)), new $Int64(x$10.$high + f7g4_19.$high, x$10.$low + f7g4_19.$low)), new $Int64(x$9.$high + f8g3_19.$high, x$9.$low + f8g3_19.$low)), new $Int64(x$8.$high + f9g2_19.$high, x$8.$low + f9g2_19.$low));
+ h2 = (x$16 = (x$17 = (x$18 = (x$19 = (x$20 = (x$21 = (x$22 = (x$23 = new $Int64(f0g2.$high + f1g1_2.$high, f0g2.$low + f1g1_2.$low), new $Int64(x$23.$high + f2g0.$high, x$23.$low + f2g0.$low)), new $Int64(x$22.$high + f3g9_38.$high, x$22.$low + f3g9_38.$low)), new $Int64(x$21.$high + f4g8_19.$high, x$21.$low + f4g8_19.$low)), new $Int64(x$20.$high + f5g7_38.$high, x$20.$low + f5g7_38.$low)), new $Int64(x$19.$high + f6g6_19.$high, x$19.$low + f6g6_19.$low)), new $Int64(x$18.$high + f7g5_38.$high, x$18.$low + f7g5_38.$low)), new $Int64(x$17.$high + f8g4_19.$high, x$17.$low + f8g4_19.$low)), new $Int64(x$16.$high + f9g3_38.$high, x$16.$low + f9g3_38.$low));
+ h3 = (x$24 = (x$25 = (x$26 = (x$27 = (x$28 = (x$29 = (x$30 = (x$31 = new $Int64(f0g3.$high + f1g2.$high, f0g3.$low + f1g2.$low), new $Int64(x$31.$high + f2g1.$high, x$31.$low + f2g1.$low)), new $Int64(x$30.$high + f3g0.$high, x$30.$low + f3g0.$low)), new $Int64(x$29.$high + f4g9_19.$high, x$29.$low + f4g9_19.$low)), new $Int64(x$28.$high + f5g8_19.$high, x$28.$low + f5g8_19.$low)), new $Int64(x$27.$high + f6g7_19.$high, x$27.$low + f6g7_19.$low)), new $Int64(x$26.$high + f7g6_19.$high, x$26.$low + f7g6_19.$low)), new $Int64(x$25.$high + f8g5_19.$high, x$25.$low + f8g5_19.$low)), new $Int64(x$24.$high + f9g4_19.$high, x$24.$low + f9g4_19.$low));
+ h4 = (x$32 = (x$33 = (x$34 = (x$35 = (x$36 = (x$37 = (x$38 = (x$39 = new $Int64(f0g4.$high + f1g3_2.$high, f0g4.$low + f1g3_2.$low), new $Int64(x$39.$high + f2g2.$high, x$39.$low + f2g2.$low)), new $Int64(x$38.$high + f3g1_2.$high, x$38.$low + f3g1_2.$low)), new $Int64(x$37.$high + f4g0.$high, x$37.$low + f4g0.$low)), new $Int64(x$36.$high + f5g9_38.$high, x$36.$low + f5g9_38.$low)), new $Int64(x$35.$high + f6g8_19.$high, x$35.$low + f6g8_19.$low)), new $Int64(x$34.$high + f7g7_38.$high, x$34.$low + f7g7_38.$low)), new $Int64(x$33.$high + f8g6_19.$high, x$33.$low + f8g6_19.$low)), new $Int64(x$32.$high + f9g5_38.$high, x$32.$low + f9g5_38.$low));
+ h5 = (x$40 = (x$41 = (x$42 = (x$43 = (x$44 = (x$45 = (x$46 = (x$47 = new $Int64(f0g5.$high + f1g4.$high, f0g5.$low + f1g4.$low), new $Int64(x$47.$high + f2g3.$high, x$47.$low + f2g3.$low)), new $Int64(x$46.$high + f3g2.$high, x$46.$low + f3g2.$low)), new $Int64(x$45.$high + f4g1.$high, x$45.$low + f4g1.$low)), new $Int64(x$44.$high + f5g0.$high, x$44.$low + f5g0.$low)), new $Int64(x$43.$high + f6g9_19.$high, x$43.$low + f6g9_19.$low)), new $Int64(x$42.$high + f7g8_19.$high, x$42.$low + f7g8_19.$low)), new $Int64(x$41.$high + f8g7_19.$high, x$41.$low + f8g7_19.$low)), new $Int64(x$40.$high + f9g6_19.$high, x$40.$low + f9g6_19.$low));
+ h6 = (x$48 = (x$49 = (x$50 = (x$51 = (x$52 = (x$53 = (x$54 = (x$55 = new $Int64(f0g6.$high + f1g5_2.$high, f0g6.$low + f1g5_2.$low), new $Int64(x$55.$high + f2g4.$high, x$55.$low + f2g4.$low)), new $Int64(x$54.$high + f3g3_2.$high, x$54.$low + f3g3_2.$low)), new $Int64(x$53.$high + f4g2.$high, x$53.$low + f4g2.$low)), new $Int64(x$52.$high + f5g1_2.$high, x$52.$low + f5g1_2.$low)), new $Int64(x$51.$high + f6g0.$high, x$51.$low + f6g0.$low)), new $Int64(x$50.$high + f7g9_38.$high, x$50.$low + f7g9_38.$low)), new $Int64(x$49.$high + f8g8_19.$high, x$49.$low + f8g8_19.$low)), new $Int64(x$48.$high + f9g7_38.$high, x$48.$low + f9g7_38.$low));
+ h7 = (x$56 = (x$57 = (x$58 = (x$59 = (x$60 = (x$61 = (x$62 = (x$63 = new $Int64(f0g7.$high + f1g6.$high, f0g7.$low + f1g6.$low), new $Int64(x$63.$high + f2g5.$high, x$63.$low + f2g5.$low)), new $Int64(x$62.$high + f3g4.$high, x$62.$low + f3g4.$low)), new $Int64(x$61.$high + f4g3.$high, x$61.$low + f4g3.$low)), new $Int64(x$60.$high + f5g2.$high, x$60.$low + f5g2.$low)), new $Int64(x$59.$high + f6g1.$high, x$59.$low + f6g1.$low)), new $Int64(x$58.$high + f7g0.$high, x$58.$low + f7g0.$low)), new $Int64(x$57.$high + f8g9_19.$high, x$57.$low + f8g9_19.$low)), new $Int64(x$56.$high + f9g8_19.$high, x$56.$low + f9g8_19.$low));
+ h8 = (x$64 = (x$65 = (x$66 = (x$67 = (x$68 = (x$69 = (x$70 = (x$71 = new $Int64(f0g8.$high + f1g7_2.$high, f0g8.$low + f1g7_2.$low), new $Int64(x$71.$high + f2g6.$high, x$71.$low + f2g6.$low)), new $Int64(x$70.$high + f3g5_2.$high, x$70.$low + f3g5_2.$low)), new $Int64(x$69.$high + f4g4.$high, x$69.$low + f4g4.$low)), new $Int64(x$68.$high + f5g3_2.$high, x$68.$low + f5g3_2.$low)), new $Int64(x$67.$high + f6g2.$high, x$67.$low + f6g2.$low)), new $Int64(x$66.$high + f7g1_2.$high, x$66.$low + f7g1_2.$low)), new $Int64(x$65.$high + f8g0.$high, x$65.$low + f8g0.$low)), new $Int64(x$64.$high + f9g9_38.$high, x$64.$low + f9g9_38.$low));
+ h9 = (x$72 = (x$73 = (x$74 = (x$75 = (x$76 = (x$77 = (x$78 = (x$79 = new $Int64(f0g9.$high + f1g8.$high, f0g9.$low + f1g8.$low), new $Int64(x$79.$high + f2g7.$high, x$79.$low + f2g7.$low)), new $Int64(x$78.$high + f3g6.$high, x$78.$low + f3g6.$low)), new $Int64(x$77.$high + f4g5.$high, x$77.$low + f4g5.$low)), new $Int64(x$76.$high + f5g4.$high, x$76.$low + f5g4.$low)), new $Int64(x$75.$high + f6g3.$high, x$75.$low + f6g3.$low)), new $Int64(x$74.$high + f7g2.$high, x$74.$low + f7g2.$low)), new $Int64(x$73.$high + f8g1.$high, x$73.$low + f8g1.$low)), new $Int64(x$72.$high + f9g0.$high, x$72.$low + f9g0.$low));
+ carry = arrayType$3.zero();
+ carry[0] = $shiftRightInt64((new $Int64(h0.$high + 0, h0.$low + 33554432)), 26);
+ h1 = (x$80 = carry[0], new $Int64(h1.$high + x$80.$high, h1.$low + x$80.$low));
+ h0 = (x$81 = $shiftLeft64(carry[0], 26), new $Int64(h0.$high - x$81.$high, h0.$low - x$81.$low));
+ carry[4] = $shiftRightInt64((new $Int64(h4.$high + 0, h4.$low + 33554432)), 26);
+ h5 = (x$82 = carry[4], new $Int64(h5.$high + x$82.$high, h5.$low + x$82.$low));
+ h4 = (x$83 = $shiftLeft64(carry[4], 26), new $Int64(h4.$high - x$83.$high, h4.$low - x$83.$low));
+ carry[1] = $shiftRightInt64((new $Int64(h1.$high + 0, h1.$low + 16777216)), 25);
+ h2 = (x$84 = carry[1], new $Int64(h2.$high + x$84.$high, h2.$low + x$84.$low));
+ h1 = (x$85 = $shiftLeft64(carry[1], 25), new $Int64(h1.$high - x$85.$high, h1.$low - x$85.$low));
+ carry[5] = $shiftRightInt64((new $Int64(h5.$high + 0, h5.$low + 16777216)), 25);
+ h6 = (x$86 = carry[5], new $Int64(h6.$high + x$86.$high, h6.$low + x$86.$low));
+ h5 = (x$87 = $shiftLeft64(carry[5], 25), new $Int64(h5.$high - x$87.$high, h5.$low - x$87.$low));
+ carry[2] = $shiftRightInt64((new $Int64(h2.$high + 0, h2.$low + 33554432)), 26);
+ h3 = (x$88 = carry[2], new $Int64(h3.$high + x$88.$high, h3.$low + x$88.$low));
+ h2 = (x$89 = $shiftLeft64(carry[2], 26), new $Int64(h2.$high - x$89.$high, h2.$low - x$89.$low));
+ carry[6] = $shiftRightInt64((new $Int64(h6.$high + 0, h6.$low + 33554432)), 26);
+ h7 = (x$90 = carry[6], new $Int64(h7.$high + x$90.$high, h7.$low + x$90.$low));
+ h6 = (x$91 = $shiftLeft64(carry[6], 26), new $Int64(h6.$high - x$91.$high, h6.$low - x$91.$low));
+ carry[3] = $shiftRightInt64((new $Int64(h3.$high + 0, h3.$low + 16777216)), 25);
+ h4 = (x$92 = carry[3], new $Int64(h4.$high + x$92.$high, h4.$low + x$92.$low));
+ h3 = (x$93 = $shiftLeft64(carry[3], 25), new $Int64(h3.$high - x$93.$high, h3.$low - x$93.$low));
+ carry[7] = $shiftRightInt64((new $Int64(h7.$high + 0, h7.$low + 16777216)), 25);
+ h8 = (x$94 = carry[7], new $Int64(h8.$high + x$94.$high, h8.$low + x$94.$low));
+ h7 = (x$95 = $shiftLeft64(carry[7], 25), new $Int64(h7.$high - x$95.$high, h7.$low - x$95.$low));
+ carry[4] = $shiftRightInt64((new $Int64(h4.$high + 0, h4.$low + 33554432)), 26);
+ h5 = (x$96 = carry[4], new $Int64(h5.$high + x$96.$high, h5.$low + x$96.$low));
+ h4 = (x$97 = $shiftLeft64(carry[4], 26), new $Int64(h4.$high - x$97.$high, h4.$low - x$97.$low));
+ carry[8] = $shiftRightInt64((new $Int64(h8.$high + 0, h8.$low + 33554432)), 26);
+ h9 = (x$98 = carry[8], new $Int64(h9.$high + x$98.$high, h9.$low + x$98.$low));
+ h8 = (x$99 = $shiftLeft64(carry[8], 26), new $Int64(h8.$high - x$99.$high, h8.$low - x$99.$low));
+ carry[9] = $shiftRightInt64((new $Int64(h9.$high + 0, h9.$low + 16777216)), 25);
+ h0 = (x$100 = $mul64(carry[9], new $Int64(0, 19)), new $Int64(h0.$high + x$100.$high, h0.$low + x$100.$low));
+ h9 = (x$101 = $shiftLeft64(carry[9], 25), new $Int64(h9.$high - x$101.$high, h9.$low - x$101.$low));
+ carry[0] = $shiftRightInt64((new $Int64(h0.$high + 0, h0.$low + 33554432)), 26);
+ h1 = (x$102 = carry[0], new $Int64(h1.$high + x$102.$high, h1.$low + x$102.$low));
+ h0 = (x$103 = $shiftLeft64(carry[0], 26), new $Int64(h0.$high - x$103.$high, h0.$low - x$103.$low));
+ h.nilCheck, h[0] = (((h0.$low + ((h0.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[1] = (((h1.$low + ((h1.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[2] = (((h2.$low + ((h2.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[3] = (((h3.$low + ((h3.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[4] = (((h4.$low + ((h4.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[5] = (((h5.$low + ((h5.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[6] = (((h6.$low + ((h6.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[7] = (((h7.$low + ((h7.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[8] = (((h8.$low + ((h8.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[9] = (((h9.$low + ((h9.$high >> 31) * 4294967296)) >> 0));
+ };
+ feSquare = function(h, f) {
+ var $ptr, carry, f, f0, f0_2, f0f0, f0f1_2, f0f2_2, f0f3_2, f0f4_2, f0f5_2, f0f6_2, f0f7_2, f0f8_2, f0f9_2, f1, f1_2, f1f1_2, f1f2_2, f1f3_4, f1f4_2, f1f5_4, f1f6_2, f1f7_4, f1f8_2, f1f9_76, f2, f2_2, f2f2, f2f3_2, f2f4_2, f2f5_2, f2f6_2, f2f7_2, f2f8_38, f2f9_38, f3, f3_2, f3f3_2, f3f4_2, f3f5_4, f3f6_2, f3f7_76, f3f8_38, f3f9_76, f4, f4_2, f4f4, f4f5_2, f4f6_38, f4f7_38, f4f8_38, f4f9_38, f5, f5_2, f5_38, f5f5_38, f5f6_38, f5f7_76, f5f8_38, f5f9_76, f6, f6_19, f6_2, f6f6_19, f6f7_38, f6f8_38, f6f9_38, f7, f7_2, f7_38, f7f7_38, f7f8_38, f7f9_76, f8, f8_19, f8f8_19, f8f9_38, f9, f9_38, f9f9_38, h, h0, h1, h2, h3, h4, h5, h6, h7, h8, h9, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$19, x$2, x$20, x$21, x$22, x$23, x$24, x$25, x$26, x$27, x$28, x$29, x$3, x$30, x$31, x$32, x$33, x$34, x$35, x$36, x$37, x$38, x$39, x$4, x$40, x$41, x$42, x$43, x$44, x$45, x$46, x$47, x$48, x$49, x$5, x$50, x$51, x$52, x$53, x$54, x$55, x$56, x$57, x$58, x$6, x$7, x$8, x$9;
+ f0 = (f.nilCheck, f[0]);
+ f1 = (f.nilCheck, f[1]);
+ f2 = (f.nilCheck, f[2]);
+ f3 = (f.nilCheck, f[3]);
+ f4 = (f.nilCheck, f[4]);
+ f5 = (f.nilCheck, f[5]);
+ f6 = (f.nilCheck, f[6]);
+ f7 = (f.nilCheck, f[7]);
+ f8 = (f.nilCheck, f[8]);
+ f9 = (f.nilCheck, f[9]);
+ f0_2 = $imul(2, f0);
+ f1_2 = $imul(2, f1);
+ f2_2 = $imul(2, f2);
+ f3_2 = $imul(2, f3);
+ f4_2 = $imul(2, f4);
+ f5_2 = $imul(2, f5);
+ f6_2 = $imul(2, f6);
+ f7_2 = $imul(2, f7);
+ f5_38 = $imul(38, f5);
+ f6_19 = $imul(19, f6);
+ f7_38 = $imul(38, f7);
+ f8_19 = $imul(19, f8);
+ f9_38 = $imul(38, f9);
+ f0f0 = $mul64((new $Int64(0, f0)), (new $Int64(0, f0)));
+ f0f1_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f1)));
+ f0f2_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f2)));
+ f0f3_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f3)));
+ f0f4_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f4)));
+ f0f5_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f5)));
+ f0f6_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f6)));
+ f0f7_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f7)));
+ f0f8_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f8)));
+ f0f9_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f9)));
+ f1f1_2 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f1)));
+ f1f2_2 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f2)));
+ f1f3_4 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f3_2)));
+ f1f4_2 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f4)));
+ f1f5_4 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f5_2)));
+ f1f6_2 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f6)));
+ f1f7_4 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f7_2)));
+ f1f8_2 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f8)));
+ f1f9_76 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f9_38)));
+ f2f2 = $mul64((new $Int64(0, f2)), (new $Int64(0, f2)));
+ f2f3_2 = $mul64((new $Int64(0, f2_2)), (new $Int64(0, f3)));
+ f2f4_2 = $mul64((new $Int64(0, f2_2)), (new $Int64(0, f4)));
+ f2f5_2 = $mul64((new $Int64(0, f2_2)), (new $Int64(0, f5)));
+ f2f6_2 = $mul64((new $Int64(0, f2_2)), (new $Int64(0, f6)));
+ f2f7_2 = $mul64((new $Int64(0, f2_2)), (new $Int64(0, f7)));
+ f2f8_38 = $mul64((new $Int64(0, f2_2)), (new $Int64(0, f8_19)));
+ f2f9_38 = $mul64((new $Int64(0, f2)), (new $Int64(0, f9_38)));
+ f3f3_2 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, f3)));
+ f3f4_2 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, f4)));
+ f3f5_4 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, f5_2)));
+ f3f6_2 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, f6)));
+ f3f7_76 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, f7_38)));
+ f3f8_38 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, f8_19)));
+ f3f9_76 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, f9_38)));
+ f4f4 = $mul64((new $Int64(0, f4)), (new $Int64(0, f4)));
+ f4f5_2 = $mul64((new $Int64(0, f4_2)), (new $Int64(0, f5)));
+ f4f6_38 = $mul64((new $Int64(0, f4_2)), (new $Int64(0, f6_19)));
+ f4f7_38 = $mul64((new $Int64(0, f4)), (new $Int64(0, f7_38)));
+ f4f8_38 = $mul64((new $Int64(0, f4_2)), (new $Int64(0, f8_19)));
+ f4f9_38 = $mul64((new $Int64(0, f4)), (new $Int64(0, f9_38)));
+ f5f5_38 = $mul64((new $Int64(0, f5)), (new $Int64(0, f5_38)));
+ f5f6_38 = $mul64((new $Int64(0, f5_2)), (new $Int64(0, f6_19)));
+ f5f7_76 = $mul64((new $Int64(0, f5_2)), (new $Int64(0, f7_38)));
+ f5f8_38 = $mul64((new $Int64(0, f5_2)), (new $Int64(0, f8_19)));
+ f5f9_76 = $mul64((new $Int64(0, f5_2)), (new $Int64(0, f9_38)));
+ f6f6_19 = $mul64((new $Int64(0, f6)), (new $Int64(0, f6_19)));
+ f6f7_38 = $mul64((new $Int64(0, f6)), (new $Int64(0, f7_38)));
+ f6f8_38 = $mul64((new $Int64(0, f6_2)), (new $Int64(0, f8_19)));
+ f6f9_38 = $mul64((new $Int64(0, f6)), (new $Int64(0, f9_38)));
+ f7f7_38 = $mul64((new $Int64(0, f7)), (new $Int64(0, f7_38)));
+ f7f8_38 = $mul64((new $Int64(0, f7_2)), (new $Int64(0, f8_19)));
+ f7f9_76 = $mul64((new $Int64(0, f7_2)), (new $Int64(0, f9_38)));
+ f8f8_19 = $mul64((new $Int64(0, f8)), (new $Int64(0, f8_19)));
+ f8f9_38 = $mul64((new $Int64(0, f8)), (new $Int64(0, f9_38)));
+ f9f9_38 = $mul64((new $Int64(0, f9)), (new $Int64(0, f9_38)));
+ h0 = (x = (x$1 = (x$2 = (x$3 = new $Int64(f0f0.$high + f1f9_76.$high, f0f0.$low + f1f9_76.$low), new $Int64(x$3.$high + f2f8_38.$high, x$3.$low + f2f8_38.$low)), new $Int64(x$2.$high + f3f7_76.$high, x$2.$low + f3f7_76.$low)), new $Int64(x$1.$high + f4f6_38.$high, x$1.$low + f4f6_38.$low)), new $Int64(x.$high + f5f5_38.$high, x.$low + f5f5_38.$low));
+ h1 = (x$4 = (x$5 = (x$6 = new $Int64(f0f1_2.$high + f2f9_38.$high, f0f1_2.$low + f2f9_38.$low), new $Int64(x$6.$high + f3f8_38.$high, x$6.$low + f3f8_38.$low)), new $Int64(x$5.$high + f4f7_38.$high, x$5.$low + f4f7_38.$low)), new $Int64(x$4.$high + f5f6_38.$high, x$4.$low + f5f6_38.$low));
+ h2 = (x$7 = (x$8 = (x$9 = (x$10 = new $Int64(f0f2_2.$high + f1f1_2.$high, f0f2_2.$low + f1f1_2.$low), new $Int64(x$10.$high + f3f9_76.$high, x$10.$low + f3f9_76.$low)), new $Int64(x$9.$high + f4f8_38.$high, x$9.$low + f4f8_38.$low)), new $Int64(x$8.$high + f5f7_76.$high, x$8.$low + f5f7_76.$low)), new $Int64(x$7.$high + f6f6_19.$high, x$7.$low + f6f6_19.$low));
+ h3 = (x$11 = (x$12 = (x$13 = new $Int64(f0f3_2.$high + f1f2_2.$high, f0f3_2.$low + f1f2_2.$low), new $Int64(x$13.$high + f4f9_38.$high, x$13.$low + f4f9_38.$low)), new $Int64(x$12.$high + f5f8_38.$high, x$12.$low + f5f8_38.$low)), new $Int64(x$11.$high + f6f7_38.$high, x$11.$low + f6f7_38.$low));
+ h4 = (x$14 = (x$15 = (x$16 = (x$17 = new $Int64(f0f4_2.$high + f1f3_4.$high, f0f4_2.$low + f1f3_4.$low), new $Int64(x$17.$high + f2f2.$high, x$17.$low + f2f2.$low)), new $Int64(x$16.$high + f5f9_76.$high, x$16.$low + f5f9_76.$low)), new $Int64(x$15.$high + f6f8_38.$high, x$15.$low + f6f8_38.$low)), new $Int64(x$14.$high + f7f7_38.$high, x$14.$low + f7f7_38.$low));
+ h5 = (x$18 = (x$19 = (x$20 = new $Int64(f0f5_2.$high + f1f4_2.$high, f0f5_2.$low + f1f4_2.$low), new $Int64(x$20.$high + f2f3_2.$high, x$20.$low + f2f3_2.$low)), new $Int64(x$19.$high + f6f9_38.$high, x$19.$low + f6f9_38.$low)), new $Int64(x$18.$high + f7f8_38.$high, x$18.$low + f7f8_38.$low));
+ h6 = (x$21 = (x$22 = (x$23 = (x$24 = new $Int64(f0f6_2.$high + f1f5_4.$high, f0f6_2.$low + f1f5_4.$low), new $Int64(x$24.$high + f2f4_2.$high, x$24.$low + f2f4_2.$low)), new $Int64(x$23.$high + f3f3_2.$high, x$23.$low + f3f3_2.$low)), new $Int64(x$22.$high + f7f9_76.$high, x$22.$low + f7f9_76.$low)), new $Int64(x$21.$high + f8f8_19.$high, x$21.$low + f8f8_19.$low));
+ h7 = (x$25 = (x$26 = (x$27 = new $Int64(f0f7_2.$high + f1f6_2.$high, f0f7_2.$low + f1f6_2.$low), new $Int64(x$27.$high + f2f5_2.$high, x$27.$low + f2f5_2.$low)), new $Int64(x$26.$high + f3f4_2.$high, x$26.$low + f3f4_2.$low)), new $Int64(x$25.$high + f8f9_38.$high, x$25.$low + f8f9_38.$low));
+ h8 = (x$28 = (x$29 = (x$30 = (x$31 = new $Int64(f0f8_2.$high + f1f7_4.$high, f0f8_2.$low + f1f7_4.$low), new $Int64(x$31.$high + f2f6_2.$high, x$31.$low + f2f6_2.$low)), new $Int64(x$30.$high + f3f5_4.$high, x$30.$low + f3f5_4.$low)), new $Int64(x$29.$high + f4f4.$high, x$29.$low + f4f4.$low)), new $Int64(x$28.$high + f9f9_38.$high, x$28.$low + f9f9_38.$low));
+ h9 = (x$32 = (x$33 = (x$34 = new $Int64(f0f9_2.$high + f1f8_2.$high, f0f9_2.$low + f1f8_2.$low), new $Int64(x$34.$high + f2f7_2.$high, x$34.$low + f2f7_2.$low)), new $Int64(x$33.$high + f3f6_2.$high, x$33.$low + f3f6_2.$low)), new $Int64(x$32.$high + f4f5_2.$high, x$32.$low + f4f5_2.$low));
+ carry = arrayType$3.zero();
+ carry[0] = $shiftRightInt64((new $Int64(h0.$high + 0, h0.$low + 33554432)), 26);
+ h1 = (x$35 = carry[0], new $Int64(h1.$high + x$35.$high, h1.$low + x$35.$low));
+ h0 = (x$36 = $shiftLeft64(carry[0], 26), new $Int64(h0.$high - x$36.$high, h0.$low - x$36.$low));
+ carry[4] = $shiftRightInt64((new $Int64(h4.$high + 0, h4.$low + 33554432)), 26);
+ h5 = (x$37 = carry[4], new $Int64(h5.$high + x$37.$high, h5.$low + x$37.$low));
+ h4 = (x$38 = $shiftLeft64(carry[4], 26), new $Int64(h4.$high - x$38.$high, h4.$low - x$38.$low));
+ carry[1] = $shiftRightInt64((new $Int64(h1.$high + 0, h1.$low + 16777216)), 25);
+ h2 = (x$39 = carry[1], new $Int64(h2.$high + x$39.$high, h2.$low + x$39.$low));
+ h1 = (x$40 = $shiftLeft64(carry[1], 25), new $Int64(h1.$high - x$40.$high, h1.$low - x$40.$low));
+ carry[5] = $shiftRightInt64((new $Int64(h5.$high + 0, h5.$low + 16777216)), 25);
+ h6 = (x$41 = carry[5], new $Int64(h6.$high + x$41.$high, h6.$low + x$41.$low));
+ h5 = (x$42 = $shiftLeft64(carry[5], 25), new $Int64(h5.$high - x$42.$high, h5.$low - x$42.$low));
+ carry[2] = $shiftRightInt64((new $Int64(h2.$high + 0, h2.$low + 33554432)), 26);
+ h3 = (x$43 = carry[2], new $Int64(h3.$high + x$43.$high, h3.$low + x$43.$low));
+ h2 = (x$44 = $shiftLeft64(carry[2], 26), new $Int64(h2.$high - x$44.$high, h2.$low - x$44.$low));
+ carry[6] = $shiftRightInt64((new $Int64(h6.$high + 0, h6.$low + 33554432)), 26);
+ h7 = (x$45 = carry[6], new $Int64(h7.$high + x$45.$high, h7.$low + x$45.$low));
+ h6 = (x$46 = $shiftLeft64(carry[6], 26), new $Int64(h6.$high - x$46.$high, h6.$low - x$46.$low));
+ carry[3] = $shiftRightInt64((new $Int64(h3.$high + 0, h3.$low + 16777216)), 25);
+ h4 = (x$47 = carry[3], new $Int64(h4.$high + x$47.$high, h4.$low + x$47.$low));
+ h3 = (x$48 = $shiftLeft64(carry[3], 25), new $Int64(h3.$high - x$48.$high, h3.$low - x$48.$low));
+ carry[7] = $shiftRightInt64((new $Int64(h7.$high + 0, h7.$low + 16777216)), 25);
+ h8 = (x$49 = carry[7], new $Int64(h8.$high + x$49.$high, h8.$low + x$49.$low));
+ h7 = (x$50 = $shiftLeft64(carry[7], 25), new $Int64(h7.$high - x$50.$high, h7.$low - x$50.$low));
+ carry[4] = $shiftRightInt64((new $Int64(h4.$high + 0, h4.$low + 33554432)), 26);
+ h5 = (x$51 = carry[4], new $Int64(h5.$high + x$51.$high, h5.$low + x$51.$low));
+ h4 = (x$52 = $shiftLeft64(carry[4], 26), new $Int64(h4.$high - x$52.$high, h4.$low - x$52.$low));
+ carry[8] = $shiftRightInt64((new $Int64(h8.$high + 0, h8.$low + 33554432)), 26);
+ h9 = (x$53 = carry[8], new $Int64(h9.$high + x$53.$high, h9.$low + x$53.$low));
+ h8 = (x$54 = $shiftLeft64(carry[8], 26), new $Int64(h8.$high - x$54.$high, h8.$low - x$54.$low));
+ carry[9] = $shiftRightInt64((new $Int64(h9.$high + 0, h9.$low + 16777216)), 25);
+ h0 = (x$55 = $mul64(carry[9], new $Int64(0, 19)), new $Int64(h0.$high + x$55.$high, h0.$low + x$55.$low));
+ h9 = (x$56 = $shiftLeft64(carry[9], 25), new $Int64(h9.$high - x$56.$high, h9.$low - x$56.$low));
+ carry[0] = $shiftRightInt64((new $Int64(h0.$high + 0, h0.$low + 33554432)), 26);
+ h1 = (x$57 = carry[0], new $Int64(h1.$high + x$57.$high, h1.$low + x$57.$low));
+ h0 = (x$58 = $shiftLeft64(carry[0], 26), new $Int64(h0.$high - x$58.$high, h0.$low - x$58.$low));
+ h.nilCheck, h[0] = (((h0.$low + ((h0.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[1] = (((h1.$low + ((h1.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[2] = (((h2.$low + ((h2.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[3] = (((h3.$low + ((h3.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[4] = (((h4.$low + ((h4.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[5] = (((h5.$low + ((h5.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[6] = (((h6.$low + ((h6.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[7] = (((h7.$low + ((h7.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[8] = (((h8.$low + ((h8.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[9] = (((h9.$low + ((h9.$high >> 31) * 4294967296)) >> 0));
+ };
+ feSquare2 = function(h, f) {
+ var $ptr, carry, f, f0, f0_2, f0f0, f0f1_2, f0f2_2, f0f3_2, f0f4_2, f0f5_2, f0f6_2, f0f7_2, f0f8_2, f0f9_2, f1, f1_2, f1f1_2, f1f2_2, f1f3_4, f1f4_2, f1f5_4, f1f6_2, f1f7_4, f1f8_2, f1f9_76, f2, f2_2, f2f2, f2f3_2, f2f4_2, f2f5_2, f2f6_2, f2f7_2, f2f8_38, f2f9_38, f3, f3_2, f3f3_2, f3f4_2, f3f5_4, f3f6_2, f3f7_76, f3f8_38, f3f9_76, f4, f4_2, f4f4, f4f5_2, f4f6_38, f4f7_38, f4f8_38, f4f9_38, f5, f5_2, f5_38, f5f5_38, f5f6_38, f5f7_76, f5f8_38, f5f9_76, f6, f6_19, f6_2, f6f6_19, f6f7_38, f6f8_38, f6f9_38, f7, f7_2, f7_38, f7f7_38, f7f8_38, f7f9_76, f8, f8_19, f8f8_19, f8f9_38, f9, f9_38, f9f9_38, h, h0, h1, h2, h3, h4, h5, h6, h7, h8, h9, x, x$1, x$10, x$11, x$12, x$13, x$14, x$15, x$16, x$17, x$18, x$19, x$2, x$20, x$21, x$22, x$23, x$24, x$25, x$26, x$27, x$28, x$29, x$3, x$30, x$31, x$32, x$33, x$34, x$35, x$36, x$37, x$38, x$39, x$4, x$40, x$41, x$42, x$43, x$44, x$45, x$46, x$47, x$48, x$49, x$5, x$50, x$51, x$52, x$53, x$54, x$55, x$56, x$57, x$58, x$59, x$6, x$60, x$61, x$62, x$63, x$64, x$65, x$66, x$67, x$68, x$7, x$8, x$9;
+ f0 = (f.nilCheck, f[0]);
+ f1 = (f.nilCheck, f[1]);
+ f2 = (f.nilCheck, f[2]);
+ f3 = (f.nilCheck, f[3]);
+ f4 = (f.nilCheck, f[4]);
+ f5 = (f.nilCheck, f[5]);
+ f6 = (f.nilCheck, f[6]);
+ f7 = (f.nilCheck, f[7]);
+ f8 = (f.nilCheck, f[8]);
+ f9 = (f.nilCheck, f[9]);
+ f0_2 = $imul(2, f0);
+ f1_2 = $imul(2, f1);
+ f2_2 = $imul(2, f2);
+ f3_2 = $imul(2, f3);
+ f4_2 = $imul(2, f4);
+ f5_2 = $imul(2, f5);
+ f6_2 = $imul(2, f6);
+ f7_2 = $imul(2, f7);
+ f5_38 = $imul(38, f5);
+ f6_19 = $imul(19, f6);
+ f7_38 = $imul(38, f7);
+ f8_19 = $imul(19, f8);
+ f9_38 = $imul(38, f9);
+ f0f0 = $mul64((new $Int64(0, f0)), (new $Int64(0, f0)));
+ f0f1_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f1)));
+ f0f2_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f2)));
+ f0f3_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f3)));
+ f0f4_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f4)));
+ f0f5_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f5)));
+ f0f6_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f6)));
+ f0f7_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f7)));
+ f0f8_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f8)));
+ f0f9_2 = $mul64((new $Int64(0, f0_2)), (new $Int64(0, f9)));
+ f1f1_2 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f1)));
+ f1f2_2 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f2)));
+ f1f3_4 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f3_2)));
+ f1f4_2 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f4)));
+ f1f5_4 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f5_2)));
+ f1f6_2 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f6)));
+ f1f7_4 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f7_2)));
+ f1f8_2 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f8)));
+ f1f9_76 = $mul64((new $Int64(0, f1_2)), (new $Int64(0, f9_38)));
+ f2f2 = $mul64((new $Int64(0, f2)), (new $Int64(0, f2)));
+ f2f3_2 = $mul64((new $Int64(0, f2_2)), (new $Int64(0, f3)));
+ f2f4_2 = $mul64((new $Int64(0, f2_2)), (new $Int64(0, f4)));
+ f2f5_2 = $mul64((new $Int64(0, f2_2)), (new $Int64(0, f5)));
+ f2f6_2 = $mul64((new $Int64(0, f2_2)), (new $Int64(0, f6)));
+ f2f7_2 = $mul64((new $Int64(0, f2_2)), (new $Int64(0, f7)));
+ f2f8_38 = $mul64((new $Int64(0, f2_2)), (new $Int64(0, f8_19)));
+ f2f9_38 = $mul64((new $Int64(0, f2)), (new $Int64(0, f9_38)));
+ f3f3_2 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, f3)));
+ f3f4_2 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, f4)));
+ f3f5_4 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, f5_2)));
+ f3f6_2 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, f6)));
+ f3f7_76 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, f7_38)));
+ f3f8_38 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, f8_19)));
+ f3f9_76 = $mul64((new $Int64(0, f3_2)), (new $Int64(0, f9_38)));
+ f4f4 = $mul64((new $Int64(0, f4)), (new $Int64(0, f4)));
+ f4f5_2 = $mul64((new $Int64(0, f4_2)), (new $Int64(0, f5)));
+ f4f6_38 = $mul64((new $Int64(0, f4_2)), (new $Int64(0, f6_19)));
+ f4f7_38 = $mul64((new $Int64(0, f4)), (new $Int64(0, f7_38)));
+ f4f8_38 = $mul64((new $Int64(0, f4_2)), (new $Int64(0, f8_19)));
+ f4f9_38 = $mul64((new $Int64(0, f4)), (new $Int64(0, f9_38)));
+ f5f5_38 = $mul64((new $Int64(0, f5)), (new $Int64(0, f5_38)));
+ f5f6_38 = $mul64((new $Int64(0, f5_2)), (new $Int64(0, f6_19)));
+ f5f7_76 = $mul64((new $Int64(0, f5_2)), (new $Int64(0, f7_38)));
+ f5f8_38 = $mul64((new $Int64(0, f5_2)), (new $Int64(0, f8_19)));
+ f5f9_76 = $mul64((new $Int64(0, f5_2)), (new $Int64(0, f9_38)));
+ f6f6_19 = $mul64((new $Int64(0, f6)), (new $Int64(0, f6_19)));
+ f6f7_38 = $mul64((new $Int64(0, f6)), (new $Int64(0, f7_38)));
+ f6f8_38 = $mul64((new $Int64(0, f6_2)), (new $Int64(0, f8_19)));
+ f6f9_38 = $mul64((new $Int64(0, f6)), (new $Int64(0, f9_38)));
+ f7f7_38 = $mul64((new $Int64(0, f7)), (new $Int64(0, f7_38)));
+ f7f8_38 = $mul64((new $Int64(0, f7_2)), (new $Int64(0, f8_19)));
+ f7f9_76 = $mul64((new $Int64(0, f7_2)), (new $Int64(0, f9_38)));
+ f8f8_19 = $mul64((new $Int64(0, f8)), (new $Int64(0, f8_19)));
+ f8f9_38 = $mul64((new $Int64(0, f8)), (new $Int64(0, f9_38)));
+ f9f9_38 = $mul64((new $Int64(0, f9)), (new $Int64(0, f9_38)));
+ h0 = (x = (x$1 = (x$2 = (x$3 = new $Int64(f0f0.$high + f1f9_76.$high, f0f0.$low + f1f9_76.$low), new $Int64(x$3.$high + f2f8_38.$high, x$3.$low + f2f8_38.$low)), new $Int64(x$2.$high + f3f7_76.$high, x$2.$low + f3f7_76.$low)), new $Int64(x$1.$high + f4f6_38.$high, x$1.$low + f4f6_38.$low)), new $Int64(x.$high + f5f5_38.$high, x.$low + f5f5_38.$low));
+ h1 = (x$4 = (x$5 = (x$6 = new $Int64(f0f1_2.$high + f2f9_38.$high, f0f1_2.$low + f2f9_38.$low), new $Int64(x$6.$high + f3f8_38.$high, x$6.$low + f3f8_38.$low)), new $Int64(x$5.$high + f4f7_38.$high, x$5.$low + f4f7_38.$low)), new $Int64(x$4.$high + f5f6_38.$high, x$4.$low + f5f6_38.$low));
+ h2 = (x$7 = (x$8 = (x$9 = (x$10 = new $Int64(f0f2_2.$high + f1f1_2.$high, f0f2_2.$low + f1f1_2.$low), new $Int64(x$10.$high + f3f9_76.$high, x$10.$low + f3f9_76.$low)), new $Int64(x$9.$high + f4f8_38.$high, x$9.$low + f4f8_38.$low)), new $Int64(x$8.$high + f5f7_76.$high, x$8.$low + f5f7_76.$low)), new $Int64(x$7.$high + f6f6_19.$high, x$7.$low + f6f6_19.$low));
+ h3 = (x$11 = (x$12 = (x$13 = new $Int64(f0f3_2.$high + f1f2_2.$high, f0f3_2.$low + f1f2_2.$low), new $Int64(x$13.$high + f4f9_38.$high, x$13.$low + f4f9_38.$low)), new $Int64(x$12.$high + f5f8_38.$high, x$12.$low + f5f8_38.$low)), new $Int64(x$11.$high + f6f7_38.$high, x$11.$low + f6f7_38.$low));
+ h4 = (x$14 = (x$15 = (x$16 = (x$17 = new $Int64(f0f4_2.$high + f1f3_4.$high, f0f4_2.$low + f1f3_4.$low), new $Int64(x$17.$high + f2f2.$high, x$17.$low + f2f2.$low)), new $Int64(x$16.$high + f5f9_76.$high, x$16.$low + f5f9_76.$low)), new $Int64(x$15.$high + f6f8_38.$high, x$15.$low + f6f8_38.$low)), new $Int64(x$14.$high + f7f7_38.$high, x$14.$low + f7f7_38.$low));
+ h5 = (x$18 = (x$19 = (x$20 = new $Int64(f0f5_2.$high + f1f4_2.$high, f0f5_2.$low + f1f4_2.$low), new $Int64(x$20.$high + f2f3_2.$high, x$20.$low + f2f3_2.$low)), new $Int64(x$19.$high + f6f9_38.$high, x$19.$low + f6f9_38.$low)), new $Int64(x$18.$high + f7f8_38.$high, x$18.$low + f7f8_38.$low));
+ h6 = (x$21 = (x$22 = (x$23 = (x$24 = new $Int64(f0f6_2.$high + f1f5_4.$high, f0f6_2.$low + f1f5_4.$low), new $Int64(x$24.$high + f2f4_2.$high, x$24.$low + f2f4_2.$low)), new $Int64(x$23.$high + f3f3_2.$high, x$23.$low + f3f3_2.$low)), new $Int64(x$22.$high + f7f9_76.$high, x$22.$low + f7f9_76.$low)), new $Int64(x$21.$high + f8f8_19.$high, x$21.$low + f8f8_19.$low));
+ h7 = (x$25 = (x$26 = (x$27 = new $Int64(f0f7_2.$high + f1f6_2.$high, f0f7_2.$low + f1f6_2.$low), new $Int64(x$27.$high + f2f5_2.$high, x$27.$low + f2f5_2.$low)), new $Int64(x$26.$high + f3f4_2.$high, x$26.$low + f3f4_2.$low)), new $Int64(x$25.$high + f8f9_38.$high, x$25.$low + f8f9_38.$low));
+ h8 = (x$28 = (x$29 = (x$30 = (x$31 = new $Int64(f0f8_2.$high + f1f7_4.$high, f0f8_2.$low + f1f7_4.$low), new $Int64(x$31.$high + f2f6_2.$high, x$31.$low + f2f6_2.$low)), new $Int64(x$30.$high + f3f5_4.$high, x$30.$low + f3f5_4.$low)), new $Int64(x$29.$high + f4f4.$high, x$29.$low + f4f4.$low)), new $Int64(x$28.$high + f9f9_38.$high, x$28.$low + f9f9_38.$low));
+ h9 = (x$32 = (x$33 = (x$34 = new $Int64(f0f9_2.$high + f1f8_2.$high, f0f9_2.$low + f1f8_2.$low), new $Int64(x$34.$high + f2f7_2.$high, x$34.$low + f2f7_2.$low)), new $Int64(x$33.$high + f3f6_2.$high, x$33.$low + f3f6_2.$low)), new $Int64(x$32.$high + f4f5_2.$high, x$32.$low + f4f5_2.$low));
+ carry = arrayType$3.zero();
+ h0 = (x$35 = h0, new $Int64(h0.$high + x$35.$high, h0.$low + x$35.$low));
+ h1 = (x$36 = h1, new $Int64(h1.$high + x$36.$high, h1.$low + x$36.$low));
+ h2 = (x$37 = h2, new $Int64(h2.$high + x$37.$high, h2.$low + x$37.$low));
+ h3 = (x$38 = h3, new $Int64(h3.$high + x$38.$high, h3.$low + x$38.$low));
+ h4 = (x$39 = h4, new $Int64(h4.$high + x$39.$high, h4.$low + x$39.$low));
+ h5 = (x$40 = h5, new $Int64(h5.$high + x$40.$high, h5.$low + x$40.$low));
+ h6 = (x$41 = h6, new $Int64(h6.$high + x$41.$high, h6.$low + x$41.$low));
+ h7 = (x$42 = h7, new $Int64(h7.$high + x$42.$high, h7.$low + x$42.$low));
+ h8 = (x$43 = h8, new $Int64(h8.$high + x$43.$high, h8.$low + x$43.$low));
+ h9 = (x$44 = h9, new $Int64(h9.$high + x$44.$high, h9.$low + x$44.$low));
+ carry[0] = $shiftRightInt64((new $Int64(h0.$high + 0, h0.$low + 33554432)), 26);
+ h1 = (x$45 = carry[0], new $Int64(h1.$high + x$45.$high, h1.$low + x$45.$low));
+ h0 = (x$46 = $shiftLeft64(carry[0], 26), new $Int64(h0.$high - x$46.$high, h0.$low - x$46.$low));
+ carry[4] = $shiftRightInt64((new $Int64(h4.$high + 0, h4.$low + 33554432)), 26);
+ h5 = (x$47 = carry[4], new $Int64(h5.$high + x$47.$high, h5.$low + x$47.$low));
+ h4 = (x$48 = $shiftLeft64(carry[4], 26), new $Int64(h4.$high - x$48.$high, h4.$low - x$48.$low));
+ carry[1] = $shiftRightInt64((new $Int64(h1.$high + 0, h1.$low + 16777216)), 25);
+ h2 = (x$49 = carry[1], new $Int64(h2.$high + x$49.$high, h2.$low + x$49.$low));
+ h1 = (x$50 = $shiftLeft64(carry[1], 25), new $Int64(h1.$high - x$50.$high, h1.$low - x$50.$low));
+ carry[5] = $shiftRightInt64((new $Int64(h5.$high + 0, h5.$low + 16777216)), 25);
+ h6 = (x$51 = carry[5], new $Int64(h6.$high + x$51.$high, h6.$low + x$51.$low));
+ h5 = (x$52 = $shiftLeft64(carry[5], 25), new $Int64(h5.$high - x$52.$high, h5.$low - x$52.$low));
+ carry[2] = $shiftRightInt64((new $Int64(h2.$high + 0, h2.$low + 33554432)), 26);
+ h3 = (x$53 = carry[2], new $Int64(h3.$high + x$53.$high, h3.$low + x$53.$low));
+ h2 = (x$54 = $shiftLeft64(carry[2], 26), new $Int64(h2.$high - x$54.$high, h2.$low - x$54.$low));
+ carry[6] = $shiftRightInt64((new $Int64(h6.$high + 0, h6.$low + 33554432)), 26);
+ h7 = (x$55 = carry[6], new $Int64(h7.$high + x$55.$high, h7.$low + x$55.$low));
+ h6 = (x$56 = $shiftLeft64(carry[6], 26), new $Int64(h6.$high - x$56.$high, h6.$low - x$56.$low));
+ carry[3] = $shiftRightInt64((new $Int64(h3.$high + 0, h3.$low + 16777216)), 25);
+ h4 = (x$57 = carry[3], new $Int64(h4.$high + x$57.$high, h4.$low + x$57.$low));
+ h3 = (x$58 = $shiftLeft64(carry[3], 25), new $Int64(h3.$high - x$58.$high, h3.$low - x$58.$low));
+ carry[7] = $shiftRightInt64((new $Int64(h7.$high + 0, h7.$low + 16777216)), 25);
+ h8 = (x$59 = carry[7], new $Int64(h8.$high + x$59.$high, h8.$low + x$59.$low));
+ h7 = (x$60 = $shiftLeft64(carry[7], 25), new $Int64(h7.$high - x$60.$high, h7.$low - x$60.$low));
+ carry[4] = $shiftRightInt64((new $Int64(h4.$high + 0, h4.$low + 33554432)), 26);
+ h5 = (x$61 = carry[4], new $Int64(h5.$high + x$61.$high, h5.$low + x$61.$low));
+ h4 = (x$62 = $shiftLeft64(carry[4], 26), new $Int64(h4.$high - x$62.$high, h4.$low - x$62.$low));
+ carry[8] = $shiftRightInt64((new $Int64(h8.$high + 0, h8.$low + 33554432)), 26);
+ h9 = (x$63 = carry[8], new $Int64(h9.$high + x$63.$high, h9.$low + x$63.$low));
+ h8 = (x$64 = $shiftLeft64(carry[8], 26), new $Int64(h8.$high - x$64.$high, h8.$low - x$64.$low));
+ carry[9] = $shiftRightInt64((new $Int64(h9.$high + 0, h9.$low + 16777216)), 25);
+ h0 = (x$65 = $mul64(carry[9], new $Int64(0, 19)), new $Int64(h0.$high + x$65.$high, h0.$low + x$65.$low));
+ h9 = (x$66 = $shiftLeft64(carry[9], 25), new $Int64(h9.$high - x$66.$high, h9.$low - x$66.$low));
+ carry[0] = $shiftRightInt64((new $Int64(h0.$high + 0, h0.$low + 33554432)), 26);
+ h1 = (x$67 = carry[0], new $Int64(h1.$high + x$67.$high, h1.$low + x$67.$low));
+ h0 = (x$68 = $shiftLeft64(carry[0], 26), new $Int64(h0.$high - x$68.$high, h0.$low - x$68.$low));
+ h.nilCheck, h[0] = (((h0.$low + ((h0.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[1] = (((h1.$low + ((h1.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[2] = (((h2.$low + ((h2.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[3] = (((h3.$low + ((h3.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[4] = (((h4.$low + ((h4.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[5] = (((h5.$low + ((h5.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[6] = (((h6.$low + ((h6.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[7] = (((h7.$low + ((h7.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[8] = (((h8.$low + ((h8.$high >> 31) * 4294967296)) >> 0));
+ h.nilCheck, h[9] = (((h9.$low + ((h9.$high >> 31) * 4294967296)) >> 0));
+ };
+ feInvert = function(out, z) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, _tmp$3, i, out, t0, t1, t2, t3, z;
+ _tmp = arrayType.zero();
+ _tmp$1 = arrayType.zero();
+ _tmp$2 = arrayType.zero();
+ _tmp$3 = arrayType.zero();
+ t0 = $clone(_tmp, fieldElement);
+ t1 = $clone(_tmp$1, fieldElement);
+ t2 = $clone(_tmp$2, fieldElement);
+ t3 = $clone(_tmp$3, fieldElement);
+ i = 0;
+ feSquare(t0, z);
+ feSquare(t1, t0);
+ i = 1;
+ while (true) {
+ if (!(i < 2)) { break; }
+ feSquare(t1, t1);
+ i = i + (1) >> 0;
+ }
+ feMul(t1, z, t1);
+ feMul(t0, t0, t1);
+ feSquare(t2, t0);
+ feMul(t1, t1, t2);
+ feSquare(t2, t1);
+ i = 1;
+ while (true) {
+ if (!(i < 5)) { break; }
+ feSquare(t2, t2);
+ i = i + (1) >> 0;
+ }
+ feMul(t1, t2, t1);
+ feSquare(t2, t1);
+ i = 1;
+ while (true) {
+ if (!(i < 10)) { break; }
+ feSquare(t2, t2);
+ i = i + (1) >> 0;
+ }
+ feMul(t2, t2, t1);
+ feSquare(t3, t2);
+ i = 1;
+ while (true) {
+ if (!(i < 20)) { break; }
+ feSquare(t3, t3);
+ i = i + (1) >> 0;
+ }
+ feMul(t2, t3, t2);
+ feSquare(t2, t2);
+ i = 1;
+ while (true) {
+ if (!(i < 10)) { break; }
+ feSquare(t2, t2);
+ i = i + (1) >> 0;
+ }
+ feMul(t1, t2, t1);
+ feSquare(t2, t1);
+ i = 1;
+ while (true) {
+ if (!(i < 50)) { break; }
+ feSquare(t2, t2);
+ i = i + (1) >> 0;
+ }
+ feMul(t2, t2, t1);
+ feSquare(t3, t2);
+ i = 1;
+ while (true) {
+ if (!(i < 100)) { break; }
+ feSquare(t3, t3);
+ i = i + (1) >> 0;
+ }
+ feMul(t2, t3, t2);
+ feSquare(t2, t2);
+ i = 1;
+ while (true) {
+ if (!(i < 50)) { break; }
+ feSquare(t2, t2);
+ i = i + (1) >> 0;
+ }
+ feMul(t1, t2, t1);
+ feSquare(t1, t1);
+ i = 1;
+ while (true) {
+ if (!(i < 5)) { break; }
+ feSquare(t1, t1);
+ i = i + (1) >> 0;
+ }
+ feMul(out, t1, t0);
+ };
+ fePow22523 = function(out, z) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, i, out, t0, t1, t2, z;
+ _tmp = arrayType.zero();
+ _tmp$1 = arrayType.zero();
+ _tmp$2 = arrayType.zero();
+ t0 = $clone(_tmp, fieldElement);
+ t1 = $clone(_tmp$1, fieldElement);
+ t2 = $clone(_tmp$2, fieldElement);
+ i = 0;
+ feSquare(t0, z);
+ i = 1;
+ while (true) {
+ if (!(i < 1)) { break; }
+ feSquare(t0, t0);
+ i = i + (1) >> 0;
+ }
+ feSquare(t1, t0);
+ i = 1;
+ while (true) {
+ if (!(i < 2)) { break; }
+ feSquare(t1, t1);
+ i = i + (1) >> 0;
+ }
+ feMul(t1, z, t1);
+ feMul(t0, t0, t1);
+ feSquare(t0, t0);
+ i = 1;
+ while (true) {
+ if (!(i < 1)) { break; }
+ feSquare(t0, t0);
+ i = i + (1) >> 0;
+ }
+ feMul(t0, t1, t0);
+ feSquare(t1, t0);
+ i = 1;
+ while (true) {
+ if (!(i < 5)) { break; }
+ feSquare(t1, t1);
+ i = i + (1) >> 0;
+ }
+ feMul(t0, t1, t0);
+ feSquare(t1, t0);
+ i = 1;
+ while (true) {
+ if (!(i < 10)) { break; }
+ feSquare(t1, t1);
+ i = i + (1) >> 0;
+ }
+ feMul(t1, t1, t0);
+ feSquare(t2, t1);
+ i = 1;
+ while (true) {
+ if (!(i < 20)) { break; }
+ feSquare(t2, t2);
+ i = i + (1) >> 0;
+ }
+ feMul(t1, t2, t1);
+ feSquare(t1, t1);
+ i = 1;
+ while (true) {
+ if (!(i < 10)) { break; }
+ feSquare(t1, t1);
+ i = i + (1) >> 0;
+ }
+ feMul(t0, t1, t0);
+ feSquare(t1, t0);
+ i = 1;
+ while (true) {
+ if (!(i < 50)) { break; }
+ feSquare(t1, t1);
+ i = i + (1) >> 0;
+ }
+ feMul(t1, t1, t0);
+ feSquare(t2, t1);
+ i = 1;
+ while (true) {
+ if (!(i < 100)) { break; }
+ feSquare(t2, t2);
+ i = i + (1) >> 0;
+ }
+ feMul(t1, t2, t1);
+ feSquare(t1, t1);
+ i = 1;
+ while (true) {
+ if (!(i < 50)) { break; }
+ feSquare(t1, t1);
+ i = i + (1) >> 0;
+ }
+ feMul(t0, t1, t0);
+ feSquare(t0, t0);
+ i = 1;
+ while (true) {
+ if (!(i < 2)) { break; }
+ feSquare(t0, t0);
+ i = i + (1) >> 0;
+ }
+ feMul(out, t0, z);
+ };
+ fieldElement.prototype.String = function() {
+ var $ptr, _i, _r$3, _ref, fe, i, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _i = $f._i; _r$3 = $f._r$3; _ref = $f._ref; fe = $f.fe; i = $f.i; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ fe = this.$val;
+ s = "fieldElement{";
+ _ref = fe;
+ _i = 0;
+ /* while (true) { */ case 1:
+ /* if (!(_i < 10)) { break; } */ if(!(_i < 10)) { $s = 2; continue; }
+ i = _i;
+ if (i > 0) {
+ s = s + (", ");
+ }
+ _r$3 = fmt.Sprintf("%d", new sliceType$1([new $Int32((fe.nilCheck, ((i < 0 || i >= fe.length) ? ($throwRuntimeError("index out of range"), undefined) : fe[i])))])); /* */ $s = 3; case 3: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ s = s + (_r$3);
+ _i++;
+ /* } */ $s = 1; continue; case 2:
+ s = s + ("}");
+ $s = -1; return s;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: fieldElement.prototype.String }; } $f.$ptr = $ptr; $f._i = _i; $f._r$3 = _r$3; $f._ref = _ref; $f.fe = fe; $f.i = i; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(fieldElement).prototype.String = function() { return (new fieldElement(this.$get())).String(); };
+ projectiveGroupElement.ptr.prototype.Zero = function() {
+ var $ptr, p;
+ p = this;
+ feZero(p.X);
+ feOne(p.Y);
+ feOne(p.Z);
+ };
+ projectiveGroupElement.prototype.Zero = function() { return this.$val.Zero(); };
+ projectiveGroupElement.ptr.prototype.Double = function(r) {
+ var $ptr, p, r, t0;
+ p = this;
+ t0 = arrayType.zero();
+ feSquare(r.X, p.X);
+ feSquare(r.Z, p.Y);
+ feSquare2(r.T, p.Z);
+ feAdd(r.Y, p.X, p.Y);
+ feSquare(t0, r.Y);
+ feAdd(r.Y, r.Z, r.X);
+ feSub(r.Z, r.Z, r.X);
+ feSub(r.X, t0, r.Y);
+ feSub(r.T, r.T, r.Z);
+ };
+ projectiveGroupElement.prototype.Double = function(r) { return this.$val.Double(r); };
+ projectiveGroupElement.ptr.prototype.ToBytes = function(s) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, p, recip, s, x, y;
+ p = this;
+ _tmp = arrayType.zero();
+ _tmp$1 = arrayType.zero();
+ _tmp$2 = arrayType.zero();
+ recip = $clone(_tmp, fieldElement);
+ x = $clone(_tmp$1, fieldElement);
+ y = $clone(_tmp$2, fieldElement);
+ feInvert(recip, p.Z);
+ feMul(x, p.X, recip);
+ feMul(y, p.Y, recip);
+ feToBytes(s, y);
+ s.nilCheck, s[31] = (((s.nilCheck, s[31]) ^ ((feIsNegative(x) << 7 << 24 >>> 24))) << 24 >>> 24);
+ };
+ projectiveGroupElement.prototype.ToBytes = function(s) { return this.$val.ToBytes(s); };
+ extendedGroupElement.ptr.prototype.Zero = function() {
+ var $ptr, p;
+ p = this;
+ feZero(p.X);
+ feOne(p.Y);
+ feOne(p.Z);
+ feZero(p.T);
+ };
+ extendedGroupElement.prototype.Zero = function() { return this.$val.Zero(); };
+ extendedGroupElement.ptr.prototype.Neg = function(s) {
+ var $ptr, p, s;
+ p = this;
+ feNeg(p.X, s.X);
+ feCopy(p.Y, s.Y);
+ feCopy(p.Z, s.Z);
+ feNeg(p.T, s.T);
+ };
+ extendedGroupElement.prototype.Neg = function(s) { return this.$val.Neg(s); };
+ extendedGroupElement.ptr.prototype.Double = function(r) {
+ var $ptr, p, q, r;
+ p = this;
+ q = new projectiveGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero());
+ p.ToProjective(q);
+ q.Double(r);
+ };
+ extendedGroupElement.prototype.Double = function(r) { return this.$val.Double(r); };
+ extendedGroupElement.ptr.prototype.ToCached = function(r) {
+ var $ptr, p, r;
+ p = this;
+ feAdd(r.yPlusX, p.Y, p.X);
+ feSub(r.yMinusX, p.Y, p.X);
+ feCopy(r.Z, p.Z);
+ feMul(r.T2d, p.T, d2);
+ };
+ extendedGroupElement.prototype.ToCached = function(r) { return this.$val.ToCached(r); };
+ extendedGroupElement.ptr.prototype.ToProjective = function(r) {
+ var $ptr, p, r;
+ p = this;
+ feCopy(r.X, p.X);
+ feCopy(r.Y, p.Y);
+ feCopy(r.Z, p.Z);
+ };
+ extendedGroupElement.prototype.ToProjective = function(r) { return this.$val.ToProjective(r); };
+ extendedGroupElement.ptr.prototype.ToBytes = function(s) {
+ var $ptr, _tmp, _tmp$1, _tmp$2, p, recip, s, x, y;
+ p = this;
+ _tmp = arrayType.zero();
+ _tmp$1 = arrayType.zero();
+ _tmp$2 = arrayType.zero();
+ recip = $clone(_tmp, fieldElement);
+ x = $clone(_tmp$1, fieldElement);
+ y = $clone(_tmp$2, fieldElement);
+ feInvert(recip, p.Z);
+ feMul(x, p.X, recip);
+ feMul(y, p.Y, recip);
+ feToBytes(s, y);
+ s.nilCheck, s[31] = (((s.nilCheck, s[31]) ^ ((feIsNegative(x) << 7 << 24 >>> 24))) << 24 >>> 24);
+ };
+ extendedGroupElement.prototype.ToBytes = function(s) { return this.$val.ToBytes(s); };
+ extendedGroupElement.ptr.prototype.FromBytes = function(s) {
+ var $ptr, _i, _ref, _tmp, _tmp$1, _tmp$2, _tmp$3, _tmp$4, _tmp$5, _tmp$6, check, i, p, s, tmp2, tmpX, u, v, v$1, v3, vxx, x;
+ p = this;
+ _tmp = arrayType.zero();
+ _tmp$1 = arrayType.zero();
+ _tmp$2 = arrayType.zero();
+ _tmp$3 = arrayType.zero();
+ _tmp$4 = arrayType.zero();
+ u = $clone(_tmp, fieldElement);
+ v = $clone(_tmp$1, fieldElement);
+ v3 = $clone(_tmp$2, fieldElement);
+ vxx = $clone(_tmp$3, fieldElement);
+ check = $clone(_tmp$4, fieldElement);
+ if (!((s.$length === 32))) {
+ return false;
+ }
+ feFromBytes(p.Y, s);
+ feOne(p.Z);
+ feSquare(u, p.Y);
+ feMul(v, u, d);
+ feSub(u, u, p.Z);
+ feAdd(v, v, p.Z);
+ feSquare(v3, v);
+ feMul(v3, v3, v);
+ feSquare(p.X, v3);
+ feMul(p.X, p.X, v);
+ feMul(p.X, p.X, u);
+ fePow22523(p.X, p.X);
+ feMul(p.X, p.X, v3);
+ feMul(p.X, p.X, u);
+ _tmp$5 = arrayType$2.zero();
+ _tmp$6 = arrayType$2.zero();
+ tmpX = $clone(_tmp$5, arrayType$2);
+ tmp2 = $clone(_tmp$6, arrayType$2);
+ feSquare(vxx, p.X);
+ feMul(vxx, vxx, v);
+ feSub(check, vxx, u);
+ if (feIsNonZero(check) === 1) {
+ feAdd(check, vxx, u);
+ if (feIsNonZero(check) === 1) {
+ return false;
+ }
+ feMul(p.X, p.X, sqrtM1);
+ feToBytes(tmpX, p.X);
+ _ref = tmpX;
+ _i = 0;
+ while (true) {
+ if (!(_i < 32)) { break; }
+ i = _i;
+ v$1 = ((_i < 0 || _i >= _ref.length) ? ($throwRuntimeError("index out of range"), undefined) : _ref[_i]);
+ (x = 31 - i >> 0, ((x < 0 || x >= tmp2.length) ? ($throwRuntimeError("index out of range"), undefined) : tmp2[x] = v$1));
+ _i++;
+ }
+ }
+ if (!((feIsNegative(p.X) === (((31 >= s.$length ? ($throwRuntimeError("index out of range"), undefined) : s.$array[s.$offset + 31]) >>> 7 << 24 >>> 24))))) {
+ feNeg(p.X, p.X);
+ }
+ feMul(p.T, p.X, p.Y);
+ return true;
+ };
+ extendedGroupElement.prototype.FromBytes = function(s) { return this.$val.FromBytes(s); };
+ extendedGroupElement.ptr.prototype.String = function() {
+ var $ptr, _r$3, _r$4, _r$5, _r$6, p, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; p = $f.p; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ p = this;
+ _r$3 = new ptrType$1(p.X).String(); /* */ $s = 1; case 1: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$4 = new ptrType$1(p.Y).String(); /* */ $s = 2; case 2: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$5 = new ptrType$1(p.Z).String(); /* */ $s = 3; case 3: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _r$6 = new ptrType$1(p.T).String(); /* */ $s = 4; case 4: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ $s = -1; return "extendedGroupElement{\n\t" + _r$3 + ",\n\t" + _r$4 + ",\n\t" + _r$5 + ",\n\t" + _r$6 + ",\n}";
+ /* */ } return; } if ($f === undefined) { $f = { $blk: extendedGroupElement.ptr.prototype.String }; } $f.$ptr = $ptr; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f.p = p; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ extendedGroupElement.prototype.String = function() { return this.$val.String(); };
+ completedGroupElement.ptr.prototype.ToProjective = function(r) {
+ var $ptr, p, r;
+ p = this;
+ feMul(r.X, p.X, p.T);
+ feMul(r.Y, p.Y, p.Z);
+ feMul(r.Z, p.Z, p.T);
+ };
+ completedGroupElement.prototype.ToProjective = function(r) { return this.$val.ToProjective(r); };
+ completedGroupElement.ptr.prototype.ToExtended = function(r) {
+ var $ptr, p, r;
+ p = this;
+ feMul(r.X, p.X, p.T);
+ feMul(r.Y, p.Y, p.Z);
+ feMul(r.Z, p.Z, p.T);
+ feMul(r.T, p.X, p.Y);
+ };
+ completedGroupElement.prototype.ToExtended = function(r) { return this.$val.ToExtended(r); };
+ preComputedGroupElement.ptr.prototype.Zero = function() {
+ var $ptr, p;
+ p = this;
+ feOne(p.yPlusX);
+ feOne(p.yMinusX);
+ feZero(p.xy2d);
+ };
+ preComputedGroupElement.prototype.Zero = function() { return this.$val.Zero(); };
+ completedGroupElement.ptr.prototype.Add = function(p, q) {
+ var $ptr, p, q, r, t0;
+ r = this;
+ t0 = arrayType.zero();
+ feAdd(r.X, p.Y, p.X);
+ feSub(r.Y, p.Y, p.X);
+ feMul(r.Z, r.X, q.yPlusX);
+ feMul(r.Y, r.Y, q.yMinusX);
+ feMul(r.T, q.T2d, p.T);
+ feMul(r.X, p.Z, q.Z);
+ feAdd(t0, r.X, r.X);
+ feSub(r.X, r.Z, r.Y);
+ feAdd(r.Y, r.Z, r.Y);
+ feAdd(r.Z, t0, r.T);
+ feSub(r.T, t0, r.T);
+ };
+ completedGroupElement.prototype.Add = function(p, q) { return this.$val.Add(p, q); };
+ completedGroupElement.ptr.prototype.Sub = function(p, q) {
+ var $ptr, p, q, r, t0;
+ r = this;
+ t0 = arrayType.zero();
+ feAdd(r.X, p.Y, p.X);
+ feSub(r.Y, p.Y, p.X);
+ feMul(r.Z, r.X, q.yMinusX);
+ feMul(r.Y, r.Y, q.yPlusX);
+ feMul(r.T, q.T2d, p.T);
+ feMul(r.X, p.Z, q.Z);
+ feAdd(t0, r.X, r.X);
+ feSub(r.X, r.Z, r.Y);
+ feAdd(r.Y, r.Z, r.Y);
+ feSub(r.Z, t0, r.T);
+ feAdd(r.T, t0, r.T);
+ };
+ completedGroupElement.prototype.Sub = function(p, q) { return this.$val.Sub(p, q); };
+ completedGroupElement.ptr.prototype.MixedAdd = function(p, q) {
+ var $ptr, p, q, r, t0;
+ r = this;
+ t0 = arrayType.zero();
+ feAdd(r.X, p.Y, p.X);
+ feSub(r.Y, p.Y, p.X);
+ feMul(r.Z, r.X, q.yPlusX);
+ feMul(r.Y, r.Y, q.yMinusX);
+ feMul(r.T, q.xy2d, p.T);
+ feAdd(t0, p.Z, p.Z);
+ feSub(r.X, r.Z, r.Y);
+ feAdd(r.Y, r.Z, r.Y);
+ feAdd(r.Z, t0, r.T);
+ feSub(r.T, t0, r.T);
+ };
+ completedGroupElement.prototype.MixedAdd = function(p, q) { return this.$val.MixedAdd(p, q); };
+ completedGroupElement.ptr.prototype.MixedSub = function(p, q) {
+ var $ptr, p, q, r, t0;
+ r = this;
+ t0 = arrayType.zero();
+ feAdd(r.X, p.Y, p.X);
+ feSub(r.Y, p.Y, p.X);
+ feMul(r.Z, r.X, q.yMinusX);
+ feMul(r.Y, r.Y, q.yPlusX);
+ feMul(r.T, q.xy2d, p.T);
+ feAdd(t0, p.Z, p.Z);
+ feSub(r.X, r.Z, r.Y);
+ feAdd(r.Y, r.Z, r.Y);
+ feSub(r.Z, t0, r.T);
+ feAdd(r.T, t0, r.T);
+ };
+ completedGroupElement.prototype.MixedSub = function(p, q) { return this.$val.MixedSub(p, q); };
+ preComputedGroupElement.ptr.prototype.CMove = function(u, b) {
+ var $ptr, b, t, u;
+ t = this;
+ feCMove(t.yPlusX, u.yPlusX, b);
+ feCMove(t.yMinusX, u.yMinusX, b);
+ feCMove(t.xy2d, u.xy2d, b);
+ };
+ preComputedGroupElement.prototype.CMove = function(u, b) { return this.$val.CMove(u, b); };
+ preComputedGroupElement.ptr.prototype.Neg = function(t) {
+ var $ptr, r, t;
+ r = this;
+ feCopy(r.yPlusX, t.yMinusX);
+ feCopy(r.yMinusX, t.yPlusX);
+ feNeg(r.xy2d, t.xy2d);
+ };
+ preComputedGroupElement.prototype.Neg = function(t) { return this.$val.Neg(t); };
+ cachedGroupElement.ptr.prototype.Zero = function() {
+ var $ptr, r;
+ r = this;
+ feOne(r.yPlusX);
+ feOne(r.yMinusX);
+ feOne(r.Z);
+ feZero(r.T2d);
+ };
+ cachedGroupElement.prototype.Zero = function() { return this.$val.Zero(); };
+ cachedGroupElement.ptr.prototype.CMove = function(u, b) {
+ var $ptr, b, t, u;
+ t = this;
+ feCMove(t.yPlusX, u.yPlusX, b);
+ feCMove(t.yMinusX, u.yMinusX, b);
+ feCMove(t.Z, u.Z, b);
+ feCMove(t.T2d, u.T2d, b);
+ };
+ cachedGroupElement.prototype.CMove = function(u, b) { return this.$val.CMove(u, b); };
+ cachedGroupElement.ptr.prototype.Neg = function(t) {
+ var $ptr, r, t;
+ r = this;
+ feCopy(r.yPlusX, t.yMinusX);
+ feCopy(r.yMinusX, t.yPlusX);
+ feCopy(r.Z, t.Z);
+ feNeg(r.T2d, t.T2d);
+ };
+ cachedGroupElement.prototype.Neg = function(t) { return this.$val.Neg(t); };
+ equal = function(b, c) {
+ var $ptr, b, c, x;
+ x = ((((b ^ c) >> 0) >>> 0));
+ x = x - (1) >>> 0;
+ return (((x >>> 31 >>> 0) >> 0));
+ };
+ negative = function(b) {
+ var $ptr, b;
+ return ((b >> 31 >> 0)) & 1;
+ };
+ selectPreComputed = function(t, pos, b) {
+ var $ptr, b, bAbs, bNegative, i, minusT, pos, t, x;
+ minusT = new preComputedGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero());
+ bNegative = negative(b);
+ bAbs = b - (((((-bNegative) & b)) << 1 >> 0)) >> 0;
+ t.Zero();
+ i = 0;
+ while (true) {
+ if (!(i < 8)) { break; }
+ t.CMove((x = ((pos < 0 || pos >= base.length) ? ($throwRuntimeError("index out of range"), undefined) : base[pos]), ((i < 0 || i >= x.length) ? ($throwRuntimeError("index out of range"), undefined) : x[i])), equal(bAbs, i + 1 >> 0));
+ i = i + (1) >> 0;
+ }
+ minusT.Neg(t);
+ t.CMove(minusT, bNegative);
+ };
+ geScalarMultBase = function(h, a) {
+ var $ptr, _i, _q, _q$1, _ref, a, carry, e, h, i, i$1, i$2, i$3, r, s, t, v, x, x$1;
+ e = arrayType$6.zero();
+ _ref = a;
+ _i = 0;
+ while (true) {
+ if (!(_i < 32)) { break; }
+ i = _i;
+ v = (_ref.nilCheck, ((_i < 0 || _i >= _ref.length) ? ($throwRuntimeError("index out of range"), undefined) : _ref[_i]));
+ (x = $imul(2, i), ((x < 0 || x >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[x] = ((((v & 15) >>> 0) << 24 >> 24))));
+ (x$1 = ($imul(2, i)) + 1 >> 0, ((x$1 < 0 || x$1 >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[x$1] = ((((((v >>> 4 << 24 >>> 24)) & 15) >>> 0) << 24 >> 24))));
+ _i++;
+ }
+ carry = 0;
+ i$1 = 0;
+ while (true) {
+ if (!(i$1 < 63)) { break; }
+ ((i$1 < 0 || i$1 >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[i$1] = (((i$1 < 0 || i$1 >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[i$1]) + (carry) << 24 >> 24));
+ carry = ((((i$1 < 0 || i$1 >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[i$1]) + 8 << 24 >> 24)) >> 4 << 24 >> 24;
+ ((i$1 < 0 || i$1 >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[i$1] = (((i$1 < 0 || i$1 >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[i$1]) - ((carry << 4 << 24 >> 24)) << 24 >> 24));
+ i$1 = i$1 + (1) >> 0;
+ }
+ e[63] = (e[63] + (carry) << 24 >> 24);
+ h.Zero();
+ t = new preComputedGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero());
+ r = new completedGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero(), arrayType.zero());
+ i$2 = 1;
+ while (true) {
+ if (!(i$2 < 64)) { break; }
+ selectPreComputed(t, (_q = i$2 / 2, (_q === _q && _q !== 1/0 && _q !== -1/0) ? _q >> 0 : $throwRuntimeError("integer divide by zero")), ((((i$2 < 0 || i$2 >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[i$2]) >> 0)));
+ r.MixedAdd(h, t);
+ r.ToExtended(h);
+ i$2 = i$2 + (2) >> 0;
+ }
+ s = new projectiveGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero());
+ h.Double(r);
+ r.ToProjective(s);
+ s.Double(r);
+ r.ToProjective(s);
+ s.Double(r);
+ r.ToProjective(s);
+ s.Double(r);
+ r.ToExtended(h);
+ i$3 = 0;
+ while (true) {
+ if (!(i$3 < 64)) { break; }
+ selectPreComputed(t, (_q$1 = i$3 / 2, (_q$1 === _q$1 && _q$1 !== 1/0 && _q$1 !== -1/0) ? _q$1 >> 0 : $throwRuntimeError("integer divide by zero")), ((((i$3 < 0 || i$3 >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[i$3]) >> 0)));
+ r.MixedAdd(h, t);
+ r.ToExtended(h);
+ i$3 = i$3 + (2) >> 0;
+ }
+ };
+ selectCached = function(c, Ai, b) {
+ var $ptr, Ai, b, bAbs, bNegative, c, i, minusC;
+ bNegative = negative(b);
+ bAbs = b - (((((-bNegative) & b)) << 1 >> 0)) >> 0;
+ c.Zero();
+ i = 0;
+ while (true) {
+ if (!(i < 8)) { break; }
+ c.CMove((Ai.nilCheck, ((i < 0 || i >= Ai.length) ? ($throwRuntimeError("index out of range"), undefined) : Ai[i])), equal(bAbs, i + 1 >> 0));
+ i = i + (1) >> 0;
+ }
+ minusC = new cachedGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero(), arrayType.zero());
+ minusC.Neg(c);
+ c.CMove(minusC, bNegative);
+ };
+ geScalarMult = function(h, a, A) {
+ var $ptr, A, Ai, _i, _ref, a, c, carry, e, h, i, i$1, i$2, i$3, r, t, u, v, x, x$1, x$2;
+ t = new completedGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero(), arrayType.zero());
+ u = new extendedGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero(), arrayType.zero());
+ r = new projectiveGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero());
+ c = new cachedGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero(), arrayType.zero());
+ i = 0;
+ e = arrayType$6.zero();
+ _ref = a;
+ _i = 0;
+ while (true) {
+ if (!(_i < 32)) { break; }
+ i$1 = _i;
+ v = (_ref.nilCheck, ((_i < 0 || _i >= _ref.length) ? ($throwRuntimeError("index out of range"), undefined) : _ref[_i]));
+ (x = $imul(2, i$1), ((x < 0 || x >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[x] = ((((v & 15) >>> 0) << 24 >> 24))));
+ (x$1 = ($imul(2, i$1)) + 1 >> 0, ((x$1 < 0 || x$1 >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[x$1] = ((((((v >>> 4 << 24 >>> 24)) & 15) >>> 0) << 24 >> 24))));
+ _i++;
+ }
+ carry = 0;
+ i$2 = 0;
+ while (true) {
+ if (!(i$2 < 63)) { break; }
+ ((i$2 < 0 || i$2 >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[i$2] = (((i$2 < 0 || i$2 >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[i$2]) + (carry) << 24 >> 24));
+ carry = ((((i$2 < 0 || i$2 >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[i$2]) + 8 << 24 >> 24)) >> 4 << 24 >> 24;
+ ((i$2 < 0 || i$2 >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[i$2] = (((i$2 < 0 || i$2 >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[i$2]) - ((carry << 4 << 24 >> 24)) << 24 >> 24));
+ i$2 = i$2 + (1) >> 0;
+ }
+ e[63] = (e[63] + (carry) << 24 >> 24);
+ Ai = arrayType$5.zero();
+ A.ToCached(Ai[0]);
+ i$3 = 0;
+ while (true) {
+ if (!(i$3 < 7)) { break; }
+ t.Add(A, ((i$3 < 0 || i$3 >= Ai.length) ? ($throwRuntimeError("index out of range"), undefined) : Ai[i$3]));
+ t.ToExtended(u);
+ u.ToCached((x$2 = i$3 + 1 >> 0, ((x$2 < 0 || x$2 >= Ai.length) ? ($throwRuntimeError("index out of range"), undefined) : Ai[x$2])));
+ i$3 = i$3 + (1) >> 0;
+ }
+ u.Zero();
+ selectCached(c, Ai, ((e[63] >> 0)));
+ t.Add(u, c);
+ i = 62;
+ while (true) {
+ if (!(i >= 0)) { break; }
+ t.ToProjective(r);
+ r.Double(t);
+ t.ToProjective(r);
+ r.Double(t);
+ t.ToProjective(r);
+ r.Double(t);
+ t.ToProjective(r);
+ r.Double(t);
+ t.ToExtended(u);
+ selectCached(c, Ai, ((((i < 0 || i >= e.length) ? ($throwRuntimeError("index out of range"), undefined) : e[i]) >> 0)));
+ t.Add(u, c);
+ i = i - (1) >> 0;
+ }
+ t.ToExtended(h);
+ };
+ point.ptr.prototype.String = function() {
+ var $ptr, P, b;
+ P = this;
+ b = arrayType$2.zero();
+ P.ge.ToBytes(b);
+ return hex.EncodeToString(new sliceType(b));
+ };
+ point.prototype.String = function() { return this.$val.String(); };
+ point.ptr.prototype.MarshalSize = function() {
+ var $ptr, P;
+ P = this;
+ return 32;
+ };
+ point.prototype.MarshalSize = function() { return this.$val.MarshalSize(); };
+ point.ptr.prototype.MarshalBinary = function() {
+ var $ptr, P, b;
+ P = this;
+ b = arrayType$2.zero();
+ P.ge.ToBytes(b);
+ return [new sliceType(b), $ifaceNil];
+ };
+ point.prototype.MarshalBinary = function() { return this.$val.MarshalBinary(); };
+ point.ptr.prototype.UnmarshalBinary = function(b) {
+ var $ptr, P, b;
+ P = this;
+ if (!P.ge.FromBytes(b)) {
+ return errors.New("invalid Ed25519 curve point");
+ }
+ return $ifaceNil;
+ };
+ point.prototype.UnmarshalBinary = function(b) { return this.$val.UnmarshalBinary(b); };
+ point.ptr.prototype.MarshalTo = function(w) {
+ var $ptr, P, _r$3, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; P = $f.P; _r$3 = $f._r$3; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ P = this;
+ _r$3 = group.PointMarshalTo(P, w); /* */ $s = 1; case 1: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $s = -1; return _r$3;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: point.ptr.prototype.MarshalTo }; } $f.$ptr = $ptr; $f.P = P; $f._r$3 = _r$3; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ point.prototype.MarshalTo = function(w) { return this.$val.MarshalTo(w); };
+ point.ptr.prototype.UnmarshalFrom = function(r) {
+ var $ptr, P, _r$3, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; P = $f.P; _r$3 = $f._r$3; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ P = this;
+ _r$3 = group.PointUnmarshalFrom(P, r); /* */ $s = 1; case 1: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $s = -1; return _r$3;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: point.ptr.prototype.UnmarshalFrom }; } $f.$ptr = $ptr; $f.P = P; $f._r$3 = _r$3; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ point.prototype.UnmarshalFrom = function(r) { return this.$val.UnmarshalFrom(r); };
+ point.ptr.prototype.Equal = function(P2) {
+ var $ptr, P, P2, _i, _ref, _tmp, _tmp$1, b1, b2, i;
+ P = this;
+ _tmp = arrayType$2.zero();
+ _tmp$1 = arrayType$2.zero();
+ b1 = $clone(_tmp, arrayType$2);
+ b2 = $clone(_tmp$1, arrayType$2);
+ P.ge.ToBytes(b1);
+ $assertType(P2, ptrType$2).ge.ToBytes(b2);
+ _ref = b1;
+ _i = 0;
+ while (true) {
+ if (!(_i < 32)) { break; }
+ i = _i;
+ if (!((((i < 0 || i >= b1.length) ? ($throwRuntimeError("index out of range"), undefined) : b1[i]) === ((i < 0 || i >= b2.length) ? ($throwRuntimeError("index out of range"), undefined) : b2[i])))) {
+ return false;
+ }
+ _i++;
+ }
+ return true;
+ };
+ point.prototype.Equal = function(P2) { return this.$val.Equal(P2); };
+ point.ptr.prototype.Set = function(P2) {
+ var $ptr, P, P2;
+ P = this;
+ extendedGroupElement.copy(P.ge, $assertType(P2, ptrType$2).ge);
+ return P;
+ };
+ point.prototype.Set = function(P2) { return this.$val.Set(P2); };
+ point.ptr.prototype.Clone = function() {
+ var $ptr, P;
+ P = this;
+ return new point.ptr($clone(P.ge, extendedGroupElement));
+ };
+ point.prototype.Clone = function() { return this.$val.Clone(); };
+ point.ptr.prototype.Null = function() {
+ var $ptr, P;
+ P = this;
+ P.ge.Zero();
+ return P;
+ };
+ point.prototype.Null = function() { return this.$val.Null(); };
+ point.ptr.prototype.Base = function() {
+ var $ptr, P;
+ P = this;
+ extendedGroupElement.copy(P.ge, baseext);
+ return P;
+ };
+ point.prototype.Base = function() { return this.$val.Base(); };
+ point.ptr.prototype.PickLen = function() {
+ var $ptr, P;
+ P = this;
+ return 29;
+ };
+ point.prototype.PickLen = function() { return this.$val.PickLen(); };
+ point.ptr.prototype.Pick = function(data, rand) {
+ var $ptr, P, Q, b, data, dl, rand, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; P = $f.P; Q = $f.Q; b = $f.b; data = $f.data; dl = $f.dl; rand = $f.rand; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ P = this;
+ dl = P.PickLen();
+ if (dl > data.$length) {
+ dl = data.$length;
+ }
+ /* while (true) { */ case 1:
+ b = arrayType$2.zero();
+ $r = rand.XORKeyStream(new sliceType(b), new sliceType(b)); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if (!(data === sliceType.nil)) {
+ b[0] = ((dl << 24 >>> 24));
+ $copySlice($subslice(new sliceType(b), 1, (1 + dl >> 0)), data);
+ }
+ if (!P.ge.FromBytes(new sliceType(b))) {
+ /* continue; */ $s = 1; continue;
+ }
+ if (data === sliceType.nil) {
+ P.Mul(P, cofactor);
+ if (P.Equal(nullPoint)) {
+ /* continue; */ $s = 1; continue;
+ }
+ $s = -1; return [P, $subslice(data, dl)];
+ }
+ Q = new point.ptr(new extendedGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero(), arrayType.zero()));
+ Q.Mul(P, primeOrder);
+ if (Q.Equal(nullPoint)) {
+ $s = -1; return [P, $subslice(data, dl)];
+ }
+ /* } */ $s = 1; continue; case 2:
+ $s = -1; return [$ifaceNil, sliceType.nil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: point.ptr.prototype.Pick }; } $f.$ptr = $ptr; $f.P = P; $f.Q = Q; $f.b = b; $f.data = data; $f.dl = dl; $f.rand = rand; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ point.prototype.Pick = function(data, rand) { return this.$val.Pick(data, rand); };
+ point.ptr.prototype.Data = function() {
+ var $ptr, P, b, dl;
+ P = this;
+ b = arrayType$2.zero();
+ P.ge.ToBytes(b);
+ dl = ((b[0] >> 0));
+ if (dl > P.PickLen()) {
+ return [sliceType.nil, errors.New("invalid embedded data length")];
+ }
+ return [$subslice(new sliceType(b), 1, (1 + dl >> 0)), $ifaceNil];
+ };
+ point.prototype.Data = function() { return this.$val.Data(); };
+ point.ptr.prototype.Add = function(P1, P2) {
+ var $ptr, E1, E2, P, P1, P2, r, t2;
+ P = this;
+ E1 = $assertType(P1, ptrType$2);
+ E2 = $assertType(P2, ptrType$2);
+ t2 = new cachedGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero(), arrayType.zero());
+ r = new completedGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero(), arrayType.zero());
+ E2.ge.ToCached(t2);
+ r.Add(E1.ge, t2);
+ r.ToExtended(P.ge);
+ return P;
+ };
+ point.prototype.Add = function(P1, P2) { return this.$val.Add(P1, P2); };
+ point.ptr.prototype.Sub = function(P1, P2) {
+ var $ptr, E1, E2, P, P1, P2, r, t2;
+ P = this;
+ E1 = $assertType(P1, ptrType$2);
+ E2 = $assertType(P2, ptrType$2);
+ t2 = new cachedGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero(), arrayType.zero());
+ r = new completedGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero(), arrayType.zero());
+ E2.ge.ToCached(t2);
+ r.Sub(E1.ge, t2);
+ r.ToExtended(P.ge);
+ return P;
+ };
+ point.prototype.Sub = function(P1, P2) { return this.$val.Sub(P1, P2); };
+ point.ptr.prototype.Neg = function(A) {
+ var $ptr, A, P;
+ P = this;
+ P.ge.Neg($assertType(A, ptrType$2).ge);
+ return P;
+ };
+ point.prototype.Neg = function(A) { return this.$val.Neg(A); };
+ point.ptr.prototype.Mul = function(A, s) {
+ var $ptr, A, P, _i, _ref, a, i, s, sb, shi, x;
+ P = this;
+ sb = $assertType(s, ptrType$3).V.Bytes();
+ shi = sb.$length - 1 >> 0;
+ a = arrayType$2.zero();
+ _ref = sb;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ i = _i;
+ (x = shi - i >> 0, ((x < 0 || x >= a.length) ? ($throwRuntimeError("index out of range"), undefined) : a[x] = ((i < 0 || i >= sb.$length) ? ($throwRuntimeError("index out of range"), undefined) : sb.$array[sb.$offset + i])));
+ _i++;
+ }
+ if ($interfaceIsEqual(A, $ifaceNil)) {
+ geScalarMultBase(P.ge, a);
+ } else {
+ geScalarMult(P.ge, a, $assertType(A, ptrType$2).ge);
+ }
+ return P;
+ };
+ point.prototype.Mul = function(A, s) { return this.$val.Mul(A, s); };
+ Curve.ptr.prototype.PrimeOrder = function() {
+ var $ptr, c;
+ c = this;
+ return true;
+ };
+ Curve.prototype.PrimeOrder = function() { return this.$val.PrimeOrder(); };
+ Curve.ptr.prototype.String = function() {
+ var $ptr, c;
+ c = this;
+ return "Ed25519";
+ };
+ Curve.prototype.String = function() { return this.$val.String(); };
+ Curve.ptr.prototype.ScalarLen = function() {
+ var $ptr, c;
+ c = this;
+ return 32;
+ };
+ Curve.prototype.ScalarLen = function() { return this.$val.ScalarLen(); };
+ Curve.ptr.prototype.Scalar = function() {
+ var $ptr, _r$3, c, i, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$3 = $f._r$3; c = $f.c; i = $f.i; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ _r$3 = nist.NewInt64(new $Int64(0, 0), primeOrder.V); /* */ $s = 1; case 1: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ i = _r$3;
+ i.BO = true;
+ $s = -1; return i;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Curve.ptr.prototype.Scalar }; } $f.$ptr = $ptr; $f._r$3 = _r$3; $f.c = c; $f.i = i; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ Curve.prototype.Scalar = function() { return this.$val.Scalar(); };
+ Curve.ptr.prototype.PointLen = function() {
+ var $ptr, c;
+ c = this;
+ return 32;
+ };
+ Curve.prototype.PointLen = function() { return this.$val.PointLen(); };
+ Curve.ptr.prototype.Point = function() {
+ var $ptr, P, c;
+ c = this;
+ P = new point.ptr(new extendedGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero(), arrayType.zero()));
+ return P;
+ };
+ Curve.prototype.Point = function() { return this.$val.Point(); };
+ suiteEd25519.ptr.prototype.Hash = function() {
+ var $ptr, s;
+ s = this;
+ return sha256.New();
+ };
+ suiteEd25519.prototype.Hash = function() { return this.$val.Hash(); };
+ suiteEd25519.ptr.prototype.Cipher = function(key, options) {
+ var $ptr, _r$3, key, options, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$3 = $f._r$3; key = $f.key; options = $f.options; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ s = this;
+ _r$3 = sha3.NewShakeCipher128(key, options); /* */ $s = 1; case 1: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $s = -1; return _r$3;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: suiteEd25519.ptr.prototype.Cipher }; } $f.$ptr = $ptr; $f._r$3 = _r$3; $f.key = key; $f.options = options; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ suiteEd25519.prototype.Cipher = function(key, options) { return this.$val.Cipher(key, options); };
+ suiteEd25519.ptr.prototype.Read = function(r, objs) {
+ var $ptr, _r$3, objs, r, s, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$3 = $f._r$3; objs = $f.objs; r = $f.r; s = $f.s; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ s = this;
+ _r$3 = abstract$1.SuiteRead(s, r, new sliceType$1([objs])); /* */ $s = 1; case 1: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $s = -1; return _r$3;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: suiteEd25519.ptr.prototype.Read }; } $f.$ptr = $ptr; $f._r$3 = _r$3; $f.objs = objs; $f.r = r; $f.s = s; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ suiteEd25519.prototype.Read = function(r, objs) { return this.$val.Read(r, objs); };
+ suiteEd25519.ptr.prototype.Write = function(w, objs) {
+ var $ptr, _r$3, objs, s, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$3 = $f._r$3; objs = $f.objs; s = $f.s; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ s = this;
+ _r$3 = abstract$1.SuiteWrite(s, w, new sliceType$1([objs])); /* */ $s = 1; case 1: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $s = -1; return _r$3;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: suiteEd25519.ptr.prototype.Write }; } $f.$ptr = $ptr; $f._r$3 = _r$3; $f.objs = objs; $f.s = s; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ suiteEd25519.prototype.Write = function(w, objs) { return this.$val.Write(w, objs); };
+ suiteEd25519.ptr.prototype.New = function(t) {
+ var $ptr, _r$3, s, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$3 = $f._r$3; s = $f.s; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ s = this;
+ _r$3 = abstract$1.SuiteNew(s, t); /* */ $s = 1; case 1: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $s = -1; return _r$3;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: suiteEd25519.ptr.prototype.New }; } $f.$ptr = $ptr; $f._r$3 = _r$3; $f.s = s; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ suiteEd25519.prototype.New = function(t) { return this.$val.New(t); };
+ suiteEd25519.ptr.prototype.NewKey = function(stream) {
+ var $ptr, _r$3, _r$4, _r$5, _r$6, buffer, s, scalar, secret, stream, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; buffer = $f.buffer; s = $f.s; scalar = $f.scalar; secret = $f.secret; stream = $f.stream; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ s = this;
+ if ($interfaceIsEqual(stream, $ifaceNil)) {
+ stream = random.Stream;
+ }
+ _r$3 = random.NonZeroBytes(32, stream); /* */ $s = 1; case 1: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ buffer = _r$3;
+ _r$4 = sha512.Sum512(buffer); /* */ $s = 2; case 2: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ scalar = $clone(_r$4, arrayType$9);
+ scalar[0] = ((scalar[0] & (248)) >>> 0);
+ scalar[31] = ((scalar[31] & (63)) >>> 0);
+ scalar[31] = ((scalar[31] | (64)) >>> 0);
+ _r$5 = s.Curve.Scalar(); /* */ $s = 3; case 3: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ _r$6 = _r$5.SetBytes($subslice(new sliceType(scalar), 0, 32)); /* */ $s = 4; case 4: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ secret = _r$6;
+ $s = -1; return secret;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: suiteEd25519.ptr.prototype.NewKey }; } $f.$ptr = $ptr; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f.buffer = buffer; $f.s = s; $f.scalar = scalar; $f.secret = secret; $f.stream = stream; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ suiteEd25519.prototype.NewKey = function(stream) { return this.$val.NewKey(stream); };
+ NewAES128SHA256Ed25519 = function(fullGroup) {
+ var $ptr, fullGroup, suite;
+ suite = new suiteEd25519.ptr(new Curve.ptr());
+ return suite;
+ };
+ $pkg.NewAES128SHA256Ed25519 = NewAES128SHA256Ed25519;
+ ptrType$1.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$6.methods = [{prop: "Zero", name: "Zero", pkg: "", typ: $funcType([], [], false)}, {prop: "Double", name: "Double", pkg: "", typ: $funcType([ptrType$4], [], false)}, {prop: "ToBytes", name: "ToBytes", pkg: "", typ: $funcType([ptrType$5], [], false)}];
+ ptrType$7.methods = [{prop: "Zero", name: "Zero", pkg: "", typ: $funcType([], [], false)}, {prop: "Neg", name: "Neg", pkg: "", typ: $funcType([ptrType$7], [], false)}, {prop: "Double", name: "Double", pkg: "", typ: $funcType([ptrType$4], [], false)}, {prop: "ToCached", name: "ToCached", pkg: "", typ: $funcType([ptrType$8], [], false)}, {prop: "ToProjective", name: "ToProjective", pkg: "", typ: $funcType([ptrType$6], [], false)}, {prop: "ToBytes", name: "ToBytes", pkg: "", typ: $funcType([ptrType$5], [], false)}, {prop: "FromBytes", name: "FromBytes", pkg: "", typ: $funcType([sliceType], [$Bool], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}];
+ ptrType$4.methods = [{prop: "ToProjective", name: "ToProjective", pkg: "", typ: $funcType([ptrType$6], [], false)}, {prop: "ToExtended", name: "ToExtended", pkg: "", typ: $funcType([ptrType$7], [], false)}, {prop: "Add", name: "Add", pkg: "", typ: $funcType([ptrType$7, ptrType$8], [], false)}, {prop: "Sub", name: "Sub", pkg: "", typ: $funcType([ptrType$7, ptrType$8], [], false)}, {prop: "MixedAdd", name: "MixedAdd", pkg: "", typ: $funcType([ptrType$7, ptrType$9], [], false)}, {prop: "MixedSub", name: "MixedSub", pkg: "", typ: $funcType([ptrType$7, ptrType$9], [], false)}];
+ ptrType$9.methods = [{prop: "Zero", name: "Zero", pkg: "", typ: $funcType([], [], false)}, {prop: "CMove", name: "CMove", pkg: "", typ: $funcType([ptrType$9, $Int32], [], false)}, {prop: "Neg", name: "Neg", pkg: "", typ: $funcType([ptrType$9], [], false)}];
+ ptrType$8.methods = [{prop: "Zero", name: "Zero", pkg: "", typ: $funcType([], [], false)}, {prop: "CMove", name: "CMove", pkg: "", typ: $funcType([ptrType$8, $Int32], [], false)}, {prop: "Neg", name: "Neg", pkg: "", typ: $funcType([ptrType$8], [], false)}];
+ ptrType$2.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "MarshalSize", name: "MarshalSize", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "MarshalBinary", name: "MarshalBinary", pkg: "", typ: $funcType([], [sliceType, $error], false)}, {prop: "UnmarshalBinary", name: "UnmarshalBinary", pkg: "", typ: $funcType([sliceType], [$error], false)}, {prop: "MarshalTo", name: "MarshalTo", pkg: "", typ: $funcType([io.Writer], [$Int, $error], false)}, {prop: "UnmarshalFrom", name: "UnmarshalFrom", pkg: "", typ: $funcType([io.Reader], [$Int, $error], false)}, {prop: "Equal", name: "Equal", pkg: "", typ: $funcType([abstract$1.Point], [$Bool], false)}, {prop: "Set", name: "Set", pkg: "", typ: $funcType([abstract$1.Point], [abstract$1.Point], false)}, {prop: "Clone", name: "Clone", pkg: "", typ: $funcType([], [abstract$1.Point], false)}, {prop: "Null", name: "Null", pkg: "", typ: $funcType([], [abstract$1.Point], false)}, {prop: "Base", name: "Base", pkg: "", typ: $funcType([], [abstract$1.Point], false)}, {prop: "PickLen", name: "PickLen", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Pick", name: "Pick", pkg: "", typ: $funcType([sliceType, cipher.Stream], [abstract$1.Point, sliceType], false)}, {prop: "Data", name: "Data", pkg: "", typ: $funcType([], [sliceType, $error], false)}, {prop: "Add", name: "Add", pkg: "", typ: $funcType([abstract$1.Point, abstract$1.Point], [abstract$1.Point], false)}, {prop: "Sub", name: "Sub", pkg: "", typ: $funcType([abstract$1.Point, abstract$1.Point], [abstract$1.Point], false)}, {prop: "Neg", name: "Neg", pkg: "", typ: $funcType([abstract$1.Point], [abstract$1.Point], false)}, {prop: "Mul", name: "Mul", pkg: "", typ: $funcType([abstract$1.Point, abstract$1.Scalar], [abstract$1.Point], false)}];
+ ptrType$10.methods = [{prop: "PrimeOrder", name: "PrimeOrder", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "ScalarLen", name: "ScalarLen", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Scalar", name: "Scalar", pkg: "", typ: $funcType([], [abstract$1.Scalar], false)}, {prop: "PointLen", name: "PointLen", pkg: "", typ: $funcType([], [$Int], false)}, {prop: "Point", name: "Point", pkg: "", typ: $funcType([], [abstract$1.Point], false)}];
+ ptrType$11.methods = [{prop: "Hash", name: "Hash", pkg: "", typ: $funcType([], [hash.Hash], false)}, {prop: "Cipher", name: "Cipher", pkg: "", typ: $funcType([sliceType, sliceType$1], [abstract$1.Cipher], true)}, {prop: "Read", name: "Read", pkg: "", typ: $funcType([io.Reader, sliceType$1], [$error], true)}, {prop: "Write", name: "Write", pkg: "", typ: $funcType([io.Writer, sliceType$1], [$error], true)}, {prop: "New", name: "New", pkg: "", typ: $funcType([reflect.Type], [$emptyInterface], false)}, {prop: "NewKey", name: "NewKey", pkg: "", typ: $funcType([cipher.Stream], [abstract$1.Scalar], false)}];
+ fieldElement.init($Int32, 10);
+ projectiveGroupElement.init("", [{prop: "X", name: "X", exported: true, typ: fieldElement, tag: ""}, {prop: "Y", name: "Y", exported: true, typ: fieldElement, tag: ""}, {prop: "Z", name: "Z", exported: true, typ: fieldElement, tag: ""}]);
+ extendedGroupElement.init("", [{prop: "X", name: "X", exported: true, typ: fieldElement, tag: ""}, {prop: "Y", name: "Y", exported: true, typ: fieldElement, tag: ""}, {prop: "Z", name: "Z", exported: true, typ: fieldElement, tag: ""}, {prop: "T", name: "T", exported: true, typ: fieldElement, tag: ""}]);
+ completedGroupElement.init("", [{prop: "X", name: "X", exported: true, typ: fieldElement, tag: ""}, {prop: "Y", name: "Y", exported: true, typ: fieldElement, tag: ""}, {prop: "Z", name: "Z", exported: true, typ: fieldElement, tag: ""}, {prop: "T", name: "T", exported: true, typ: fieldElement, tag: ""}]);
+ preComputedGroupElement.init("gopkg.in/dedis/crypto.v0/ed25519", [{prop: "yPlusX", name: "yPlusX", exported: false, typ: fieldElement, tag: ""}, {prop: "yMinusX", name: "yMinusX", exported: false, typ: fieldElement, tag: ""}, {prop: "xy2d", name: "xy2d", exported: false, typ: fieldElement, tag: ""}]);
+ cachedGroupElement.init("gopkg.in/dedis/crypto.v0/ed25519", [{prop: "yPlusX", name: "yPlusX", exported: false, typ: fieldElement, tag: ""}, {prop: "yMinusX", name: "yMinusX", exported: false, typ: fieldElement, tag: ""}, {prop: "Z", name: "Z", exported: true, typ: fieldElement, tag: ""}, {prop: "T2d", name: "T2d", exported: true, typ: fieldElement, tag: ""}]);
+ point.init("gopkg.in/dedis/crypto.v0/ed25519", [{prop: "ge", name: "ge", exported: false, typ: extendedGroupElement, tag: ""}]);
+ Curve.init("", []);
+ suiteEd25519.init("", [{prop: "Curve", name: "", exported: true, typ: Curve, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = cipher.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sha256.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sha512.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hex.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = abstract$1.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sha3.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = group.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = nist.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = random.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hash.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = big.$init(); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = reflect.$init(); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r = new big.Int.ptr(false, big.nat.nil).SetString("57896044618658097711785492504343953926634992332820282019728792003956564819949", 10); /* */ $s = 16; case 16: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ prime = _tuple[0];
+ _r$1 = new nist.Int.ptr(new big.Int.ptr(false, big.nat.nil), ptrType.nil, false).SetString("7237005577332262213973186563042994240857116359379907606001950938285454250989", "", 10); /* */ $s = 17; case 17: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ primeOrder = _tuple$1[0];
+ _r$2 = nist.NewInt64(new $Int64(0, 8), primeOrder.V); /* */ $s = 18; case 18: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ cofactor = _r$2;
+ fullOrder = new big.Int.ptr(false, big.nat.nil).Mul(primeOrder.V, cofactor.V);
+ nullPoint = new point.ptr(new extendedGroupElement.ptr(arrayType.zero(), arrayType.zero(), arrayType.zero(), arrayType.zero())).Null();
+ d = $toNativeArray($kindInt32, [-10913610, 13857413, -15372611, 6949391, 114729, -8787816, -6275908, -3247719, -18696448, -12055116]);
+ d2 = $toNativeArray($kindInt32, [-21827239, -5839606, -30745221, 13898782, 229458, 15978800, -12551817, -6495438, 29715968, 9444199]);
+ sqrtM1 = $toNativeArray($kindInt32, [-32595792, -7943725, 9377950, 3500415, 12389472, -272473, -25146209, -2005654, 326686, 11406482]);
+ baseext = new extendedGroupElement.ptr($toNativeArray($kindInt32, [25485296, 5318399, 8791791, -8299916, -14349720, 6939349, -3324311, -7717049, 7287234, -6577708]), $toNativeArray($kindInt32, [-758052, -1832720, 13046421, -4857925, 6576754, 14371947, -13139572, 6845540, -2198883, -4003719]), $toNativeArray($kindInt32, [-947565, 6097708, -469190, 10704810, -8556274, -15589498, -16424464, -16608899, 14028613, -5004649]), $toNativeArray($kindInt32, [6966464, -2456167, 7033433, 6781840, 28785542, 12262365, -2659449, 13959020, -21013759, -5262166]));
+ base = $toNativeArray($kindArray, [$toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [25967493, -14356035, 29566456, 3660896, -12694345, 4014787, 27544626, -11754271, -6079156, 2047605]), $toNativeArray($kindInt32, [-12545711, 934262, -2722910, 3049990, -727428, 9406986, 12720692, 5043384, 19500929, -15469378]), $toNativeArray($kindInt32, [-8738181, 4489570, 9688441, -14785194, 10184609, -12363380, 29287919, 11864899, -24514362, -4438546])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-12815894, -12976347, -21581243, 11784320, -25355658, -2750717, -11717903, -3814571, -358445, -10211303]), $toNativeArray($kindInt32, [-21703237, 6903825, 27185491, 6451973, -29577724, -9554005, -15616551, 11189268, -26829678, -5319081]), $toNativeArray($kindInt32, [26966642, 11152617, 32442495, 15396054, 14353839, -12752335, -3128826, -9541118, -15472047, -4166697])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [15636291, -9688557, 24204773, -7912398, 616977, -16685262, 27787600, -14772189, 28944400, -1550024]), $toNativeArray($kindInt32, [16568933, 4717097, -11556148, -1102322, 15682896, -11807043, 16354577, -11775962, 7689662, 11199574]), $toNativeArray($kindInt32, [30464156, -5976125, -11779434, -15670865, 23220365, 15915852, 7512774, 10017326, -17749093, -9920357])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-17036878, 13921892, 10945806, -6033431, 27105052, -16084379, -28926210, 15006023, 3284568, -6276540]), $toNativeArray($kindInt32, [23599295, -8306047, -11193664, -7687416, 13236774, 10506355, 7464579, 9656445, 13059162, 10374397]), $toNativeArray($kindInt32, [7798556, 16710257, 3033922, 2874086, 28997861, 2835604, 32406664, -3839045, -641708, -101325])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [10861363, 11473154, 27284546, 1981175, -30064349, 12577861, 32867885, 14515107, -15438304, 10819380]), $toNativeArray($kindInt32, [4708026, 6336745, 20377586, 9066809, -11272109, 6594696, -25653668, 12483688, -12668491, 5581306]), $toNativeArray($kindInt32, [19563160, 16186464, -29386857, 4097519, 10237984, -4348115, 28542350, 13850243, -23678021, -15815942])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-15371964, -12862754, 32573250, 4720197, -26436522, 5875511, -19188627, -15224819, -9818940, -12085777]), $toNativeArray($kindInt32, [-8549212, 109983, 15149363, 2178705, 22900618, 4543417, 3044240, -15689887, 1762328, 14866737]), $toNativeArray($kindInt32, [-18199695, -15951423, -10473290, 1707278, -17185920, 3916101, -28236412, 3959421, 27914454, 4383652])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [5153746, 9909285, 1723747, -2777874, 30523605, 5516873, 19480852, 5230134, -23952439, -15175766]), $toNativeArray($kindInt32, [-30269007, -3463509, 7665486, 10083793, 28475525, 1649722, 20654025, 16520125, 30598449, 7715701]), $toNativeArray($kindInt32, [28881845, 14381568, 9657904, 3680757, -20181635, 7843316, -31400660, 1370708, 29794553, -1409300])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [14499471, -2729599, -33191113, -4254652, 28494862, 14271267, 30290735, 10876454, -33154098, 2381726]), $toNativeArray($kindInt32, [-7195431, -2655363, -14730155, 462251, -27724326, 3941372, -6236617, 3696005, -32300832, 15351955]), $toNativeArray($kindInt32, [27431194, 8222322, 16448760, -3907995, -18707002, 11938355, -32961401, -2970515, 29551813, 10109425]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-13657040, -13155431, -31283750, 11777098, 21447386, 6519384, -2378284, -1627556, 10092783, -4764171]), $toNativeArray($kindInt32, [27939166, 14210322, 4677035, 16277044, -22964462, -12398139, -32508754, 12005538, -17810127, 12803510]), $toNativeArray($kindInt32, [17228999, -15661624, -1233527, 300140, -1224870, -11714777, 30364213, -9038194, 18016357, 4397660])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-10958843, -7690207, 4776341, -14954238, 27850028, -15602212, -26619106, 14544525, -17477504, 982639]), $toNativeArray($kindInt32, [29253598, 15796703, -2863982, -9908884, 10057023, 3163536, 7332899, -4120128, -21047696, 9934963]), $toNativeArray($kindInt32, [5793303, 16271923, -24131614, -10116404, 29188560, 1206517, -14747930, 4559895, -30123922, -10897950])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-27643952, -11493006, 16282657, -11036493, 28414021, -15012264, 24191034, 4541697, -13338309, 5500568]), $toNativeArray($kindInt32, [12650548, -1497113, 9052871, 11355358, -17680037, -8400164, -17430592, 12264343, 10874051, 13524335]), $toNativeArray($kindInt32, [25556948, -3045990, 714651, 2510400, 23394682, -10415330, 33119038, 5080568, -22528059, 5376628])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-26088264, -4011052, -17013699, -3537628, -6726793, 1920897, -22321305, -9447443, 4535768, 1569007]), $toNativeArray($kindInt32, [-2255422, 14606630, -21692440, -8039818, 28430649, 8775819, -30494562, 3044290, 31848280, 12543772]), $toNativeArray($kindInt32, [-22028579, 2943893, -31857513, 6777306, 13784462, -4292203, -27377195, -2062731, 7718482, 14474653])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [2385315, 2454213, -22631320, 46603, -4437935, -15680415, 656965, -7236665, 24316168, -5253567]), $toNativeArray($kindInt32, [13741529, 10911568, -33233417, -8603737, -20177830, -1033297, 33040651, -13424532, -20729456, 8321686]), $toNativeArray($kindInt32, [21060490, -2212744, 15712757, -4336099, 1639040, 10656336, 23845965, -11874838, -9984458, 608372])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-13672732, -15087586, -10889693, -7557059, -6036909, 11305547, 1123968, -6780577, 27229399, 23887]), $toNativeArray($kindInt32, [-23244140, -294205, -11744728, 14712571, -29465699, -2029617, 12797024, -6440308, -1633405, 16678954]), $toNativeArray($kindInt32, [-29500620, 4770662, -16054387, 14001338, 7830047, 9564805, -1508144, -4795045, -17169265, 4904953])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [24059557, 14617003, 19037157, -15039908, 19766093, -14906429, 5169211, 16191880, 2128236, -4326833]), $toNativeArray($kindInt32, [-16981152, 4124966, -8540610, -10653797, 30336522, -14105247, -29806336, 916033, -6882542, -2986532]), $toNativeArray($kindInt32, [-22630907, 12419372, -7134229, -7473371, -16478904, 16739175, 285431, 2763829, 15736322, 4143876])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [2379352, 11839345, -4110402, -5988665, 11274298, 794957, 212801, -14594663, 23527084, -16458268]), $toNativeArray($kindInt32, [33431127, -11130478, -17838966, -15626900, 8909499, 8376530, -32625340, 4087881, -15188911, -14416214]), $toNativeArray($kindInt32, [1767683, 7197987, -13205226, -2022635, -13091350, 448826, 5799055, 4357868, -4774191, -16323038]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [6721966, 13833823, -23523388, -1551314, 26354293, -11863321, 23365147, -3949732, 7390890, 2759800]), $toNativeArray($kindInt32, [4409041, 2052381, 23373853, 10530217, 7676779, -12885954, 21302353, -4264057, 1244380, -12919645]), $toNativeArray($kindInt32, [-4421239, 7169619, 4982368, -2957590, 30256825, -2777540, 14086413, 9208236, 15886429, 16489664])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [1996075, 10375649, 14346367, 13311202, -6874135, -16438411, -13693198, 398369, -30606455, -712933]), $toNativeArray($kindInt32, [-25307465, 9795880, -2777414, 14878809, -33531835, 14780363, 13348553, 12076947, -30836462, 5113182]), $toNativeArray($kindInt32, [-17770784, 11797796, 31950843, 13929123, -25888302, 12288344, -30341101, -7336386, 13847711, 5387222])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-18582163, -3416217, 17824843, -2340966, 22744343, -10442611, 8763061, 3617786, -19600662, 10370991]), $toNativeArray($kindInt32, [20246567, -14369378, 22358229, -543712, 18507283, -10413996, 14554437, -8746092, 32232924, 16763880]), $toNativeArray($kindInt32, [9648505, 10094563, 26416693, 14745928, -30374318, -6472621, 11094161, 15689506, 3140038, -16510092])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-16160072, 5472695, 31895588, 4744994, 8823515, 10365685, -27224800, 9448613, -28774454, 366295]), $toNativeArray($kindInt32, [19153450, 11523972, -11096490, -6503142, -24647631, 5420647, 28344573, 8041113, 719605, 11671788]), $toNativeArray($kindInt32, [8678025, 2694440, -6808014, 2517372, 4964326, 11152271, -15432916, -15266516, 27000813, -10195553])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-15157904, 7134312, 8639287, -2814877, -7235688, 10421742, 564065, 5336097, 6750977, -14521026]), $toNativeArray($kindInt32, [11836410, -3979488, 26297894, 16080799, 23455045, 15735944, 1695823, -8819122, 8169720, 16220347]), $toNativeArray($kindInt32, [-18115838, 8653647, 17578566, -6092619, -8025777, -16012763, -11144307, -2627664, -5990708, -14166033])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-23308498, -10968312, 15213228, -10081214, -30853605, -11050004, 27884329, 2847284, 2655861, 1738395]), $toNativeArray($kindInt32, [-27537433, -14253021, -25336301, -8002780, -9370762, 8129821, 21651608, -3239336, -19087449, -11005278]), $toNativeArray($kindInt32, [1533110, 3437855, 23735889, 459276, 29970501, 11335377, 26030092, 5821408, 10478196, 8544890])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [32173121, -16129311, 24896207, 3921497, 22579056, -3410854, 19270449, 12217473, 17789017, -3395995]), $toNativeArray($kindInt32, [-30552961, -2228401, -15578829, -10147201, 13243889, 517024, 15479401, -3853233, 30460520, 1052596]), $toNativeArray($kindInt32, [-11614875, 13323618, 32618793, 8175907, -15230173, 12596687, 27491595, -4612359, 3179268, -9478891])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [31947069, -14366651, -4640583, -15339921, -15125977, -6039709, -14756777, -16411740, 19072640, -9511060]), $toNativeArray($kindInt32, [11685058, 11822410, 3158003, -13952594, 33402194, -4165066, 5977896, -5215017, 473099, 5040608]), $toNativeArray($kindInt32, [-20290863, 8198642, -27410132, 11602123, 1290375, -2799760, 28326862, 1721092, -19558642, -3131606]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [7881532, 10687937, 7578723, 7738378, -18951012, -2553952, 21820786, 8076149, -27868496, 11538389]), $toNativeArray($kindInt32, [-19935666, 3899861, 18283497, -6801568, -15728660, -11249211, 8754525, 7446702, -5676054, 5797016]), $toNativeArray($kindInt32, [-11295600, -3793569, -15782110, -7964573, 12708869, -8456199, 2014099, -9050574, -2369172, -5877341])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-22472376, -11568741, -27682020, 1146375, 18956691, 16640559, 1192730, -3714199, 15123619, 10811505]), $toNativeArray($kindInt32, [14352098, -3419715, -18942044, 10822655, 32750596, 4699007, -70363, 15776356, -28886779, -11974553]), $toNativeArray($kindInt32, [-28241164, -8072475, -4978962, -5315317, 29416931, 1847569, -20654173, -16484855, 4714547, -9600655])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [15200332, 8368572, 19679101, 15970074, -31872674, 1959451, 24611599, -4543832, -11745876, 12340220]), $toNativeArray($kindInt32, [12876937, -10480056, 33134381, 6590940, -6307776, 14872440, 9613953, 8241152, 15370987, 9608631]), $toNativeArray($kindInt32, [-4143277, -12014408, 8446281, -391603, 4407738, 13629032, -7724868, 15866074, -28210621, -8814099])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [26660628, -15677655, 8393734, 358047, -7401291, 992988, -23904233, 858697, 20571223, 8420556]), $toNativeArray($kindInt32, [14620715, 13067227, -15447274, 8264467, 14106269, 15080814, 33531827, 12516406, -21574435, -12476749]), $toNativeArray($kindInt32, [236881, 10476226, 57258, -14677024, 6472998, 2466984, 17258519, 7256740, 8791136, 15069930])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [1276410, -9371918, 22949635, -16322807, -23493039, -5702186, 14711875, 4874229, -30663140, -2331391]), $toNativeArray($kindInt32, [5855666, 4990204, -13711848, 7294284, -7804282, 1924647, -1423175, -7912378, -33069337, 9234253]), $toNativeArray($kindInt32, [20590503, -9018988, 31529744, -7352666, -2706834, 10650548, 31559055, -11609587, 18979186, 13396066])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [24474287, 4968103, 22267082, 4407354, 24063882, -8325180, -18816887, 13594782, 33514650, 7021958]), $toNativeArray($kindInt32, [-11566906, -6565505, -21365085, 15928892, -26158305, 4315421, -25948728, -3916677, -21480480, 12868082]), $toNativeArray($kindInt32, [-28635013, 13504661, 19988037, -2132761, 21078225, 6443208, -21446107, 2244500, -12455797, -8089383])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-30595528, 13793479, -5852820, 319136, -25723172, -6263899, 33086546, 8957937, -15233648, 5540521]), $toNativeArray($kindInt32, [-11630176, -11503902, -8119500, -7643073, 2620056, 1022908, -23710744, -1568984, -16128528, -14962807]), $toNativeArray($kindInt32, [23152971, 775386, 27395463, 14006635, -9701118, 4649512, 1689819, 892185, -11513277, -15205948])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [9770129, 9586738, 26496094, 4324120, 1556511, -3550024, 27453819, 4763127, -19179614, 5867134]), $toNativeArray($kindInt32, [-32765025, 1927590, 31726409, -4753295, 23962434, -16019500, 27846559, 5931263, -29749703, -16108455]), $toNativeArray($kindInt32, [27461885, -2977536, 22380810, 1815854, -23033753, -3031938, 7283490, -15148073, -19526700, 7734629]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-8010264, -9590817, -11120403, 6196038, 29344158, -13430885, 7585295, -3176626, 18549497, 15302069]), $toNativeArray($kindInt32, [-32658337, -6171222, -7672793, -11051681, 6258878, 13504381, 10458790, -6418461, -8872242, 8424746]), $toNativeArray($kindInt32, [24687205, 8613276, -30667046, -3233545, 1863892, -1830544, 19206234, 7134917, -11284482, -828919])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [11334899, -9218022, 8025293, 12707519, 17523892, -10476071, 10243738, -14685461, -5066034, 16498837]), $toNativeArray($kindInt32, [8911542, 6887158, -9584260, -6958590, 11145641, -9543680, 17303925, -14124238, 6536641, 10543906]), $toNativeArray($kindInt32, [-28946384, 15479763, -17466835, 568876, -1497683, 11223454, -2669190, -16625574, -27235709, 8876771])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-25742899, -12566864, -15649966, -846607, -33026686, -796288, -33481822, 15824474, -604426, -9039817]), $toNativeArray($kindInt32, [10330056, 70051, 7957388, -9002667, 9764902, 15609756, 27698697, -4890037, 1657394, 3084098]), $toNativeArray($kindInt32, [10477963, -7470260, 12119566, -13250805, 29016247, -5365589, 31280319, 14396151, -30233575, 15272409])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-12288309, 3169463, 28813183, 16658753, 25116432, -5630466, -25173957, -12636138, -25014757, 1950504]), $toNativeArray($kindInt32, [-26180358, 9489187, 11053416, -14746161, -31053720, 5825630, -8384306, -8767532, 15341279, 8373727]), $toNativeArray($kindInt32, [28685821, 7759505, -14378516, -12002860, -31971820, 4079242, 298136, -10232602, -2878207, 15190420])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-32932876, 13806336, -14337485, -15794431, -24004620, 10940928, 8669718, 2742393, -26033313, -6875003]), $toNativeArray($kindInt32, [-1580388, -11729417, -25979658, -11445023, -17411874, -10912854, 9291594, -16247779, -12154742, 6048605]), $toNativeArray($kindInt32, [-30305315, 14843444, 1539301, 11864366, 20201677, 1900163, 13934231, 5128323, 11213262, 9168384])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-26280513, 11007847, 19408960, -940758, -18592965, -4328580, -5088060, -11105150, 20470157, -16398701]), $toNativeArray($kindInt32, [-23136053, 9282192, 14855179, -15390078, -7362815, -14408560, -22783952, 14461608, 14042978, 5230683]), $toNativeArray($kindInt32, [29969567, -2741594, -16711867, -8552442, 9175486, -2468974, 21556951, 3506042, -5933891, -12449708])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-3144746, 8744661, 19704003, 4581278, -20430686, 6830683, -21284170, 8971513, -28539189, 15326563]), $toNativeArray($kindInt32, [-19464629, 10110288, -17262528, -3503892, -23500387, 1355669, -15523050, 15300988, -20514118, 9168260]), $toNativeArray($kindInt32, [-5353335, 4488613, -23803248, 16314347, 7780487, -15638939, -28948358, 9601605, 33087103, -9011387])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-19443170, -15512900, -20797467, -12445323, -29824447, 10229461, -27444329, -15000531, -5996870, 15664672]), $toNativeArray($kindInt32, [23294591, -16632613, -22650781, -8470978, 27844204, 11461195, 13099750, -2460356, 18151676, 13417686]), $toNativeArray($kindInt32, [-24722913, -4176517, -31150679, 5988919, -26858785, 6685065, 1661597, -12551441, 15271676, -15452665]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [11433042, -13228665, 8239631, -5279517, -1985436, -725718, -18698764, 2167544, -6921301, -13440182]), $toNativeArray($kindInt32, [-31436171, 15575146, 30436815, 12192228, -22463353, 9395379, -9917708, -8638997, 12215110, 12028277]), $toNativeArray($kindInt32, [14098400, 6555944, 23007258, 5757252, -15427832, -12950502, 30123440, 4617780, -16900089, -655628])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-4026201, -15240835, 11893168, 13718664, -14809462, 1847385, -15819999, 10154009, 23973261, -12684474]), $toNativeArray($kindInt32, [-26531820, -3695990, -1908898, 2534301, -31870557, -16550355, 18341390, -11419951, 32013174, -10103539]), $toNativeArray($kindInt32, [-25479301, 10876443, -11771086, -14625140, -12369567, 1838104, 21911214, 6354752, 4425632, -837822])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-10433389, -14612966, 22229858, -3091047, -13191166, 776729, -17415375, -12020462, 4725005, 14044970]), $toNativeArray($kindInt32, [19268650, -7304421, 1555349, 8692754, -21474059, -9910664, 6347390, -1411784, -19522291, -16109756]), $toNativeArray($kindInt32, [-24864089, 12986008, -10898878, -5558584, -11312371, -148526, 19541418, 8180106, 9282262, 10282508])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-26205082, 4428547, -8661196, -13194263, 4098402, -14165257, 15522535, 8372215, 5542595, -10702683]), $toNativeArray($kindInt32, [-10562541, 14895633, 26814552, -16673850, -17480754, -2489360, -2781891, 6993761, -18093885, 10114655]), $toNativeArray($kindInt32, [-20107055, -929418, 31422704, 10427861, -7110749, 6150669, -29091755, -11529146, 25953725, -106158])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-4234397, -8039292, -9119125, 3046000, 2101609, -12607294, 19390020, 6094296, -3315279, 12831125]), $toNativeArray($kindInt32, [-15998678, 7578152, 5310217, 14408357, -33548620, -224739, 31575954, 6326196, 7381791, -2421839]), $toNativeArray($kindInt32, [-20902779, 3296811, 24736065, -16328389, 18374254, 7318640, 6295303, 8082724, -15362489, 12339664])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [27724736, 2291157, 6088201, -14184798, 1792727, 5857634, 13848414, 15768922, 25091167, 14856294]), $toNativeArray($kindInt32, [-18866652, 8331043, 24373479, 8541013, -701998, -9269457, 12927300, -12695493, -22182473, -9012899]), $toNativeArray($kindInt32, [-11423429, -5421590, 11632845, 3405020, 30536730, -11674039, -27260765, 13866390, 30146206, 9142070])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [3924129, -15307516, -13817122, -10054960, 12291820, -668366, -27702774, 9326384, -8237858, 4171294]), $toNativeArray($kindInt32, [-15921940, 16037937, 6713787, 16606682, -21612135, 2790944, 26396185, 3731949, 345228, -5462949]), $toNativeArray($kindInt32, [-21327538, 13448259, 25284571, 1143661, 20614966, -8849387, 2031539, -12391231, -16253183, -13582083])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [31016211, -16722429, 26371392, -14451233, -5027349, 14854137, 17477601, 3842657, 28012650, -16405420]), $toNativeArray($kindInt32, [-5075835, 9368966, -8562079, -4600902, -15249953, 6970560, -9189873, 16292057, -8867157, 3507940]), $toNativeArray($kindInt32, [29439664, 3537914, 23333589, 6997794, -17555561, -11018068, -15209202, -15051267, -9164929, 6580396]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-12185861, -7679788, 16438269, 10826160, -8696817, -6235611, 17860444, -9273846, -2095802, 9304567]), $toNativeArray($kindInt32, [20714564, -4336911, 29088195, 7406487, 11426967, -5095705, 14792667, -14608617, 5289421, -477127]), $toNativeArray($kindInt32, [-16665533, -10650790, -6160345, -13305760, 9192020, -1802462, 17271490, 12349094, 26939669, -3752294])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-12889898, 9373458, 31595848, 16374215, 21471720, 13221525, -27283495, -12348559, -3698806, 117887]), $toNativeArray($kindInt32, [22263325, -6560050, 3984570, -11174646, -15114008, -566785, 28311253, 5358056, -23319780, 541964]), $toNativeArray($kindInt32, [16259219, 3261970, 2309254, -15534474, -16885711, -4581916, 24134070, -16705829, -13337066, -13552195])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [9378160, -13140186, -22845982, -12745264, 28198281, -7244098, -2399684, -717351, 690426, 14876244]), $toNativeArray($kindInt32, [24977353, -314384, -8223969, -13465086, 28432343, -1176353, -13068804, -12297348, -22380984, 6618999]), $toNativeArray($kindInt32, [-1538174, 11685646, 12944378, 13682314, -24389511, -14413193, 8044829, -13817328, 32239829, -5652762])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-18603066, 4762990, -926250, 8885304, -28412480, -3187315, 9781647, -10350059, 32779359, 5095274]), $toNativeArray($kindInt32, [-33008130, -5214506, -32264887, -3685216, 9460461, -9327423, -24601656, 14506724, 21639561, -2630236]), $toNativeArray($kindInt32, [-16400943, -13112215, 25239338, 15531969, 3987758, -4499318, -1289502, -6863535, 17874574, 558605])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-13600129, 10240081, 9171883, 16131053, -20869254, 9599700, 33499487, 5080151, 2085892, 5119761]), $toNativeArray($kindInt32, [-22205145, -2519528, -16381601, 414691, -25019550, 2170430, 30634760, -8363614, -31999993, -5759884]), $toNativeArray($kindInt32, [-6845704, 15791202, 8550074, -1312654, 29928809, -12092256, 27534430, -7192145, -22351378, 12961482])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-24492060, -9570771, 10368194, 11582341, -23397293, -2245287, 16533930, 8206996, -30194652, -5159638]), $toNativeArray($kindInt32, [-11121496, -3382234, 2307366, 6362031, -135455, 8868177, -16835630, 7031275, 7589640, 8945490]), $toNativeArray($kindInt32, [-32152748, 8917967, 6661220, -11677616, -1192060, -15793393, 7251489, -11182180, 24099109, -14456170])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [5019558, -7907470, 4244127, -14714356, -26933272, 6453165, -19118182, -13289025, -6231896, -10280736]), $toNativeArray($kindInt32, [10853594, 10721687, 26480089, 5861829, -22995819, 1972175, -1866647, -10557898, -3363451, -6441124]), $toNativeArray($kindInt32, [-17002408, 5906790, 221599, -6563147, 7828208, -13248918, 24362661, -2008168, -13866408, 7421392])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [8139927, -6546497, 32257646, -5890546, 30375719, 1886181, -21175108, 15441252, 28826358, -4123029]), $toNativeArray($kindInt32, [6267086, 9695052, 7709135, -16603597, -32869068, -1886135, 14795160, -7840124, 13746021, -1742048]), $toNativeArray($kindInt32, [28584902, 7787108, -6732942, -15050729, 22846041, -7571236, -3181936, -363524, 4771362, -8419958]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [24949256, 6376279, -27466481, -8174608, -18646154, -9930606, 33543569, -12141695, 3569627, 11342593]), $toNativeArray($kindInt32, [26514989, 4740088, 27912651, 3697550, 19331575, -11472339, 6809886, 4608608, 7325975, -14801071]), $toNativeArray($kindInt32, [-11618399, -14554430, -24321212, 7655128, -1369274, 5214312, -27400540, 10258390, -17646694, -8186692])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [11431204, 15823007, 26570245, 14329124, 18029990, 4796082, -31446179, 15580664, 9280358, -3973687]), $toNativeArray($kindInt32, [-160783, -10326257, -22855316, -4304997, -20861367, -13621002, -32810901, -11181622, -15545091, 4387441]), $toNativeArray($kindInt32, [-20799378, 12194512, 3937617, -5805892, -27154820, 9340370, -24513992, 8548137, 20617071, -7482001])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-938825, -3930586, -8714311, 16124718, 24603125, -6225393, -13775352, -11875822, 24345683, 10325460]), $toNativeArray($kindInt32, [-19855277, -1568885, -22202708, 8714034, 14007766, 6928528, 16318175, -1010689, 4766743, 3552007]), $toNativeArray($kindInt32, [-21751364, -16730916, 1351763, -803421, -4009670, 3950935, 3217514, 14481909, 10988822, -3994762])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [15564307, -14311570, 3101243, 5684148, 30446780, -8051356, 12677127, -6505343, -8295852, 13296005]), $toNativeArray($kindInt32, [-9442290, 6624296, -30298964, -11913677, -4670981, -2057379, 31521204, 9614054, -30000824, 12074674]), $toNativeArray($kindInt32, [4771191, -135239, 14290749, -13089852, 27992298, 14998318, -1413936, -1556716, 29832613, -16391035])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [7064884, -7541174, -19161962, -5067537, -18891269, -2912736, 25825242, 5293297, -27122660, 13101590]), $toNativeArray($kindInt32, [-2298563, 2439670, -7466610, 1719965, -27267541, -16328445, 32512469, -5317593, -30356070, -4190957]), $toNativeArray($kindInt32, [-30006540, 10162316, -33180176, 3981723, -16482138, -13070044, 14413974, 9515896, 19568978, 9628812])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [33053803, 199357, 15894591, 1583059, 27380243, -4580435, -17838894, -6106839, -6291786, 3437740]), $toNativeArray($kindInt32, [-18978877, 3884493, 19469877, 12726490, 15913552, 13614290, -22961733, 70104, 7463304, 4176122]), $toNativeArray($kindInt32, [-27124001, 10659917, 11482427, -16070381, 12771467, -6635117, -32719404, -5322751, 24216882, 5944158])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [8894125, 7450974, -2664149, -9765752, -28080517, -12389115, 19345746, 14680796, 11632993, 5847885]), $toNativeArray($kindInt32, [26942781, -2315317, 9129564, -4906607, 26024105, 11769399, -11518837, 6367194, -9727230, 4782140]), $toNativeArray($kindInt32, [19916461, -4828410, -22910704, -11414391, 25606324, -5972441, 33253853, 8220911, 6358847, -1873857])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [801428, -2081702, 16569428, 11065167, 29875704, 96627, 7908388, -4480480, -13538503, 1387155]), $toNativeArray($kindInt32, [19646058, 5720633, -11416706, 12814209, 11607948, 12749789, 14147075, 15156355, -21866831, 11835260]), $toNativeArray($kindInt32, [19299512, 1155910, 28703737, 14890794, 2925026, 7269399, 26121523, 15467869, -26560550, 5052483]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-3017432, 10058206, 1980837, 3964243, 22160966, 12322533, -6431123, -12618185, 12228557, -7003677]), $toNativeArray($kindInt32, [32944382, 14922211, -22844894, 5188528, 21913450, -8719943, 4001465, 13238564, -6114803, 8653815]), $toNativeArray($kindInt32, [22865569, -4652735, 27603668, -12545395, 14348958, 8234005, 24808405, 5719875, 28483275, 2841751])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-16420968, -1113305, -327719, -12107856, 21886282, -15552774, -1887966, -315658, 19932058, -12739203]), $toNativeArray($kindInt32, [-11656086, 10087521, -8864888, -5536143, -19278573, -3055912, 3999228, 13239134, -4777469, -13910208]), $toNativeArray($kindInt32, [1382174, -11694719, 17266790, 9194690, -13324356, 9720081, 20403944, 11284705, -14013818, 3093230])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [16650921, -11037932, -1064178, 1570629, -8329746, 7352753, -302424, 16271225, -24049421, -6691850]), $toNativeArray($kindInt32, [-21911077, -5927941, -4611316, -5560156, -31744103, -10785293, 24123614, 15193618, -21652117, -16739389]), $toNativeArray($kindInt32, [-9935934, -4289447, -25279823, 4372842, 2087473, 10399484, 31870908, 14690798, 17361620, 11864968])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-11307610, 6210372, 13206574, 5806320, -29017692, -13967200, -12331205, -7486601, -25578460, -16240689]), $toNativeArray($kindInt32, [14668462, -12270235, 26039039, 15305210, 25515617, 4542480, 10453892, 6577524, 9145645, -6443880]), $toNativeArray($kindInt32, [5974874, 3053895, -9433049, -10385191, -31865124, 3225009, -7972642, 3936128, -5652273, -3050304])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [30625386, -4729400, -25555961, -12792866, -20484575, 7695099, 17097188, -16303496, -27999779, 1803632]), $toNativeArray($kindInt32, [-3553091, 9865099, -5228566, 4272701, -5673832, -16689700, 14911344, 12196514, -21405489, 7047412]), $toNativeArray($kindInt32, [20093277, 9920966, -11138194, -5343857, 13161587, 12044805, -32856851, 4124601, -32343828, -10257566])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-20788824, 14084654, -13531713, 7842147, 19119038, -13822605, 4752377, -8714640, -21679658, 2288038]), $toNativeArray($kindInt32, [-26819236, -3283715, 29965059, 3039786, -14473765, 2540457, 29457502, 14625692, -24819617, 12570232]), $toNativeArray($kindInt32, [-1063558, -11551823, 16920318, 12494842, 1278292, -5869109, -21159943, -3498680, -11974704, 4724943])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [17960970, -11775534, -4140968, -9702530, -8876562, -1410617, -12907383, -8659932, -29576300, 1903856]), $toNativeArray($kindInt32, [23134274, -14279132, -10681997, -1611936, 20684485, 15770816, -12989750, 3190296, 26955097, 14109738]), $toNativeArray($kindInt32, [15308788, 5320727, -30113809, -14318877, 22902008, 7767164, 29425325, -11277562, 31960942, 11934971])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-27395711, 8435796, 4109644, 12222639, -24627868, 14818669, 20638173, 4875028, 10491392, 1379718]), $toNativeArray($kindInt32, [-13159415, 9197841, 3875503, -8936108, -1383712, -5879801, 33518459, 16176658, 21432314, 12180697]), $toNativeArray($kindInt32, [-11787308, 11500838, 13787581, -13832590, -22430679, 10140205, 1465425, 12689540, -10301319, -13872883]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [5414091, -15386041, -21007664, 9643570, 12834970, 1186149, -2622916, -1342231, 26128231, 6032912]), $toNativeArray($kindInt32, [-26337395, -13766162, 32496025, -13653919, 17847801, -12669156, 3604025, 8316894, -25875034, -10437358]), $toNativeArray($kindInt32, [3296484, 6223048, 24680646, -12246460, -23052020, 5903205, -8862297, -4639164, 12376617, 3188849])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [29190488, -14659046, 27549113, -1183516, 3520066, -10697301, 32049515, -7309113, -16109234, -9852307]), $toNativeArray($kindInt32, [-14744486, -9309156, 735818, -598978, -20407687, -5057904, 25246078, -15795669, 18640741, -960977]), $toNativeArray($kindInt32, [-6928835, -16430795, 10361374, 5642961, 4910474, 12345252, -31638386, -494430, 10530747, 1053335])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-29265967, -14186805, -13538216, -12117373, -19457059, -10655384, -31462369, -2948985, 24018831, 15026644]), $toNativeArray($kindInt32, [-22592535, -3145277, -2289276, 5953843, -13440189, 9425631, 25310643, 13003497, -2314791, -15145616]), $toNativeArray($kindInt32, [-27419985, -603321, -8043984, -1669117, -26092265, 13987819, -27297622, 187899, -23166419, -2531735])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-21744398, -13810475, 1844840, 5021428, -10434399, -15911473, 9716667, 16266922, -5070217, 726099]), $toNativeArray($kindInt32, [29370922, -6053998, 7334071, -15342259, 9385287, 2247707, -13661962, -4839461, 30007388, -15823341]), $toNativeArray($kindInt32, [-936379, 16086691, 23751945, -543318, -1167538, -5189036, 9137109, 730663, 9835848, 4555336])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-23376435, 1410446, -22253753, -12899614, 30867635, 15826977, 17693930, 544696, -11985298, 12422646]), $toNativeArray($kindInt32, [31117226, -12215734, -13502838, 6561947, -9876867, -12757670, -5118685, -4096706, 29120153, 13924425]), $toNativeArray($kindInt32, [-17400879, -14233209, 19675799, -2734756, -11006962, -5858820, -9383939, -11317700, 7240931, -237388])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-31361739, -11346780, -15007447, -5856218, -22453340, -12152771, 1222336, 4389483, 3293637, -15551743]), $toNativeArray($kindInt32, [-16684801, -14444245, 11038544, 11054958, -13801175, -3338533, -24319580, 7733547, 12796905, -6335822]), $toNativeArray($kindInt32, [-8759414, -10817836, -25418864, 10783769, -30615557, -9746811, -28253339, 3647836, 3222231, -11160462])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [18606113, 1693100, -25448386, -15170272, 4112353, 10045021, 23603893, -2048234, -7550776, 2484985]), $toNativeArray($kindInt32, [9255317, -3131197, -12156162, -1004256, 13098013, -9214866, 16377220, -2102812, -19802075, -3034702]), $toNativeArray($kindInt32, [-22729289, 7496160, -5742199, 11329249, 19991973, -3347502, -31718148, 9936966, -30097688, -10618797])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [21878590, -5001297, 4338336, 13643897, -3036865, 13160960, 19708896, 5415497, -7360503, -4109293]), $toNativeArray($kindInt32, [27736861, 10103576, 12500508, 8502413, -3413016, -9633558, 10436918, -1550276, -23659143, -8132100]), $toNativeArray($kindInt32, [19492550, -12104365, -29681976, -852630, -3208171, 12403437, 30066266, 8367329, 13243957, 8709688]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [12015105, 2801261, 28198131, 10151021, 24818120, -4743133, -11194191, -5645734, 5150968, 7274186]), $toNativeArray($kindInt32, [2831366, -12492146, 1478975, 6122054, 23825128, -12733586, 31097299, 6083058, 31021603, -9793610]), $toNativeArray($kindInt32, [-2529932, -2229646, 445613, 10720828, -13849527, -11505937, -23507731, 16354465, 15067285, -14147707])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [7840942, 14037873, -33364863, 15934016, -728213, -3642706, 21403988, 1057586, -19379462, -12403220]), $toNativeArray($kindInt32, [915865, -16469274, 15608285, -8789130, -24357026, 6060030, -17371319, 8410997, -7220461, 16527025]), $toNativeArray($kindInt32, [32922597, -556987, 20336074, -16184568, 10903705, -5384487, 16957574, 52992, 23834301, 6588044])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [32752030, 11232950, 3381995, -8714866, 22652988, -10744103, 17159699, 16689107, -20314580, -1305992]), $toNativeArray($kindInt32, [-4689649, 9166776, -25710296, -10847306, 11576752, 12733943, 7924251, -2752281, 1976123, -7249027]), $toNativeArray($kindInt32, [21251222, 16309901, -2983015, -6783122, 30810597, 12967303, 156041, -3371252, 12331345, -8237197])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [8651614, -4477032, -16085636, -4996994, 13002507, 2950805, 29054427, -5106970, 10008136, -4667901]), $toNativeArray($kindInt32, [31486080, 15114593, -14261250, 12951354, 14369431, -7387845, 16347321, -13662089, 8684155, -10532952]), $toNativeArray($kindInt32, [19443825, 11385320, 24468943, -9659068, -23919258, 2187569, -26263207, -6086921, 31316348, 14219878])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-28594490, 1193785, 32245219, 11392485, 31092169, 15722801, 27146014, 6992409, 29126555, 9207390]), $toNativeArray($kindInt32, [32382935, 1110093, 18477781, 11028262, -27411763, -7548111, -4980517, 10843782, -7957600, -14435730]), $toNativeArray($kindInt32, [2814918, 7836403, 27519878, -7868156, -20894015, -11553689, -21494559, 8550130, 28346258, 1994730])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-19578299, 8085545, -14000519, -3948622, 2785838, -16231307, -19516951, 7174894, 22628102, 8115180]), $toNativeArray($kindInt32, [-30405132, 955511, -11133838, -15078069, -32447087, -13278079, -25651578, 3317160, -9943017, 930272]), $toNativeArray($kindInt32, [-15303681, -6833769, 28856490, 1357446, 23421993, 1057177, 24091212, -1388970, -22765376, -10650715])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-22751231, -5303997, -12907607, -12768866, -15811511, -7797053, -14839018, -16554220, -1867018, 8398970]), $toNativeArray($kindInt32, [-31969310, 2106403, -4736360, 1362501, 12813763, 16200670, 22981545, -6291273, 18009408, -15772772]), $toNativeArray($kindInt32, [-17220923, -9545221, -27784654, 14166835, 29815394, 7444469, 29551787, -3727419, 19288549, 1325865])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [15100157, -15835752, -23923978, -1005098, -26450192, 15509408, 12376730, -3479146, 33166107, -8042750]), $toNativeArray($kindInt32, [20909231, 13023121, -9209752, 16251778, -5778415, -8094914, 12412151, 10018715, 2213263, -13878373]), $toNativeArray($kindInt32, [32529814, -11074689, 30361439, -16689753, -9135940, 1513226, 22922121, 6382134, -5766928, 8371348]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [9923462, 11271500, 12616794, 3544722, -29998368, -1721626, 12891687, -8193132, -26442943, 10486144]), $toNativeArray($kindInt32, [-22597207, -7012665, 8587003, -8257861, 4084309, -12970062, 361726, 2610596, -23921530, -11455195]), $toNativeArray($kindInt32, [5408411, -1136691, -4969122, 10561668, 24145918, 14240566, 31319731, -4235541, 19985175, -3436086])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-13994457, 16616821, 14549246, 3341099, 32155958, 13648976, -17577068, 8849297, 65030, 8370684]), $toNativeArray($kindInt32, [-8320926, -12049626, 31204563, 5839400, -20627288, -1057277, -19442942, 6922164, 12743482, -9800518]), $toNativeArray($kindInt32, [-2361371, 12678785, 28815050, 4759974, -23893047, 4884717, 23783145, 11038569, 18800704, 255233])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-5269658, -1773886, 13957886, 7990715, 23132995, 728773, 13393847, 9066957, 19258688, -14753793]), $toNativeArray($kindInt32, [-2936654, -10827535, -10432089, 14516793, -3640786, 4372541, -31934921, 2209390, -1524053, 2055794]), $toNativeArray($kindInt32, [580882, 16705327, 5468415, -2683018, -30926419, -14696000, -7203346, -8994389, -30021019, 7394435])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [23838809, 1822728, -15738443, 15242727, 8318092, -3733104, -21672180, -3492205, -4821741, 14799921]), $toNativeArray($kindInt32, [13345610, 9759151, 3371034, -16137791, 16353039, 8577942, 31129804, 13496856, -9056018, 7402518]), $toNativeArray($kindInt32, [2286874, -4435931, -20042458, -2008336, -13696227, 5038122, 11006906, -15760352, 8205061, 1607563])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [14414086, -8002132, 3331830, -3208217, 22249151, -5594188, 18364661, -2906958, 30019587, -9029278]), $toNativeArray($kindInt32, [-27688051, 1585953, -10775053, 931069, -29120221, -11002319, -14410829, 12029093, 9944378, 8024]), $toNativeArray($kindInt32, [4368715, -3709630, 29874200, -15022983, -20230386, -11410704, -16114594, -999085, -8142388, 5640030])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [10299610, 13746483, 11661824, 16234854, 7630238, 5998374, 9809887, -16694564, 15219798, -14327783]), $toNativeArray($kindInt32, [27425505, -5719081, 3055006, 10660664, 23458024, 595578, -15398605, -1173195, -18342183, 9742717]), $toNativeArray($kindInt32, [6744077, 2427284, 26042789, 2720740, -847906, 1118974, 32324614, 7406442, 12420155, 1994844])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [14012521, -5024720, -18384453, -9578469, -26485342, -3936439, -13033478, -10909803, 24319929, -6446333]), $toNativeArray($kindInt32, [16412690, -4507367, 10772641, 15929391, -17068788, -4658621, 10555945, -10484049, -30102368, -4739048]), $toNativeArray($kindInt32, [22397382, -7767684, -9293161, -12792868, 17166287, -9755136, -27333065, 6199366, 21880021, -12250760])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-4283307, 5368523, -31117018, 8163389, -30323063, 3209128, 16557151, 8890729, 8840445, 4957760]), $toNativeArray($kindInt32, [-15447727, 709327, -6919446, -10870178, -29777922, 6522332, -21720181, 12130072, -14796503, 5005757]), $toNativeArray($kindInt32, [-2114751, -14308128, 23019042, 15765735, -25269683, 6002752, 10183197, -13239326, -16395286, -2176112]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-19025756, 1632005, 13466291, -7995100, -23640451, 16573537, -32013908, -3057104, 22208662, 2000468]), $toNativeArray($kindInt32, [3065073, -1412761, -25598674, -361432, -17683065, -5703415, -8164212, 11248527, -3691214, -7414184]), $toNativeArray($kindInt32, [10379208, -6045554, 8877319, 1473647, -29291284, -12507580, 16690915, 2553332, -3132688, 16400289])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [15716668, 1254266, -18472690, 7446274, -8448918, 6344164, -22097271, -7285580, 26894937, 9132066]), $toNativeArray($kindInt32, [24158887, 12938817, 11085297, -8177598, -28063478, -4457083, -30576463, 64452, -6817084, -2692882]), $toNativeArray($kindInt32, [13488534, 7794716, 22236231, 5989356, 25426474, -12578208, 2350710, -3418511, -4688006, 2364226])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [16335052, 9132434, 25640582, 6678888, 1725628, 8517937, -11807024, -11697457, 15445875, -7798101]), $toNativeArray($kindInt32, [29004207, -7867081, 28661402, -640412, -12794003, -7943086, 31863255, -4135540, -278050, -15759279]), $toNativeArray($kindInt32, [-6122061, -14866665, -28614905, 14569919, -10857999, -3591829, 10343412, -6976290, -29828287, -10815811])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [27081650, 3463984, 14099042, -4517604, 1616303, -6205604, 29542636, 15372179, 17293797, 960709]), $toNativeArray($kindInt32, [20263915, 11434237, -5765435, 11236810, 13505955, -10857102, -16111345, 6493122, -19384511, 7639714]), $toNativeArray($kindInt32, [-2830798, -14839232, 25403038, -8215196, -8317012, -16173699, 18006287, -16043750, 29994677, -15808121])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [9769828, 5202651, -24157398, -13631392, -28051003, -11561624, -24613141, -13860782, -31184575, 709464]), $toNativeArray($kindInt32, [12286395, 13076066, -21775189, -1176622, -25003198, 4057652, -32018128, -8890874, 16102007, 13205847]), $toNativeArray($kindInt32, [13733362, 5599946, 10557076, 3195751, -5557991, 8536970, -25540170, 8525972, 10151379, 10394400])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [4024660, -16137551, 22436262, 12276534, -9099015, -2686099, 19698229, 11743039, -33302334, 8934414]), $toNativeArray($kindInt32, [-15879800, -4525240, -8580747, -2934061, 14634845, -698278, -9449077, 3137094, -11536886, 11721158]), $toNativeArray($kindInt32, [17555939, -5013938, 8268606, 2331751, -22738815, 9761013, 9319229, 8835153, -9205489, -1280045])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-461409, -7830014, 20614118, 16688288, -7514766, -4807119, 22300304, 505429, 6108462, -6183415]), $toNativeArray($kindInt32, [-5070281, 12367917, -30663534, 3234473, 32617080, -8422642, 29880583, -13483331, -26898490, -7867459]), $toNativeArray($kindInt32, [-31975283, 5726539, 26934134, 10237677, -3173717, -605053, 24199304, 3795095, 7592688, -14992079])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [21594432, -14964228, 17466408, -4077222, 32537084, 2739898, 6407723, 12018833, -28256052, 4298412]), $toNativeArray($kindInt32, [-20650503, -11961496, -27236275, 570498, 3767144, -1717540, 13891942, -1569194, 13717174, 10805743]), $toNativeArray($kindInt32, [-14676630, -15644296, 15287174, 11927123, 24177847, -8175568, -796431, 14860609, -26938930, -5863836]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [12962541, 5311799, -10060768, 11658280, 18855286, -7954201, 13286263, -12808704, -4381056, 9882022]), $toNativeArray($kindInt32, [18512079, 11319350, -20123124, 15090309, 18818594, 5271736, -22727904, 3666879, -23967430, -3299429]), $toNativeArray($kindInt32, [-6789020, -3146043, 16192429, 13241070, 15898607, -14206114, -10084880, -6661110, -2403099, 5276065])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [30169808, -5317648, 26306206, -11750859, 27814964, 7069267, 7152851, 3684982, 1449224, 13082861]), $toNativeArray($kindInt32, [10342826, 3098505, 2119311, 193222, 25702612, 12233820, 23697382, 15056736, -21016438, -8202000]), $toNativeArray($kindInt32, [-33150110, 3261608, 22745853, 7948688, 19370557, -15177665, -26171976, 6482814, -10300080, -11060101])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [32869458, -5408545, 25609743, 15678670, -10687769, -15471071, 26112421, 2521008, -22664288, 6904815]), $toNativeArray($kindInt32, [29506923, 4457497, 3377935, -9796444, -30510046, 12935080, 1561737, 3841096, -29003639, -6657642]), $toNativeArray($kindInt32, [10340844, -6630377, -18656632, -2278430, 12621151, -13339055, 30878497, -11824370, -25584551, 5181966])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [25940115, -12658025, 17324188, -10307374, -8671468, 15029094, 24396252, -16450922, -2322852, -12388574]), $toNativeArray($kindInt32, [-21765684, 9916823, -1300409, 4079498, -1028346, 11909559, 1782390, 12641087, 20603771, -6561742]), $toNativeArray($kindInt32, [-18882287, -11673380, 24849422, 11501709, 13161720, -4768874, 1925523, 11914390, 4662781, 7820689])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [12241050, -425982, 8132691, 9393934, 32846760, -1599620, 29749456, 12172924, 16136752, 15264020]), $toNativeArray($kindInt32, [-10349955, -14680563, -8211979, 2330220, -17662549, -14545780, 10658213, 6671822, 19012087, 3772772]), $toNativeArray($kindInt32, [3753511, -3421066, 10617074, 2028709, 14841030, -6721664, 28718732, -15762884, 20527771, 12988982])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-14822485, -5797269, -3707987, 12689773, -898983, -10914866, -24183046, -10564943, 3299665, -12424953]), $toNativeArray($kindInt32, [-16777703, -15253301, -9642417, 4978983, 3308785, 8755439, 6943197, 6461331, -25583147, 8991218]), $toNativeArray($kindInt32, [-17226263, 1816362, -1673288, -6086439, 31783888, -8175991, -32948145, 7417950, -30242287, 1507265])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [29692663, 6829891, -10498800, 4334896, 20945975, -11906496, -28887608, 8209391, 14606362, -10647073]), $toNativeArray($kindInt32, [-3481570, 8707081, 32188102, 5672294, 22096700, 1711240, -33020695, 9761487, 4170404, -2085325]), $toNativeArray($kindInt32, [-11587470, 14855945, -4127778, -1531857, -26649089, 15084046, 22186522, 16002000, -14276837, -8400798])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-4811456, 13761029, -31703877, -2483919, -3312471, 7869047, -7113572, -9620092, 13240845, 10965870]), $toNativeArray($kindInt32, [-7742563, -8256762, -14768334, -13656260, -23232383, 12387166, 4498947, 14147411, 29514390, 4302863]), $toNativeArray($kindInt32, [-13413405, -12407859, 20757302, -13801832, 14785143, 8976368, -5061276, -2144373, 17846988, -13971927]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-2244452, -754728, -4597030, -1066309, -6247172, 1455299, -21647728, -9214789, -5222701, 12650267]), $toNativeArray($kindInt32, [-9906797, -16070310, 21134160, 12198166, -27064575, 708126, 387813, 13770293, -19134326, 10958663]), $toNativeArray($kindInt32, [22470984, 12369526, 23446014, -5441109, -21520802, -9698723, -11772496, -11574455, -25083830, 4271862])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-25169565, -10053642, -19909332, 15361595, -5984358, 2159192, 75375, -4278529, -32526221, 8469673]), $toNativeArray($kindInt32, [15854970, 4148314, -8893890, 7259002, 11666551, 13824734, -30531198, 2697372, 24154791, -9460943]), $toNativeArray($kindInt32, [15446137, -15806644, 29759747, 14019369, 30811221, -9610191, -31582008, 12840104, 24913809, 9815020])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-4709286, -5614269, -31841498, -12288893, -14443537, 10799414, -9103676, 13438769, 18735128, 9466238]), $toNativeArray($kindInt32, [11933045, 9281483, 5081055, -5183824, -2628162, -4905629, -7727821, -10896103, -22728655, 16199064]), $toNativeArray($kindInt32, [14576810, 379472, -26786533, -8317236, -29426508, -10812974, -102766, 1876699, 30801119, 2164795])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [15995086, 3199873, 13672555, 13712240, -19378835, -4647646, -13081610, -15496269, -13492807, 1268052]), $toNativeArray($kindInt32, [-10290614, -3659039, -3286592, 10948818, 23037027, 3794475, -3470338, -12600221, -17055369, 3565904]), $toNativeArray($kindInt32, [29210088, -9419337, -5919792, -4952785, 10834811, -13327726, -16512102, -10820713, -27162222, -14030531])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-13161890, 15508588, 16663704, -8156150, -28349942, 9019123, -29183421, -3769423, 2244111, -14001979]), $toNativeArray($kindInt32, [-5152875, -3800936, -9306475, -6071583, 16243069, 14684434, -25673088, -16180800, 13491506, 4641841]), $toNativeArray($kindInt32, [10813417, 643330, -19188515, -728916, 30292062, -16600078, 27548447, -7721242, 14476989, -12767431])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [10292079, 9984945, 6481436, 8279905, -7251514, 7032743, 27282937, -1644259, -27912810, 12651324]), $toNativeArray($kindInt32, [-31185513, -813383, 22271204, 11835308, 10201545, 15351028, 17099662, 3988035, 21721536, -3148940]), $toNativeArray($kindInt32, [10202177, -6545839, -31373232, -9574638, -32150642, -8119683, -12906320, 3852694, 13216206, 14842320])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-15815640, -10601066, -6538952, -7258995, -6984659, -6581778, -31500847, 13765824, -27434397, 9900184]), $toNativeArray($kindInt32, [14465505, -13833331, -32133984, -14738873, -27443187, 12990492, 33046193, 15796406, -7051866, -8040114]), $toNativeArray($kindInt32, [30924417, -8279620, 6359016, -12816335, 16508377, 9071735, -25488601, 15413635, 9524356, -7018878])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [12274201, -13175547, 32627641, -1785326, 6736625, 13267305, 5237659, -5109483, 15663516, 4035784]), $toNativeArray($kindInt32, [-2951309, 8903985, 17349946, 601635, -16432815, -4612556, -13732739, -15889334, -22258478, 4659091]), $toNativeArray($kindInt32, [-16916263, -4952973, -30393711, -15158821, 20774812, 15897498, 5736189, 15026997, -2178256, -13455585]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-8858980, -2219056, 28571666, -10155518, -474467, -10105698, -3801496, 278095, 23440562, -290208]), $toNativeArray($kindInt32, [10226241, -5928702, 15139956, 120818, -14867693, 5218603, 32937275, 11551483, -16571960, -7442864]), $toNativeArray($kindInt32, [17932739, -12437276, -24039557, 10749060, 11316803, 7535897, 22503767, 5561594, -3646624, 3898661])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [7749907, -969567, -16339731, -16464, -25018111, 15122143, -1573531, 7152530, 21831162, 1245233]), $toNativeArray($kindInt32, [26958459, -14658026, 4314586, 8346991, -5677764, 11960072, -32589295, -620035, -30402091, -16716212]), $toNativeArray($kindInt32, [-12165896, 9166947, 33491384, 13673479, 29787085, 13096535, 6280834, 14587357, -22338025, 13987525])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-24349909, 7778775, 21116000, 15572597, -4833266, -5357778, -4300898, -5124639, -7469781, -2858068]), $toNativeArray($kindInt32, [9681908, -6737123, -31951644, 13591838, -6883821, 386950, 31622781, 6439245, -14581012, 4091397]), $toNativeArray($kindInt32, [-8426427, 1470727, -28109679, -1596990, 3978627, -5123623, -19622683, 12092163, 29077877, -14741988])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [5269168, -6859726, -13230211, -8020715, 25932563, 1763552, -5606110, -5505881, -20017847, 2357889]), $toNativeArray($kindInt32, [32264008, -15407652, -5387735, -1160093, -2091322, -3946900, 23104804, -12869908, 5727338, 189038]), $toNativeArray($kindInt32, [14609123, -8954470, -6000566, -16622781, -14577387, -7743898, -26745169, 10942115, -25888931, -14884697])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [20513500, 5557931, -15604613, 7829531, 26413943, -2019404, -21378968, 7471781, 13913677, -5137875]), $toNativeArray($kindInt32, [-25574376, 11967826, 29233242, 12948236, -6754465, 4713227, -8940970, 14059180, 12878652, 8511905]), $toNativeArray($kindInt32, [-25656801, 3393631, -2955415, -7075526, -2250709, 9366908, -30223418, 6812974, 5568676, -3127656])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [11630004, 12144454, 2116339, 13606037, 27378885, 15676917, -17408753, -13504373, -14395196, 8070818]), $toNativeArray($kindInt32, [27117696, -10007378, -31282771, -5570088, 1127282, 12772488, -29845906, 10483306, -11552749, -1028714]), $toNativeArray($kindInt32, [10637467, -5688064, 5674781, 1072708, -26343588, -6982302, -1683975, 9177853, -27493162, 15431203])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [20525145, 10892566, -12742472, 12779443, -29493034, 16150075, -28240519, 14943142, -15056790, -7935931]), $toNativeArray($kindInt32, [-30024462, 5626926, -551567, -9981087, 753598, 11981191, 25244767, -3239766, -3356550, 9594024]), $toNativeArray($kindInt32, [-23752644, 2636870, -5163910, -10103818, 585134, 7877383, 11345683, -6492290, 13352335, -10977084])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-1931799, -5407458, 3304649, -12884869, 17015806, -4877091, -29783850, -7752482, -13215537, -319204]), $toNativeArray($kindInt32, [20239939, 6607058, 6203985, 3483793, -18386976, -779229, -20723742, 15077870, -22750759, 14523817]), $toNativeArray($kindInt32, [27406042, -6041657, 27423596, -4497394, 4996214, 10002360, -28842031, -4545494, -30172742, -4805667]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [11374242, 12660715, 17861383, -12540833, 10935568, 1099227, -13886076, -9091740, -27727044, 11358504]), $toNativeArray($kindInt32, [-12730809, 10311867, 1510375, 10778093, -2119455, -9145702, 32676003, 11149336, -26123651, 4985768]), $toNativeArray($kindInt32, [-19096303, 341147, -6197485, -239033, 15756973, -8796662, -983043, 13794114, -19414307, -15621255])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [6490081, 11940286, 25495923, -7726360, 8668373, -8751316, 3367603, 6970005, -1691065, -9004790]), $toNativeArray($kindInt32, [1656497, 13457317, 15370807, 6364910, 13605745, 8362338, -19174622, -5475723, -16796596, -5031438]), $toNativeArray($kindInt32, [-22273315, -13524424, -64685, -4334223, -18605636, -10921968, -20571065, -7007978, -99853, -10237333])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [17747465, 10039260, 19368299, -4050591, -20630635, -16041286, 31992683, -15857976, -29260363, -5511971]), $toNativeArray($kindInt32, [31932027, -4986141, -19612382, 16366580, 22023614, 88450, 11371999, -3744247, 4882242, -10626905]), $toNativeArray($kindInt32, [29796507, 37186, 19818052, 10115756, -11829032, 3352736, 18551198, 3272828, -5190932, -4162409])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [12501286, 4044383, -8612957, -13392385, -32430052, 5136599, -19230378, -3529697, 330070, -3659409]), $toNativeArray($kindInt32, [6384877, 2899513, 17807477, 7663917, -2358888, 12363165, 25366522, -8573892, -271295, 12071499]), $toNativeArray($kindInt32, [-8365515, -4042521, 25133448, -4517355, -6211027, 2265927, -32769618, 1936675, -5159697, 3829363])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [28425966, -5835433, -577090, -4697198, -14217555, 6870930, 7921550, -6567787, 26333140, 14267664]), $toNativeArray($kindInt32, [-11067219, 11871231, 27385719, -10559544, -4585914, -11189312, 10004786, -8709488, -21761224, 8930324]), $toNativeArray($kindInt32, [-21197785, -16396035, 25654216, -1725397, 12282012, 11008919, 1541940, 4757911, -26491501, -16408940])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [13537262, -7759490, -20604840, 10961927, -5922820, -13218065, -13156584, 6217254, -15943699, 13814990]), $toNativeArray($kindInt32, [-17422573, 15157790, 18705543, 29619, 24409717, -260476, 27361681, 9257833, -1956526, -1776914]), $toNativeArray($kindInt32, [-25045300, -10191966, 15366585, 15166509, -13105086, 8423556, -29171540, 12361135, -18685978, 4578290])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [24579768, 3711570, 1342322, -11180126, -27005135, 14124956, -22544529, 14074919, 21964432, 8235257]), $toNativeArray($kindInt32, [-6528613, -2411497, 9442966, -5925588, 12025640, -1487420, -2981514, -1669206, 13006806, 2355433]), $toNativeArray($kindInt32, [-16304899, -13605259, -6632427, -5142349, 16974359, -10911083, 27202044, 1719366, 1141648, -12796236])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-12863944, -13219986, -8318266, -11018091, -6810145, -4843894, 13475066, -3133972, 32674895, 13715045]), $toNativeArray($kindInt32, [11423335, -5468059, 32344216, 8962751, 24989809, 9241752, -13265253, 16086212, -28740881, -15642093]), $toNativeArray($kindInt32, [-1409668, 12530728, -6368726, 10847387, 19531186, -14132160, -11709148, 7791794, -27245943, 4383347]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-28970898, 5271447, -1266009, -9736989, -12455236, 16732599, -4862407, -4906449, 27193557, 6245191]), $toNativeArray($kindInt32, [-15193956, 5362278, -1783893, 2695834, 4960227, 12840725, 23061898, 3260492, 22510453, 8577507]), $toNativeArray($kindInt32, [-12632451, 11257346, -32692994, 13548177, -721004, 10879011, 31168030, 13952092, -29571492, -3635906])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [3877321, -9572739, 32416692, 5405324, -11004407, -13656635, 3759769, 11935320, 5611860, 8164018]), $toNativeArray($kindInt32, [-16275802, 14667797, 15906460, 12155291, -22111149, -9039718, 32003002, -8832289, 5773085, -8422109]), $toNativeArray($kindInt32, [-23788118, -8254300, 1950875, 8937633, 18686727, 16459170, -905725, 12376320, 31632953, 190926])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-24593607, -16138885, -8423991, 13378746, 14162407, 6901328, -8288749, 4508564, -25341555, -3627528]), $toNativeArray($kindInt32, [8884438, -5884009, 6023974, 10104341, -6881569, -4941533, 18722941, -14786005, -1672488, 827625]), $toNativeArray($kindInt32, [-32720583, -16289296, -32503547, 7101210, 13354605, 2659080, -1800575, -14108036, -24878478, 1541286])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [2901347, -1117687, 3880376, -10059388, -17620940, -3612781, -21802117, -3567481, 20456845, -1885033]), $toNativeArray($kindInt32, [27019610, 12299467, -13658288, -1603234, -12861660, -4861471, -19540150, -5016058, 29439641, 15138866]), $toNativeArray($kindInt32, [21536104, -6626420, -32447818, -10690208, -22408077, 5175814, -5420040, -16361163, 7779328, 109896])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [30279744, 14648750, -8044871, 6425558, 13639621, -743509, 28698390, 12180118, 23177719, -554075]), $toNativeArray($kindInt32, [26572847, 3405927, -31701700, 12890905, -19265668, 5335866, -6493768, 2378492, 4439158, -13279347]), $toNativeArray($kindInt32, [-22716706, 3489070, -9225266, -332753, 18875722, -1140095, 14819434, -12731527, -17717757, -5461437])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-5056483, 16566551, 15953661, 3767752, -10436499, 15627060, -820954, 2177225, 8550082, -15114165]), $toNativeArray($kindInt32, [-18473302, 16596775, -381660, 15663611, 22860960, 15585581, -27844109, -3582739, -23260460, -8428588]), $toNativeArray($kindInt32, [-32480551, 15707275, -8205912, -5652081, 29464558, 2713815, -22725137, 15860482, -21902570, 1494193])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-19562091, -14087393, -25583872, -9299552, 13127842, 759709, 21923482, 16529112, 8742704, 12967017]), $toNativeArray($kindInt32, [-28464899, 1553205, 32536856, -10473729, -24691605, -406174, -8914625, -2933896, -29903758, 15553883]), $toNativeArray($kindInt32, [21877909, 3230008, 9881174, 10539357, -4797115, 2841332, 11543572, 14513274, 19375923, -12647961])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [8832269, -14495485, 13253511, 5137575, 5037871, 4078777, 24880818, -6222716, 2862653, 9455043]), $toNativeArray($kindInt32, [29306751, 5123106, 20245049, -14149889, 9592566, 8447059, -2077124, -2990080, 15511449, 4789663]), $toNativeArray($kindInt32, [-20679756, 7004547, 8824831, -9434977, -4045704, -3750736, -5754762, 108893, 23513200, 16652362]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-33256173, 4144782, -4476029, -6579123, 10770039, -7155542, -6650416, -12936300, -18319198, 10212860]), $toNativeArray($kindInt32, [2756081, 8598110, 7383731, -6859892, 22312759, -1105012, 21179801, 2600940, -9988298, -12506466]), $toNativeArray($kindInt32, [-24645692, 13317462, -30449259, -15653928, 21365574, -10869657, 11344424, 864440, -2499677, -16710063])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-26432803, 6148329, -17184412, -14474154, 18782929, -275997, -22561534, 211300, 2719757, 4940997]), $toNativeArray($kindInt32, [-1323882, 3911313, -6948744, 14759765, -30027150, 7851207, 21690126, 8518463, 26699843, 5276295]), $toNativeArray($kindInt32, [-13149873, -6429067, 9396249, 365013, 24703301, -10488939, 1321586, 149635, -15452774, 7159369])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [9987780, -3404759, 17507962, 9505530, 9731535, -2165514, 22356009, 8312176, 22477218, -8403385]), $toNativeArray($kindInt32, [18155857, -16504990, 19744716, 9006923, 15154154, -10538976, 24256460, -4864995, -22548173, 9334109]), $toNativeArray($kindInt32, [2986088, -4911893, 10776628, -3473844, 10620590, -7083203, -21413845, 14253545, -22587149, 536906])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [4377756, 8115836, 24567078, 15495314, 11625074, 13064599, 7390551, 10589625, 10838060, -15420424]), $toNativeArray($kindInt32, [-19342404, 867880, 9277171, -3218459, -14431572, -1986443, 19295826, -15796950, 6378260, 699185]), $toNativeArray($kindInt32, [7895026, 4057113, -7081772, -13077756, -17886831, -323126, -716039, 15693155, -5045064, -13373962])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-7737563, -5869402, -14566319, -7406919, 11385654, 13201616, 31730678, -10962840, -3918636, -9669325]), $toNativeArray($kindInt32, [10188286, -15770834, -7336361, 13427543, 22223443, 14896287, 30743455, 7116568, -21786507, 5427593]), $toNativeArray($kindInt32, [696102, 13206899, 27047647, -10632082, 15285305, -9853179, 10798490, -4578720, 19236243, 12477404])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-11229439, 11243796, -17054270, -8040865, -788228, -8167967, -3897669, 11180504, -23169516, 7733644]), $toNativeArray($kindInt32, [17800790, -14036179, -27000429, -11766671, 23887827, 3149671, 23466177, -10538171, 10322027, 15313801]), $toNativeArray($kindInt32, [26246234, 11968874, 32263343, -5468728, 6830755, -13323031, -15794704, -101982, -24449242, 10890804])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-31365647, 10271363, -12660625, -6267268, 16690207, -13062544, -14982212, 16484931, 25180797, -5334884]), $toNativeArray($kindInt32, [-586574, 10376444, -32586414, -11286356, 19801893, 10997610, 2276632, 9482883, 316878, 13820577]), $toNativeArray($kindInt32, [-9882808, -4510367, -2115506, 16457136, -11100081, 11674996, 30756178, -7515054, 30696930, -3712849])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [32988917, -9603412, 12499366, 7910787, -10617257, -11931514, -7342816, -9985397, -32349517, 7392473]), $toNativeArray($kindInt32, [-8855661, 15927861, 9866406, -3649411, -2396914, -16655781, -30409476, -9134995, 25112947, -2926644]), $toNativeArray($kindInt32, [-2504044, -436966, 25621774, -5678772, 15085042, -5479877, -24884878, -13526194, 5537438, -13914319]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-11225584, 2320285, -9584280, 10149187, -33444663, 5808648, -14876251, -1729667, 31234590, 6090599]), $toNativeArray($kindInt32, [-9633316, 116426, 26083934, 2897444, -6364437, -2688086, 609721, 15878753, -6970405, -9034768]), $toNativeArray($kindInt32, [-27757857, 247744, -15194774, -9002551, 23288161, -10011936, -23869595, 6503646, 20650474, 1804084])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-27589786, 15456424, 8972517, 8469608, 15640622, 4439847, 3121995, -10329713, 27842616, -202328]), $toNativeArray($kindInt32, [-15306973, 2839644, 22530074, 10026331, 4602058, 5048462, 28248656, 5031932, -11375082, 12714369]), $toNativeArray($kindInt32, [20807691, -7270825, 29286141, 11421711, -27876523, -13868230, -21227475, 1035546, -19733229, 12796920])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [12076899, -14301286, -8785001, -11848922, -25012791, 16400684, -17591495, -12899438, 3480665, -15182815]), $toNativeArray($kindInt32, [-32361549, 5457597, 28548107, 7833186, 7303070, -11953545, -24363064, -15921875, -33374054, 2771025]), $toNativeArray($kindInt32, [-21389266, 421932, 26597266, 6860826, 22486084, -6737172, -17137485, -4210226, -24552282, 15673397])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-20184622, 2338216, 19788685, -9620956, -4001265, -8740893, -20271184, 4733254, 3727144, -12934448]), $toNativeArray($kindInt32, [6120119, 814863, -11794402, -622716, 6812205, -15747771, 2019594, 7975683, 31123697, -10958981]), $toNativeArray($kindInt32, [30069250, -11435332, 30434654, 2958439, 18399564, -976289, 12296869, 9204260, -16432438, 9648165])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [32705432, -1550977, 30705658, 7451065, -11805606, 9631813, 3305266, 5248604, -26008332, -11377501]), $toNativeArray($kindInt32, [17219865, 2375039, -31570947, -5575615, -19459679, 9219903, 294711, 15298639, 2662509, -16297073]), $toNativeArray($kindInt32, [-1172927, -7558695, -4366770, -4287744, -21346413, -8434326, 32087529, -1222777, 32247248, -14389861])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [14312628, 1221556, 17395390, -8700143, -4945741, -8684635, -28197744, -9637817, -16027623, -13378845]), $toNativeArray($kindInt32, [-1428825, -9678990, -9235681, 6549687, -7383069, -468664, 23046502, 9803137, 17597934, 2346211]), $toNativeArray($kindInt32, [18510800, 15337574, 26171504, 981392, -22241552, 7827556, -23491134, -11323352, 3059833, -11782870])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [10141598, 6082907, 17829293, -1947643, 9830092, 13613136, -25556636, -5544586, -33502212, 3592096]), $toNativeArray($kindInt32, [33114168, -15889352, -26525686, -13343397, 33076705, 8716171, 1151462, 1521897, -982665, -6837803]), $toNativeArray($kindInt32, [-32939165, -4255815, 23947181, -324178, -33072974, -12305637, -16637686, 3891704, 26353178, 693168])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [30374239, 1595580, -16884039, 13186931, 4600344, 406904, 9585294, -400668, 31375464, 14369965]), $toNativeArray($kindInt32, [-14370654, -7772529, 1510301, 6434173, -18784789, -6262728, 32732230, -13108839, 17901441, 16011505]), $toNativeArray($kindInt32, [18171223, -11934626, -12500402, 15197122, -11038147, -15230035, -19172240, -16046376, 8764035, 12309598]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [5975908, -5243188, -19459362, -9681747, -11541277, 14015782, -23665757, 1228319, 17544096, -10593782]), $toNativeArray($kindInt32, [5811932, -1715293, 3442887, -2269310, -18367348, -8359541, -18044043, -15410127, -5565381, 12348900]), $toNativeArray($kindInt32, [-31399660, 11407555, 25755363, 6891399, -3256938, 14872274, -24849353, 8141295, -10632534, -585479])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-12675304, 694026, -5076145, 13300344, 14015258, -14451394, -9698672, -11329050, 30944593, 1130208]), $toNativeArray($kindInt32, [8247766, -6710942, -26562381, -7709309, -14401939, -14648910, 4652152, 2488540, 23550156, -271232]), $toNativeArray($kindInt32, [17294316, -3788438, 7026748, 15626851, 22990044, 113481, 2267737, -5908146, -408818, -137719])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [16091085, -16253926, 18599252, 7340678, 2137637, -1221657, -3364161, 14550936, 3260525, -7166271]), $toNativeArray($kindInt32, [-4910104, -13332887, 18550887, 10864893, -16459325, -7291596, -23028869, -13204905, -12748722, 2701326]), $toNativeArray($kindInt32, [-8574695, 16099415, 4629974, -16340524, -20786213, -6005432, -10018363, 9276971, 11329923, 1862132])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [14763076, -15903608, -30918270, 3689867, 3511892, 10313526, -21951088, 12219231, -9037963, -940300]), $toNativeArray($kindInt32, [8894987, -3446094, 6150753, 3013931, 301220, 15693451, -31981216, -2909717, -15438168, 11595570]), $toNativeArray($kindInt32, [15214962, 3537601, -26238722, -14058872, 4418657, -15230761, 13947276, 10730794, -13489462, -4363670])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-2538306, 7682793, 32759013, 263109, -29984731, -7955452, -22332124, -10188635, 977108, 699994]), $toNativeArray($kindInt32, [-12466472, 4195084, -9211532, 550904, -15565337, 12917920, 19118110, -439841, -30534533, -14337913]), $toNativeArray($kindInt32, [31788461, -14507657, 4799989, 7372237, 8808585, -14747943, 9408237, -10051775, 12493932, -5409317])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-25680606, 5260744, -19235809, -6284470, -3695942, 16566087, 27218280, 2607121, 29375955, 6024730]), $toNativeArray($kindInt32, [842132, -2794693, -4763381, -8722815, 26332018, -12405641, 11831880, 6985184, -9940361, 2854096]), $toNativeArray($kindInt32, [-4847262, -7969331, 2516242, -5847713, 9695691, -7221186, 16512645, 960770, 12121869, 16648078])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-15218652, 14667096, -13336229, 2013717, 30598287, -464137, -31504922, -7882064, 20237806, 2838411]), $toNativeArray($kindInt32, [-19288047, 4453152, 15298546, -16178388, 22115043, -15972604, 12544294, -13470457, 1068881, -12499905]), $toNativeArray($kindInt32, [-9558883, -16518835, 33238498, 13506958, 30505848, -1114596, -8486907, -2630053, 12521378, 4845654])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-28198521, 10744108, -2958380, 10199664, 7759311, -13088600, 3409348, -873400, -6482306, -12885870]), $toNativeArray($kindInt32, [-23561822, 6230156, -20382013, 10655314, -24040585, -11621172, 10477734, -1240216, -3113227, 13974498]), $toNativeArray($kindInt32, [12966261, 15550616, -32038948, -1615346, 21025980, -629444, 5642325, 7188737, 18895762, 12629579]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [14741879, -14946887, 22177208, -11721237, 1279741, 8058600, 11758140, 789443, 32195181, 3895677]), $toNativeArray($kindInt32, [10758205, 15755439, -4509950, 9243698, -4879422, 6879879, -2204575, -3566119, -8982069, 4429647]), $toNativeArray($kindInt32, [-2453894, 15725973, -20436342, -10410672, -5803908, -11040220, -7135870, -11642895, 18047436, -15281743])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-25173001, -11307165, 29759956, 11776784, -22262383, -15820455, 10993114, -12850837, -17620701, -9408468]), $toNativeArray($kindInt32, [21987233, 700364, -24505048, 14972008, -7774265, -5718395, 32155026, 2581431, -29958985, 8773375]), $toNativeArray($kindInt32, [-25568350, 454463, -13211935, 16126715, 25240068, 8594567, 20656846, 12017935, -7874389, -13920155])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [6028182, 6263078, -31011806, -11301710, -818919, 2461772, -31841174, -5468042, -1721788, -2776725]), $toNativeArray($kindInt32, [-12278994, 16624277, 987579, -5922598, 32908203, 1248608, 7719845, -4166698, 28408820, 6816612]), $toNativeArray($kindInt32, [-10358094, -8237829, 19549651, -12169222, 22082623, 16147817, 20613181, 13982702, -10339570, 5067943])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-30505967, -3821767, 12074681, 13582412, -19877972, 2443951, -19719286, 12746132, 5331210, -10105944]), $toNativeArray($kindInt32, [30528811, 3601899, -1957090, 4619785, -27361822, -15436388, 24180793, -12570394, 27679908, -1648928]), $toNativeArray($kindInt32, [9402404, -13957065, 32834043, 10838634, -26580150, -13237195, 26653274, -8685565, 22611444, -12715406])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [22190590, 1118029, 22736441, 15130463, -30460692, -5991321, 19189625, -4648942, 4854859, 6622139]), $toNativeArray($kindInt32, [-8310738, -2953450, -8262579, -3388049, -10401731, -271929, 13424426, -3567227, 26404409, 13001963]), $toNativeArray($kindInt32, [-31241838, -15415700, -2994250, 8939346, 11562230, -12840670, -26064365, -11621720, -15405155, 11020693])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [1866042, -7949489, -7898649, -10301010, 12483315, 13477547, 3175636, -12424163, 28761762, 1406734]), $toNativeArray($kindInt32, [-448555, -1777666, 13018551, 3194501, -9580420, -11161737, 24760585, -4347088, 25577411, -13378680]), $toNativeArray($kindInt32, [-24290378, 4759345, -690653, -1852816, 2066747, 10693769, -29595790, 9884936, -9368926, 4745410])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-9141284, 6049714, -19531061, -4341411, -31260798, 9944276, -15462008, -11311852, 10931924, -11931931]), $toNativeArray($kindInt32, [-16561513, 14112680, -8012645, 4817318, -8040464, -11414606, -22853429, 10856641, -20470770, 13434654]), $toNativeArray($kindInt32, [22759489, -10073434, -16766264, -1871422, 13637442, -10168091, 1765144, -12654326, 28445307, -5364710])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [29875063, 12493613, 2795536, -3786330, 1710620, 15181182, -10195717, -8788675, 9074234, 1167180]), $toNativeArray($kindInt32, [-26205683, 11014233, -9842651, -2635485, -26908120, 7532294, -18716888, -9535498, 3843903, 9367684]), $toNativeArray($kindInt32, [-10969595, -6403711, 9591134, 9582310, 11349256, 108879, 16235123, 8601684, -139197, 4242895]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [22092954, -13191123, -2042793, -11968512, 32186753, -11517388, -6574341, 2470660, -27417366, 16625501]), $toNativeArray($kindInt32, [-11057722, 3042016, 13770083, -9257922, 584236, -544855, -7770857, 2602725, -27351616, 14247413]), $toNativeArray($kindInt32, [6314175, -10264892, -32772502, 15957557, -10157730, 168750, -8618807, 14290061, 27108877, -1180880])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-8586597, -7170966, 13241782, 10960156, -32991015, -13794596, 33547976, -11058889, -27148451, 981874]), $toNativeArray($kindInt32, [22833440, 9293594, -32649448, -13618667, -9136966, 14756819, -22928859, -13970780, -10479804, -16197962]), $toNativeArray($kindInt32, [-7768587, 3326786, -28111797, 10783824, 19178761, 14905060, 22680049, 13906969, -15933690, 3797899])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [21721356, -4212746, -12206123, 9310182, -3882239, -13653110, 23740224, -2709232, 20491983, -8042152]), $toNativeArray($kindInt32, [9209270, -15135055, -13256557, -6167798, -731016, 15289673, 25947805, 15286587, 30997318, -6703063]), $toNativeArray($kindInt32, [7392032, 16618386, 23946583, -8039892, -13265164, -1533858, -14197445, -2321576, 17649998, -250080])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-9301088, -14193827, 30609526, -3049543, -25175069, -1283752, -15241566, -9525724, -2233253, 7662146]), $toNativeArray($kindInt32, [-17558673, 1763594, -33114336, 15908610, -30040870, -12174295, 7335080, -8472199, -3174674, 3440183]), $toNativeArray($kindInt32, [-19889700, -5977008, -24111293, -9688870, 10799743, -16571957, 40450, -4431835, 4862400, 1133])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-32856209, -7873957, -5422389, 14860950, -16319031, 7956142, 7258061, 311861, -30594991, -7379421]), $toNativeArray($kindInt32, [-3773428, -1565936, 28985340, 7499440, 24445838, 9325937, 29727763, 16527196, 18278453, 15405622]), $toNativeArray($kindInt32, [-4381906, 8508652, -19898366, -3674424, -5984453, 15149970, -13313598, 843523, -21875062, 13626197])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [2281448, -13487055, -10915418, -2609910, 1879358, 16164207, -10783882, 3953792, 13340839, 15928663]), $toNativeArray($kindInt32, [31727126, -7179855, -18437503, -8283652, 2875793, -16390330, -25269894, -7014826, -23452306, 5964753]), $toNativeArray($kindInt32, [4100420, -5959452, -17179337, 6017714, -18705837, 12227141, -26684835, 11344144, 2538215, -7570755])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-9433605, 6123113, 11159803, -2156608, 30016280, 14966241, -20474983, 1485421, -629256, -15958862]), $toNativeArray($kindInt32, [-26804558, 4260919, 11851389, 9658551, -32017107, 16367492, -20205425, -13191288, 11659922, -11115118]), $toNativeArray($kindInt32, [26180396, 10015009, -30844224, -8581293, 5418197, 9480663, 2231568, -10170080, 33100372, -1306171])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [15121113, -5201871, -10389905, 15427821, -27509937, -15992507, 21670947, 4486675, -5931810, -14466380]), $toNativeArray($kindInt32, [16166486, -9483733, -11104130, 6023908, -31926798, -1364923, 2340060, -16254968, -10735770, -10039824]), $toNativeArray($kindInt32, [28042865, -3557089, -12126526, 12259706, -3717498, -6945899, 6766453, -8689599, 18036436, 5803270]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-817581, 6763912, 11803561, 1585585, 10958447, -2671165, 23855391, 4598332, -6159431, -14117438]), $toNativeArray($kindInt32, [-31031306, -14256194, 17332029, -2383520, 31312682, -5967183, 696309, 50292, -20095739, 11763584]), $toNativeArray($kindInt32, [-594563, -2514283, -32234153, 12643980, 12650761, 14811489, 665117, -12613632, -19773211, -10713562])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [30464590, -11262872, -4127476, -12734478, 19835327, -7105613, -24396175, 2075773, -17020157, 992471]), $toNativeArray($kindInt32, [18357185, -6994433, 7766382, 16342475, -29324918, 411174, 14578841, 8080033, -11574335, -10601610]), $toNativeArray($kindInt32, [19598397, 10334610, 12555054, 2555664, 18821899, -10339780, 21873263, 16014234, 26224780, 16452269])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-30223925, 5145196, 5944548, 16385966, 3976735, 2009897, -11377804, -7618186, -20533829, 3698650]), $toNativeArray($kindInt32, [14187449, 3448569, -10636236, -10810935, -22663880, -3433596, 7268410, -10890444, 27394301, 12015369]), $toNativeArray($kindInt32, [19695761, 16087646, 28032085, 12999827, 6817792, 11427614, 20244189, -1312777, -13259127, -3402461])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [30860103, 12735208, -1888245, -4699734, -16974906, 2256940, -8166013, 12298312, -8550524, -10393462]), $toNativeArray($kindInt32, [-5719826, -11245325, -1910649, 15569035, 26642876, -7587760, -5789354, -15118654, -4976164, 12651793]), $toNativeArray($kindInt32, [-2848395, 9953421, 11531313, -5282879, 26895123, -12697089, -13118820, -16517902, 9768698, -2533218])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-24719459, 1894651, -287698, -4704085, 15348719, -8156530, 32767513, 12765450, 4940095, 10678226]), $toNativeArray($kindInt32, [18860224, 15980149, -18987240, -1562570, -26233012, -11071856, -7843882, 13944024, -24372348, 16582019]), $toNativeArray($kindInt32, [-15504260, 4970268, -29893044, 4175593, -20993212, -2199756, -11704054, 15444560, -11003761, 7989037])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [31490452, 5568061, -2412803, 2182383, -32336847, 4531686, -32078269, 6200206, -19686113, -14800171]), $toNativeArray($kindInt32, [-17308668, -15879940, -31522777, -2831, -32887382, 16375549, 8680158, -16371713, 28550068, -6857132]), $toNativeArray($kindInt32, [-28126887, -5688091, 16837845, -1820458, -6850681, 12700016, -30039981, 4364038, 1155602, 5988841])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [21890435, -13272907, -12624011, 12154349, -7831873, 15300496, 23148983, -4470481, 24618407, 8283181]), $toNativeArray($kindInt32, [-33136107, -10512751, 9975416, 6841041, -31559793, 16356536, 3070187, -7025928, 1466169, 10740210]), $toNativeArray($kindInt32, [-1509399, -15488185, -13503385, -10655916, 32799044, 909394, -13938903, -5779719, -32164649, -15327040])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [3960823, -14267803, -28026090, -15918051, -19404858, 13146868, 15567327, 951507, -3260321, -573935]), $toNativeArray($kindInt32, [24740841, 5052253, -30094131, 8961361, 25877428, 6165135, -24368180, 14397372, -7380369, -6144105]), $toNativeArray($kindInt32, [-28888365, 3510803, -28103278, -1158478, -11238128, -10631454, -15441463, -14453128, -1625486, -6494814]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [793299, -9230478, 8836302, -6235707, -27360908, -2369593, 33152843, -4885251, -9906200, -621852]), $toNativeArray($kindInt32, [5666233, 525582, 20782575, -8038419, -24538499, 14657740, 16099374, 1468826, -6171428, -15186581]), $toNativeArray($kindInt32, [-4859255, -3779343, -2917758, -6748019, 7778750, 11688288, -30404353, -9871238, -1558923, -9863646])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [10896332, -7719704, 824275, 472601, -19460308, 3009587, 25248958, 14783338, -30581476, -15757844]), $toNativeArray($kindInt32, [10566929, 12612572, -31944212, 11118703, -12633376, 12362879, 21752402, 8822496, 24003793, 14264025]), $toNativeArray($kindInt32, [27713862, -7355973, -11008240, 9227530, 27050101, 2504721, 23886875, -13117525, 13958495, -5732453])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-23481610, 4867226, -27247128, 3900521, 29838369, -8212291, -31889399, -10041781, 7340521, -15410068]), $toNativeArray($kindInt32, [4646514, -8011124, -22766023, -11532654, 23184553, 8566613, 31366726, -1381061, -15066784, -10375192]), $toNativeArray($kindInt32, [-17270517, 12723032, -16993061, 14878794, 21619651, -6197576, 27584817, 3093888, -8843694, 3849921])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-9064912, 2103172, 25561640, -15125738, -5239824, 9582958, 32477045, -9017955, 5002294, -15550259]), $toNativeArray($kindInt32, [-12057553, -11177906, 21115585, -13365155, 8808712, -12030708, 16489530, 13378448, -25845716, 12741426]), $toNativeArray($kindInt32, [-5946367, 10645103, -30911586, 15390284, -3286982, -7118677, 24306472, 15852464, 28834118, -7646072])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-17335748, -9107057, -24531279, 9434953, -8472084, -583362, -13090771, 455841, 20461858, 5491305]), $toNativeArray($kindInt32, [13669248, -16095482, -12481974, -10203039, -14569770, -11893198, -24995986, 11293807, -28588204, -9421832]), $toNativeArray($kindInt32, [28497928, 6272777, -33022994, 14470570, 8906179, -1225630, 18504674, -14165166, 29867745, -8795943])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-16207023, 13517196, -27799630, -13697798, 24009064, -6373891, -6367600, -13175392, 22853429, -4012011]), $toNativeArray($kindInt32, [24191378, 16712145, -13931797, 15217831, 14542237, 1646131, 18603514, -11037887, 12876623, -2112447]), $toNativeArray($kindInt32, [17902668, 4518229, -411702, -2829247, 26878217, 5258055, -12860753, 608397, 16031844, 3723494])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-28632773, 12763728, -20446446, 7577504, 33001348, -13017745, 17558842, -7872890, 23896954, -4314245]), $toNativeArray($kindInt32, [-20005381, -12011952, 31520464, 605201, 2543521, 5991821, -2945064, 7229064, -9919646, -8826859]), $toNativeArray($kindInt32, [28816045, 298879, -28165016, -15920938, 19000928, -1665890, -12680833, -2949325, -18051778, -2082915])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [16000882, -344896, 3493092, -11447198, -29504595, -13159789, 12577740, 16041268, -19715240, 7847707]), $toNativeArray($kindInt32, [10151868, 10572098, 27312476, 7922682, 14825339, 4723128, -32855931, -6519018, -10020567, 3852848]), $toNativeArray($kindInt32, [-11430470, 15697596, -21121557, -4420647, 5386314, 15063598, 16514493, -15932110, 29330899, -15076224]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-25499735, -4378794, -15222908, -6901211, 16615731, 2051784, 3303702, 15490, -27548796, 12314391]), $toNativeArray($kindInt32, [15683520, -6003043, 18109120, -9980648, 15337968, -5997823, -16717435, 15921866, 16103996, -3731215]), $toNativeArray($kindInt32, [-23169824, -10781249, 13588192, -1628807, -3798557, -1074929, -19273607, 5402699, -29815713, -9841101])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [23190676, 2384583, -32714340, 3462154, -29903655, -1529132, -11266856, 8911517, -25205859, 2739713]), $toNativeArray($kindInt32, [21374101, -3554250, -33524649, 9874411, 15377179, 11831242, -33529904, 6134907, 4931255, 11987849]), $toNativeArray($kindInt32, [-7732, -2978858, -16223486, 7277597, 105524, -322051, -31480539, 13861388, -30076310, 10117930])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-29501170, -10744872, -26163768, 13051539, -25625564, 5089643, -6325503, 6704079, 12890019, 15728940]), $toNativeArray($kindInt32, [-21972360, -11771379, -951059, -4418840, 14704840, 2695116, 903376, -10428139, 12885167, 8311031]), $toNativeArray($kindInt32, [-17516482, 5352194, 10384213, -13811658, 7506451, 13453191, 26423267, 4384730, 1888765, -5435404])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-25817338, -3107312, -13494599, -3182506, 30896459, -13921729, -32251644, -12707869, -19464434, -3340243]), $toNativeArray($kindInt32, [-23607977, -2665774, -526091, 4651136, 5765089, 4618330, 6092245, 14845197, 17151279, -9854116]), $toNativeArray($kindInt32, [-24830458, -12733720, -15165978, 10367250, -29530908, -265356, 22825805, -7087279, -16866484, 16176525])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-23583256, 6564961, 20063689, 3798228, -4740178, 7359225, 2006182, -10363426, -28746253, -10197509]), $toNativeArray($kindInt32, [-10626600, -4486402, -13320562, -5125317, 3432136, -6393229, 23632037, -1940610, 32808310, 1099883]), $toNativeArray($kindInt32, [15030977, 5768825, -27451236, -2887299, -6427378, -15361371, -15277896, -6809350, 2051441, -15225865])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-3362323, -7239372, 7517890, 9824992, 23555850, 295369, 5148398, -14154188, -22686354, 16633660]), $toNativeArray($kindInt32, [4577086, -16752288, 13249841, -15304328, 19958763, -14537274, 18559670, -10759549, 8402478, -9864273]), $toNativeArray($kindInt32, [-28406330, -1051581, -26790155, -907698, -17212414, -11030789, 9453451, -14980072, 17983010, 9967138])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-25762494, 6524722, 26585488, 9969270, 24709298, 1220360, -1677990, 7806337, 17507396, 3651560]), $toNativeArray($kindInt32, [-10420457, -4118111, 14584639, 15971087, -15768321, 8861010, 26556809, -5574557, -18553322, -11357135]), $toNativeArray($kindInt32, [2839101, 14284142, 4029895, 3472686, 14402957, 12689363, -26642121, 8459447, -5605463, -7621941])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-4839289, -3535444, 9744961, 2871048, 25113978, 3187018, -25110813, -849066, 17258084, -7977739]), $toNativeArray($kindInt32, [18164541, -10595176, -17154882, -1542417, 19237078, -9745295, 23357533, -15217008, 26908270, 12150756]), $toNativeArray($kindInt32, [-30264870, -7647865, 5112249, -7036672, -1499807, -6974257, 43168, -5537701, -32302074, 16215819]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-6898905, 9824394, -12304779, -4401089, -31397141, -6276835, 32574489, 12532905, -7503072, -8675347]), $toNativeArray($kindInt32, [-27343522, -16515468, -27151524, -10722951, 946346, 16291093, 254968, 7168080, 21676107, -1943028]), $toNativeArray($kindInt32, [21260961, -8424752, -16831886, -11920822, -23677961, 3968121, -3651949, -6215466, -3556191, -7913075])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [16544754, 13250366, -16804428, 15546242, -4583003, 12757258, -2462308, -8680336, -18907032, -9662799]), $toNativeArray($kindInt32, [-2415239, -15577728, 18312303, 4964443, -15272530, -12653564, 26820651, 16690659, 25459437, -4564609]), $toNativeArray($kindInt32, [-25144690, 11425020, 28423002, -11020557, -6144921, -15826224, 9142795, -2391602, -6432418, -1644817])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-23104652, 6253476, 16964147, -3768872, -25113972, -12296437, -27457225, -16344658, 6335692, 7249989]), $toNativeArray($kindInt32, [-30333227, 13979675, 7503222, -12368314, -11956721, -4621693, -30272269, 2682242, 25993170, -12478523]), $toNativeArray($kindInt32, [4364628, 5930691, 32304656, -10044554, -8054781, 15091131, 22857016, -10598955, 31820368, 15075278])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [31879134, -8918693, 17258761, 90626, -8041836, -4917709, 24162788, -9650886, -17970238, 12833045]), $toNativeArray($kindInt32, [19073683, 14851414, -24403169, -11860168, 7625278, 11091125, -19619190, 2074449, -9413939, 14905377]), $toNativeArray($kindInt32, [24483667, -11935567, -2518866, -11547418, -1553130, 15355506, -25282080, 9253129, 27628530, -7555480])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [17597607, 8340603, 19355617, 552187, 26198470, -3176583, 4593324, -9157582, -14110875, 15297016]), $toNativeArray($kindInt32, [510886, 14337390, -31785257, 16638632, 6328095, 2713355, -20217417, -11864220, 8683221, 2921426]), $toNativeArray($kindInt32, [18606791, 11874196, 27155355, -5281482, -24031742, 6265446, -25178240, -1278924, 4674690, 13890525])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [13609624, 13069022, -27372361, -13055908, 24360586, 9592974, 14977157, 9835105, 4389687, 288396]), $toNativeArray($kindInt32, [9922506, -519394, 13613107, 5883594, -18758345, -434263, -12304062, 8317628, 23388070, 16052080]), $toNativeArray($kindInt32, [12720016, 11937594, -31970060, -5028689, 26900120, 8561328, -20155687, -11632979, -14754271, -10812892])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [15961858, 14150409, 26716931, -665832, -22794328, 13603569, 11829573, 7467844, -28822128, 929275]), $toNativeArray($kindInt32, [11038231, -11582396, -27310482, -7316562, -10498527, -16307831, -23479533, -9371869, -21393143, 2465074]), $toNativeArray($kindInt32, [20017163, -4323226, 27915242, 1529148, 12396362, 15675764, 13817261, -9658066, 2463391, -4622140])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-16358878, -12663911, -12065183, 4996454, -1256422, 1073572, 9583558, 12851107, 4003896, 12673717]), $toNativeArray($kindInt32, [-1731589, -15155870, -3262930, 16143082, 19294135, 13385325, 14741514, -9103726, 7903886, 2348101]), $toNativeArray($kindInt32, [24536016, -16515207, 12715592, -3862155, 1511293, 10047386, -3842346, -7129159, -28377538, 10048127]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-12622226, -6204820, 30718825, 2591312, -10617028, 12192840, 18873298, -7297090, -32297756, 15221632]), $toNativeArray($kindInt32, [-26478122, -11103864, 11546244, -1852483, 9180880, 7656409, -21343950, 2095755, 29769758, 6593415]), $toNativeArray($kindInt32, [-31994208, -2907461, 4176912, 3264766, 12538965, -868111, 26312345, -6118678, 30958054, 8292160])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [31429822, -13959116, 29173532, 15632448, 12174511, -2760094, 32808831, 3977186, 26143136, -3148876]), $toNativeArray($kindInt32, [22648901, 1402143, -22799984, 13746059, 7936347, 365344, -8668633, -1674433, -3758243, -2304625]), $toNativeArray($kindInt32, [-15491917, 8012313, -2514730, -12702462, -23965846, -10254029, -1612713, -1535569, -16664475, 8194478])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [27338066, -7507420, -7414224, 10140405, -19026427, -6589889, 27277191, 8855376, 28572286, 3005164]), $toNativeArray($kindInt32, [26287124, 4821776, 25476601, -4145903, -3764513, -15788984, -18008582, 1182479, -26094821, -13079595]), $toNativeArray($kindInt32, [-7171154, 3178080, 23970071, 6201893, -17195577, -4489192, -21876275, -13982627, 32208683, -1198248])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-16657702, 2817643, -10286362, 14811298, 6024667, 13349505, -27315504, -10497842, -27672585, -11539858]), $toNativeArray($kindInt32, [15941029, -9405932, -21367050, 8062055, 31876073, -238629, -15278393, -1444429, 15397331, -4130193]), $toNativeArray($kindInt32, [8934485, -13485467, -23286397, -13423241, -32446090, 14047986, 31170398, -1441021, -27505566, 15087184])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-18357243, -2156491, 24524913, -16677868, 15520427, -6360776, -15502406, 11461896, 16788528, -5868942]), $toNativeArray($kindInt32, [-1947386, 16013773, 21750665, 3714552, -17401782, -16055433, -3770287, -10323320, 31322514, -11615635]), $toNativeArray($kindInt32, [21426655, -5650218, -13648287, -5347537, -28812189, -4920970, -18275391, -14621414, 13040862, -12112948])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [11293895, 12478086, -27136401, 15083750, -29307421, 14748872, 14555558, -13417103, 1613711, 4896935]), $toNativeArray($kindInt32, [-25894883, 15323294, -8489791, -8057900, 25967126, -13425460, 2825960, -4897045, -23971776, -11267415]), $toNativeArray($kindInt32, [-15924766, -5229880, -17443532, 6410664, 3622847, 10243618, 20615400, 12405433, -23753030, -8436416])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-7091295, 12556208, -20191352, 9025187, -17072479, 4333801, 4378436, 2432030, 23097949, -566018]), $toNativeArray($kindInt32, [4565804, -16025654, 20084412, -7842817, 1724999, 189254, 24767264, 10103221, -18512313, 2424778]), $toNativeArray($kindInt32, [366633, -11976806, 8173090, -6890119, 30788634, 5745705, -7168678, 1344109, -3642553, 12412659])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-24001791, 7690286, 14929416, -168257, -32210835, -13412986, 24162697, -15326504, -3141501, 11179385]), $toNativeArray($kindInt32, [18289522, -14724954, 8056945, 16430056, -21729724, 7842514, -6001441, -1486897, -18684645, -11443503]), $toNativeArray($kindInt32, [476239, 6601091, -6152790, -9723375, 17503545, -4863900, 27672959, 13403813, 11052904, 5219329]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [20678546, -8375738, -32671898, 8849123, -5009758, 14574752, 31186971, -3973730, 9014762, -8579056]), $toNativeArray($kindInt32, [-13644050, -10350239, -15962508, 5075808, -1514661, -11534600, -33102500, 9160280, 8473550, -3256838]), $toNativeArray($kindInt32, [24900749, 14435722, 17209120, -15292541, -22592275, 9878983, -7689309, -16335821, -24568481, 11788948])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-3118155, -11395194, -13802089, 14797441, 9652448, -6845904, -20037437, 10410733, -24568470, -1458691]), $toNativeArray($kindInt32, [-15659161, 16736706, -22467150, 10215878, -9097177, 7563911, 11871841, -12505194, -18513325, 8464118]), $toNativeArray($kindInt32, [-23400612, 8348507, -14585951, -861714, -3950205, -6373419, 14325289, 8628612, 33313881, -8370517])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-20186973, -4967935, 22367356, 5271547, -1097117, -4788838, -24805667, -10236854, -8940735, -5818269]), $toNativeArray($kindInt32, [-6948785, -1795212, -32625683, -16021179, 32635414, -7374245, 15989197, -12838188, 28358192, -4253904]), $toNativeArray($kindInt32, [-23561781, -2799059, -32351682, -1661963, -9147719, 10429267, -16637684, 4072016, -5351664, 5596589])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-28236598, -3390048, 12312896, 6213178, 3117142, 16078565, 29266239, 2557221, 1768301, 15373193]), $toNativeArray($kindInt32, [-7243358, -3246960, -4593467, -7553353, -127927, -912245, -1090902, -4504991, -24660491, 3442910]), $toNativeArray($kindInt32, [-30210571, 5124043, 14181784, 8197961, 18964734, -11939093, 22597931, 7176455, -18585478, 13365930])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-7877390, -1499958, 8324673, 4690079, 6261860, 890446, 24538107, -8570186, -9689599, -3031667]), $toNativeArray($kindInt32, [25008904, -10771599, -4305031, -9638010, 16265036, 15721635, 683793, -11823784, 15723479, -15163481]), $toNativeArray($kindInt32, [-9660625, 12374379, -27006999, -7026148, -7724114, -12314514, 11879682, 5400171, 519526, -1235876])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [22258397, -16332233, -7869817, 14613016, -22520255, -2950923, -20353881, 7315967, 16648397, 7605640]), $toNativeArray($kindInt32, [-8081308, -8464597, -8223311, 9719710, 19259459, -15348212, 23994942, -5281555, -9468848, 4763278]), $toNativeArray($kindInt32, [-21699244, 9220969, -15730624, 1084137, -25476107, -2852390, 31088447, -7764523, -11356529, 728112])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [26047220, -11751471, -6900323, -16521798, 24092068, 9158119, -4273545, -12555558, -29365436, -5498272]), $toNativeArray($kindInt32, [17510331, -322857, 5854289, 8403524, 17133918, -3112612, -28111007, 12327945, 10750447, 10014012]), $toNativeArray($kindInt32, [-10312768, 3936952, 9156313, -8897683, 16498692, -994647, -27481051, -666732, 3424691, 7540221])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [30322361, -6964110, 11361005, -4143317, 7433304, 4989748, -7071422, -16317219, -9244265, 15258046]), $toNativeArray($kindInt32, [13054562, -2779497, 19155474, 469045, -12482797, 4566042, 5631406, 2711395, 1062915, -5136345]), $toNativeArray($kindInt32, [-19240248, -11254599, -29509029, -7499965, -5835763, 13005411, -6066489, 12194497, 32960380, 1459310]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [19852034, 7027924, 23669353, 10020366, 8586503, -6657907, 394197, -6101885, 18638003, -11174937]), $toNativeArray($kindInt32, [31395534, 15098109, 26581030, 8030562, -16527914, -5007134, 9012486, -7584354, -6643087, -5442636]), $toNativeArray($kindInt32, [-9192165, -2347377, -1997099, 4529534, 25766844, 607986, -13222, 9677543, -32294889, -6456008])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-2444496, -149937, 29348902, 8186665, 1873760, 12489863, -30934579, -7839692, -7852844, -8138429]), $toNativeArray($kindInt32, [-15236356, -15433509, 7766470, 746860, 26346930, -10221762, -27333451, 10754588, -9431476, 5203576]), $toNativeArray($kindInt32, [31834314, 14135496, -770007, 5159118, 20917671, -16768096, -7467973, -7337524, 31809243, 7347066])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-9606723, -11874240, 20414459, 13033986, 13716524, -11691881, 19797970, -12211255, 15192876, -2087490]), $toNativeArray($kindInt32, [-12663563, -2181719, 1168162, -3804809, 26747877, -14138091, 10609330, 12694420, 33473243, -13382104]), $toNativeArray($kindInt32, [33184999, 11180355, 15832085, -11385430, -1633671, 225884, 15089336, -11023903, -6135662, 14480053])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [31308717, -5619998, 31030840, -1897099, 15674547, -6582883, 5496208, 13685227, 27595050, 8737275]), $toNativeArray($kindInt32, [-20318852, -15150239, 10933843, -16178022, 8335352, -7546022, -31008351, -12610604, 26498114, 66511]), $toNativeArray($kindInt32, [22644454, -8761729, -16671776, 4884562, -3105614, -13559366, 30540766, -4286747, -13327787, -7515095])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-28017847, 9834845, 18617207, -2681312, -3401956, -13307506, 8205540, 13585437, -17127465, 15115439]), $toNativeArray($kindInt32, [23711543, -672915, 31206561, -8362711, 6164647, -9709987, -33535882, -1426096, 8236921, 16492939]), $toNativeArray($kindInt32, [-23910559, -13515526, -26299483, -4503841, 25005590, -7687270, 19574902, 10071562, 6708380, -6222424])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [2101391, -4930054, 19702731, 2367575, -15427167, 1047675, 5301017, 9328700, 29955601, -11678310]), $toNativeArray($kindInt32, [3096359, 9271816, -21620864, -15521844, -14847996, -7592937, -25892142, -12635595, -9917575, 6216608]), $toNativeArray($kindInt32, [-32615849, 338663, -25195611, 2510422, -29213566, -13820213, 24822830, -6146567, -26767480, 7525079])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-23066649, -13985623, 16133487, -7896178, -3389565, 778788, -910336, -2782495, -19386633, 11994101]), $toNativeArray($kindInt32, [21691500, -13624626, -641331, -14367021, 3285881, -3483596, -25064666, 9718258, -7477437, 13381418]), $toNativeArray($kindInt32, [18445390, -4202236, 14979846, 11622458, -1727110, -3582980, 23111648, -6375247, 28535282, 15779576])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [30098053, 3089662, -9234387, 16662135, -21306940, 11308411, -14068454, 12021730, 9955285, -16303356]), $toNativeArray($kindInt32, [9734894, -14576830, -7473633, -9138735, 2060392, 11313496, -18426029, 9924399, 20194861, 13380996]), $toNativeArray($kindInt32, [-26378102, -7965207, -22167821, 15789297, -18055342, -6168792, -1984914, 15707771, 26342023, 10146099]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-26016874, -219943, 21339191, -41388, 19745256, -2878700, -29637280, 2227040, 21612326, -545728]), $toNativeArray($kindInt32, [-13077387, 1184228, 23562814, -5970442, -20351244, -6348714, 25764461, 12243797, -20856566, 11649658]), $toNativeArray($kindInt32, [-10031494, 11262626, 27384172, 2271902, 26947504, -15997771, 39944, 6114064, 33514190, 2333242])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-21433588, -12421821, 8119782, 7219913, -21830522, -9016134, -6679750, -12670638, 24350578, -13450001]), $toNativeArray($kindInt32, [-4116307, -11271533, -23886186, 4843615, -30088339, 690623, -31536088, -10406836, 8317860, 12352766]), $toNativeArray($kindInt32, [18200138, -14475911, -33087759, -2696619, -23702521, -9102511, -23552096, -2287550, 20712163, 6719373])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [26656208, 6075253, -7858556, 1886072, -28344043, 4262326, 11117530, -3763210, 26224235, -3297458]), $toNativeArray($kindInt32, [-17168938, -14854097, -3395676, -16369877, -19954045, 14050420, 21728352, 9493610, 18620611, -16428628]), $toNativeArray($kindInt32, [-13323321, 13325349, 11432106, 5964811, 18609221, 6062965, -5269471, -9725556, -30701573, -16479657])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-23860538, -11233159, 26961357, 1640861, -32413112, -16737940, 12248509, -5240639, 13735342, 1934062]), $toNativeArray($kindInt32, [25089769, 6742589, 17081145, -13406266, 21909293, -16067981, -15136294, -3765346, -21277997, 5473616]), $toNativeArray($kindInt32, [31883677, -7961101, 1083432, -11572403, 22828471, 13290673, -7125085, 12469656, 29111212, -5451014])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [24244947, -15050407, -26262976, 2791540, -14997599, 16666678, 24367466, 6388839, -10295587, 452383]), $toNativeArray($kindInt32, [-25640782, -3417841, 5217916, 16224624, 19987036, -4082269, -24236251, -5915248, 15766062, 8407814]), $toNativeArray($kindInt32, [-20406999, 13990231, 15495425, 16395525, 5377168, 15166495, -8917023, -4388953, -8067909, 2276718])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [30157918, 12924066, -17712050, 9245753, 19895028, 3368142, -23827587, 5096219, 22740376, -7303417]), $toNativeArray($kindInt32, [2041139, -14256350, 7783687, 13876377, -25946985, -13352459, 24051124, 13742383, -15637599, 13295222]), $toNativeArray($kindInt32, [33338237, -8505733, 12532113, 7977527, 9106186, -1715251, -17720195, -4612972, -4451357, -14669444])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-20045281, 5454097, -14346548, 6447146, 28862071, 1883651, -2469266, -4141880, 7770569, 9620597]), $toNativeArray($kindInt32, [23208068, 7979712, 33071466, 8149229, 1758231, -10834995, 30945528, -1694323, -33502340, -14767970]), $toNativeArray($kindInt32, [1439958, -16270480, -1079989, -793782, 4625402, 10647766, -5043801, 1220118, 30494170, -11440799])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-5037580, -13028295, -2970559, -3061767, 15640974, -6701666, -26739026, 926050, -1684339, -13333647]), $toNativeArray($kindInt32, [13908495, -3549272, 30919928, -6273825, -21521863, 7989039, 9021034, 9078865, 3353509, 4033511]), $toNativeArray($kindInt32, [-29663431, -15113610, 32259991, -344482, 24295849, -12912123, 23161163, 8839127, 27485041, 7356032]))]), $toNativeArray($kindStruct, [new preComputedGroupElement.ptr($toNativeArray($kindInt32, [9661027, 705443, 11980065, -5370154, -1628543, 14661173, -6346142, 2625015, 28431036, -16771834]), $toNativeArray($kindInt32, [-23839233, -8311415, -25945511, 7480958, -17681669, -8354183, -22545972, 14150565, 15970762, 4099461]), $toNativeArray($kindInt32, [29262576, 16756590, 26350592, -8793563, 8529671, -11208050, 13617293, -9937143, 11465739, 8317062])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-25493081, -6962928, 32500200, -9419051, -23038724, -2302222, 14898637, 3848455, 20969334, -5157516]), $toNativeArray($kindInt32, [-20384450, -14347713, -18336405, 13884722, -33039454, 2842114, -21610826, -3649888, 11177095, 14989547]), $toNativeArray($kindInt32, [-24496721, -11716016, 16959896, 2278463, 12066309, 10137771, 13515641, 2581286, -28487508, 9930240])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-17751622, -2097826, 16544300, -13009300, -15914807, -14949081, 18345767, -13403753, 16291481, -5314038]), $toNativeArray($kindInt32, [-33229194, 2553288, 32678213, 9875984, 8534129, 6889387, -9676774, 6957617, 4368891, 9788741]), $toNativeArray($kindInt32, [16660756, 7281060, -10830758, 12911820, 20108584, -8101676, -21722536, -8613148, 16250552, -11111103])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-19765507, 2390526, -16551031, 14161980, 1905286, 6414907, 4689584, 10604807, -30190403, 4782747]), $toNativeArray($kindInt32, [-1354539, 14736941, -7367442, -13292886, 7710542, -14155590, -9981571, 4383045, 22546403, 437323]), $toNativeArray($kindInt32, [31665577, -12180464, -16186830, 1491339, -18368625, 3294682, 27343084, 2786261, -30633590, -14097016])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-14467279, -683715, -33374107, 7448552, 19294360, 14334329, -19690631, 2355319, -19284671, -6114373]), $toNativeArray($kindInt32, [15121312, -15796162, 6377020, -6031361, -10798111, -12957845, 18952177, 15496498, -29380133, 11754228]), $toNativeArray($kindInt32, [-2637277, -13483075, 8488727, -14303896, 12728761, -1622493, 7141596, 11724556, 22761615, -10134141])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [16918416, 11729663, -18083579, 3022987, -31015732, -13339659, -28741185, -12227393, 32851222, 11717399]), $toNativeArray($kindInt32, [11166634, 7338049, -6722523, 4531520, -29468672, -7302055, 31474879, 3483633, -1193175, -4030831]), $toNativeArray($kindInt32, [-185635, 9921305, 31456609, -13536438, -12013818, 13348923, 33142652, 6546660, -19985279, -3948376])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-32460596, 11266712, -11197107, -7899103, 31703694, 3855903, -8537131, -12833048, -30772034, -15486313]), $toNativeArray($kindInt32, [-18006477, 12709068, 3991746, -6479188, -21491523, -10550425, -31135347, -16049879, 10928917, 3011958]), $toNativeArray($kindInt32, [-6957757, -15594337, 31696059, 334240, 29576716, 14796075, -30831056, -12805180, 18008031, 10258577])), new preComputedGroupElement.ptr($toNativeArray($kindInt32, [-22448644, 15655569, 7018479, -4410003, -30314266, -1201591, -1853465, 1367120, 25127874, 6671743]), $toNativeArray($kindInt32, [29701166, -14373934, -10878120, 9279288, -17568, 13127210, 21382910, 11042292, 25838796, 4642684]), $toNativeArray($kindInt32, [-20430234, 14955537, -24126347, 8124619, -5369288, -5990470, 30468147, -13900640, 18423289, 4177476]))])]);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/onet.v1/crypto"] = (function() {
+ var $pkg = {}, $init, bytes, encoding, base64, hex, errors, abstract$1, random, log, hash, io, os, reflect, strings, sliceType$1, ptrType, Read64Pub, Write64Pub, write64;
+ bytes = $packages["bytes"];
+ encoding = $packages["encoding"];
+ base64 = $packages["encoding/base64"];
+ hex = $packages["encoding/hex"];
+ errors = $packages["errors"];
+ abstract$1 = $packages["gopkg.in/dedis/crypto.v0/abstract"];
+ random = $packages["gopkg.in/dedis/crypto.v0/random"];
+ log = $packages["gopkg.in/dedis/onet.v1/log"];
+ hash = $packages["hash"];
+ io = $packages["io"];
+ os = $packages["os"];
+ reflect = $packages["reflect"];
+ strings = $packages["strings"];
+ sliceType$1 = $sliceType($emptyInterface);
+ ptrType = $ptrType(abstract$1.Point);
+ Read64Pub = function(suite, r) {
+ var $ptr, _r, _r$1, dec, err, public$1, r, suite, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; dec = $f.dec; err = $f.err; public$1 = $f.public$1; r = $f.r; suite = $f.suite; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ public$1 = [public$1];
+ _r = suite.Point(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ public$1[0] = _r;
+ dec = base64.NewDecoder(base64.StdEncoding, r);
+ _r$1 = suite.Read(dec, new sliceType$1([(public$1.$ptr || (public$1.$ptr = new ptrType(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, public$1)))])); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ err = _r$1;
+ $s = -1; return [public$1[0], err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Read64Pub }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.dec = dec; $f.err = err; $f.public$1 = public$1; $f.r = r; $f.suite = suite; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Read64Pub = Read64Pub;
+ Write64Pub = function(suite, w, point) {
+ var $ptr, _r, enc, point, suite, w, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; enc = $f.enc; point = $f.point; suite = $f.suite; w = $f.w; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ enc = base64.NewEncoder(base64.StdEncoding, w);
+ _r = write64(suite, enc, new sliceType$1([point])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Write64Pub }; } $f.$ptr = $ptr; $f._r = _r; $f.enc = enc; $f.point = point; $f.suite = suite; $f.w = w; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Write64Pub = Write64Pub;
+ write64 = function(suite, wc, data) {
+ var $ptr, _r, _r$1, data, err, suite, wc, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; data = $f.data; err = $f.err; suite = $f.suite; wc = $f.wc; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = suite.Write(wc, new sliceType$1([data])); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ err = _r;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ _r$1 = wc.Close(); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: write64 }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.data = data; $f.err = err; $f.suite = suite; $f.wc = wc; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = encoding.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = base64.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hex.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = abstract$1.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = random.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = log.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = hash.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = os.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = reflect.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/onet.v1/network"] = (function() {
+ var $pkg = {}, $init, bytes, binary, errors, fmt, protobuf, uuid, abstract$1, ed25519, crypto, log, io, net, reflect, regexp, strconv, strings, sync, time, ConnType, Address, Message, MessageTypeID, typeRegistry, LocalManager, endpoint, LocalConn, Conn, Envelope, ServerIdentity, ServerIdentityID, ServerIdentityToml, counterSafe, arrayType, sliceType, sliceType$2, sliceType$3, arrayType$1, ptrType$1, ptrType$2, ptrType$3, ptrType$5, ptrType$6, ptrType$7, ptrType$8, ptrType$15, mapType$1, funcType$2, mapType$2, mapType$3, chanType, chanType$1, ptrType$17, ptrType$18, globalOrder, registry, defaultLocalManager, x, _r, connType, RegisterMessage, computeMessageType, MessageType, Marshal, Unmarshal, DefaultConstructors, newTypeRegistry, NewLocalManager;
+ bytes = $packages["bytes"];
+ binary = $packages["encoding/binary"];
+ errors = $packages["errors"];
+ fmt = $packages["fmt"];
+ protobuf = $packages["github.com/dedis/protobuf"];
+ uuid = $packages["github.com/satori/go.uuid"];
+ abstract$1 = $packages["gopkg.in/dedis/crypto.v0/abstract"];
+ ed25519 = $packages["gopkg.in/dedis/crypto.v0/ed25519"];
+ crypto = $packages["gopkg.in/dedis/onet.v1/crypto"];
+ log = $packages["gopkg.in/dedis/onet.v1/log"];
+ io = $packages["io"];
+ net = $packages["net"];
+ reflect = $packages["reflect"];
+ regexp = $packages["regexp"];
+ strconv = $packages["strconv"];
+ strings = $packages["strings"];
+ sync = $packages["sync"];
+ time = $packages["time"];
+ ConnType = $pkg.ConnType = $newType(8, $kindString, "network.ConnType", true, "gopkg.in/dedis/onet.v1/network", true, null);
+ Address = $pkg.Address = $newType(8, $kindString, "network.Address", true, "gopkg.in/dedis/onet.v1/network", true, null);
+ Message = $pkg.Message = $newType(8, $kindInterface, "network.Message", true, "gopkg.in/dedis/onet.v1/network", true, null);
+ MessageTypeID = $pkg.MessageTypeID = $newType(16, $kindArray, "network.MessageTypeID", true, "gopkg.in/dedis/onet.v1/network", true, null);
+ typeRegistry = $pkg.typeRegistry = $newType(0, $kindStruct, "network.typeRegistry", true, "gopkg.in/dedis/onet.v1/network", false, function(types_, lock_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.types = false;
+ this.lock = new sync.Mutex.ptr(0, 0);
+ return;
+ }
+ this.types = types_;
+ this.lock = lock_;
+ });
+ LocalManager = $pkg.LocalManager = $newType(0, $kindStruct, "network.LocalManager", true, "gopkg.in/dedis/onet.v1/network", true, function(conns_, Mutex_, listening_, counter_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.conns = false;
+ this.Mutex = new sync.Mutex.ptr(0, 0);
+ this.listening = false;
+ this.counter = new $Uint64(0, 0);
+ return;
+ }
+ this.conns = conns_;
+ this.Mutex = Mutex_;
+ this.listening = listening_;
+ this.counter = counter_;
+ });
+ endpoint = $pkg.endpoint = $newType(0, $kindStruct, "network.endpoint", true, "gopkg.in/dedis/onet.v1/network", false, function(addr_, uid_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.addr = "";
+ this.uid = new $Uint64(0, 0);
+ return;
+ }
+ this.addr = addr_;
+ this.uid = uid_;
+ });
+ LocalConn = $pkg.LocalConn = $newType(0, $kindStruct, "network.LocalConn", true, "gopkg.in/dedis/onet.v1/network", true, function(local_, remote_, incomingQueue_, outgoingQueue_, closeCh_, closeConfirm_, counterSafe_, manager_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.local = new endpoint.ptr("", new $Uint64(0, 0));
+ this.remote = new endpoint.ptr("", new $Uint64(0, 0));
+ this.incomingQueue = $chanNil;
+ this.outgoingQueue = $chanNil;
+ this.closeCh = $chanNil;
+ this.closeConfirm = $chanNil;
+ this.counterSafe = new counterSafe.ptr(new $Uint64(0, 0), new $Uint64(0, 0), new sync.Mutex.ptr(0, 0));
+ this.manager = ptrType$6.nil;
+ return;
+ }
+ this.local = local_;
+ this.remote = remote_;
+ this.incomingQueue = incomingQueue_;
+ this.outgoingQueue = outgoingQueue_;
+ this.closeCh = closeCh_;
+ this.closeConfirm = closeConfirm_;
+ this.counterSafe = counterSafe_;
+ this.manager = manager_;
+ });
+ Conn = $pkg.Conn = $newType(8, $kindInterface, "network.Conn", true, "gopkg.in/dedis/onet.v1/network", true, null);
+ Envelope = $pkg.Envelope = $newType(0, $kindStruct, "network.Envelope", true, "gopkg.in/dedis/onet.v1/network", true, function(ServerIdentity_, MsgType_, Msg_, Constructors_, err_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.ServerIdentity = ptrType$8.nil;
+ this.MsgType = arrayType.zero();
+ this.Msg = $ifaceNil;
+ this.Constructors = false;
+ this.err = $ifaceNil;
+ return;
+ }
+ this.ServerIdentity = ServerIdentity_;
+ this.MsgType = MsgType_;
+ this.Msg = Msg_;
+ this.Constructors = Constructors_;
+ this.err = err_;
+ });
+ ServerIdentity = $pkg.ServerIdentity = $newType(0, $kindStruct, "network.ServerIdentity", true, "gopkg.in/dedis/onet.v1/network", true, function(Public_, ID_, Address_, Description_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Public = $ifaceNil;
+ this.ID = arrayType.zero();
+ this.Address = "";
+ this.Description = "";
+ return;
+ }
+ this.Public = Public_;
+ this.ID = ID_;
+ this.Address = Address_;
+ this.Description = Description_;
+ });
+ ServerIdentityID = $pkg.ServerIdentityID = $newType(16, $kindArray, "network.ServerIdentityID", true, "gopkg.in/dedis/onet.v1/network", true, null);
+ ServerIdentityToml = $pkg.ServerIdentityToml = $newType(0, $kindStruct, "network.ServerIdentityToml", true, "gopkg.in/dedis/onet.v1/network", true, function(Public_, Address_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.Public = "";
+ this.Address = "";
+ return;
+ }
+ this.Public = Public_;
+ this.Address = Address_;
+ });
+ counterSafe = $pkg.counterSafe = $newType(0, $kindStruct, "network.counterSafe", true, "gopkg.in/dedis/onet.v1/network", false, function(tx_, rx_, Mutex_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.tx = new $Uint64(0, 0);
+ this.rx = new $Uint64(0, 0);
+ this.Mutex = new sync.Mutex.ptr(0, 0);
+ return;
+ }
+ this.tx = tx_;
+ this.rx = rx_;
+ this.Mutex = Mutex_;
+ });
+ arrayType = $arrayType($Uint8, 16);
+ sliceType = $sliceType(ConnType);
+ sliceType$2 = $sliceType($emptyInterface);
+ sliceType$3 = $sliceType($Uint8);
+ arrayType$1 = $arrayType($Uint8, 64);
+ ptrType$1 = $ptrType(MessageTypeID);
+ ptrType$2 = $ptrType(abstract$1.Point);
+ ptrType$3 = $ptrType(abstract$1.Scalar);
+ ptrType$5 = $ptrType(LocalConn);
+ ptrType$6 = $ptrType(LocalManager);
+ ptrType$7 = $ptrType(Envelope);
+ ptrType$8 = $ptrType(ServerIdentity);
+ ptrType$15 = $ptrType(typeRegistry);
+ mapType$1 = $mapType(MessageTypeID, reflect.Type);
+ funcType$2 = $funcType([Conn], [], false);
+ mapType$2 = $mapType(endpoint, ptrType$5);
+ mapType$3 = $mapType(Address, funcType$2);
+ chanType = $chanType(sliceType$3, false, false);
+ chanType$1 = $chanType($Bool, false, false);
+ ptrType$17 = $ptrType(ServerIdentityToml);
+ ptrType$18 = $ptrType(counterSafe);
+ connType = function(t) {
+ var $ptr, _i, _ref, ct, t, t$1, types;
+ ct = (t);
+ types = new sliceType(["tcp", "tls", "purb", "local"]);
+ _ref = types;
+ _i = 0;
+ while (true) {
+ if (!(_i < _ref.$length)) { break; }
+ t$1 = ((_i < 0 || _i >= _ref.$length) ? ($throwRuntimeError("index out of range"), undefined) : _ref.$array[_ref.$offset + _i]);
+ if (t$1 === ct) {
+ return ct;
+ }
+ _i++;
+ }
+ return "wrong";
+ };
+ Address.prototype.ConnType = function() {
+ var $ptr, _r$1, a, vals, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; a = $f.a; vals = $f.vals; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ a = this.$val;
+ _r$1 = new Address(a).Valid(); /* */ $s = 3; case 3: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ /* */ if (!_r$1) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!_r$1) { */ case 1:
+ $s = -1; return "wrong";
+ /* } */ case 2:
+ vals = strings.Split((a), "://");
+ $s = -1; return connType((0 >= vals.$length ? ($throwRuntimeError("index out of range"), undefined) : vals.$array[vals.$offset + 0]));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Address.prototype.ConnType }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f.a = a; $f.vals = vals; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(Address).prototype.ConnType = function() { return new Address(this.$get()).ConnType(); };
+ Address.prototype.NetworkAddress = function() {
+ var $ptr, _r$1, a, vals, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; a = $f.a; vals = $f.vals; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ a = this.$val;
+ _r$1 = new Address(a).Valid(); /* */ $s = 3; case 3: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ /* */ if (!_r$1) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!_r$1) { */ case 1:
+ $s = -1; return "";
+ /* } */ case 2:
+ vals = strings.Split((a), "://");
+ $s = -1; return (1 >= vals.$length ? ($throwRuntimeError("index out of range"), undefined) : vals.$array[vals.$offset + 1]);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Address.prototype.NetworkAddress }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f.a = a; $f.vals = vals; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(Address).prototype.NetworkAddress = function() { return new Address(this.$get()).NetworkAddress(); };
+ Address.prototype.Valid = function() {
+ var $ptr, _r$1, _tuple, _tuple$1, a, e, err, ip, p, port, vals, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; a = $f.a; e = $f.e; err = $f.err; ip = $f.ip; p = $f.p; port = $f.port; vals = $f.vals; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ a = this.$val;
+ vals = strings.Split((a), "://");
+ if (!((vals.$length === 2))) {
+ $s = -1; return false;
+ }
+ if (connType((0 >= vals.$length ? ($throwRuntimeError("index out of range"), undefined) : vals.$array[vals.$offset + 0])) === "wrong") {
+ $s = -1; return false;
+ }
+ _r$1 = net.SplitHostPort((1 >= vals.$length ? ($throwRuntimeError("index out of range"), undefined) : vals.$array[vals.$offset + 1])); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple = _r$1;
+ ip = _tuple[0];
+ port = _tuple[1];
+ e = _tuple[2];
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ $s = -1; return false;
+ }
+ _tuple$1 = strconv.Atoi(port);
+ p = _tuple$1[0];
+ err = _tuple$1[1];
+ if (!($interfaceIsEqual(err, $ifaceNil)) || p < 0 || p > 65535) {
+ $s = -1; return false;
+ }
+ if (ip === "localhost") {
+ $s = -1; return true;
+ } else if (net.ParseIP(ip) === net.IP.nil) {
+ $s = -1; return false;
+ }
+ $s = -1; return true;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Address.prototype.Valid }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.a = a; $f.e = e; $f.err = err; $f.ip = ip; $f.p = p; $f.port = port; $f.vals = vals; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(Address).prototype.Valid = function() { return new Address(this.$get()).Valid(); };
+ Address.prototype.String = function() {
+ var $ptr, a;
+ a = this.$val;
+ return (a);
+ };
+ $ptrType(Address).prototype.String = function() { return new Address(this.$get()).String(); };
+ Address.prototype.Host = function() {
+ var $ptr, _r$1, _r$2, _r$3, _tuple, a, e, h, na, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _tuple = $f._tuple; a = $f.a; e = $f.e; h = $f.h; na = $f.na; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ a = this.$val;
+ _r$1 = new Address(a).NetworkAddress(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ na = _r$1;
+ if (na === "") {
+ $s = -1; return "";
+ }
+ _r$2 = new Address(a).NetworkAddress(); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$3 = net.SplitHostPort(_r$2); /* */ $s = 3; case 3: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _tuple = _r$3;
+ h = _tuple[0];
+ e = _tuple[2];
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ $s = -1; return "";
+ }
+ if (h === "::") {
+ h = "[::]";
+ }
+ $s = -1; return h;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Address.prototype.Host }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._tuple = _tuple; $f.a = a; $f.e = e; $f.h = h; $f.na = na; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(Address).prototype.Host = function() { return new Address(this.$get()).Host(); };
+ Address.prototype.Port = function() {
+ var $ptr, _r$1, _r$2, _tuple, a, e, na, p, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _tuple = $f._tuple; a = $f.a; e = $f.e; na = $f.na; p = $f.p; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ a = this.$val;
+ _r$1 = new Address(a).NetworkAddress(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ na = _r$1;
+ if (na === "") {
+ $s = -1; return "";
+ }
+ _r$2 = net.SplitHostPort(na); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple = _r$2;
+ p = _tuple[1];
+ e = _tuple[2];
+ if (!($interfaceIsEqual(e, $ifaceNil))) {
+ $s = -1; return "";
+ }
+ $s = -1; return p;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Address.prototype.Port }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tuple = _tuple; $f.a = a; $f.e = e; $f.na = na; $f.p = p; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(Address).prototype.Port = function() { return new Address(this.$get()).Port(); };
+ Address.prototype.Public = function() {
+ var $ptr, _arg, _r$1, _r$2, _r$3, _tuple, _v, a, err, private$1, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _tuple = $f._tuple; _v = $f._v; a = $f.a; err = $f.err; private$1 = $f.private$1; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ a = this.$val;
+ _r$1 = new Address(a).NetworkAddress(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _arg = _r$1;
+ _r$2 = regexp.MatchString("(^127\\.)|(^10\\.)|(^172\\.1[6-9]\\.)|(^172\\.2[0-9]\\.)|(^172\\.3[0-1]\\.)|(^192\\.168\\.)|(^169\\.254)|(^\\[::\\])", _arg); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple = _r$2;
+ private$1 = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return false;
+ }
+ if (!(!private$1)) { _v = false; $s = 3; continue s; }
+ _r$3 = new Address(a).Valid(); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _v = _r$3; case 3:
+ $s = -1; return _v;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Address.prototype.Public }; } $f.$ptr = $ptr; $f._arg = _arg; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._tuple = _tuple; $f._v = _v; $f.a = a; $f.err = err; $f.private$1 = private$1; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(Address).prototype.Public = function() { return new Address(this.$get()).Public(); };
+ MessageTypeID.prototype.String = function() {
+ var $ptr, _arg, _arg$1, _r$1, _r$2, _r$3, _tuple, mId, ok, t, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _tuple = $f._tuple; mId = $f.mId; ok = $f.ok; t = $f.t; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ mId = this.$val;
+ _r$1 = registry.get($clone(mId, MessageTypeID)); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple = _r$1;
+ t = _tuple[0];
+ ok = _tuple[1];
+ /* */ if (ok) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (ok) { */ case 2:
+ _r$2 = t.String(); /* */ $s = 4; case 4: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _arg = new $String(_r$2);
+ _arg$1 = new uuid.UUID($clone(($clone(mId, uuid.UUID)), uuid.UUID)).Bytes();
+ _r$3 = fmt.Sprintf("PTID(%s:%x)", new sliceType$2([_arg, _arg$1])); /* */ $s = 5; case 5: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $s = -1; return _r$3;
+ /* } */ case 3:
+ $s = -1; return new uuid.UUID($clone(($clone(mId, uuid.UUID)), uuid.UUID)).String();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: MessageTypeID.prototype.String }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._tuple = _tuple; $f.mId = mId; $f.ok = ok; $f.t = t; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $ptrType(MessageTypeID).prototype.String = function() { return new MessageTypeID(this.$get()).String(); };
+ MessageTypeID.prototype.Equal = function(mID2) {
+ var $ptr, mID2, mId;
+ mId = this.$val;
+ return uuid.Equal($clone(($clone(mId, uuid.UUID)), uuid.UUID), $clone(($clone(mID2, uuid.UUID)), uuid.UUID));
+ };
+ $ptrType(MessageTypeID).prototype.Equal = function(mID2) { return new MessageTypeID(this.$get()).Equal(mID2); };
+ MessageTypeID.prototype.IsNil = function() {
+ var $ptr, mId;
+ mId = this.$val;
+ return new MessageTypeID($clone(mId, MessageTypeID)).Equal($clone(($clone(uuid.Nil, MessageTypeID)), MessageTypeID));
+ };
+ $ptrType(MessageTypeID).prototype.IsNil = function() { return new MessageTypeID(this.$get()).IsNil(); };
+ RegisterMessage = function(msg) {
+ var $ptr, _r$1, _r$2, _r$3, msg, msgType, t, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; msg = $f.msg; msgType = $f.msgType; t = $f.t; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$1 = computeMessageType(msg); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ msgType = $clone(_r$1, MessageTypeID);
+ _r$2 = reflect.ValueOf(msg); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ val = _r$2;
+ /* */ if ($clone(val, reflect.Value).Kind() === 22) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if ($clone(val, reflect.Value).Kind() === 22) { */ case 3:
+ _r$3 = $clone(val, reflect.Value).Elem(); /* */ $s = 5; case 5: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ val = _r$3;
+ /* } */ case 4:
+ t = $clone(val, reflect.Value).Type();
+ $r = registry.put($clone(msgType, MessageTypeID), t); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return msgType;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: RegisterMessage }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f.msg = msg; $f.msgType = msgType; $f.t = t; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.RegisterMessage = RegisterMessage;
+ computeMessageType = function(msg) {
+ var $ptr, _r$1, _r$2, _r$3, _r$4, msg, u, url, val, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; msg = $f.msg; u = $f.u; url = $f.url; val = $f.val; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$1 = reflect.ValueOf(msg); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ val = _r$1;
+ /* */ if ($clone(val, reflect.Value).Kind() === 22) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if ($clone(val, reflect.Value).Kind() === 22) { */ case 2:
+ _r$2 = $clone(val, reflect.Value).Elem(); /* */ $s = 4; case 4: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ val = _r$2;
+ /* } */ case 3:
+ _r$3 = $clone(val, reflect.Value).Type().String(); /* */ $s = 5; case 5: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ url = "https://dedis.epfl.ch//protocolType/" + _r$3;
+ _r$4 = uuid.NewV5($clone(uuid.NamespaceURL, uuid.UUID), url); /* */ $s = 6; case 6: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ u = $clone(_r$4, uuid.UUID);
+ $s = -1; return ($clone(u, MessageTypeID));
+ /* */ } return; } if ($f === undefined) { $f = { $blk: computeMessageType }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f.msg = msg; $f.u = u; $f.url = url; $f.val = val; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ MessageType = function(msg) {
+ var $ptr, _r$1, _r$2, _tuple, msg, msgType, ok, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _tuple = $f._tuple; msg = $f.msg; msgType = $f.msgType; ok = $f.ok; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$1 = computeMessageType(msg); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ msgType = $clone(_r$1, MessageTypeID);
+ _r$2 = registry.get($clone(msgType, MessageTypeID)); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple = _r$2;
+ ok = _tuple[1];
+ if (!ok) {
+ $s = -1; return $pkg.ErrorType;
+ }
+ $s = -1; return msgType;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: MessageType }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tuple = _tuple; $f.msg = msg; $f.msgType = msgType; $f.ok = ok; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.MessageType = MessageType;
+ Marshal = function(msg) {
+ var $ptr, _r$1, _r$2, _r$3, _r$4, _r$5, _tuple, _tuple$1, b, buf, err, err$1, msg, msgType, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; b = $f.b; buf = $f.buf; err = $f.err; err$1 = $f.err$1; msg = $f.msg; msgType = $f.msgType; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ msgType = arrayType.zero();
+ _r$1 = MessageType(msg); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ MessageTypeID.copy(msgType, _r$1);
+ /* */ if ($equal(msgType, $pkg.ErrorType, MessageTypeID)) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if ($equal(msgType, $pkg.ErrorType, MessageTypeID)) { */ case 2:
+ _r$2 = fmt.Errorf("type of message %s not registered to the network library", new sliceType$2([reflect.TypeOf(msg)])); /* */ $s = 4; case 4: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return [sliceType$3.nil, _r$2];
+ /* } */ case 3:
+ b = new bytes.Buffer.ptr(sliceType$3.nil, 0, arrayType$1.zero(), 0);
+ _r$3 = binary.Write(b, new globalOrder.constructor.elem(globalOrder), new MessageTypeID(msgType)); /* */ $s = 5; case 5: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ err = _r$3;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [sliceType$3.nil, err];
+ }
+ buf = sliceType$3.nil;
+ err$1 = $ifaceNil;
+ _r$4 = protobuf.Encode(msg); /* */ $s = 6; case 6: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _tuple = _r$4;
+ buf = _tuple[0];
+ err$1 = _tuple[1];
+ /* */ if (!($interfaceIsEqual(err$1, $ifaceNil))) { $s = 7; continue; }
+ /* */ $s = 8; continue;
+ /* if (!($interfaceIsEqual(err$1, $ifaceNil))) { */ case 7:
+ $r = log.Errorf("Error for protobuf encoding: %s %+v", new sliceType$2([err$1, msg])); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$5 = log.DebugVisible(); /* */ $s = 12; case 12: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ /* */ if (_r$5 > 0) { $s = 10; continue; }
+ /* */ $s = 11; continue;
+ /* if (_r$5 > 0) { */ case 10:
+ $r = log.Error(new sliceType$2([new $String(log.Stack())])); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 11:
+ $s = -1; return [sliceType$3.nil, err$1];
+ /* } */ case 8:
+ _tuple$1 = b.Write(buf);
+ err$1 = _tuple$1[1];
+ $s = -1; return [b.Bytes(), err$1];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Marshal }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.b = b; $f.buf = buf; $f.err = err; $f.err$1 = err$1; $f.msg = msg; $f.msgType = msgType; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Marshal = Marshal;
+ Unmarshal = function(buf) {
+ var $ptr, _arg, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, _tuple, b, buf, constructors, err, err$1, ok, ptr, ptrVal, tID, typ, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; _tuple = $f._tuple; b = $f.b; buf = $f.buf; constructors = $f.constructors; err = $f.err; err$1 = $f.err$1; ok = $f.ok; ptr = $f.ptr; ptrVal = $f.ptrVal; tID = $f.tID; typ = $f.typ; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ tID = [tID];
+ b = bytes.NewBuffer(buf);
+ tID[0] = arrayType.zero();
+ _r$1 = binary.Read(b, new globalOrder.constructor.elem(globalOrder), new ptrType$1(tID[0])); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ err = _r$1;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return [$pkg.ErrorType, $ifaceNil, err];
+ }
+ _r$2 = registry.get($clone(tID[0], MessageTypeID)); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple = _r$2;
+ typ = _tuple[0];
+ ok = _tuple[1];
+ /* */ if (!ok) { $s = 3; continue; }
+ /* */ $s = 4; continue;
+ /* if (!ok) { */ case 3:
+ _r$3 = new MessageTypeID($clone(tID[0], MessageTypeID)).String(); /* */ $s = 5; case 5: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _arg = new $String(_r$3);
+ _r$4 = fmt.Errorf("type %s not registered", new sliceType$2([_arg])); /* */ $s = 6; case 6: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ $s = -1; return [$pkg.ErrorType, $ifaceNil, _r$4];
+ /* } */ case 4:
+ _r$5 = reflect.New(typ); /* */ $s = 7; case 7: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ ptrVal = _r$5;
+ _r$6 = $clone(ptrVal, reflect.Value).Interface(); /* */ $s = 8; case 8: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ ptr = _r$6;
+ _r$7 = DefaultConstructors($pkg.Suite); /* */ $s = 9; case 9: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ constructors = _r$7;
+ _r$8 = protobuf.DecodeWithConstructors(b.Bytes(), ptr, constructors); /* */ $s = 10; case 10: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ err$1 = _r$8;
+ if (!($interfaceIsEqual(err$1, $ifaceNil))) {
+ $s = -1; return [$pkg.ErrorType, $ifaceNil, err$1];
+ }
+ _r$9 = $clone(ptrVal, reflect.Value).Interface(); /* */ $s = 11; case 11: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ $s = -1; return [tID[0], _r$9, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: Unmarshal }; } $f.$ptr = $ptr; $f._arg = _arg; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f._tuple = _tuple; $f.b = b; $f.buf = buf; $f.constructors = constructors; $f.err = err; $f.err$1 = err$1; $f.ok = ok; $f.ptr = ptr; $f.ptrVal = ptrVal; $f.tID = tID; $f.typ = typ; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.Unmarshal = Unmarshal;
+ DefaultConstructors = function(suite) {
+ var $ptr, _key, _key$1, _r$1, _r$2, constructors, point, secret, suite, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _key = $f._key; _key$1 = $f._key$1; _r$1 = $f._r$1; _r$2 = $f._r$2; constructors = $f.constructors; point = $f.point; secret = $f.secret; suite = $f.suite; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ point = [point];
+ secret = [secret];
+ suite = [suite];
+ constructors = {};
+ point[0] = $ifaceNil;
+ secret[0] = $ifaceNil;
+ _r$1 = reflect.TypeOf((point.$ptr || (point.$ptr = new ptrType$2(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, point)))).Elem(); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _key = _r$1; (constructors || $throwRuntimeError("assignment to entry in nil map"))[reflect.Type.keyFor(_key)] = { k: _key, v: (function(point, secret, suite) { return function $b() {
+ var $ptr, _r$2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$2 = $f._r$2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$2 = suite[0].Point(); /* */ $s = 1; case 1: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return _r$2;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f.$ptr = $ptr; $f._r$2 = _r$2; $f.$s = $s; $f.$r = $r; return $f;
+ }; })(point, secret, suite) };
+ _r$2 = reflect.TypeOf((secret.$ptr || (secret.$ptr = new ptrType$3(function() { return this.$target[0]; }, function($v) { this.$target[0] = $v; }, secret)))).Elem(); /* */ $s = 2; case 2: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _key$1 = _r$2; (constructors || $throwRuntimeError("assignment to entry in nil map"))[reflect.Type.keyFor(_key$1)] = { k: _key$1, v: (function(point, secret, suite) { return function $b() {
+ var $ptr, _r$3, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$3 = $f._r$3; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r$3 = suite[0].Scalar(); /* */ $s = 1; case 1: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ $s = -1; return _r$3;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $b }; } $f.$ptr = $ptr; $f._r$3 = _r$3; $f.$s = $s; $f.$r = $r; return $f;
+ }; })(point, secret, suite) };
+ $s = -1; return constructors;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: DefaultConstructors }; } $f.$ptr = $ptr; $f._key = _key; $f._key$1 = _key$1; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.constructors = constructors; $f.point = point; $f.secret = secret; $f.suite = suite; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.DefaultConstructors = DefaultConstructors;
+ newTypeRegistry = function() {
+ var $ptr;
+ return new typeRegistry.ptr({}, new sync.Mutex.ptr(0, 0));
+ };
+ typeRegistry.ptr.prototype.get = function(mid) {
+ var $ptr, _entry, _tuple, mid, ok, t, tr, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _tuple = $f._tuple; mid = $f.mid; ok = $f.ok; t = $f.t; tr = $f.tr; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ tr = this;
+ $r = tr.lock.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(tr.lock, "Unlock"), []]);
+ _tuple = (_entry = tr.types[MessageTypeID.keyFor(mid)], _entry !== undefined ? [_entry.v, true] : [$ifaceNil, false]);
+ t = _tuple[0];
+ ok = _tuple[1];
+ $s = -1; return [t, ok];
+ /* */ } return; } } catch(err) { $err = err; $s = -1; return [$ifaceNil, false]; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: typeRegistry.ptr.prototype.get }; } $f.$ptr = $ptr; $f._entry = _entry; $f._tuple = _tuple; $f.mid = mid; $f.ok = ok; $f.t = t; $f.tr = tr; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ typeRegistry.prototype.get = function(mid) { return this.$val.get(mid); };
+ typeRegistry.ptr.prototype.put = function(mid, typ) {
+ var $ptr, _key, mid, tr, typ, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _key = $f._key; mid = $f.mid; tr = $f.tr; typ = $f.typ; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ tr = this;
+ $r = tr.lock.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(tr.lock, "Unlock"), []]);
+ _key = $clone(mid, MessageTypeID); (tr.types || $throwRuntimeError("assignment to entry in nil map"))[MessageTypeID.keyFor(_key)] = { k: _key, v: typ };
+ $s = -1; return;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: typeRegistry.ptr.prototype.put }; } $f.$ptr = $ptr; $f._key = _key; $f.mid = mid; $f.tr = tr; $f.typ = typ; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ typeRegistry.prototype.put = function(mid, typ) { return this.$val.put(mid, typ); };
+ NewLocalManager = function() {
+ var $ptr;
+ return new LocalManager.ptr({}, new sync.Mutex.ptr(0, 0), {}, new $Uint64(0, 0));
+ };
+ $pkg.NewLocalManager = NewLocalManager;
+ LocalManager.ptr.prototype.send = function(e, msg) {
+ var $ptr, _entry, _tuple, e, lm, msg, ok, q, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _tuple = $f._tuple; e = $f.e; lm = $f.lm; msg = $f.msg; ok = $f.ok; q = $f.q; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ lm = this;
+ $r = lm.Mutex.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(lm.Mutex, "Unlock"), []]);
+ _tuple = (_entry = lm.conns[endpoint.keyFor(e)], _entry !== undefined ? [_entry.v, true] : [ptrType$5.nil, false]);
+ q = _tuple[0];
+ ok = _tuple[1];
+ if (!ok) {
+ $s = -1; return $pkg.ErrClosed;
+ }
+ $r = $send(q.incomingQueue, msg); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return $ifaceNil;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; return $ifaceNil; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: LocalManager.ptr.prototype.send }; } $f.$ptr = $ptr; $f._entry = _entry; $f._tuple = _tuple; $f.e = e; $f.lm = lm; $f.msg = msg; $f.ok = ok; $f.q = q; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ LocalManager.prototype.send = function(e, msg) { return this.$val.send(e, msg); };
+ LocalManager.ptr.prototype.close = function(conn) {
+ var $ptr, _entry, _entry$1, _tuple, _tuple$1, conn, lm, ok, remote, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _entry = $f._entry; _entry$1 = $f._entry$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; conn = $f.conn; lm = $f.lm; ok = $f.ok; remote = $f.remote; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ lm = this;
+ $r = lm.Mutex.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(lm.Mutex, "Unlock"), []]);
+ _tuple = (_entry = lm.conns[endpoint.keyFor(conn.local)], _entry !== undefined ? [_entry.v, true] : [ptrType$5.nil, false]);
+ ok = _tuple[1];
+ if (!ok) {
+ $s = -1; return $pkg.ErrClosed;
+ }
+ delete lm.conns[endpoint.keyFor(conn.local)];
+ $r = conn.closeChannels(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _tuple$1 = (_entry$1 = lm.conns[endpoint.keyFor(conn.remote)], _entry$1 !== undefined ? [_entry$1.v, true] : [ptrType$5.nil, false]);
+ remote = _tuple$1[0];
+ ok = _tuple$1[1];
+ if (!ok) {
+ $s = -1; return $ifaceNil;
+ }
+ delete lm.conns[endpoint.keyFor(conn.remote)];
+ $r = remote.closeChannels(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return $ifaceNil;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; return $ifaceNil; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: LocalManager.ptr.prototype.close }; } $f.$ptr = $ptr; $f._entry = _entry; $f._entry$1 = _entry$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.conn = conn; $f.lm = lm; $f.ok = ok; $f.remote = remote; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ LocalManager.prototype.close = function(conn) { return this.$val.close(conn); };
+ LocalConn.ptr.prototype.Send = function(msg) {
+ var $ptr, _r$1, _r$2, _tuple, buff, err, lc, msg, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _tuple = $f._tuple; buff = $f.buff; err = $f.err; lc = $f.lc; msg = $f.msg; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ lc = this;
+ _r$1 = Marshal(msg); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple = _r$1;
+ buff = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ $s = -1; return err;
+ }
+ $r = lc.counterSafe.updateTx((new $Uint64(0, buff.$length))); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$2 = lc.manager.send($clone(lc.remote, endpoint), buff); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return _r$2;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: LocalConn.ptr.prototype.Send }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tuple = _tuple; $f.buff = buff; $f.err = err; $f.lc = lc; $f.msg = msg; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ LocalConn.prototype.Send = function(msg) { return this.$val.Send(msg); };
+ LocalConn.ptr.prototype.Receive = function() {
+ var $ptr, _r$1, _r$2, _tuple, _tuple$1, body, buff, err, id, lc, opened, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _r$2 = $f._r$2; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; body = $f.body; buff = $f.buff; err = $f.err; id = $f.id; lc = $f.lc; opened = $f.opened; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ lc = this;
+ _r$1 = $recv(lc.outgoingQueue); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple = _r$1;
+ buff = _tuple[0];
+ opened = _tuple[1];
+ if (!opened) {
+ $s = -1; return [ptrType$7.nil, $pkg.ErrClosed];
+ }
+ $r = lc.counterSafe.updateRx((new $Uint64(0, buff.$length))); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$2 = Unmarshal(buff); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple$1 = _r$2;
+ id = $clone(_tuple$1[0], MessageTypeID);
+ body = _tuple$1[1];
+ err = _tuple$1[2];
+ $s = -1; return [new Envelope.ptr(ptrType$8.nil, $clone(id, MessageTypeID), body, false, $ifaceNil), err];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: LocalConn.ptr.prototype.Receive }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.body = body; $f.buff = buff; $f.err = err; $f.id = id; $f.lc = lc; $f.opened = opened; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ LocalConn.prototype.Receive = function() { return this.$val.Receive(); };
+ LocalConn.ptr.prototype.Local = function() {
+ var $ptr, lc;
+ lc = this;
+ return lc.local.addr;
+ };
+ LocalConn.prototype.Local = function() { return this.$val.Local(); };
+ LocalConn.ptr.prototype.Remote = function() {
+ var $ptr, lc;
+ lc = this;
+ return lc.remote.addr;
+ };
+ LocalConn.prototype.Remote = function() { return this.$val.Remote(); };
+ LocalConn.ptr.prototype.Close = function() {
+ var $ptr, _r$1, _selection, _tuple, lc, o, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _selection = $f._selection; _tuple = $f._tuple; lc = $f.lc; o = $f.o; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ lc = this;
+ _selection = $select([[lc.closeCh], []]);
+ if (_selection[0] === 0) {
+ _tuple = _selection[1];
+ o = _tuple[1];
+ if (!o) {
+ $s = -1; return $pkg.ErrClosed;
+ }
+ } else if (_selection[0] === 1) {
+ }
+ _r$1 = lc.manager.close(lc); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: LocalConn.ptr.prototype.Close }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._selection = _selection; $f._tuple = _tuple; $f.lc = lc; $f.o = o; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ LocalConn.prototype.Close = function() { return this.$val.Close(); };
+ LocalConn.ptr.prototype.closeChannels = function() {
+ var $ptr, _r$1, lc, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; lc = $f.lc; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ lc = this;
+ $close(lc.closeCh);
+ _r$1 = $recv(lc.closeConfirm); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1[0];
+ $close(lc.closeConfirm);
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: LocalConn.ptr.prototype.closeChannels }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f.lc = lc; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ LocalConn.prototype.closeChannels = function() { return this.$val.closeChannels(); };
+ LocalConn.ptr.prototype.Type = function() {
+ var $ptr, lc;
+ lc = this;
+ return "local";
+ };
+ LocalConn.prototype.Type = function() { return this.$val.Type(); };
+ ServerIdentityID.prototype.String = function() {
+ var $ptr, eId;
+ eId = this.$val;
+ return new uuid.UUID($clone(($clone(eId, uuid.UUID)), uuid.UUID)).String();
+ };
+ $ptrType(ServerIdentityID).prototype.String = function() { return new ServerIdentityID(this.$get()).String(); };
+ ServerIdentityID.prototype.Equal = function(other) {
+ var $ptr, eId, other;
+ eId = this.$val;
+ return uuid.Equal($clone(($clone(eId, uuid.UUID)), uuid.UUID), $clone(($clone(other, uuid.UUID)), uuid.UUID));
+ };
+ $ptrType(ServerIdentityID).prototype.Equal = function(other) { return new ServerIdentityID(this.$get()).Equal(other); };
+ ServerIdentityID.prototype.IsNil = function() {
+ var $ptr, eId;
+ eId = this.$val;
+ return new ServerIdentityID($clone(eId, ServerIdentityID)).Equal($clone(($clone(uuid.Nil, ServerIdentityID)), ServerIdentityID));
+ };
+ $ptrType(ServerIdentityID).prototype.IsNil = function() { return new ServerIdentityID(this.$get()).IsNil(); };
+ ServerIdentity.ptr.prototype.String = function() {
+ var $ptr, si;
+ si = this;
+ return new Address(si.Address).String();
+ };
+ ServerIdentity.prototype.String = function() { return this.$val.String(); };
+ ServerIdentity.ptr.prototype.Equal = function(e2) {
+ var $ptr, _r$1, e2, si, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; e2 = $f.e2; si = $f.si; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ si = this;
+ _r$1 = si.Public.Equal(e2.Public); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ServerIdentity.ptr.prototype.Equal }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f.e2 = e2; $f.si = si; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ServerIdentity.prototype.Equal = function(e2) { return this.$val.Equal(e2); };
+ ServerIdentity.ptr.prototype.Toml = function(suite) {
+ var $ptr, _r$1, buf, err, si, suite, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; buf = $f.buf; err = $f.err; si = $f.si; suite = $f.suite; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ buf = [buf];
+ si = this;
+ buf[0] = new bytes.Buffer.ptr(sliceType$3.nil, 0, arrayType$1.zero(), 0);
+ _r$1 = crypto.Write64Pub(suite, buf[0], si.Public); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ err = _r$1;
+ /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!($interfaceIsEqual(err, $ifaceNil))) { */ case 2:
+ $r = log.Error(new sliceType$2([new $String("Error while writing public key:"), err])); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 3:
+ $s = -1; return new ServerIdentityToml.ptr(buf[0].String(), si.Address);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ServerIdentity.ptr.prototype.Toml }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f.buf = buf; $f.err = err; $f.si = si; $f.suite = suite; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ServerIdentity.prototype.Toml = function(suite) { return this.$val.Toml(suite); };
+ ServerIdentityToml.ptr.prototype.ServerIdentity = function(suite) {
+ var $ptr, _r$1, _tuple, err, pub, si, suite, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r$1 = $f._r$1; _tuple = $f._tuple; err = $f.err; pub = $f.pub; si = $f.si; suite = $f.suite; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ si = this;
+ _r$1 = crypto.Read64Pub(suite, strings.NewReader(si.Public)); /* */ $s = 1; case 1: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple = _r$1;
+ pub = _tuple[0];
+ err = _tuple[1];
+ /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!($interfaceIsEqual(err, $ifaceNil))) { */ case 2:
+ $r = log.Error(new sliceType$2([new $String("Error while reading public key:"), err])); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 3:
+ $s = -1; return new ServerIdentity.ptr(pub, arrayType.zero(), si.Address, "");
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ServerIdentityToml.ptr.prototype.ServerIdentity }; } $f.$ptr = $ptr; $f._r$1 = _r$1; $f._tuple = _tuple; $f.err = err; $f.pub = pub; $f.si = si; $f.suite = suite; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ ServerIdentityToml.prototype.ServerIdentity = function(suite) { return this.$val.ServerIdentity(suite); };
+ counterSafe.ptr.prototype.Rx = function() {
+ var $ptr, c, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; c = $f.c; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ c = this;
+ $r = c.Mutex.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(c.Mutex, "Unlock"), []]);
+ $s = -1; return c.rx;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; return new $Uint64(0, 0); } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: counterSafe.ptr.prototype.Rx }; } $f.$ptr = $ptr; $f.c = c; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ counterSafe.prototype.Rx = function() { return this.$val.Rx(); };
+ counterSafe.ptr.prototype.Tx = function() {
+ var $ptr, c, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; c = $f.c; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ c = this;
+ $r = c.Mutex.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(c.Mutex, "Unlock"), []]);
+ $s = -1; return c.tx;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; return new $Uint64(0, 0); } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: counterSafe.ptr.prototype.Tx }; } $f.$ptr = $ptr; $f.c = c; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ counterSafe.prototype.Tx = function() { return this.$val.Tx(); };
+ counterSafe.ptr.prototype.updateRx = function(delta) {
+ var $ptr, c, delta, x$1, x$2, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; c = $f.c; delta = $f.delta; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ c = this;
+ $r = c.Mutex.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(c.Mutex, "Unlock"), []]);
+ c.rx = (x$1 = c.rx, x$2 = delta, new $Uint64(x$1.$high + x$2.$high, x$1.$low + x$2.$low));
+ $s = -1; return;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: counterSafe.ptr.prototype.updateRx }; } $f.$ptr = $ptr; $f.c = c; $f.delta = delta; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ counterSafe.prototype.updateRx = function(delta) { return this.$val.updateRx(delta); };
+ counterSafe.ptr.prototype.updateTx = function(delta) {
+ var $ptr, c, delta, x$1, x$2, $s, $deferred, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; c = $f.c; delta = $f.delta; x$1 = $f.x$1; x$2 = $f.x$2; $s = $f.$s; $deferred = $f.$deferred; $r = $f.$r; } var $err = null; try { s: while (true) { switch ($s) { case 0: $deferred = []; $deferred.index = $curGoroutine.deferStack.length; $curGoroutine.deferStack.push($deferred);
+ c = this;
+ $r = c.Mutex.Lock(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $deferred.push([$methodVal(c.Mutex, "Unlock"), []]);
+ c.tx = (x$1 = c.tx, x$2 = delta, new $Uint64(x$1.$high + x$2.$high, x$1.$low + x$2.$low));
+ $s = -1; return;
+ /* */ } return; } } catch(err) { $err = err; $s = -1; } finally { $callDeferred($deferred, $err); if($curGoroutine.asleep) { if ($f === undefined) { $f = { $blk: counterSafe.ptr.prototype.updateTx }; } $f.$ptr = $ptr; $f.c = c; $f.delta = delta; $f.x$1 = x$1; $f.x$2 = x$2; $f.$s = $s; $f.$deferred = $deferred; $f.$r = $r; return $f; } }
+ };
+ counterSafe.prototype.updateTx = function(delta) { return this.$val.updateTx(delta); };
+ Address.methods = [{prop: "ConnType", name: "ConnType", pkg: "", typ: $funcType([], [ConnType], false)}, {prop: "NetworkAddress", name: "NetworkAddress", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Valid", name: "Valid", pkg: "", typ: $funcType([], [$Bool], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Host", name: "Host", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Port", name: "Port", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Public", name: "Public", pkg: "", typ: $funcType([], [$Bool], false)}];
+ MessageTypeID.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Equal", name: "Equal", pkg: "", typ: $funcType([MessageTypeID], [$Bool], false)}, {prop: "IsNil", name: "IsNil", pkg: "", typ: $funcType([], [$Bool], false)}];
+ ptrType$15.methods = [{prop: "get", name: "get", pkg: "gopkg.in/dedis/onet.v1/network", typ: $funcType([MessageTypeID], [reflect.Type, $Bool], false)}, {prop: "put", name: "put", pkg: "gopkg.in/dedis/onet.v1/network", typ: $funcType([MessageTypeID, reflect.Type], [], false)}];
+ ptrType$6.methods = [{prop: "isListening", name: "isListening", pkg: "gopkg.in/dedis/onet.v1/network", typ: $funcType([Address], [$Bool], false)}, {prop: "setListening", name: "setListening", pkg: "gopkg.in/dedis/onet.v1/network", typ: $funcType([Address, funcType$2], [], false)}, {prop: "unsetListening", name: "unsetListening", pkg: "gopkg.in/dedis/onet.v1/network", typ: $funcType([Address], [], false)}, {prop: "connect", name: "connect", pkg: "gopkg.in/dedis/onet.v1/network", typ: $funcType([Address, Address], [ptrType$5, $error], false)}, {prop: "send", name: "send", pkg: "gopkg.in/dedis/onet.v1/network", typ: $funcType([endpoint, sliceType$3], [$error], false)}, {prop: "close", name: "close", pkg: "gopkg.in/dedis/onet.v1/network", typ: $funcType([ptrType$5], [$error], false)}, {prop: "len", name: "len", pkg: "gopkg.in/dedis/onet.v1/network", typ: $funcType([], [$Int], false)}];
+ ptrType$5.methods = [{prop: "start", name: "start", pkg: "gopkg.in/dedis/onet.v1/network", typ: $funcType([], [], false)}, {prop: "Send", name: "Send", pkg: "", typ: $funcType([Message], [$error], false)}, {prop: "Receive", name: "Receive", pkg: "", typ: $funcType([], [ptrType$7, $error], false)}, {prop: "Local", name: "Local", pkg: "", typ: $funcType([], [Address], false)}, {prop: "Remote", name: "Remote", pkg: "", typ: $funcType([], [Address], false)}, {prop: "Close", name: "Close", pkg: "", typ: $funcType([], [$error], false)}, {prop: "closeChannels", name: "closeChannels", pkg: "gopkg.in/dedis/onet.v1/network", typ: $funcType([], [], false)}, {prop: "Type", name: "Type", pkg: "", typ: $funcType([], [ConnType], false)}];
+ ptrType$8.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Equal", name: "Equal", pkg: "", typ: $funcType([ptrType$8], [$Bool], false)}, {prop: "Toml", name: "Toml", pkg: "", typ: $funcType([abstract$1.Suite], [ptrType$17], false)}];
+ ServerIdentityID.methods = [{prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Equal", name: "Equal", pkg: "", typ: $funcType([ServerIdentityID], [$Bool], false)}, {prop: "IsNil", name: "IsNil", pkg: "", typ: $funcType([], [$Bool], false)}];
+ ptrType$17.methods = [{prop: "ServerIdentity", name: "ServerIdentity", pkg: "", typ: $funcType([abstract$1.Suite], [ptrType$8], false)}];
+ ptrType$18.methods = [{prop: "Rx", name: "Rx", pkg: "", typ: $funcType([], [$Uint64], false)}, {prop: "Tx", name: "Tx", pkg: "", typ: $funcType([], [$Uint64], false)}, {prop: "updateRx", name: "updateRx", pkg: "gopkg.in/dedis/onet.v1/network", typ: $funcType([$Uint64], [], false)}, {prop: "updateTx", name: "updateTx", pkg: "gopkg.in/dedis/onet.v1/network", typ: $funcType([$Uint64], [], false)}];
+ Message.init([]);
+ MessageTypeID.init($Uint8, 16);
+ typeRegistry.init("gopkg.in/dedis/onet.v1/network", [{prop: "types", name: "types", exported: false, typ: mapType$1, tag: ""}, {prop: "lock", name: "lock", exported: false, typ: sync.Mutex, tag: ""}]);
+ LocalManager.init("gopkg.in/dedis/onet.v1/network", [{prop: "conns", name: "conns", exported: false, typ: mapType$2, tag: ""}, {prop: "Mutex", name: "", exported: true, typ: sync.Mutex, tag: ""}, {prop: "listening", name: "listening", exported: false, typ: mapType$3, tag: ""}, {prop: "counter", name: "counter", exported: false, typ: $Uint64, tag: ""}]);
+ endpoint.init("gopkg.in/dedis/onet.v1/network", [{prop: "addr", name: "addr", exported: false, typ: Address, tag: ""}, {prop: "uid", name: "uid", exported: false, typ: $Uint64, tag: ""}]);
+ LocalConn.init("gopkg.in/dedis/onet.v1/network", [{prop: "local", name: "local", exported: false, typ: endpoint, tag: ""}, {prop: "remote", name: "remote", exported: false, typ: endpoint, tag: ""}, {prop: "incomingQueue", name: "incomingQueue", exported: false, typ: chanType, tag: ""}, {prop: "outgoingQueue", name: "outgoingQueue", exported: false, typ: chanType, tag: ""}, {prop: "closeCh", name: "closeCh", exported: false, typ: chanType$1, tag: ""}, {prop: "closeConfirm", name: "closeConfirm", exported: false, typ: chanType$1, tag: ""}, {prop: "counterSafe", name: "", exported: false, typ: counterSafe, tag: ""}, {prop: "manager", name: "manager", exported: false, typ: ptrType$6, tag: ""}]);
+ Conn.init([{prop: "Close", name: "Close", pkg: "", typ: $funcType([], [$error], false)}, {prop: "Local", name: "Local", pkg: "", typ: $funcType([], [Address], false)}, {prop: "Receive", name: "Receive", pkg: "", typ: $funcType([], [ptrType$7, $error], false)}, {prop: "Remote", name: "Remote", pkg: "", typ: $funcType([], [Address], false)}, {prop: "Rx", name: "Rx", pkg: "", typ: $funcType([], [$Uint64], false)}, {prop: "Send", name: "Send", pkg: "", typ: $funcType([Message], [$error], false)}, {prop: "Tx", name: "Tx", pkg: "", typ: $funcType([], [$Uint64], false)}, {prop: "Type", name: "Type", pkg: "", typ: $funcType([], [ConnType], false)}]);
+ Envelope.init("gopkg.in/dedis/onet.v1/network", [{prop: "ServerIdentity", name: "ServerIdentity", exported: true, typ: ptrType$8, tag: ""}, {prop: "MsgType", name: "MsgType", exported: true, typ: MessageTypeID, tag: ""}, {prop: "Msg", name: "Msg", exported: true, typ: Message, tag: ""}, {prop: "Constructors", name: "Constructors", exported: true, typ: protobuf.Constructors, tag: ""}, {prop: "err", name: "err", exported: false, typ: $error, tag: ""}]);
+ ServerIdentity.init("", [{prop: "Public", name: "Public", exported: true, typ: abstract$1.Point, tag: ""}, {prop: "ID", name: "ID", exported: true, typ: ServerIdentityID, tag: ""}, {prop: "Address", name: "Address", exported: true, typ: Address, tag: ""}, {prop: "Description", name: "Description", exported: true, typ: $String, tag: ""}]);
+ ServerIdentityID.init($Uint8, 16);
+ ServerIdentityToml.init("", [{prop: "Public", name: "Public", exported: true, typ: $String, tag: ""}, {prop: "Address", name: "Address", exported: true, typ: Address, tag: ""}]);
+ counterSafe.init("gopkg.in/dedis/onet.v1/network", [{prop: "tx", name: "tx", exported: false, typ: $Uint64, tag: ""}, {prop: "rx", name: "rx", exported: false, typ: $Uint64, tag: ""}, {prop: "Mutex", name: "", exported: true, typ: sync.Mutex, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = bytes.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = binary.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = protobuf.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = uuid.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = abstract$1.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = ed25519.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = crypto.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = log.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = net.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = reflect.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = regexp.$init(); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 16; case 16: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 17; case 17: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = time.$init(); /* */ $s = 18; case 18: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $pkg.Suite = ed25519.NewAES128SHA256Ed25519(false);
+ $pkg.ErrorType = $clone(($clone(uuid.Nil, MessageTypeID)), MessageTypeID);
+ globalOrder = $clone(binary.BigEndian, binary.bigEndian);
+ registry = newTypeRegistry();
+ defaultLocalManager = NewLocalManager();
+ $pkg.ErrClosed = errors.New("Connection Closed");
+ $pkg.ErrEOF = errors.New("EOF");
+ $pkg.ErrCanceled = errors.New("Operation Canceled");
+ $pkg.ErrTimeout = errors.New("Timeout Error");
+ $pkg.ErrUnknown = errors.New("Unknown Error");
+ _r = RegisterMessage((x = new ServerIdentity.ptr($ifaceNil, arrayType.zero(), "", ""), new x.constructor.elem(x))); /* */ $s = 19; case 19: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $pkg.ServerIdentityType = $clone(_r, MessageTypeID);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["github.com/montanaflynn/stats"] = (function() {
+ var $pkg = {}, $init, math, rand, sort, strconv, time;
+ math = $packages["math"];
+ rand = $packages["math/rand"];
+ sort = $packages["sort"];
+ strconv = $packages["strconv"];
+ time = $packages["time"];
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = math.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = rand.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sort.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = time.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["gopkg.in/dedis/onet.v1/simul/monitor"] = (function() {
+ var $pkg = {}, $init, json, errors, fmt, stats, log, io, math, net, regexp, sort, strconv, strings, sync, syscall, time, proxyDone, init;
+ json = $packages["encoding/json"];
+ errors = $packages["errors"];
+ fmt = $packages["fmt"];
+ stats = $packages["github.com/montanaflynn/stats"];
+ log = $packages["gopkg.in/dedis/onet.v1/log"];
+ io = $packages["io"];
+ math = $packages["math"];
+ net = $packages["net"];
+ regexp = $packages["regexp"];
+ sort = $packages["sort"];
+ strconv = $packages["strconv"];
+ strings = $packages["strings"];
+ sync = $packages["sync"];
+ syscall = $packages["syscall"];
+ time = $packages["time"];
+ init = function() {
+ var $ptr;
+ proxyDone = new $Chan($Bool, 0);
+ };
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = json.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = errors.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = stats.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = log.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = io.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = math.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = net.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = regexp.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sort.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = syscall.$init(); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = time.$init(); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ proxyDone = $chanNil;
+ init();
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["github.com/lca1/unlynx/lib"] = (function() {
+ var $pkg = {}, $init, encoding, base64, xml, fmt, stats, abstract$1, cipher, proof, random, shuffle, log, network, monitor, math, reflect, strconv, strings, sync, CipherText, sliceType$5, sliceType$7, ptrType$3, currentGreatestM, currentGreatestInt, suite, GenKey, encryptPoint, IntToPoint, EncryptInt, decryptPoint, DecryptInt, discreteLog, SerializeElement, SerializePoint, DeserializePoint;
+ encoding = $packages["encoding"];
+ base64 = $packages["encoding/base64"];
+ xml = $packages["encoding/xml"];
+ fmt = $packages["fmt"];
+ stats = $packages["github.com/r0fls/gostats"];
+ abstract$1 = $packages["gopkg.in/dedis/crypto.v0/abstract"];
+ cipher = $packages["gopkg.in/dedis/crypto.v0/cipher"];
+ proof = $packages["gopkg.in/dedis/crypto.v0/proof"];
+ random = $packages["gopkg.in/dedis/crypto.v0/random"];
+ shuffle = $packages["gopkg.in/dedis/crypto.v0/shuffle"];
+ log = $packages["gopkg.in/dedis/onet.v1/log"];
+ network = $packages["gopkg.in/dedis/onet.v1/network"];
+ monitor = $packages["gopkg.in/dedis/onet.v1/simul/monitor"];
+ math = $packages["math"];
+ reflect = $packages["reflect"];
+ strconv = $packages["strconv"];
+ strings = $packages["strings"];
+ sync = $packages["sync"];
+ CipherText = $pkg.CipherText = $newType(0, $kindStruct, "lib.CipherText", true, "github.com/lca1/unlynx/lib", true, function(K_, C_) {
+ this.$val = this;
+ if (arguments.length === 0) {
+ this.K = $ifaceNil;
+ this.C = $ifaceNil;
+ return;
+ }
+ this.K = K_;
+ this.C = C_;
+ });
+ sliceType$5 = $sliceType($emptyInterface);
+ sliceType$7 = $sliceType($Uint8);
+ ptrType$3 = $ptrType(CipherText);
+ GenKey = function() {
+ var $ptr, _r, _r$1, _r$2, _r$3, _r$4, _r$5, pubKey, secKey, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; pubKey = $f.pubKey; secKey = $f.secKey; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ secKey = $ifaceNil;
+ pubKey = $ifaceNil;
+ _r = suite.Scalar(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = _r.Pick(random.Stream); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ secKey = _r$1;
+ _r$2 = suite.Point(); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$3 = suite.Point(); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$4 = _r$3.Base(); /* */ $s = 5; case 5: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$5 = _r$2.Mul(_r$4, secKey); /* */ $s = 6; case 6: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ pubKey = _r$5;
+ $s = -1; return [secKey, pubKey];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: GenKey }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f.pubKey = pubKey; $f.secKey = secKey; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.GenKey = GenKey;
+ encryptPoint = function(pubkey, M) {
+ var $ptr, B, C, K, M, S, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, k, pubkey, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; B = $f.B; C = $f.C; K = $f.K; M = $f.M; S = $f.S; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; k = $f.k; pubkey = $f.pubkey; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = suite.Point(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = _r.Base(); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ B = _r$1;
+ _r$2 = suite.Scalar(); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$3 = _r$2.Pick(random.Stream); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ k = _r$3;
+ _r$4 = suite.Point(); /* */ $s = 5; case 5: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$5 = _r$4.Mul(B, k); /* */ $s = 6; case 6: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ K = _r$5;
+ _r$6 = suite.Point(); /* */ $s = 7; case 7: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$7 = _r$6.Mul(pubkey, k); /* */ $s = 8; case 8: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ S = _r$7;
+ _r$8 = S.Add(S, M); /* */ $s = 9; case 9: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ C = _r$8;
+ $s = -1; return new CipherText.ptr(K, C);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: encryptPoint }; } $f.$ptr = $ptr; $f.B = B; $f.C = C; $f.K = K; $f.M = M; $f.S = S; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f.k = k; $f.pubkey = pubkey; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ IntToPoint = function(integer) {
+ var $ptr, B, M, _r, _r$1, _r$2, _r$3, _r$4, _r$5, i, integer, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; B = $f.B; M = $f.M; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; i = $f.i; integer = $f.integer; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = suite.Point(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = _r.Base(); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ B = _r$1;
+ _r$2 = suite.Scalar(); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$3 = _r$2.SetInt64(integer); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ i = _r$3;
+ _r$4 = suite.Point(); /* */ $s = 5; case 5: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$5 = _r$4.Mul(B, i); /* */ $s = 6; case 6: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ M = _r$5;
+ $s = -1; return M;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: IntToPoint }; } $f.$ptr = $ptr; $f.B = B; $f.M = M; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f.i = i; $f.integer = integer; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.IntToPoint = IntToPoint;
+ EncryptInt = function(pubkey, integer) {
+ var $ptr, _arg, _arg$1, _r, _r$1, integer, pubkey, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _r = $f._r; _r$1 = $f._r$1; integer = $f.integer; pubkey = $f.pubkey; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _arg = pubkey;
+ _r = IntToPoint(integer); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg$1 = _r;
+ _r$1 = encryptPoint(_arg, _arg$1); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: EncryptInt }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._r = _r; $f._r$1 = _r$1; $f.integer = integer; $f.pubkey = pubkey; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.EncryptInt = EncryptInt;
+ decryptPoint = function(prikey, c) {
+ var $ptr, M, S, _r, _r$1, _r$2, _r$3, c, prikey, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; M = $f.M; S = $f.S; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; c = $f.c; prikey = $f.prikey; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = suite.Point(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = _r.Mul(c.K, prikey); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ S = _r$1;
+ _r$2 = suite.Point(); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$3 = _r$2.Sub(c.C, S); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ M = _r$3;
+ $s = -1; return M;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: decryptPoint }; } $f.$ptr = $ptr; $f.M = M; $f.S = S; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f.c = c; $f.prikey = prikey; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ DecryptInt = function(prikey, cipher$1) {
+ var $ptr, M, _r, _r$1, cipher$1, prikey, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; M = $f.M; _r = $f._r; _r$1 = $f._r$1; cipher$1 = $f.cipher$1; prikey = $f.prikey; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = decryptPoint(prikey, $clone(cipher$1, CipherText)); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ M = _r;
+ _r$1 = discreteLog(M); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: DecryptInt }; } $f.$ptr = $ptr; $f.M = M; $f._r = _r; $f._r$1 = _r$1; $f.cipher$1 = cipher$1; $f.prikey = prikey; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.DecryptInt = DecryptInt;
+ discreteLog = function(P) {
+ var $ptr, B, Bi, P, _entry, _key, _key$1, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _tmp, _tmp$1, _tmp$2, _tmp$3, _tuple, m, ok, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; B = $f.B; Bi = $f.Bi; P = $f.P; _entry = $f._entry; _key = $f._key; _key$1 = $f._key$1; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _tmp = $f._tmp; _tmp$1 = $f._tmp$1; _tmp$2 = $f._tmp$2; _tmp$3 = $f._tmp$3; _tuple = $f._tuple; m = $f.m; ok = $f.ok; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = suite.Point(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = _r.Base(); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ B = _r$1;
+ Bi = $ifaceNil;
+ m = new $Int64(0, 0);
+ ok = false;
+ _r$2 = P.String(); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple = (_entry = $pkg.PointToInt[$String.keyFor(_r$2)], _entry !== undefined ? [_entry.v, true] : [new $Int64(0, 0), false]);
+ m = _tuple[0];
+ ok = _tuple[1];
+ if (ok) {
+ $s = -1; return m;
+ }
+ /* */ if ((currentGreatestInt.$high === 0 && currentGreatestInt.$low === 0)) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if ((currentGreatestInt.$high === 0 && currentGreatestInt.$low === 0)) { */ case 4:
+ _r$3 = suite.Point(); /* */ $s = 6; case 6: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$4 = _r$3.Null(); /* */ $s = 7; case 7: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ currentGreatestM = _r$4;
+ /* } */ case 5:
+ _tmp = currentGreatestM;
+ _tmp$1 = currentGreatestInt;
+ Bi = _tmp;
+ m = _tmp$1;
+ /* while (true) { */ case 8:
+ _r$5 = Bi.Equal(P); /* */ $s = 10; case 10: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ /* if (!(!_r$5 && (m.$high < 0 || (m.$high === 0 && m.$low < 100000)))) { break; } */ if(!(!_r$5 && (m.$high < 0 || (m.$high === 0 && m.$low < 100000)))) { $s = 9; continue; }
+ _r$6 = Bi.String(); /* */ $s = 11; case 11: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _key = _r$6; ($pkg.PointToInt || $throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(_key)] = { k: _key, v: m };
+ _r$7 = Bi.Add(Bi, B); /* */ $s = 12; case 12: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _tmp$2 = _r$7;
+ _tmp$3 = new $Int64(m.$high + 0, m.$low + 1);
+ Bi = _tmp$2;
+ m = _tmp$3;
+ /* } */ $s = 8; continue; case 9:
+ currentGreatestM = Bi;
+ _r$8 = Bi.String(); /* */ $s = 13; case 13: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _key$1 = _r$8; ($pkg.PointToInt || $throwRuntimeError("assignment to entry in nil map"))[$String.keyFor(_key$1)] = { k: _key$1, v: m };
+ currentGreatestInt = m;
+ if ((m.$high === 0 && m.$low === 100000)) {
+ $s = -1; return new $Int64(0, 0);
+ }
+ $s = -1; return m;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: discreteLog }; } $f.$ptr = $ptr; $f.B = B; $f.Bi = Bi; $f.P = P; $f._entry = _entry; $f._key = _key; $f._key$1 = _key$1; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._tmp = _tmp; $f._tmp$1 = _tmp$1; $f._tmp$2 = _tmp$2; $f._tmp$3 = _tmp$3; $f._tuple = _tuple; $f.m = m; $f.ok = ok; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ CipherText.ptr.prototype.DeterministicTagging = function(gc, private$1, secretContrib) {
+ var $ptr, _r, _r$1, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, c, contrib, gc, private$1, secretContrib, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; c = $f.c; contrib = $f.contrib; gc = $f.gc; private$1 = $f.private$1; secretContrib = $f.secretContrib; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ _r = suite.Point(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = _r.Mul(gc.K, secretContrib); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ c.K = _r$1;
+ _r$2 = suite.Point(); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$3 = _r$2.Mul(gc.K, private$1); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ contrib = _r$3;
+ _r$4 = suite.Point(); /* */ $s = 5; case 5: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$5 = _r$4.Sub(gc.C, contrib); /* */ $s = 6; case 6: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ c.C = _r$5;
+ _r$6 = suite.Point(); /* */ $s = 7; case 7: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$7 = _r$6.Mul(c.C, secretContrib); /* */ $s = 8; case 8: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ c.C = _r$7;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: CipherText.ptr.prototype.DeterministicTagging }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f.c = c; $f.contrib = contrib; $f.gc = gc; $f.private$1 = private$1; $f.secretContrib = secretContrib; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ CipherText.prototype.DeterministicTagging = function(gc, private$1, secretContrib) { return this.$val.DeterministicTagging(gc, private$1, secretContrib); };
+ CipherText.ptr.prototype.ReplaceContribution = function(cipher$1, old, new$1) {
+ var $ptr, _r, _r$1, c, cipher$1, new$1, old, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; c = $f.c; cipher$1 = $f.cipher$1; new$1 = $f.new$1; old = $f.old; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ _r = c.C.Sub(cipher$1.C, old); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ _r$1 = c.C.Add(c.C, new$1); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: CipherText.ptr.prototype.ReplaceContribution }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.c = c; $f.cipher$1 = cipher$1; $f.new$1 = new$1; $f.old = old; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ CipherText.prototype.ReplaceContribution = function(cipher$1, old, new$1) { return this.$val.ReplaceContribution(cipher$1, old, new$1); };
+ CipherText.ptr.prototype.KeySwitching = function(cipher$1, originalEphemeralKey, newKey, private$1) {
+ var $ptr, _r, _r$1, _r$10, _r$2, _r$3, _r$4, _r$5, _r$6, _r$7, _r$8, _r$9, c, cipher$1, ephemContrib, newContrib, newKey, oldContrib, originalEphemeralKey, private$1, r, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$10 = $f._r$10; _r$2 = $f._r$2; _r$3 = $f._r$3; _r$4 = $f._r$4; _r$5 = $f._r$5; _r$6 = $f._r$6; _r$7 = $f._r$7; _r$8 = $f._r$8; _r$9 = $f._r$9; c = $f.c; cipher$1 = $f.cipher$1; ephemContrib = $f.ephemContrib; newContrib = $f.newContrib; newKey = $f.newKey; oldContrib = $f.oldContrib; originalEphemeralKey = $f.originalEphemeralKey; private$1 = $f.private$1; r = $f.r; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ _r = suite.Scalar(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = _r.Pick(random.Stream); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ r = _r$1;
+ _r$2 = suite.Point(); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$3 = _r$2.Mul(originalEphemeralKey, private$1); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ oldContrib = _r$3;
+ _r$4 = suite.Point(); /* */ $s = 5; case 5: if($c) { $c = false; _r$4 = _r$4.$blk(); } if (_r$4 && _r$4.$blk !== undefined) { break s; }
+ _r$5 = _r$4.Mul(newKey, r); /* */ $s = 6; case 6: if($c) { $c = false; _r$5 = _r$5.$blk(); } if (_r$5 && _r$5.$blk !== undefined) { break s; }
+ newContrib = _r$5;
+ _r$6 = suite.Point(); /* */ $s = 7; case 7: if($c) { $c = false; _r$6 = _r$6.$blk(); } if (_r$6 && _r$6.$blk !== undefined) { break s; }
+ _r$7 = suite.Point(); /* */ $s = 8; case 8: if($c) { $c = false; _r$7 = _r$7.$blk(); } if (_r$7 && _r$7.$blk !== undefined) { break s; }
+ _r$8 = _r$7.Base(); /* */ $s = 9; case 9: if($c) { $c = false; _r$8 = _r$8.$blk(); } if (_r$8 && _r$8.$blk !== undefined) { break s; }
+ _r$9 = _r$6.Mul(_r$8, r); /* */ $s = 10; case 10: if($c) { $c = false; _r$9 = _r$9.$blk(); } if (_r$9 && _r$9.$blk !== undefined) { break s; }
+ ephemContrib = _r$9;
+ $r = c.ReplaceContribution($clone(cipher$1, CipherText), oldContrib, newContrib); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ _r$10 = c.K.Add(cipher$1.K, ephemContrib); /* */ $s = 12; case 12: if($c) { $c = false; _r$10 = _r$10.$blk(); } if (_r$10 && _r$10.$blk !== undefined) { break s; }
+ _r$10;
+ $s = -1; return r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: CipherText.ptr.prototype.KeySwitching }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$10 = _r$10; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._r$4 = _r$4; $f._r$5 = _r$5; $f._r$6 = _r$6; $f._r$7 = _r$7; $f._r$8 = _r$8; $f._r$9 = _r$9; $f.c = c; $f.cipher$1 = cipher$1; $f.ephemContrib = ephemContrib; $f.newContrib = newContrib; $f.newKey = newKey; $f.oldContrib = oldContrib; $f.originalEphemeralKey = originalEphemeralKey; $f.private$1 = private$1; $f.r = r; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ CipherText.prototype.KeySwitching = function(cipher$1, originalEphemeralKey, newKey, private$1) { return this.$val.KeySwitching(cipher$1, originalEphemeralKey, newKey, private$1); };
+ CipherText.ptr.prototype.Add = function(c1, c2) {
+ var $ptr, _r, _r$1, c, c1, c2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; c = $f.c; c1 = $f.c1; c2 = $f.c2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ _r = c.C.Add(c1.C, c2.C); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ _r$1 = c.K.Add(c1.K, c2.K); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: CipherText.ptr.prototype.Add }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.c = c; $f.c1 = c1; $f.c2 = c2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ CipherText.prototype.Add = function(c1, c2) { return this.$val.Add(c1, c2); };
+ CipherText.ptr.prototype.MulCipherTextbyScalar = function(cMul, a) {
+ var $ptr, _r, _r$1, _r$2, _r$3, a, c, cMul, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; a = $f.a; c = $f.c; cMul = $f.cMul; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ _r = suite.Point(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = _r.Mul(cMul.C, a); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ c.C = _r$1;
+ _r$2 = suite.Point(); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$3 = _r$2.Mul(cMul.K, a); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ c.K = _r$3;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: CipherText.ptr.prototype.MulCipherTextbyScalar }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f.a = a; $f.c = c; $f.cMul = cMul; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ CipherText.prototype.MulCipherTextbyScalar = function(cMul, a) { return this.$val.MulCipherTextbyScalar(cMul, a); };
+ CipherText.ptr.prototype.Sub = function(c1, c2) {
+ var $ptr, _r, _r$1, c, c1, c2, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; c = $f.c; c1 = $f.c1; c2 = $f.c2; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ _r = c.C.Sub(c1.C, c2.C); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r;
+ _r$1 = c.K.Sub(c1.K, c2.K); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _r$1;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: CipherText.ptr.prototype.Sub }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.c = c; $f.c1 = c1; $f.c2 = c2; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ CipherText.prototype.Sub = function(c1, c2) { return this.$val.Sub(c1, c2); };
+ CipherText.ptr.prototype.String = function() {
+ var $ptr, _r, _r$1, _r$2, c, cstr, kstr, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; c = $f.c; cstr = $f.cstr; kstr = $f.kstr; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ cstr = "nil";
+ kstr = cstr;
+ /* */ if (!($interfaceIsEqual((c).C, $ifaceNil))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!($interfaceIsEqual((c).C, $ifaceNil))) { */ case 1:
+ _r = (c).C.String(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ cstr = $substring(_r, 1, 7);
+ /* } */ case 2:
+ /* */ if (!($interfaceIsEqual((c).K, $ifaceNil))) { $s = 4; continue; }
+ /* */ $s = 5; continue;
+ /* if (!($interfaceIsEqual((c).K, $ifaceNil))) { */ case 4:
+ _r$1 = (c).K.String(); /* */ $s = 6; case 6: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ kstr = $substring(_r$1, 1, 7);
+ /* } */ case 5:
+ _r$2 = fmt.Sprintf("CipherText{%s,%s}", new sliceType$5([new $String(kstr), new $String(cstr)])); /* */ $s = 7; case 7: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return _r$2;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: CipherText.ptr.prototype.String }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.c = c; $f.cstr = cstr; $f.kstr = kstr; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ CipherText.prototype.String = function() { return this.$val.String(); };
+ CipherText.ptr.prototype.ToBytes = function() {
+ var $ptr, _r, _r$1, _tuple, _tuple$1, b, c, cP, errC, errK, k, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; _tuple$1 = $f._tuple$1; b = $f.b; c = $f.c; cP = $f.cP; errC = $f.errC; errK = $f.errK; k = $f.k; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ _r = (c).K.MarshalBinary(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ k = _tuple[0];
+ errK = _tuple[1];
+ /* */ if (!($interfaceIsEqual(errK, $ifaceNil))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!($interfaceIsEqual(errK, $ifaceNil))) { */ case 2:
+ $r = log.Fatal(new sliceType$5([errK])); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 3:
+ _r$1 = (c).C.MarshalBinary(); /* */ $s = 5; case 5: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _tuple$1 = _r$1;
+ cP = _tuple$1[0];
+ errC = _tuple$1[1];
+ /* */ if (!($interfaceIsEqual(errC, $ifaceNil))) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (!($interfaceIsEqual(errC, $ifaceNil))) { */ case 6:
+ $r = log.Fatal(new sliceType$5([errC])); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* } */ case 7:
+ b = $appendSlice(k, cP);
+ $s = -1; return b;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: CipherText.ptr.prototype.ToBytes }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f._tuple$1 = _tuple$1; $f.b = b; $f.c = c; $f.cP = cP; $f.errC = errC; $f.errK = errK; $f.k = k; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ CipherText.prototype.ToBytes = function() { return this.$val.ToBytes(); };
+ CipherText.ptr.prototype.FromBytes = function(data) {
+ var $ptr, _r, _r$1, _r$2, _r$3, c, data, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; c = $f.c; data = $f.data; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ _r = suite.Point(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ c.K = _r;
+ _r$1 = suite.Point(); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ c.C = _r$1;
+ _r$2 = (c).K.UnmarshalBinary($subslice(data, 0, 32)); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _r$2;
+ _r$3 = (c).C.UnmarshalBinary($subslice(data, 32)); /* */ $s = 4; case 4: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ _r$3;
+ $s = -1; return;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: CipherText.ptr.prototype.FromBytes }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f.c = c; $f.data = data; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ CipherText.prototype.FromBytes = function(data) { return this.$val.FromBytes(data); };
+ CipherText.ptr.prototype.Serialize = function() {
+ var $ptr, _r, _r$1, c, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; c = $f.c; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ _r = (c).ToBytes(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = base64.StdEncoding.EncodeToString(_r); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ $s = -1; return _r$1;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: CipherText.ptr.prototype.Serialize }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f.c = c; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ CipherText.prototype.Serialize = function() { return this.$val.Serialize(); };
+ CipherText.ptr.prototype.Deserialize = function(b64Encoded) {
+ var $ptr, _tuple, b64Encoded, c, decoded, err, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _tuple = $f._tuple; b64Encoded = $f.b64Encoded; c = $f.c; decoded = $f.decoded; err = $f.err; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ c = this;
+ _tuple = base64.StdEncoding.DecodeString(b64Encoded);
+ decoded = _tuple[0];
+ err = _tuple[1];
+ /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!($interfaceIsEqual(err, $ifaceNil))) { */ case 1:
+ $r = log.Error(new sliceType$5([new $String("Invalid CipherText (decoding failed)."), err])); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return err;
+ /* } */ case 2:
+ $r = (c).FromBytes(decoded); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return $ifaceNil;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: CipherText.ptr.prototype.Deserialize }; } $f.$ptr = $ptr; $f._tuple = _tuple; $f.b64Encoded = b64Encoded; $f.c = c; $f.decoded = decoded; $f.err = err; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ CipherText.prototype.Deserialize = function(b64Encoded) { return this.$val.Deserialize(b64Encoded); };
+ SerializeElement = function(el) {
+ var $ptr, _r, _tuple, bytes, el, err, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; bytes = $f.bytes; el = $f.el; err = $f.err; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = el.MarshalBinary(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ bytes = _tuple[0];
+ err = _tuple[1];
+ /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!($interfaceIsEqual(err, $ifaceNil))) { */ case 2:
+ $r = log.Error(new sliceType$5([new $String("Error marshalling element."), err])); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return ["", err];
+ /* } */ case 3:
+ $s = -1; return [base64.StdEncoding.EncodeToString(bytes), $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: SerializeElement }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.bytes = bytes; $f.el = el; $f.err = err; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.SerializeElement = SerializeElement;
+ SerializePoint = function(point) {
+ var $ptr, _r, point, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; point = $f.point; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = SerializeElement(point); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: SerializePoint }; } $f.$ptr = $ptr; $f._r = _r; $f.point = point; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.SerializePoint = SerializePoint;
+ DeserializePoint = function(encodedPoint) {
+ var $ptr, _r, _r$1, _tuple, decoded, encodedPoint, errD, errM, point, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; decoded = $f.decoded; encodedPoint = $f.encodedPoint; errD = $f.errD; errM = $f.errM; point = $f.point; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _tuple = base64.StdEncoding.DecodeString(encodedPoint);
+ decoded = _tuple[0];
+ errD = _tuple[1];
+ /* */ if (!($interfaceIsEqual(errD, $ifaceNil))) { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (!($interfaceIsEqual(errD, $ifaceNil))) { */ case 1:
+ $r = log.Error(new sliceType$5([new $String("Error decoding point."), errD])); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return [$ifaceNil, errD];
+ /* } */ case 2:
+ _r = network.Suite.Point(); /* */ $s = 4; case 4: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ point = _r;
+ _r$1 = point.UnmarshalBinary(decoded); /* */ $s = 5; case 5: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ errM = _r$1;
+ /* */ if (!($interfaceIsEqual(errM, $ifaceNil))) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (!($interfaceIsEqual(errM, $ifaceNil))) { */ case 6:
+ $r = log.Error(new sliceType$5([new $String("Error unmarshalling point."), errM])); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $s = -1; return [$ifaceNil, errM];
+ /* } */ case 7:
+ $s = -1; return [point, $ifaceNil];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: DeserializePoint }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.decoded = decoded; $f.encodedPoint = encodedPoint; $f.errD = errD; $f.errM = errM; $f.point = point; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.DeserializePoint = DeserializePoint;
+ ptrType$3.methods = [{prop: "DeterministicTagging", name: "DeterministicTagging", pkg: "", typ: $funcType([ptrType$3, abstract$1.Scalar, abstract$1.Scalar], [], false)}, {prop: "ReplaceContribution", name: "ReplaceContribution", pkg: "", typ: $funcType([CipherText, abstract$1.Point, abstract$1.Point], [], false)}, {prop: "KeySwitching", name: "KeySwitching", pkg: "", typ: $funcType([CipherText, abstract$1.Point, abstract$1.Point, abstract$1.Scalar], [abstract$1.Scalar], false)}, {prop: "Add", name: "Add", pkg: "", typ: $funcType([CipherText, CipherText], [], false)}, {prop: "MulCipherTextbyScalar", name: "MulCipherTextbyScalar", pkg: "", typ: $funcType([CipherText, abstract$1.Scalar], [], false)}, {prop: "Sub", name: "Sub", pkg: "", typ: $funcType([CipherText, CipherText], [], false)}, {prop: "String", name: "String", pkg: "", typ: $funcType([], [$String], false)}, {prop: "ToBytes", name: "ToBytes", pkg: "", typ: $funcType([], [sliceType$7], false)}, {prop: "FromBytes", name: "FromBytes", pkg: "", typ: $funcType([sliceType$7], [], false)}, {prop: "Serialize", name: "Serialize", pkg: "", typ: $funcType([], [$String], false)}, {prop: "Deserialize", name: "Deserialize", pkg: "", typ: $funcType([$String], [$error], false)}];
+ CipherText.init("", [{prop: "K", name: "K", exported: true, typ: abstract$1.Point, tag: ""}, {prop: "C", name: "C", exported: true, typ: abstract$1.Point, tag: ""}]);
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = encoding.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = base64.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = xml.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = fmt.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = stats.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = abstract$1.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = cipher.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = proof.$init(); /* */ $s = 8; case 8: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = random.$init(); /* */ $s = 9; case 9: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = shuffle.$init(); /* */ $s = 10; case 10: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = log.$init(); /* */ $s = 11; case 11: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = network.$init(); /* */ $s = 12; case 12: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = monitor.$init(); /* */ $s = 13; case 13: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = math.$init(); /* */ $s = 14; case 14: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = reflect.$init(); /* */ $s = 15; case 15: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strconv.$init(); /* */ $s = 16; case 16: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = strings.$init(); /* */ $s = 17; case 17: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = sync.$init(); /* */ $s = 18; case 18: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ currentGreatestM = $ifaceNil;
+ currentGreatestInt = new $Int64(0, 0);
+ $pkg.PointToInt = {};
+ suite = network.Suite;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["./mylib"] = (function() {
+ var $pkg = {}, $init, mappingTable, base64, json, lib, abstract$1, network, ioutil, PointToString, StringToPoint, ScalarToString, StringToScalar, CipherToString, StringToCipher, GenKey, EncryptInt, DecryptInt;
+ mappingTable = $packages["../mappingTable"];
+ base64 = $packages["encoding/base64"];
+ json = $packages["encoding/json"];
+ lib = $packages["github.com/lca1/unlynx/lib"];
+ abstract$1 = $packages["gopkg.in/dedis/crypto.v0/abstract"];
+ network = $packages["gopkg.in/dedis/onet.v1/network"];
+ ioutil = $packages["io/ioutil"];
+ PointToString = function(p) {
+ var $ptr, _r, _r$1, _tuple, err, p, str, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; err = $f.err; p = $f.p; str = $f.str; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = lib.SerializePoint(p); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ str = _tuple[0];
+ err = _tuple[1];
+ /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 2; continue; }
+ /* */ $s = 3; continue;
+ /* if (!($interfaceIsEqual(err, $ifaceNil))) { */ case 2:
+ _r$1 = err.Error(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ console.log("error when converting the point to string" + _r$1);
+ $panic(err);
+ $s = -1; return "";
+ /* } */ case 3:
+ $s = -1; return str;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: PointToString }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.err = err; $f.p = p; $f.str = str; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.PointToString = PointToString;
+ StringToPoint = function(str) {
+ var $ptr, _r, _r$1, _r$2, _r$3, _tuple, err, nullPoint, point, str, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _r$3 = $f._r$3; _tuple = $f._tuple; err = $f.err; nullPoint = $f.nullPoint; point = $f.point; str = $f.str; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ /* */ if (str === "") { $s = 1; continue; }
+ /* */ $s = 2; continue;
+ /* if (str === "") { */ case 1:
+ _r = network.Suite.Point(); /* */ $s = 3; case 3: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = _r.Null(); /* */ $s = 4; case 4: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ nullPoint = _r$1;
+ $s = -1; return nullPoint;
+ /* } */ case 2:
+ _r$2 = lib.DeserializePoint(str); /* */ $s = 5; case 5: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ _tuple = _r$2;
+ point = _tuple[0];
+ err = _tuple[1];
+ /* */ if (!($interfaceIsEqual(err, $ifaceNil))) { $s = 6; continue; }
+ /* */ $s = 7; continue;
+ /* if (!($interfaceIsEqual(err, $ifaceNil))) { */ case 6:
+ _r$3 = err.Error(); /* */ $s = 8; case 8: if($c) { $c = false; _r$3 = _r$3.$blk(); } if (_r$3 && _r$3.$blk !== undefined) { break s; }
+ console.log("error when converting the string to point" + _r$3);
+ $panic(err);
+ $s = -1; return $ifaceNil;
+ /* } */ case 7:
+ $s = -1; return point;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: StringToPoint }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._r$3 = _r$3; $f._tuple = _tuple; $f.err = err; $f.nullPoint = nullPoint; $f.point = point; $f.str = str; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.StringToPoint = StringToPoint;
+ ScalarToString = function(scalar) {
+ var $ptr, _r, _tuple, b, err, scalar, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _tuple = $f._tuple; b = $f.b; err = $f.err; scalar = $f.scalar; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = scalar.MarshalBinary(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ b = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ console.log("error when converting the secret key to string");
+ $s = -1; return "error when converting the secret key to string";
+ }
+ $s = -1; return base64.StdEncoding.EncodeToString(b);
+ /* */ } return; } if ($f === undefined) { $f = { $blk: ScalarToString }; } $f.$ptr = $ptr; $f._r = _r; $f._tuple = _tuple; $f.b = b; $f.err = err; $f.scalar = scalar; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.ScalarToString = ScalarToString;
+ StringToScalar = function(str) {
+ var $ptr, _r, _r$1, _tuple, b, err, secret, str, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _tuple = $f._tuple; b = $f.b; err = $f.err; secret = $f.secret; str = $f.str; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = network.Suite.Scalar(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ secret = _r;
+ _tuple = base64.StdEncoding.DecodeString(str);
+ b = _tuple[0];
+ err = _tuple[1];
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ console.log("error when decoding the string");
+ $s = -1; return $ifaceNil;
+ }
+ _r$1 = secret.UnmarshalBinary(b); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ err = _r$1;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ console.log("error when unmarshalling the binary");
+ $s = -1; return $ifaceNil;
+ }
+ $s = -1; return secret;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: StringToScalar }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._tuple = _tuple; $f.b = b; $f.err = err; $f.secret = secret; $f.str = str; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.StringToScalar = StringToScalar;
+ CipherToString = function(c) {
+ var $ptr, _r, c, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; c = $f.c; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = c.Serialize(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ $s = -1; return _r;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: CipherToString }; } $f.$ptr = $ptr; $f._r = _r; $f.c = c; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.CipherToString = CipherToString;
+ StringToCipher = function(c) {
+ var $ptr, _r, c, cipher, err, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; c = $f.c; cipher = $f.cipher; err = $f.err; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ cipher = new lib.CipherText.ptr($ifaceNil, $ifaceNil);
+ _r = cipher.Deserialize(c); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ err = _r;
+ if (!($interfaceIsEqual(err, $ifaceNil))) {
+ console.log("error when deserializing the ciphertext");
+ $s = -1; return new lib.CipherText.ptr($ifaceNil, $ifaceNil);
+ }
+ $s = -1; return cipher;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: StringToCipher }; } $f.$ptr = $ptr; $f._r = _r; $f.c = c; $f.cipher = cipher; $f.err = err; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.StringToCipher = StringToCipher;
+ GenKey = function() {
+ var $ptr, _r, _r$1, _r$2, _tuple, pk, pubkey, seckey, sk, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; _tuple = $f._tuple; pk = $f.pk; pubkey = $f.pubkey; seckey = $f.seckey; sk = $f.sk; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ seckey = "";
+ pubkey = "";
+ _r = lib.GenKey(); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _tuple = _r;
+ sk = _tuple[0];
+ pk = _tuple[1];
+ _r$1 = ScalarToString(sk); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ seckey = _r$1;
+ _r$2 = PointToString(pk); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ pubkey = _r$2;
+ $s = -1; return [seckey, pubkey];
+ /* */ } return; } if ($f === undefined) { $f = { $blk: GenKey }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f._tuple = _tuple; $f.pk = pk; $f.pubkey = pubkey; $f.seckey = seckey; $f.sk = sk; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.GenKey = GenKey;
+ EncryptInt = function(pubkey, plain) {
+ var $ptr, _r, _r$1, _r$2, c, plain, pubkey, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; c = $f.c; plain = $f.plain; pubkey = $f.pubkey; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ _r = StringToPoint(pubkey); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _r$1 = lib.EncryptInt(_r, plain); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ c = _r$1;
+ _r$2 = CipherToString($clone(c, lib.CipherText)); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return _r$2;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: EncryptInt }; } $f.$ptr = $ptr; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.c = c; $f.plain = plain; $f.pubkey = pubkey; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.EncryptInt = EncryptInt;
+ DecryptInt = function(ciphertext, seckey) {
+ var $ptr, _arg, _arg$1, _r, _r$1, _r$2, ciphertext, seckey, $s, $r;
+ /* */ $s = 0; var $f, $c = false; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $ptr = $f.$ptr; _arg = $f._arg; _arg$1 = $f._arg$1; _r = $f._r; _r$1 = $f._r$1; _r$2 = $f._r$2; ciphertext = $f.ciphertext; seckey = $f.seckey; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ lib.PointToInt = mappingTable.PointToInt;
+ _r = StringToScalar(seckey); /* */ $s = 1; case 1: if($c) { $c = false; _r = _r.$blk(); } if (_r && _r.$blk !== undefined) { break s; }
+ _arg = _r;
+ _r$1 = StringToCipher(ciphertext); /* */ $s = 2; case 2: if($c) { $c = false; _r$1 = _r$1.$blk(); } if (_r$1 && _r$1.$blk !== undefined) { break s; }
+ _arg$1 = $clone(_r$1, lib.CipherText);
+ _r$2 = lib.DecryptInt(_arg, _arg$1); /* */ $s = 3; case 3: if($c) { $c = false; _r$2 = _r$2.$blk(); } if (_r$2 && _r$2.$blk !== undefined) { break s; }
+ $s = -1; return _r$2;
+ /* */ } return; } if ($f === undefined) { $f = { $blk: DecryptInt }; } $f.$ptr = $ptr; $f._arg = _arg; $f._arg$1 = _arg$1; $f._r = _r; $f._r$1 = _r$1; $f._r$2 = _r$2; $f.ciphertext = ciphertext; $f.seckey = seckey; $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.DecryptInt = DecryptInt;
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = mappingTable.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = base64.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = json.$init(); /* */ $s = 3; case 3: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = lib.$init(); /* */ $s = 4; case 4: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = abstract$1.$init(); /* */ $s = 5; case 5: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = network.$init(); /* */ $s = 6; case 6: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = ioutil.$init(); /* */ $s = 7; case 7: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$packages["main"] = (function() {
+ var $pkg = {}, $init, mylib, js, funcType, funcType$1, funcType$2, main;
+ mylib = $packages["./mylib"];
+ js = $packages["github.com/gopherjs/gopherjs/js"];
+ funcType = $funcType([], [$String, $String], false);
+ funcType$1 = $funcType([$String, $Int64], [$String], false);
+ funcType$2 = $funcType([$String, $String], [$Int64], false);
+ main = function() {
+ var $ptr;
+ $global.GenKey = $externalize(mylib.GenKey, funcType);
+ $global.EncryptInt = $externalize(mylib.EncryptInt, funcType$1);
+ $global.DecryptInt = $externalize(mylib.DecryptInt, funcType$2);
+ };
+ $init = function() {
+ $pkg.$init = function() {};
+ /* */ var $f, $c = false, $s = 0, $r; if (this !== undefined && this.$blk !== undefined) { $f = this; $c = true; $s = $f.$s; $r = $f.$r; } s: while (true) { switch ($s) { case 0:
+ $r = mylib.$init(); /* */ $s = 1; case 1: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ $r = js.$init(); /* */ $s = 2; case 2: if($c) { $c = false; $r = $r.$blk(); } if ($r && $r.$blk !== undefined) { break s; }
+ if ($pkg === $mainPkg) {
+ main();
+ $mainFinished = true;
+ }
+ /* */ } return; } if ($f === undefined) { $f = { $blk: $init }; } $f.$s = $s; $f.$r = $r; return $f;
+ };
+ $pkg.$init = $init;
+ return $pkg;
+})();
+$synthesizeMethods();
+var $mainPkg = $packages["main"];
+$packages["runtime"].$init();
+$go($mainPkg.$init, []);
+$flushConsole();
+
+}).call(this);
+//# sourceMappingURL=test-medco-crypto-web.js.map
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/i2b2_msgs.js b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/i2b2_msgs.js
new file mode 100644
index 000000000..9072586ec
--- /dev/null
+++ b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/i2b2_msgs.js
@@ -0,0 +1,189 @@
+// cellURL is the url to access the service of the cell
+// e.g. http://localhost:9090/i2b2/services/QueryToolService/
+// i2b2.MedCo.cfg.cellURL = "http://localhost:9090/i2b2/services/MedCo/";
+
+// create the communicator Object
+i2b2.MedCo.ajax = i2b2.hive.communicatorFactory("MedCo"); // returns an object which can be used to register function calls
+
+i2b2.MedCo.cfg.msgs = {};
+i2b2.MedCo.cfg.parsers = {};
+
+// ================================================================================================== //
+
+// --- metadata request (init)
+i2b2.MedCo.cfg.msgs.medco_metadata_request = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r'+
+'<ns6:request xmlns:ns4="http://www.i2b2.org/xsd/cell/crc/psm/1.1/"\r'+
+' xmlns:ns7="http://www.i2b2.org/xsd/cell/crc/psm/querydefinition/1.1/"\r'+
+' xmlns:ns3="http://www.i2b2.org/xsd/cell/crc/pdo/1.1/"\r'+
+' xmlns:ns5="http://www.i2b2.org/xsd/hive/plugin/"\r'+
+' xmlns:ns2="http://www.i2b2.org/xsd/hive/pdo/1.1/"\r'+
+' xmlns:ns8="http://www.i2b2.org/xsd/hive/gen/"\r'+
+' xmlns:ns9="http://lca1.epfl.ch/xsd/medco/i2b2/"\r'+
+' xmlns:ns6="http://www.i2b2.org/xsd/hive/msg/1.1/">\r'+
+' <message_header>\n'+
+' {{{proxy_info}}}'+
+' <sending_application>\n'+
+' <application_name>SHRINE_MedCo_webclient_plugin</application_name>\n'+
+' <application_version>0.1</application_version>\n'+
+' </sending_application>\n'+
+' <sending_facility>\n'+
+' <facility_name>MedCo Client</facility_name>\n'+
+' </sending_facility>\n'+
+' <receiving_application>\n'+
+' <application_name>SHRINE_MedCo_Server</application_name>\n'+
+' <application_version>0.1</application_version>\n'+
+' </receiving_application>\n'+
+' <receiving_facility>\n'+
+' <facility_name>MedCo SHRINE</facility_name>\n'+
+' </receiving_facility>\n'+
+//' <message_type>\n'+
+//' <message_code>Q04</message_code>\n'+
+//' <event_type>EQQ</event_type>\n'+
+//' </message_type>\n'+
+' <security>\n'+
+' <domain>{{{sec_domain}}}</domain>\n'+
+' <username>{{{sec_user}}}</username>\n'+
+' {{{sec_pass_node}}}\n'+
+' </security>\n'+
+' <message_control_id>\n'+
+' <message_num>{{{header_msg_id}}}</message_num>\n'+
+' <instance_num>0</instance_num>\n'+
+' </message_control_id>\n'+
+' <processing_id>\n'+
+' <processing_id>P</processing_id>\n'+
+' <processing_mode>I</processing_mode>\n'+
+' </processing_id>\n'+
+' <accept_acknowledgement_type>messageId</accept_acknowledgement_type>\n'+
+' <project_id>{{{sec_project}}}</project_id>\n'+
+' </message_header>\n'+
+' <request_header>\n'+
+' <result_waittime_ms>{{{result_wait_time}}}000</result_waittime_ms>\n'+
+' </request_header>\n'+
+' <message_body>\n'+
+' <ns9:medco_metadata_request />\n'+
+//' <query_name>{{{qname}}}</query_name>\n'+
+//'{{{query_type}}}\n'+
+//' <patient_set>{{{pset}}}</patient_set>\n'+
+//'{{{query_definition}}}\n'+
+//' </ns9:medco_metadata_request>\n'+
+' </message_body>\n'+
+'</ns6:request>';
+
+i2b2.MedCo.cfg.parsers.medco_metadata_request = function() {
+ if (!this.error) {
+ this.model = [];
+ } else {
+ this.model = false;
+ console.error("[medco_metadata_request] Could not parse() data!");
+ }
+ return this;
+}
+
+i2b2.MedCo.ajax._addFunctionCall( "medco_metadata_request",
+ i2b2.MedCo.cfg.cellURL + 'getMetadata',
+ i2b2.MedCo.cfg.msgs.medco_metadata_request,
+// ['pset', 'query_definition', 'query_type'],
+ [ ],
+ i2b2.MedCo.cfg.parsers.medco_metadata_request);
+
+// --- annotations request
+i2b2.MedCo.cfg.msgs.medco_genomic_annotations_request = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r'+
+'<ns6:request xmlns:ns4="http://www.i2b2.org/xsd/cell/crc/psm/1.1/"\r'+
+' xmlns:ns7="http://www.i2b2.org/xsd/cell/crc/psm/querydefinition/1.1/"\r'+
+' xmlns:ns3="http://www.i2b2.org/xsd/cell/crc/pdo/1.1/"\r'+
+' xmlns:ns5="http://www.i2b2.org/xsd/hive/plugin/"\r'+
+' xmlns:ns2="http://www.i2b2.org/xsd/hive/pdo/1.1/"\r'+
+' xmlns:ns8="http://www.i2b2.org/xsd/hive/gen/"\r'+
+' xmlns:ns9="http://lca1.epfl.ch/xsd/medco/i2b2/"\r'+
+' xmlns:ns6="http://www.i2b2.org/xsd/hive/msg/1.1/">\r'+
+' <message_header>\n'+
+' {{{proxy_info}}}'+
+' <sending_application>\n'+
+' <application_name>SHRINE_MedCo_webclient_plugin</application_name>\n'+
+' <application_version>0.1</application_version>\n'+
+' </sending_application>\n'+
+' <sending_facility>\n'+
+' <facility_name>MedCo Client</facility_name>\n'+
+' </sending_facility>\n'+
+' <receiving_application>\n'+
+' <application_name>SHRINE_MedCo_Server</application_name>\n'+
+' <application_version>0.1</application_version>\n'+
+' </receiving_application>\n'+
+' <receiving_facility>\n'+
+' <facility_name>MedCo SHRINE</facility_name>\n'+
+' </receiving_facility>\n'+
+//' <message_type>\n'+
+//' <message_code>Q04</message_code>\n'+
+//' <event_type>EQQ</event_type>\n'+
+//' </message_type>\n'+
+' <security>\n'+
+' <domain>{{{sec_domain}}}</domain>\n'+
+' <username>{{{sec_user}}}</username>\n'+
+' {{{sec_pass_node}}}\n'+
+' </security>\n'+
+' <message_control_id>\n'+
+' <message_num>{{{header_msg_id}}}</message_num>\n'+
+' <instance_num>0</instance_num>\n'+
+' </message_control_id>\n'+
+' <processing_id>\n'+
+' <processing_id>P</processing_id>\n'+
+' <processing_mode>I</processing_mode>\n'+
+' </processing_id>\n'+
+' <accept_acknowledgement_type>messageId</accept_acknowledgement_type>\n'+
+' <project_id>{{{sec_project}}}</project_id>\n'+
+' </message_header>\n'+
+' <request_header>\n'+
+' <result_waittime_ms>{{{result_wait_time}}}000</result_waittime_ms>\n'+
+' </request_header>\n'+
+' <message_body>\n'+
+' <ns9:medco_genomic_annotations_request>\n'+
+' TODO<query_name>{{{qname}}}</query_name>\n'+
+//'{{{query_type}}}\n'+
+//' <patient_set>{{{pset}}}</patient_set>\n'+
+//'{{{query_definition}}}\n'+
+' </ns9:medco_genomic_annotations_request>\n'+
+' </message_body>\n'+
+'</ns6:request>';
+
+i2b2.MedCo.cfg.parsers.medco_genomic_annotations_request = function() {
+ if (!this.error) {
+ this.model = [];
+ } else {
+ this.model = false;
+ console.error("[medco_genomic_annotations_request] Could not parse() data!");
+ }
+ return this;
+}
+
+i2b2.MedCo.ajax._addFunctionCall( "medco_genomic_annotations_request",
+ i2b2.MedCo.cfg.cellURL + 'getGenomicAnnotations',
+ i2b2.MedCo.cfg.msgs.medco_genomic_annotations_request,
+// TODO['pset', 'query_definition', 'query_type'],
+ [ ],
+ i2b2.MedCo.cfg.parsers.medco_genomic_annotations_request);
+
+
+// CHECK if receive a response from the CRC (it obviously should be an error)
+// i2b2.MedCo.ajax._addFunctionCall( "myrequest",
+// i2b2.CRC.cfg.cellURL + 'getGenomicAnnotations',
+// '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r'+
+// '<ns6:request xmlns:ns4="http://www.i2b2.org/xsd/cell/crc/psm/1.1/"\r'+
+// ' xmlns:ns7="http://www.i2b2.org/xsd/cell/crc/psm/querydefinition/1.1/"\r'+
+// ' xmlns:ns3="http://www.i2b2.org/xsd/cell/crc/pdo/1.1/"\r'+
+// ' xmlns:ns5="http://www.i2b2.org/xsd/hive/plugin/"\r'+
+// ' xmlns:ns2="http://www.i2b2.org/xsd/hive/pdo/1.1/"\r'+
+// ' xmlns:ns8="http://www.i2b2.org/xsd/hive/gen/"\r'+
+// ' xmlns:ns9="http://lca1.epfl.ch/xsd/medco/i2b2/"\r'+
+// ' xmlns:ns6="http://www.i2b2.org/xsd/hive/msg/1.1/">\r'+
+// ' <message_header>' +
+// '</message_header>\n'+
+// ' <request_header>\n'+
+// ' </request_header>\n'+
+// ' <message_body>\n'+
+// ' </message_body>\n'+
+// '</ns6:request>',
+// //TODO['pset', 'query_definition', 'query_type'],
+// [ ],
+// i2b2.MedCo.cfg.parsers.medco_genomic_annotations_request);
+
+
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/getGenes.php b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/getGenes.php
new file mode 100644
index 000000000..0362b20d7
--- /dev/null
+++ b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/getGenes.php
@@ -0,0 +1,41 @@
+<?php
+// case sensitive % stands for .*
+//select *
+//from shrine_ont.gene_values
+//where gene_value LIKE '%A1%' //
+//LIMIT 20
+
+// case insensitive with regex
+//select *
+//from shrine_ont.gene_values
+//where gene_value ~* '.*a1.*'
+//LIMIT 20
+
+//$conn = pg_connect("host=localhost port=5432 dbname=i2b2 user=postgres password=admin");
+$conn = pg_connect("host=localhost port=5432 dbname=i2b2 user=shrine_ont password=pFjy3EjDVwLfT2rB9xkK");
+
+if (!$conn) {
+ echo "Error while connecting to the postgres database";
+ exit;
+}
+
+// get the row which contains all the values of the passed annotation
+$query =
+ "SELECT gene_value
+FROM shrine_ont.gene_values
+WHERE gene_value ~* '.*" . $_GET["gene"] .".*'
+LIMIT " . $_GET["limit"];
+
+$result = pg_query($conn, $query);
+if (!$result) {
+ echo "An error occurred.\n";
+ exit;
+}
+
+// In json format return the list of genes
+$geneList = "";
+while ($row = pg_fetch_row($result)) {
+ $geneList .= "\"$row[0]\",";
+}
+// drop the last comma and concatenate in json format
+echo "[" . substr($geneList, 0, -1) . "]";
\ No newline at end of file
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/getVariantNames.php b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/getVariantNames.php
new file mode 100644
index 000000000..187c1c7ab
--- /dev/null
+++ b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/getVariantNames.php
@@ -0,0 +1,36 @@
+<?php
+// case insensitive with regex
+//select variant_name
+//from shrine_ont.variant_names
+//where variant_name ~* '.*a1.*'
+//LIMIT 20
+
+$conn = pg_connect("host=localhost port=5432 dbname=i2b2 user=shrine_ont password=pFjy3EjDVwLfT2rB9xkK");
+
+if (!$conn) {
+ echo "Error while connecting to the postgres database";
+ exit;
+}
+
+// escape the ? for regex query
+$variant_name = str_replace("?", "\?", $_GET["variant_name"]);
+// get the row which contains all the values of the passed annotation
+$query =
+ "SELECT variant_name
+FROM shrine_ont.genomic_annotations_new
+WHERE variant_name ~* '.*" . $variant_name .".*'
+LIMIT " . $_GET["limit"];
+
+$result = pg_query($conn, $query);
+if (!$result) {
+ echo "An error occurred.\n";
+ exit;
+}
+
+// In json format return the list of genes
+$variantNames = "";
+while ($row = pg_fetch_row($result)) {
+ $variantNames .= "\"$row[0]\",";
+}
+// drop the last comma and concatenate in json format
+echo "[" . substr($variantNames, 0, -1) . "]";
\ No newline at end of file
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/getVariants.php b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/getVariants.php
new file mode 100644
index 000000000..a19d02c9e
--- /dev/null
+++ b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/getVariants.php
@@ -0,0 +1,75 @@
+<?php
+
+// query_type define is we are searching by:
+// - old is the old version that uses the first version of the schema
+// - Gene + Zygosity
+// - ...
+
+$query = "";
+switch($_GET["query_type"]){
+ case "gene_and_zygosity":
+ // case insensitive regex query
+ // select variant_id
+ // from shrine_ont.genomic_annotations_new
+ // where annotations ~* '^CTBP2P1;(Homozygous|Unknown);'
+
+ $zigosity = $_GET["zygosity"]; // array of zygosity options, put them in the query separated by | (or)
+
+ $query =
+ "SELECT variant_id " .
+ "FROM shrine_ont.genomic_annotations_new " .
+ "WHERE annotations ~* '^" . $_GET["gene_name"] .
+ ";(" . join('|', $zigosity) .");'";
+ break;
+
+ case "variantName_and_zygosity":
+ // case insensitive regex query
+ // select variant_id
+ // from shrine_ont.genomic_annotations_new
+ /* where variant_name='Y:59022489:?>A'*/
+
+ $zigosity = $_GET["zygosity"];
+
+ $query = "SELECT variant_id " .
+ "FROM shrine_ont.genomic_annotations_new " .
+ "WHERE variant_name='" . $_GET["variant_name"] ."' AND " .
+ "annotations ~* '" . "(" . join('|', $zigosity) .")'";
+ break;
+
+ case "old":
+ //select variant_id
+ //from shrine_ont.genomic_annotations
+ //where variant_annotations ->> 'Start_Position' = '5239176'
+ $query =
+ "SELECT variant_id
+FROM shrine_ont.genomic_annotations
+WHERE variant_annotations ->> '". $_GET["annotation_name"] . "' = '" . $_GET["annotation_value"] ."'";
+ break;
+
+ default:
+ echo "Error: query type not recognized";
+ return;
+
+}
+
+$conn = pg_connect("host=localhost port=5432 dbname=i2b2 user=shrine_ont password=pFjy3EjDVwLfT2rB9xkK");
+
+if (!$conn) {
+ echo "Error while connecting to the postgres database";
+ exit;
+}
+
+$result = pg_query($conn, $query);
+if (!$result) {
+ echo "An error occurred.\n";
+ exit;
+}
+
+// In json format return both the panel number and the list of variants
+echo "{ \"panel_number\" :" . $_GET["panel_number"] . ", \"variants\" : ";
+$variantList = "";
+while ($row = pg_fetch_row($result)) {
+ $variantList .= "\"$row[0]\",";
+}
+// drop the last comma
+echo "[" . substr($variantList, 0, -1) . "]}";
\ No newline at end of file
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/just_a_check.php b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/just_a_check.php
new file mode 100644
index 000000000..010bf0a5b
--- /dev/null
+++ b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/just_a_check.php
@@ -0,0 +1,28 @@
+<?php
+
+//$conn = pg_connect("host=localhost port=5432 dbname=i2b2 user=postgres password=admin");
+$conn = pg_connect("host=i2b2-database port=5432 dbname=i2b2 user=shrine_ont password=pFjy3EjDVwLfT2rB9xkK");
+
+if (!$conn) {
+ echo "Error while connecting to the postgres database";
+ exit;
+}
+
+$query =
+ "SELECT variant_annotations
+FROM shrine_ont.genomic_annotations
+WHERE variant_id = -8935125523235860480";
+
+$result = pg_query($conn, $query);
+if (!$result) {
+ echo "An error occurred.\n";
+ exit;
+}
+
+// In json format return the list of genes
+$geneList = "";
+while ($row = pg_fetch_row($result)) {
+ $geneList .= "\"$row[0]\",";
+}
+// drop the last comma and concatenate in json format
+echo "[" . substr($geneList, 0, -1) . "]";
\ No newline at end of file
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/old/getAnnotationValues.php b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/old/getAnnotationValues.php
new file mode 100644
index 000000000..79a95c66b
--- /dev/null
+++ b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/old/getAnnotationValues.php
@@ -0,0 +1,22 @@
+<?php
+
+$conn = pg_connect("host=localhost port=5432 dbname=i2b2 user=shrine_ont password=demouser");
+
+if (!$conn) {
+ echo "Error while connecting to the postgres database";
+ exit;
+}
+
+// get the row which contains all the values of the passed annotation
+$query = "SELECT annotation_values FROM shrine_ont.genomic_annotations_metadata WHERE annotation_id='". $_GET["annotation_name"] . "'";
+$result = pg_query($conn, $query);
+if (!$result) {
+ echo "An error occurred.\n";
+ exit;
+}
+
+// just tell to which annotation these values correspond (in case of concurrent requests there may be inconsistencies)
+echo $_GET["annotation_name"] . "$%$";
+while ($row = pg_fetch_row($result)) {
+ echo "$row[0]";
+}
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/old/getAnnotations.php b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/old/getAnnotations.php
new file mode 100644
index 000000000..b1c76748b
--- /dev/null
+++ b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/php/old/getAnnotations.php
@@ -0,0 +1,24 @@
+<?php
+
+//echo "Connecting ... <br>";
+$conn = pg_connect("host=localhost port=5432 dbname=i2b2 user=shrine_ont password=demouser");
+
+if (!$conn) {
+ echo "Error while connecting to the postgres database";
+ exit;
+}
+
+// just get the first row (which already contain all the annotations' name)
+$result = pg_query($conn, "SELECT annotation_id FROM shrine_ont.genomic_annotations_metadata");
+if (!$result) {
+ echo "An error occurred.\n";
+ exit;
+}
+
+// json format
+$annotationNames = "[";
+while ($row = pg_fetch_row($result)) {
+ $annotationNames .= "\"$row[0]\",";
+}
+// drop the last comma
+echo substr($annotationNames, 0, -1) . "]";
diff --git a/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/popup_ctrlr.js b/shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/popup_ctrlr.js
similarity index 100%
copy from shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo/popup_ctrlr.js
copy to shrine-webclient/src/main/html/js-i2b2/cells/plugins/MedCo_old2/popup_ctrlr.js

Event Timeline