occam-furtle 2.0.64 → 2.0.65

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "default", {
8
8
  return _default;
9
9
  }
10
10
  });
11
- var bnf = 'document ::= ( procedureDeclaration | error )+ ;\n\n\n\nprocedureDeclaration ::= [type] label<NO_WHITESPACE>"(" parameters? ")" returnBlock ;\n\n\n\nerror. ::= . ;\n\n\n\nvariablesDeclaration ::= [type] variable assignment ( "," variable assignment )* ";" ;\n\nvariableAssignment ::= variable assignment ";" ;\n\nconditionalBlocks ::= "If" "(" condition ")" block ( "Else" block )? ; \n\nobjectAssignment ::= "{" parameters "}" "=" variable ";" ;\n\narrayAssignment ::= "[" parameters "]" "=" variable ";" ;\n \nsomeLoop ::= "Some"<NO_WHITESPACE>"(" variable "," anonymousProcedure ")" ";" ;\n\n\n\nanonymousProcedure ::= "(" parameters? ")" returnBlock ;\n\n\n\ncondition ::= bracketedCondition \n\n | bitwiseCondition \n\n | negatedCondition \n\n | comparison \n\n | value \n \n ;\n \nbracketedCondition ::= "(" condition ")" ; \n\nbitwiseCondition ::= condition ( "||" | "&&" ) condition ; \n\nnegatedCondition ::= "!"<NO_WHITESPACE>condition ; \n\ncomparison ::= value ( "!=" | "==" ) value ; \n\n\n\n\nblock.. ::= "{" ( step | nonsense )* "}" ;\n\nreturnBlock.. ::= "{" ( step | nonsense )* returnStatement "}" ;\n \nreturnStatement ::= [return] value ";" ; \n\n\n\nstep ::= variablesDeclaration\n \n | variableAssignment\n \n | conditionalBlocks\n \n | objectAssignment\n \n | arrayAssignment\n \n | someLoop\n \n ; \n \n \n \nassignment ::= "=" value ;\n\n\n\nvalue ::= procedureCall\n \n | nodesQuery\n \n | nodeQuery\n \n | variable\n \n | ternary\n \n | [null]\n\n | [number]\n \n | [primitive]\n \n | [string-literal] \n \n ;\n\n\n\nprocedureCall ::= reference<NO_WHITESPACE>"(" values? ")" ;\n\nnodesQuery ::= "nodesQuery"<NO_WHITESPACE>"(" variable "," expression ")" ;\n\nnodeQuery ::= "nodeQuery"<NO_WHITESPACE>"(" variable "," expression ")" ;\n\nvariable ::= [name] ;\n\nternary ::= "If" "(" condition ")" value "Else" value ;\n\n\n\nparameters ::= parameter ( "," parameter )* ;\n\nvalues ::= value ( "," value )* ;\n\n\n\nparameter ::= [type] [name]\n\n | "_" \n\n ;\n\n\n\nlabel. ::= [name] ;\n\nreference. ::= [name] ;\n\n\n\nnonsense. ::= [type] | [keyword] | [primitive] | [query] | [special] | [name] | [number] | [unassigned] ;\n \n\n \nexpression ::= path spread? subExpression? ;\n\npath ::= "/" infiniteDescent? selectors ;\n\nsubExpression ::= path spread? subExpression?;\n\ninfiniteDescent ::= "/" ;\n\nselectors ::= selector ( "|" selector )* ;\n\nspread ::= unique\n\n | "[" \n \n ( \n \n ( startIndex "..." endIndex ) \n \n | \n \n ( startIndex "..." ) \n \n | \n \n ( "..." endIndex )\n \n | \n \n index \n \n ) \n \n "]" ;\n\nselector ::= ruleName | tokenType ;\n \nruleName ::= [name] | "*" ;\n \ntokenType ::= "@"<NO_WHITESPACE>( [name] | "*" ) ;\n \nstartIndex ::= [number] ;\n \nendIndex ::= [number] ;\n \nindex ::= [number] ;\n \nunique ::= "!" ;';
11
+ var bnf = 'document ::= ( procedureDeclaration | error )+ ;\n\n\n\nprocedureDeclaration ::= [type] label<NO_WHITESPACE>"(" parameters? ")" returnBlock ;\n\n\n\nerror. ::= . ;\n\n\n\nvariablesDeclaration ::= [type] variable assignment ( "," variable assignment )* ";" ;\n\nvariableAssignment ::= variable assignment ";" ;\n\nconditionalBlocks ::= "If" "(" condition ")" block ( "Else" block )? ; \n\nobjectAssignment ::= "{" parameters "}" "=" variable ";" ;\n\narrayAssignment ::= "[" parameters "]" "=" variable ";" ;\n \n\n\nanonymousProcedure ::= "(" parameters? ")" returnBlock ;\n\n\n\ncondition ::= bracketedCondition \n\n | bitwiseCondition \n\n | negatedCondition \n\n | comparison \n\n | value \n \n ;\n \nbracketedCondition ::= "(" condition ")" ; \n\nbitwiseCondition ::= condition ( "||" | "&&" ) condition ; \n\nnegatedCondition ::= "!"<NO_WHITESPACE>condition ; \n\ncomparison ::= value ( "!=" | "==" ) value ; \n\n\n\n\nblock.. ::= "{" ( step | nonsense )* "}" ;\n\nreturnBlock.. ::= "{" ( step | nonsense )* returnStatement "}" ;\n \nreturnStatement ::= [return] value ";" ; \n\n\n\nstep ::= variablesDeclaration\n \n | variableAssignment\n \n | conditionalBlocks\n \n | objectAssignment\n \n | arrayAssignment\n \n ; \n \n \n \nassignment ::= "=" value ;\n\n\n\nvalue ::= procedureCall\n \n | comparison\n\n | nodesQuery\n \n | nodeQuery\n \n | variable\n \n | ternary\n \n | some\n\n | [null]\n\n | [number]\n \n | [primitive]\n \n | [string-literal] \n \n ;\n\n\n\nprocedureCall ::= reference<NO_WHITESPACE>"(" values? ")" ;\n\nnodesQuery ::= "nodesQuery"<NO_WHITESPACE>"(" variable "," expression ")" ;\n\nnodeQuery ::= "nodeQuery"<NO_WHITESPACE>"(" variable "," expression ")" ;\n\nvariable ::= [name] ;\n\nternary ::= "If" "(" condition ")" value "Else" value ;\n\nsome ::= "Some"<NO_WHITESPACE>"(" variable "," anonymousProcedure ")" ";" ;\n\n\n\nparameters ::= parameter ( "," parameter )* ;\n\nvalues ::= value ( "," value )* ;\n\n\n\nparameter ::= [type] [name]\n\n | "_" \n\n ;\n\n\n\nlabel. ::= [name] ;\n\nreference. ::= [name] ;\n\n\n\nnonsense. ::= [type] | [keyword] | [primitive] | [query] | [special] | [name] | [number] | [unassigned] ;\n \n\n \nexpression ::= path spread? subExpression? ;\n\npath ::= "/" infiniteDescent? selectors ;\n\nsubExpression ::= path spread? subExpression?;\n\ninfiniteDescent ::= "/" ;\n\nselectors ::= selector ( "|" selector )* ;\n\nspread ::= unique\n\n | "[" \n \n ( \n \n ( startIndex "..." endIndex ) \n \n | \n \n ( startIndex "..." ) \n \n | \n \n ( "..." endIndex )\n \n | \n \n index \n \n ) \n \n "]" ;\n\nselector ::= ruleName | tokenType ;\n \nruleName ::= [name] | "*" ;\n \ntokenType ::= "@"<NO_WHITESPACE>( [name] | "*" ) ;\n \nstartIndex ::= [number] ;\n \nendIndex ::= [number] ;\n \nindex ::= [number] ;\n \nunique ::= "!" ;';
12
12
  var _default = bnf;
13
13
 
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9fb2NjYW0tZ3JhbW1hcnMvZnVydGxlL2JuZi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuY29uc3QgYm5mID0gYGRvY3VtZW50ICAgICAgICAgICAgICAgOjo9ICAoIHByb2NlZHVyZURlY2xhcmF0aW9uIHwgZXJyb3IgKSsgO1xuXG5cblxucHJvY2VkdXJlRGVjbGFyYXRpb24gICA6Oj0gIFt0eXBlXSBsYWJlbDxOT19XSElURVNQQUNFPlwiKFwiIHBhcmFtZXRlcnM/IFwiKVwiIHJldHVybkJsb2NrIDtcblxuXG5cbmVycm9yLiAgICAgICAgICAgICAgICAgOjo9ICAuIDtcblxuXG5cbnZhcmlhYmxlc0RlY2xhcmF0aW9uICAgOjo9ICBbdHlwZV0gdmFyaWFibGUgYXNzaWdubWVudCAoIFwiLFwiIHZhcmlhYmxlIGFzc2lnbm1lbnQgKSogXCI7XCIgO1xuXG52YXJpYWJsZUFzc2lnbm1lbnQgICAgIDo6PSAgdmFyaWFibGUgYXNzaWdubWVudCBcIjtcIiA7XG5cbmNvbmRpdGlvbmFsQmxvY2tzICAgICAgOjo9ICBcIklmXCIgXCIoXCIgY29uZGl0aW9uIFwiKVwiIGJsb2NrICggXCJFbHNlXCIgYmxvY2sgKT8gOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cbm9iamVjdEFzc2lnbm1lbnQgICAgICAgOjo9ICBcIntcIiBwYXJhbWV0ZXJzIFwifVwiIFwiPVwiIHZhcmlhYmxlIFwiO1wiIDtcblxuYXJyYXlBc3NpZ25tZW50ICAgICAgICA6Oj0gIFwiW1wiIHBhcmFtZXRlcnMgXCJdXCIgXCI9XCIgdmFyaWFibGUgXCI7XCIgO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5zb21lTG9vcCAgICAgICAgICAgICAgIDo6PSAgXCJTb21lXCI8Tk9fV0hJVEVTUEFDRT5cIihcIiB2YXJpYWJsZSBcIixcIiBhbm9ueW1vdXNQcm9jZWR1cmUgXCIpXCIgXCI7XCIgO1xuXG5cblxuYW5vbnltb3VzUHJvY2VkdXJlICAgICA6Oj0gIFwiKFwiIHBhcmFtZXRlcnM/IFwiKVwiIHJldHVybkJsb2NrIDtcblxuXG5cbmNvbmRpdGlvbiAgICAgICAgICAgICAgOjo9ICBicmFja2V0ZWRDb25kaXRpb24gXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICBiaXR3aXNlQ29uZGl0aW9uIFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgfCAgbmVnYXRlZENvbmRpdGlvbiBcblxuICAgICAgICAgICAgICAgICAgICAgICAgIHwgIGNvbXBhcmlzb24gXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICB2YWx1ZSBcbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgIDtcbiAgICAgICAgICAgICAgICAgICAgICAgIFxuYnJhY2tldGVkQ29uZGl0aW9uICAgICA6Oj0gIFwiKFwiIGNvbmRpdGlvbiBcIilcIiA7IFxuXG5iaXR3aXNlQ29uZGl0aW9uICAgICAgIDo6PSAgY29uZGl0aW9uICggXCJ8fFwiIHwgXCImJlwiICkgY29uZGl0aW9uIDsgXG5cbm5lZ2F0ZWRDb25kaXRpb24gICAgICAgOjo9ICBcIiFcIjxOT19XSElURVNQQUNFPmNvbmRpdGlvbiA7IFxuXG5jb21wYXJpc29uICAgICAgICAgICAgIDo6PSAgdmFsdWUgKCBcIiE9XCIgfCBcIj09XCIgKSB2YWx1ZSA7IFxuXG5cblxuXG5ibG9jay4uICAgICAgICAgICAgICAgIDo6PSAgXCJ7XCIgKCBzdGVwIHwgbm9uc2Vuc2UgKSogXCJ9XCIgO1xuXG5yZXR1cm5CbG9jay4uICAgICAgICAgIDo6PSAgXCJ7XCIgKCBzdGVwIHwgbm9uc2Vuc2UgKSogcmV0dXJuU3RhdGVtZW50IFwifVwiIDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxucmV0dXJuU3RhdGVtZW50ICAgICAgICA6Oj0gIFtyZXR1cm5dIHZhbHVlIFwiO1wiIDsgXG5cblxuXG5zdGVwICAgICAgICAgICAgICAgICAgIDo6PSAgdmFyaWFibGVzRGVjbGFyYXRpb25cbiBcbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICB2YXJpYWJsZUFzc2lnbm1lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgfCAgY29uZGl0aW9uYWxCbG9ja3NcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgfCAgb2JqZWN0QXNzaWdubWVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICBhcnJheUFzc2lnbm1lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgfCAgc29tZUxvb3BcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgOyAgXG4gIFxuICBcbiAgXG5hc3NpZ25tZW50ICAgICAgICAgICAgIDo6PSAgXCI9XCIgdmFsdWUgO1xuXG5cblxudmFsdWUgICAgICAgICAgICAgICAgICA6Oj0gIHByb2NlZHVyZUNhbGxcbiBcbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICBub2Rlc1F1ZXJ5XG4gICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgIHwgIG5vZGVRdWVyeVxuICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICB2YXJpYWJsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICB0ZXJuYXJ5XG4gICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgIHwgIFtudWxsXVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgfCAgW251bWJlcl1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgfCAgW3ByaW1pdGl2ZV1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgfCAgW3N0cmluZy1saXRlcmFsXSBcbiAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICA7XG5cblxuXG5wcm9jZWR1cmVDYWxsICAgICAgICAgIDo6PSAgcmVmZXJlbmNlPE5PX1dISVRFU1BBQ0U+XCIoXCIgdmFsdWVzPyBcIilcIiA7XG5cbm5vZGVzUXVlcnkgICAgICAgICAgICAgOjo9ICBcIm5vZGVzUXVlcnlcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiLFwiIGV4cHJlc3Npb24gXCIpXCIgO1xuXG5ub2RlUXVlcnkgICAgICAgICAgICAgIDo6PSAgXCJub2RlUXVlcnlcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiLFwiIGV4cHJlc3Npb24gXCIpXCIgO1xuXG52YXJpYWJsZSAgICAgICAgICAgICAgIDo6PSAgW25hbWVdIDtcblxudGVybmFyeSAgICAgICAgICAgICAgICA6Oj0gIFwiSWZcIiBcIihcIiBjb25kaXRpb24gXCIpXCIgdmFsdWUgXCJFbHNlXCIgdmFsdWUgO1xuXG5cblxucGFyYW1ldGVycyAgICAgICAgICAgICA6Oj0gIHBhcmFtZXRlciAoIFwiLFwiIHBhcmFtZXRlciApKiA7XG5cbnZhbHVlcyAgICAgICAgICAgICAgICAgOjo9ICB2YWx1ZSAoIFwiLFwiIHZhbHVlICkqIDtcblxuXG5cbnBhcmFtZXRlciAgICAgICAgICAgICAgOjo9ICBbdHlwZV0gW25hbWVdXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICBcIl9cIiBcblxuICAgICAgICAgICAgICAgICAgICAgICAgIDtcblxuXG5cbmxhYmVsLiAgICAgICAgICAgICAgICAgOjo9ICBbbmFtZV0gO1xuXG5yZWZlcmVuY2UuICAgICAgICAgICAgIDo6PSAgW25hbWVdIDtcblxuXG5cbm5vbnNlbnNlLiAgICAgICAgICAgICAgOjo9ICBbdHlwZV0gfCBba2V5d29yZF0gfCBbcHJpbWl0aXZlXSB8IFtxdWVyeV0gfCBbc3BlY2lhbF0gfCBbbmFtZV0gfCBbbnVtYmVyXSB8IFt1bmFzc2lnbmVkXSA7XG4gICAgXG5cbiAgICBcbmV4cHJlc3Npb24gICAgICAgICAgICAgOjo9ICBwYXRoIHNwcmVhZD8gc3ViRXhwcmVzc2lvbj8gO1xuXG5wYXRoICAgICAgICAgICAgICAgICAgIDo6PSAgXCIvXCIgaW5maW5pdGVEZXNjZW50PyBzZWxlY3RvcnMgO1xuXG5zdWJFeHByZXNzaW9uICAgICAgICAgIDo6PSAgcGF0aCBzcHJlYWQ/IHN1YkV4cHJlc3Npb24/O1xuXG5pbmZpbml0ZURlc2NlbnQgICAgICAgIDo6PSAgXCIvXCIgO1xuXG5zZWxlY3RvcnMgICAgICAgICAgICAgIDo6PSAgc2VsZWN0b3IgKCBcInxcIiBzZWxlY3RvciApKiA7XG5cbnNwcmVhZCAgICAgICAgICAgICAgICAgOjo9ICB1bmlxdWVcblxuICAgICAgICAgICAgICAgICAgICAgICAgIHwgIFwiW1wiIFxuICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKCBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCBzdGFydEluZGV4IFwiLi4uXCIgZW5kSW5kZXggKSBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCBzdGFydEluZGV4IFwiLi4uXCIgKSBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCBcIi4uLlwiIGVuZEluZGV4IClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJdXCIgO1xuXG5zZWxlY3RvciAgICAgICAgICAgICAgIDo6PSAgcnVsZU5hbWUgfCB0b2tlblR5cGUgO1xuICAgICAgICAgICAgICAgICAgIFxucnVsZU5hbWUgICAgICAgICAgICAgICA6Oj0gIFtuYW1lXSB8IFwiKlwiIDtcbiAgICAgICAgICAgICAgICAgICBcbnRva2VuVHlwZSAgICAgICAgICAgICAgOjo9ICBcIkBcIjxOT19XSElURVNQQUNFPiggW25hbWVdIHwgXCIqXCIgKSA7XG4gICAgICAgICAgICAgICAgICAgXG5zdGFydEluZGV4ICAgICAgICAgICAgIDo6PSAgW251bWJlcl0gO1xuICAgICAgICAgICAgICAgICAgIFxuZW5kSW5kZXggICAgICAgICAgICAgICA6Oj0gIFtudW1iZXJdIDtcbiAgICAgICAgICAgICAgICAgICBcbmluZGV4ICAgICAgICAgICAgICAgICAgOjo9ICBbbnVtYmVyXSA7XG4gICAgICAgICAgICAgICAgICAgXG51bmlxdWUgICAgICAgICAgICAgICAgIDo6PSAgXCIhXCIgO2A7XG5cbmV4cG9ydCBkZWZhdWx0IGJuZjtcbiJdLCJuYW1lcyI6WyJibmYiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQTZMQTs7O2VBQUE7OztBQTNMQSxJQUFNQSxNQUFPO0lBMkxiLFdBQWVBIn0=
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9fb2NjYW0tZ3JhbW1hcnMvZnVydGxlL2JuZi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuY29uc3QgYm5mID0gYGRvY3VtZW50ICAgICAgICAgICAgICAgOjo9ICAoIHByb2NlZHVyZURlY2xhcmF0aW9uIHwgZXJyb3IgKSsgO1xuXG5cblxucHJvY2VkdXJlRGVjbGFyYXRpb24gICA6Oj0gIFt0eXBlXSBsYWJlbDxOT19XSElURVNQQUNFPlwiKFwiIHBhcmFtZXRlcnM/IFwiKVwiIHJldHVybkJsb2NrIDtcblxuXG5cbmVycm9yLiAgICAgICAgICAgICAgICAgOjo9ICAuIDtcblxuXG5cbnZhcmlhYmxlc0RlY2xhcmF0aW9uICAgOjo9ICBbdHlwZV0gdmFyaWFibGUgYXNzaWdubWVudCAoIFwiLFwiIHZhcmlhYmxlIGFzc2lnbm1lbnQgKSogXCI7XCIgO1xuXG52YXJpYWJsZUFzc2lnbm1lbnQgICAgIDo6PSAgdmFyaWFibGUgYXNzaWdubWVudCBcIjtcIiA7XG5cbmNvbmRpdGlvbmFsQmxvY2tzICAgICAgOjo9ICBcIklmXCIgXCIoXCIgY29uZGl0aW9uIFwiKVwiIGJsb2NrICggXCJFbHNlXCIgYmxvY2sgKT8gOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cbm9iamVjdEFzc2lnbm1lbnQgICAgICAgOjo9ICBcIntcIiBwYXJhbWV0ZXJzIFwifVwiIFwiPVwiIHZhcmlhYmxlIFwiO1wiIDtcblxuYXJyYXlBc3NpZ25tZW50ICAgICAgICA6Oj0gIFwiW1wiIHBhcmFtZXRlcnMgXCJdXCIgXCI9XCIgdmFyaWFibGUgXCI7XCIgO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cblxuYW5vbnltb3VzUHJvY2VkdXJlICAgICA6Oj0gIFwiKFwiIHBhcmFtZXRlcnM/IFwiKVwiIHJldHVybkJsb2NrIDtcblxuXG5cbmNvbmRpdGlvbiAgICAgICAgICAgICAgOjo9ICBicmFja2V0ZWRDb25kaXRpb24gXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICBiaXR3aXNlQ29uZGl0aW9uIFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgfCAgbmVnYXRlZENvbmRpdGlvbiBcblxuICAgICAgICAgICAgICAgICAgICAgICAgIHwgIGNvbXBhcmlzb24gXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICB2YWx1ZSBcbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgIDtcbiAgICAgICAgICAgICAgICAgICAgICAgIFxuYnJhY2tldGVkQ29uZGl0aW9uICAgICA6Oj0gIFwiKFwiIGNvbmRpdGlvbiBcIilcIiA7IFxuXG5iaXR3aXNlQ29uZGl0aW9uICAgICAgIDo6PSAgY29uZGl0aW9uICggXCJ8fFwiIHwgXCImJlwiICkgY29uZGl0aW9uIDsgXG5cbm5lZ2F0ZWRDb25kaXRpb24gICAgICAgOjo9ICBcIiFcIjxOT19XSElURVNQQUNFPmNvbmRpdGlvbiA7IFxuXG5jb21wYXJpc29uICAgICAgICAgICAgIDo6PSAgdmFsdWUgKCBcIiE9XCIgfCBcIj09XCIgKSB2YWx1ZSA7IFxuXG5cblxuXG5ibG9jay4uICAgICAgICAgICAgICAgIDo6PSAgXCJ7XCIgKCBzdGVwIHwgbm9uc2Vuc2UgKSogXCJ9XCIgO1xuXG5yZXR1cm5CbG9jay4uICAgICAgICAgIDo6PSAgXCJ7XCIgKCBzdGVwIHwgbm9uc2Vuc2UgKSogcmV0dXJuU3RhdGVtZW50IFwifVwiIDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxucmV0dXJuU3RhdGVtZW50ICAgICAgICA6Oj0gIFtyZXR1cm5dIHZhbHVlIFwiO1wiIDsgXG5cblxuXG5zdGVwICAgICAgICAgICAgICAgICAgIDo6PSAgdmFyaWFibGVzRGVjbGFyYXRpb25cbiBcbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICB2YXJpYWJsZUFzc2lnbm1lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgfCAgY29uZGl0aW9uYWxCbG9ja3NcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgfCAgb2JqZWN0QXNzaWdubWVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICBhcnJheUFzc2lnbm1lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgOyAgXG4gIFxuICBcbiAgXG5hc3NpZ25tZW50ICAgICAgICAgICAgIDo6PSAgXCI9XCIgdmFsdWUgO1xuXG5cblxudmFsdWUgICAgICAgICAgICAgICAgICA6Oj0gIHByb2NlZHVyZUNhbGxcbiBcbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICBjb21wYXJpc29uXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICBub2Rlc1F1ZXJ5XG4gICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgIHwgIG5vZGVRdWVyeVxuICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICB2YXJpYWJsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICB0ZXJuYXJ5XG4gICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHNvbWVcblxuICAgICAgICAgICAgICAgICAgICAgICAgIHwgIFtudWxsXVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgfCAgW251bWJlcl1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgfCAgW3ByaW1pdGl2ZV1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgfCAgW3N0cmluZy1saXRlcmFsXSBcbiAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICA7XG5cblxuXG5wcm9jZWR1cmVDYWxsICAgICAgICAgIDo6PSAgcmVmZXJlbmNlPE5PX1dISVRFU1BBQ0U+XCIoXCIgdmFsdWVzPyBcIilcIiA7XG5cbm5vZGVzUXVlcnkgICAgICAgICAgICAgOjo9ICBcIm5vZGVzUXVlcnlcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiLFwiIGV4cHJlc3Npb24gXCIpXCIgO1xuXG5ub2RlUXVlcnkgICAgICAgICAgICAgIDo6PSAgXCJub2RlUXVlcnlcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiLFwiIGV4cHJlc3Npb24gXCIpXCIgO1xuXG52YXJpYWJsZSAgICAgICAgICAgICAgIDo6PSAgW25hbWVdIDtcblxudGVybmFyeSAgICAgICAgICAgICAgICA6Oj0gIFwiSWZcIiBcIihcIiBjb25kaXRpb24gXCIpXCIgdmFsdWUgXCJFbHNlXCIgdmFsdWUgO1xuXG5zb21lICAgICAgICAgICAgICAgICAgIDo6PSAgXCJTb21lXCI8Tk9fV0hJVEVTUEFDRT5cIihcIiB2YXJpYWJsZSBcIixcIiBhbm9ueW1vdXNQcm9jZWR1cmUgXCIpXCIgXCI7XCIgO1xuXG5cblxucGFyYW1ldGVycyAgICAgICAgICAgICA6Oj0gIHBhcmFtZXRlciAoIFwiLFwiIHBhcmFtZXRlciApKiA7XG5cbnZhbHVlcyAgICAgICAgICAgICAgICAgOjo9ICB2YWx1ZSAoIFwiLFwiIHZhbHVlICkqIDtcblxuXG5cbnBhcmFtZXRlciAgICAgICAgICAgICAgOjo9ICBbdHlwZV0gW25hbWVdXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICBcIl9cIiBcblxuICAgICAgICAgICAgICAgICAgICAgICAgIDtcblxuXG5cbmxhYmVsLiAgICAgICAgICAgICAgICAgOjo9ICBbbmFtZV0gO1xuXG5yZWZlcmVuY2UuICAgICAgICAgICAgIDo6PSAgW25hbWVdIDtcblxuXG5cbm5vbnNlbnNlLiAgICAgICAgICAgICAgOjo9ICBbdHlwZV0gfCBba2V5d29yZF0gfCBbcHJpbWl0aXZlXSB8IFtxdWVyeV0gfCBbc3BlY2lhbF0gfCBbbmFtZV0gfCBbbnVtYmVyXSB8IFt1bmFzc2lnbmVkXSA7XG4gICAgXG5cbiAgICBcbmV4cHJlc3Npb24gICAgICAgICAgICAgOjo9ICBwYXRoIHNwcmVhZD8gc3ViRXhwcmVzc2lvbj8gO1xuXG5wYXRoICAgICAgICAgICAgICAgICAgIDo6PSAgXCIvXCIgaW5maW5pdGVEZXNjZW50PyBzZWxlY3RvcnMgO1xuXG5zdWJFeHByZXNzaW9uICAgICAgICAgIDo6PSAgcGF0aCBzcHJlYWQ/IHN1YkV4cHJlc3Npb24/O1xuXG5pbmZpbml0ZURlc2NlbnQgICAgICAgIDo6PSAgXCIvXCIgO1xuXG5zZWxlY3RvcnMgICAgICAgICAgICAgIDo6PSAgc2VsZWN0b3IgKCBcInxcIiBzZWxlY3RvciApKiA7XG5cbnNwcmVhZCAgICAgICAgICAgICAgICAgOjo9ICB1bmlxdWVcblxuICAgICAgICAgICAgICAgICAgICAgICAgIHwgIFwiW1wiIFxuICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKCBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCBzdGFydEluZGV4IFwiLi4uXCIgZW5kSW5kZXggKSBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCBzdGFydEluZGV4IFwiLi4uXCIgKSBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCBcIi4uLlwiIGVuZEluZGV4IClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJdXCIgO1xuXG5zZWxlY3RvciAgICAgICAgICAgICAgIDo6PSAgcnVsZU5hbWUgfCB0b2tlblR5cGUgO1xuICAgICAgICAgICAgICAgICAgIFxucnVsZU5hbWUgICAgICAgICAgICAgICA6Oj0gIFtuYW1lXSB8IFwiKlwiIDtcbiAgICAgICAgICAgICAgICAgICBcbnRva2VuVHlwZSAgICAgICAgICAgICAgOjo9ICBcIkBcIjxOT19XSElURVNQQUNFPiggW25hbWVdIHwgXCIqXCIgKSA7XG4gICAgICAgICAgICAgICAgICAgXG5zdGFydEluZGV4ICAgICAgICAgICAgIDo6PSAgW251bWJlcl0gO1xuICAgICAgICAgICAgICAgICAgIFxuZW5kSW5kZXggICAgICAgICAgICAgICA6Oj0gIFtudW1iZXJdIDtcbiAgICAgICAgICAgICAgICAgICBcbmluZGV4ICAgICAgICAgICAgICAgICAgOjo9ICBbbnVtYmVyXSA7XG4gICAgICAgICAgICAgICAgICAgXG51bmlxdWUgICAgICAgICAgICAgICAgIDo6PSAgXCIhXCIgO2A7XG5cbmV4cG9ydCBkZWZhdWx0IGJuZjtcbiJdLCJuYW1lcyI6WyJibmYiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQStMQTs7O2VBQUE7OztBQTdMQSxJQUFNQSxNQUFPO0lBNkxiLFdBQWVBIn0=
package/lib/dom/block.js CHANGED
@@ -90,7 +90,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
90
90
  return newObj;
91
91
  }
92
92
  var _Block;
93
- var stepNodesQuery = (0, _query.nodesQuery)("/block/step"), forEachLoopBlockNodeQuery = (0, _query.nodeQuery)("/forEachLoop/anonymousProcedure/block");
93
+ var stepNodesQuery = (0, _query.nodesQuery)("/block/step");
94
94
  var _default = (0, _dom.domAssigned)((_Block = /*#__PURE__*/ function() {
95
95
  function Block(string, steps) {
96
96
  _class_call_check(this, Block);
@@ -135,13 +135,6 @@ var _default = (0, _dom.domAssigned)((_Block = /*#__PURE__*/ function() {
135
135
  }
136
136
  return block;
137
137
  }
138
- },
139
- {
140
- key: "fromForEachLoopNode",
141
- value: function fromForEachLoopNode(forEachLoopNode, context) {
142
- var forEachLoopBockNode = forEachLoopBlockNodeQuery(forEachLoopNode), blockNode = forEachLoopBockNode, stepNodes = stepNodesQuery(blockNode), node = blockNode, string = context.nodeAsString(node), steps = stepsFromStepNodes(stepNodes, context), block = new Block(string, steps);
143
- return block;
144
- }
145
138
  }
146
139
  ]);
147
140
  return Block;
@@ -154,4 +147,4 @@ function stepsFromStepNodes(stepNodes, context) {
154
147
  return steps;
155
148
  }
156
149
 
157
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb20vYmxvY2suanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBkb20gZnJvbSBcIi4uL2RvbVwiO1xuaW1wb3J0IEJsb2NrQ29udGV4dCBmcm9tIFwiLi4vY29udGV4dC9ibG9ja1wiO1xuXG5pbXBvcnQgeyBkb21Bc3NpZ25lZCB9IGZyb20gXCIuLi9kb21cIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3Qgc3RlcE5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL2Jsb2NrL3N0ZXBcIiksXG4gICAgICBmb3JFYWNoTG9vcEJsb2NrTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2ZvckVhY2hMb29wL2Fub255bW91c1Byb2NlZHVyZS9ibG9ja1wiKTtcblxuZXhwb3J0IGRlZmF1bHQgZG9tQXNzaWduZWQoY2xhc3MgQmxvY2sge1xuICBjb25zdHJ1Y3RvcihzdHJpbmcsIHN0ZXBzKSB7XG4gICAgdGhpcy5zdHJpbmcgPSBzdHJpbmc7XG4gICAgdGhpcy5zdGVwcyA9IHN0ZXBzO1xuICB9XG5cbiAgZ2V0U3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnN0cmluZztcbiAgfVxuXG4gIGdldFN0ZXBzKCkge1xuICAgIHJldHVybiB0aGlzLnN0ZXBzO1xuICB9XG5cbiAgZXZhbHVhdGUodmFyaWFibGVzLCBjb250ZXh0KSB7XG4gICAgaWYgKGNvbnRleHQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgY29udGV4dCA9IHZhcmlhYmxlczsgIC8vL1xuXG4gICAgICB2YXJpYWJsZXMgPSBbXTtcbiAgICB9XG5cbiAgICBjb25zdCBibG9ja0NvbnRleHQgPSBCbG9ja0NvbnRleHQuZnJvbVZhcmlhYmxlcyh2YXJpYWJsZXMsIGNvbnRleHQpO1xuXG4gICAgY29udGV4dCA9IGJsb2NrQ29udGV4dDsgLy8vXG5cbiAgICB0aGlzLnN0ZXBzLmZvckVhY2goKHN0ZXApID0+IHtcbiAgICAgIHN0ZXAuZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiQmxvY2tcIjtcblxuICBzdGF0aWMgZnJvbUJsb2NrTm9kZShibG9ja05vZGUsIGNvbnRleHQpIHtcbiAgICBsZXQgYmxvY2sgPSBudWxsO1xuXG4gICAgaWYgKGJsb2NrTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgbm9kZSA9IGJsb2NrTm9kZSwgLy8vXG4gICAgICAgICAgICBzdHJpbmcgPSBjb250ZXh0Lm5vZGVBc1N0cmluZyhub2RlKSxcbiAgICAgICAgICAgIHN0ZXBOb2RlcyA9IHN0ZXBOb2Rlc1F1ZXJ5KGJsb2NrTm9kZSksXG4gICAgICAgICAgICBzdGVwcyA9IHN0ZXBzRnJvbVN0ZXBOb2RlcyhzdGVwTm9kZXMsIGNvbnRleHQpO1xuXG4gICAgICBibG9jayA9IG5ldyBCbG9jayhzdHJpbmcsIHN0ZXBzKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYmxvY2s7XG4gIH1cblxuICBzdGF0aWMgZnJvbUZvckVhY2hMb29wTm9kZShmb3JFYWNoTG9vcE5vZGUsIGNvbnRleHQpIHtcbiAgICBjb25zdCBmb3JFYWNoTG9vcEJvY2tOb2RlID0gZm9yRWFjaExvb3BCbG9ja05vZGVRdWVyeShmb3JFYWNoTG9vcE5vZGUpLFxuICAgICAgICAgIGJsb2NrTm9kZSA9IGZvckVhY2hMb29wQm9ja05vZGUsICAvLy9cbiAgICAgICAgICBzdGVwTm9kZXMgPSBzdGVwTm9kZXNRdWVyeShibG9ja05vZGUpLFxuICAgICAgICAgIG5vZGUgPSBibG9ja05vZGUsIC8vL1xuICAgICAgICAgIHN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKG5vZGUpLFxuICAgICAgICAgIHN0ZXBzID0gc3RlcHNGcm9tU3RlcE5vZGVzKHN0ZXBOb2RlcywgY29udGV4dCksXG4gICAgICAgICAgYmxvY2sgPSBuZXcgQmxvY2soc3RyaW5nLCBzdGVwcyk7XG5cbiAgICByZXR1cm4gYmxvY2s7XG4gIH1cbn0pO1xuXG5mdW5jdGlvbiBzdGVwc0Zyb21TdGVwTm9kZXMoc3RlcE5vZGVzLCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgU3RlcCB9ID0gZG9tLFxuICAgICAgICBzdGVwcyA9IHN0ZXBOb2Rlcy5tYXAoKHN0ZXBOb2RlKSA9PiB7XG4gICAgICAgICAgY29uc3Qgc3RlcCA9IFN0ZXAuZnJvbVN0ZXBOb2RlKHN0ZXBOb2RlLCBjb250ZXh0KTtcblxuICAgICAgICAgIHJldHVybiBzdGVwO1xuICAgICAgICB9KTtcblxuICByZXR1cm4gc3RlcHM7XG59XG4iXSwibmFtZXMiOlsic3RlcE5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5IiwiZm9yRWFjaExvb3BCbG9ja05vZGVRdWVyeSIsIm5vZGVRdWVyeSIsImRvbUFzc2lnbmVkIiwiQmxvY2siLCJzdHJpbmciLCJzdGVwcyIsImdldFN0cmluZyIsImdldFN0ZXBzIiwiZXZhbHVhdGUiLCJ2YXJpYWJsZXMiLCJjb250ZXh0IiwidW5kZWZpbmVkIiwiYmxvY2tDb250ZXh0IiwiQmxvY2tDb250ZXh0IiwiZnJvbVZhcmlhYmxlcyIsImZvckVhY2giLCJzdGVwIiwiZnJvbUJsb2NrTm9kZSIsImJsb2NrTm9kZSIsImJsb2NrIiwibm9kZSIsIm5vZGVBc1N0cmluZyIsInN0ZXBOb2RlcyIsInN0ZXBzRnJvbVN0ZXBOb2RlcyIsImZyb21Gb3JFYWNoTG9vcE5vZGUiLCJmb3JFYWNoTG9vcE5vZGUiLCJmb3JFYWNoTG9vcEJvY2tOb2RlIiwibmFtZSIsIlN0ZXAiLCJkb20iLCJtYXAiLCJzdGVwTm9kZSIsImZyb21TdGVwTm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBV0E7OztlQUFBOzs7MkRBVGdCOzREQUNTO3FCQUdhOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUV0QyxJQUFNQSxpQkFBaUJDLElBQUFBLGlCQUFVLEVBQUMsZ0JBQzVCQyw0QkFBNEJDLElBQUFBLGdCQUFTLEVBQUM7SUFFNUMsV0FBZUMsSUFBQUEsZ0JBQVcsMEJBQUM7YUFBTUMsTUFDbkJDLE1BQU0sRUFBRUMsS0FBSztnQ0FETUY7UUFFN0IsSUFBSSxDQUFDQyxNQUFNLEdBQUdBO1FBQ2QsSUFBSSxDQUFDQyxLQUFLLEdBQUdBOzs7O1lBR2ZDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0YsTUFBTTtZQUNwQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0YsS0FBSztZQUNuQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxTQUFTQyxTQUFTLEVBQUVDLE9BQU87Z0JBQ3pCLElBQUlBLFlBQVlDLFdBQVc7b0JBQ3pCRCxVQUFVRCxXQUFZLEdBQUc7b0JBRXpCQSxZQUFZLEVBQUU7Z0JBQ2hCO2dCQUVBLElBQU1HLGVBQWVDLGNBQVksQ0FBQ0MsYUFBYSxDQUFDTCxXQUFXQztnQkFFM0RBLFVBQVVFLGNBQWMsR0FBRztnQkFFM0IsSUFBSSxDQUFDUCxLQUFLLENBQUNVLE9BQU8sQ0FBQyxTQUFDQztvQkFDbEJBLEtBQUtSLFFBQVEsQ0FBQ0U7Z0JBQ2hCO1lBQ0Y7Ozs7WUFJT08sS0FBQUE7bUJBQVAsU0FBT0EsY0FBY0MsU0FBUyxFQUFFUixPQUFPO2dCQUNyQyxJQUFJUyxRQUFRO2dCQUVaLElBQUlELGNBQWMsTUFBTTtvQkFDdEIsSUFBTUUsT0FBT0YsV0FDUGQsU0FBU00sUUFBUVcsWUFBWSxDQUFDRCxPQUM5QkUsWUFBWXhCLGVBQWVvQixZQUMzQmIsUUFBUWtCLG1CQUFtQkQsV0FBV1o7b0JBRTVDUyxRQUFRLElBQUloQixNQUFNQyxRQUFRQztnQkFDNUI7Z0JBRUEsT0FBT2M7WUFDVDs7O1lBRU9LLEtBQUFBO21CQUFQLFNBQU9BLG9CQUFvQkMsZUFBZSxFQUFFZixPQUFPO2dCQUNqRCxJQUFNZ0Isc0JBQXNCMUIsMEJBQTBCeUIsa0JBQ2hEUCxZQUFZUSxxQkFDWkosWUFBWXhCLGVBQWVvQixZQUMzQkUsT0FBT0YsV0FDUGQsU0FBU00sUUFBUVcsWUFBWSxDQUFDRCxPQUM5QmYsUUFBUWtCLG1CQUFtQkQsV0FBV1osVUFDdENTLFFBQVEsSUFBSWhCLE1BQU1DLFFBQVFDO2dCQUVoQyxPQUFPYztZQUNUOzs7O0tBM0JBLHlCQUFPUSxRQUFPO0FBOEJoQixTQUFTSixtQkFBbUJELFNBQVMsRUFBRVosT0FBTztJQUM1QyxJQUFNLEFBQUVrQixPQUFTQyxZQUFHLENBQVpELE1BQ0Z2QixRQUFRaUIsVUFBVVEsR0FBRyxDQUFDLFNBQUNDO1FBQ3JCLElBQU1mLE9BQU9ZLEtBQUtJLFlBQVksQ0FBQ0QsVUFBVXJCO1FBRXpDLE9BQU9NO0lBQ1Q7SUFFTixPQUFPWDtBQUNUIn0=
150
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb20vYmxvY2suanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBkb20gZnJvbSBcIi4uL2RvbVwiO1xuaW1wb3J0IEJsb2NrQ29udGV4dCBmcm9tIFwiLi4vY29udGV4dC9ibG9ja1wiO1xuXG5pbXBvcnQgeyBkb21Bc3NpZ25lZCB9IGZyb20gXCIuLi9kb21cIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3Qgc3RlcE5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL2Jsb2NrL3N0ZXBcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGRvbUFzc2lnbmVkKGNsYXNzIEJsb2NrIHtcbiAgY29uc3RydWN0b3Ioc3RyaW5nLCBzdGVwcykge1xuICAgIHRoaXMuc3RyaW5nID0gc3RyaW5nO1xuICAgIHRoaXMuc3RlcHMgPSBzdGVwcztcbiAgfVxuXG4gIGdldFN0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5zdHJpbmc7XG4gIH1cblxuICBnZXRTdGVwcygpIHtcbiAgICByZXR1cm4gdGhpcy5zdGVwcztcbiAgfVxuXG4gIGV2YWx1YXRlKHZhcmlhYmxlcywgY29udGV4dCkge1xuICAgIGlmIChjb250ZXh0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnRleHQgPSB2YXJpYWJsZXM7ICAvLy9cblxuICAgICAgdmFyaWFibGVzID0gW107XG4gICAgfVxuXG4gICAgY29uc3QgYmxvY2tDb250ZXh0ID0gQmxvY2tDb250ZXh0LmZyb21WYXJpYWJsZXModmFyaWFibGVzLCBjb250ZXh0KTtcblxuICAgIGNvbnRleHQgPSBibG9ja0NvbnRleHQ7IC8vL1xuXG4gICAgdGhpcy5zdGVwcy5mb3JFYWNoKChzdGVwKSA9PiB7XG4gICAgICBzdGVwLmV2YWx1YXRlKGNvbnRleHQpO1xuICAgIH0pO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIkJsb2NrXCI7XG5cbiAgc3RhdGljIGZyb21CbG9ja05vZGUoYmxvY2tOb2RlLCBjb250ZXh0KSB7XG4gICAgbGV0IGJsb2NrID0gbnVsbDtcblxuICAgIGlmIChibG9ja05vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG5vZGUgPSBibG9ja05vZGUsIC8vL1xuICAgICAgICAgICAgc3RyaW5nID0gY29udGV4dC5ub2RlQXNTdHJpbmcobm9kZSksXG4gICAgICAgICAgICBzdGVwTm9kZXMgPSBzdGVwTm9kZXNRdWVyeShibG9ja05vZGUpLFxuICAgICAgICAgICAgc3RlcHMgPSBzdGVwc0Zyb21TdGVwTm9kZXMoc3RlcE5vZGVzLCBjb250ZXh0KTtcblxuICAgICAgYmxvY2sgPSBuZXcgQmxvY2soc3RyaW5nLCBzdGVwcyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGJsb2NrO1xuICB9XG59KTtcblxuZnVuY3Rpb24gc3RlcHNGcm9tU3RlcE5vZGVzKHN0ZXBOb2RlcywgY29udGV4dCkge1xuICBjb25zdCB7IFN0ZXAgfSA9IGRvbSxcbiAgICAgICAgc3RlcHMgPSBzdGVwTm9kZXMubWFwKChzdGVwTm9kZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHN0ZXAgPSBTdGVwLmZyb21TdGVwTm9kZShzdGVwTm9kZSwgY29udGV4dCk7XG5cbiAgICAgICAgICByZXR1cm4gc3RlcDtcbiAgICAgICAgfSk7XG5cbiAgcmV0dXJuIHN0ZXBzO1xufVxuIl0sIm5hbWVzIjpbInN0ZXBOb2Rlc1F1ZXJ5Iiwibm9kZXNRdWVyeSIsImRvbUFzc2lnbmVkIiwiQmxvY2siLCJzdHJpbmciLCJzdGVwcyIsImdldFN0cmluZyIsImdldFN0ZXBzIiwiZXZhbHVhdGUiLCJ2YXJpYWJsZXMiLCJjb250ZXh0IiwidW5kZWZpbmVkIiwiYmxvY2tDb250ZXh0IiwiQmxvY2tDb250ZXh0IiwiZnJvbVZhcmlhYmxlcyIsImZvckVhY2giLCJzdGVwIiwiZnJvbUJsb2NrTm9kZSIsImJsb2NrTm9kZSIsImJsb2NrIiwibm9kZSIsIm5vZGVBc1N0cmluZyIsInN0ZXBOb2RlcyIsInN0ZXBzRnJvbVN0ZXBOb2RlcyIsIm5hbWUiLCJTdGVwIiwiZG9tIiwibWFwIiwic3RlcE5vZGUiLCJmcm9tU3RlcE5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVVBOzs7ZUFBQTs7OzJEQVJnQjs0REFDUztxQkFHYTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFdEMsSUFBTUEsaUJBQWlCQyxJQUFBQSxpQkFBVSxFQUFDO0lBRWxDLFdBQWVDLElBQUFBLGdCQUFXLDBCQUFDO2FBQU1DLE1BQ25CQyxNQUFNLEVBQUVDLEtBQUs7Z0NBRE1GO1FBRTdCLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0MsS0FBSyxHQUFHQTs7OztZQUdmQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLE1BQU07WUFDcEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLEtBQUs7WUFDbkI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsU0FBU0MsU0FBUyxFQUFFQyxPQUFPO2dCQUN6QixJQUFJQSxZQUFZQyxXQUFXO29CQUN6QkQsVUFBVUQsV0FBWSxHQUFHO29CQUV6QkEsWUFBWSxFQUFFO2dCQUNoQjtnQkFFQSxJQUFNRyxlQUFlQyxjQUFZLENBQUNDLGFBQWEsQ0FBQ0wsV0FBV0M7Z0JBRTNEQSxVQUFVRSxjQUFjLEdBQUc7Z0JBRTNCLElBQUksQ0FBQ1AsS0FBSyxDQUFDVSxPQUFPLENBQUMsU0FBQ0M7b0JBQ2xCQSxLQUFLUixRQUFRLENBQUNFO2dCQUNoQjtZQUNGOzs7O1lBSU9PLEtBQUFBO21CQUFQLFNBQU9BLGNBQWNDLFNBQVMsRUFBRVIsT0FBTztnQkFDckMsSUFBSVMsUUFBUTtnQkFFWixJQUFJRCxjQUFjLE1BQU07b0JBQ3RCLElBQU1FLE9BQU9GLFdBQ1BkLFNBQVNNLFFBQVFXLFlBQVksQ0FBQ0QsT0FDOUJFLFlBQVl0QixlQUFla0IsWUFDM0JiLFFBQVFrQixtQkFBbUJELFdBQVdaO29CQUU1Q1MsUUFBUSxJQUFJaEIsTUFBTUMsUUFBUUM7Z0JBQzVCO2dCQUVBLE9BQU9jO1lBQ1Q7Ozs7S0FmQSx5QkFBT0ssUUFBTztBQWtCaEIsU0FBU0QsbUJBQW1CRCxTQUFTLEVBQUVaLE9BQU87SUFDNUMsSUFBTSxBQUFFZSxPQUFTQyxZQUFHLENBQVpELE1BQ0ZwQixRQUFRaUIsVUFBVUssR0FBRyxDQUFDLFNBQUNDO1FBQ3JCLElBQU1aLE9BQU9TLEtBQUtJLFlBQVksQ0FBQ0QsVUFBVWxCO1FBRXpDLE9BQU9NO0lBQ1Q7SUFFTixPQUFPWDtBQUNUIn0=
@@ -91,7 +91,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
91
91
  return newObj;
92
92
  }
93
93
  var _Comparison;
94
- var terminalNodeQuery = (0, _query.nodeQuery)("/comparison/@*"), leftValueNodeQuery = (0, _query.nodeQuery)("/comparison/value[0]"), rightValueNodeQuery = (0, _query.nodeQuery)("/comparison/value[1]"), comparisonNodeQuery = (0, _query.nodeQuery)("/condition/comparison");
94
+ var terminalNodeQuery = (0, _query.nodeQuery)("/comparison/@*"), leftValueNodeQuery = (0, _query.nodeQuery)("/comparison/value[0]"), rightValueNodeQuery = (0, _query.nodeQuery)("/comparison/value[1]"), valueComparisonNodeQuery = (0, _query.nodeQuery)("/value/comparison"), conditionComparisonNodeQuery = (0, _query.nodeQuery)("/condition/comparison");
95
95
  var _default = (0, _dom.domAssigned)((_Comparison = /*#__PURE__*/ function() {
96
96
  function Comparison(string, negated, leftValue, rightValue) {
97
97
  _class_call_check(this, Comparison);
@@ -148,14 +148,26 @@ var _default = (0, _dom.domAssigned)((_Comparison = /*#__PURE__*/ function() {
148
148
  }
149
149
  }
150
150
  ], [
151
+ {
152
+ key: "fromValueNode",
153
+ value: function fromValueNode(valudNode, context) {
154
+ var comparison = null;
155
+ var valueComparisonNode = valueComparisonNodeQuery(valudNode);
156
+ if (valueComparisonNode !== null) {
157
+ var comparisonNode = valueComparisonNode; ///
158
+ comparison = comparisonFromComparisonNode(comparisonNode, context);
159
+ }
160
+ return comparison;
161
+ }
162
+ },
151
163
  {
152
164
  key: "fromConditionNode",
153
165
  value: function fromConditionNode(conditionNode, context) {
154
166
  var comparison = null;
155
- var comparisonNode = comparisonNodeQuery(conditionNode);
156
- if (comparisonNode !== null) {
157
- var Value = _dom.default.Value, node = comparisonNode, string = context.nodeAsString(node), leftValueNode = leftValueNodeQuery(comparisonNode), rightValueNode = rightValueNodeQuery(comparisonNode), negated = negatedFromComparisonNode(comparisonNode, context), leftValue = Value.fromValueNode(leftValueNode, context), rightValue = Value.fromValueNode(rightValueNode, context);
158
- comparison = new Comparison(string, negated, leftValue, rightValue);
167
+ var conditionComparisonNode = conditionComparisonNodeQuery(conditionNode);
168
+ if (conditionComparisonNode !== null) {
169
+ var comparisonNode = conditionComparisonNode; ///
170
+ comparison = comparisonFromComparisonNode(comparisonNode, context);
159
171
  }
160
172
  return comparison;
161
173
  }
@@ -167,5 +179,9 @@ function negatedFromComparisonNode(comparisonNode) {
167
179
  var terminalNode = terminalNodeQuery(comparisonNode), terminalNodeContent = terminalNode.getContent(), negated = terminalNodeContent !== _constants.EQUAL_TO;
168
180
  return negated;
169
181
  }
182
+ function comparisonFromComparisonNode(comparisonNode, context) {
183
+ var Value = _dom.default.Value, Comparison = _dom.default.Comparison, node = comparisonNode, string = context.nodeAsString(node), leftValueNode = leftValueNodeQuery(comparisonNode), rightValueNode = rightValueNodeQuery(comparisonNode), negated = negatedFromComparisonNode(comparisonNode, context), leftValue = Value.fromValueNode(leftValueNode, context), rightValue = Value.fromValueNode(rightValueNode, context), comparison = new Comparison(string, negated, leftValue, rightValue);
184
+ return comparison;
185
+ }
170
186
 
171
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb20vY29tcGFyaXNvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGRvbSBmcm9tIFwiLi4vZG9tXCI7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgRVFVQUxfVE8gfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBkb21Bc3NpZ25lZCB9IGZyb20gXCIuLi9kb21cIjtcblxuY29uc3QgdGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvY29tcGFyaXNvbi9AKlwiKSxcbiAgICAgIGxlZnRWYWx1ZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9jb21wYXJpc29uL3ZhbHVlWzBdXCIpLFxuICAgICAgcmlnaHRWYWx1ZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9jb21wYXJpc29uL3ZhbHVlWzFdXCIpLFxuICAgICAgY29tcGFyaXNvbk5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9jb25kaXRpb24vY29tcGFyaXNvblwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZG9tQXNzaWduZWQoY2xhc3MgQ29tcGFyaXNvbiB7XG4gIGNvbnN0cnVjdG9yKHN0cmluZywgbmVnYXRlZCwgbGVmdFZhbHVlLCByaWdodFZhbHVlKSB7XG4gICAgdGhpcy5zdHJpbmcgPSBzdHJpbmc7XG4gICAgdGhpcy5uZWdhdGVkID0gbmVnYXRlZDtcbiAgICB0aGlzLmxlZnRWYWx1ZSA9IGxlZnRWYWx1ZTtcbiAgICB0aGlzLnJpZ2h0VmFsdWUgPSByaWdodFZhbHVlO1xuICB9XG5cbiAgZ2V0U3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnN0cmluZztcbiAgfVxuXG4gIGlzTmVnYXRlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5uZWdhdGVkO1xuICB9XG5cbiAgZ2V0TGVmdFZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLmxlZnRWYWx1ZTtcbiAgfVxuXG4gIGdldFJpZ2h0VmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMucmlnaHRWYWx1ZTtcbiAgfVxuXG4gIGV2YWx1YXRlKGNvbnRleHQpIHtcbiAgICBsZXQgdmFsdWU7XG5cbiAgICBjb25zdCBjb21wYXJpc29uU3RyaW5nID0gdGhpcy5zdHJpbmc7IC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgRXZhbHVhdGluZyB0aGUgJyR7Y29tcGFyaXNvblN0cmluZ30nIGNvbXBhcmlzb24uLi5gKTtcblxuICAgIGNvbnN0IGxlZnRWYWx1ZSA9IHRoaXMubGVmdFZhbHVlLmV2YWx1YXRlKGNvbnRleHQpLFxuICAgICAgICAgIHJpZ2h0VmFsdWUgPSB0aGlzLnJpZ2h0VmFsdWUuZXZhbHVhdGUoY29udGV4dCksXG4gICAgICAgICAgbGVmdFZhbHVlVHlwZSA9IGxlZnRWYWx1ZS5nZXRUeXBlKCksXG4gICAgICAgICAgcmlnaHRWYWx1ZVR5cGUgPSByaWdodFZhbHVlLmdldFR5cGUoKTtcblxuICAgIGlmIChsZWZ0VmFsdWVUeXBlICE9PSByaWdodFZhbHVlVHlwZSkge1xuICAgICAgY29uc3QgbGVmdFZhbHVlU3RyaW5nID0gbGVmdFZhbHVlLmFzU3RyaW5nKGNvbnRleHQpLFxuICAgICAgICAgICAgcmlnaHRWYWx1ZVN0cmluZyA9IHJpZ2h0VmFsdWUuYXNTdHJpbmcoY29udGV4dCksXG4gICAgICAgICAgICBtZXNzYWdlID0gYFRoZSAke2xlZnRWYWx1ZVN0cmluZ30gbGVmdCB2YWx1ZSdzIHR5cGUgaXMgJyR7bGVmdFZhbHVlVHlwZX0nIHdoZXJlYXMgdGhlICR7cmlnaHRWYWx1ZVN0cmluZ30gcmlnaHQgdmFsdWUncyB0eXBlIGlzICcke3JpZ2h0VmFsdWVUeXBlfScuYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIGNvbnN0IGxlZnRWYWx1ZUVxdWFsVG9SaWdodFZhbHVlID0gbGVmdFZhbHVlLmlzRXF1YWxUbyhyaWdodFZhbHVlKTtcblxuICAgIGxldCBib29sZWFuID0gbGVmdFZhbHVlRXF1YWxUb1JpZ2h0VmFsdWU7IC8vL1xuXG4gICAgaWYgKHRoaXMubmVnYXRlZCkge1xuICAgICAgYm9vbGVhbiA9ICFib29sZWFuOyAvLy9cbiAgICB9XG5cbiAgICBjb25zdCB7IFZhbHVlIH0gPSBkb207XG5cbiAgICB2YWx1ZSA9IFZhbHVlLmZyb21Cb29sZWFuKGJvb2xlYW4sIGNvbnRleHQpO1xuXG4gICAgY29udGV4dC5kZWJ1ZyhgLi4uZXZhbHVhdGVkIHRoZSAnJHtjb21wYXJpc29uU3RyaW5nfScgY29tcGFyaXNvbi5gKTtcblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJDb21wYXJpc29uXCI7XG5cbiAgc3RhdGljIGZyb21Db25kaXRpb25Ob2RlKGNvbmRpdGlvbk5vZGUsIGNvbnRleHQpIHtcbiAgICBsZXQgY29tcGFyaXNvbiA9IG51bGw7XG5cbiAgICBjb25zdCBjb21wYXJpc29uTm9kZSA9IGNvbXBhcmlzb25Ob2RlUXVlcnkoY29uZGl0aW9uTm9kZSk7XG5cbiAgICBpZiAoY29tcGFyaXNvbk5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHsgVmFsdWUgfSA9IGRvbSxcbiAgICAgICAgICAgIG5vZGUgPSBjb21wYXJpc29uTm9kZSwgIC8vL1xuICAgICAgICAgICAgc3RyaW5nID0gY29udGV4dC5ub2RlQXNTdHJpbmcobm9kZSksXG4gICAgICAgICAgICBsZWZ0VmFsdWVOb2RlID0gbGVmdFZhbHVlTm9kZVF1ZXJ5KGNvbXBhcmlzb25Ob2RlKSxcbiAgICAgICAgICAgIHJpZ2h0VmFsdWVOb2RlID0gcmlnaHRWYWx1ZU5vZGVRdWVyeShjb21wYXJpc29uTm9kZSksXG4gICAgICAgICAgICBuZWdhdGVkID0gbmVnYXRlZEZyb21Db21wYXJpc29uTm9kZShjb21wYXJpc29uTm9kZSwgY29udGV4dCksXG4gICAgICAgICAgICBsZWZ0VmFsdWUgPSBWYWx1ZS5mcm9tVmFsdWVOb2RlKGxlZnRWYWx1ZU5vZGUsIGNvbnRleHQpLFxuICAgICAgICAgICAgcmlnaHRWYWx1ZSA9IFZhbHVlLmZyb21WYWx1ZU5vZGUocmlnaHRWYWx1ZU5vZGUsIGNvbnRleHQpO1xuXG4gICAgICBjb21wYXJpc29uID0gbmV3IENvbXBhcmlzb24oc3RyaW5nLCBuZWdhdGVkLCBsZWZ0VmFsdWUsIHJpZ2h0VmFsdWUpO1xuICAgIH1cblxuICAgIHJldHVybiBjb21wYXJpc29uO1xuICB9XG59KTtcblxuZnVuY3Rpb24gbmVnYXRlZEZyb21Db21wYXJpc29uTm9kZShjb21wYXJpc29uTm9kZSkge1xuICBjb25zdCB0ZXJtaW5hbE5vZGUgPSB0ZXJtaW5hbE5vZGVRdWVyeShjb21wYXJpc29uTm9kZSksXG4gICAgICAgIHRlcm1pbmFsTm9kZUNvbnRlbnQgPSB0ZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpLFxuICAgICAgICBuZWdhdGVkID0gKHRlcm1pbmFsTm9kZUNvbnRlbnQgIT09IEVRVUFMX1RPKTtcblxuICByZXR1cm4gbmVnYXRlZDtcbn0iXSwibmFtZXMiOlsidGVybWluYWxOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJsZWZ0VmFsdWVOb2RlUXVlcnkiLCJyaWdodFZhbHVlTm9kZVF1ZXJ5IiwiY29tcGFyaXNvbk5vZGVRdWVyeSIsImRvbUFzc2lnbmVkIiwiQ29tcGFyaXNvbiIsInN0cmluZyIsIm5lZ2F0ZWQiLCJsZWZ0VmFsdWUiLCJyaWdodFZhbHVlIiwiZ2V0U3RyaW5nIiwiaXNOZWdhdGVkIiwiZ2V0TGVmdFZhbHVlIiwiZ2V0UmlnaHRWYWx1ZSIsImV2YWx1YXRlIiwiY29udGV4dCIsInZhbHVlIiwiY29tcGFyaXNvblN0cmluZyIsInRyYWNlIiwibGVmdFZhbHVlVHlwZSIsImdldFR5cGUiLCJyaWdodFZhbHVlVHlwZSIsImxlZnRWYWx1ZVN0cmluZyIsImFzU3RyaW5nIiwicmlnaHRWYWx1ZVN0cmluZyIsIm1lc3NhZ2UiLCJleGNlcHRpb24iLCJFeGNlcHRpb24iLCJmcm9tTWVzc2FnZSIsImxlZnRWYWx1ZUVxdWFsVG9SaWdodFZhbHVlIiwiaXNFcXVhbFRvIiwiYm9vbGVhbiIsIlZhbHVlIiwiZG9tIiwiZnJvbUJvb2xlYW4iLCJkZWJ1ZyIsImZyb21Db25kaXRpb25Ob2RlIiwiY29uZGl0aW9uTm9kZSIsImNvbXBhcmlzb24iLCJjb21wYXJpc29uTm9kZSIsIm5vZGUiLCJub2RlQXNTdHJpbmciLCJsZWZ0VmFsdWVOb2RlIiwicmlnaHRWYWx1ZU5vZGUiLCJuZWdhdGVkRnJvbUNvbXBhcmlzb25Ob2RlIiwiZnJvbVZhbHVlTm9kZSIsIm5hbWUiLCJ0ZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGVDb250ZW50IiwiZ2V0Q29udGVudCIsIkVRVUFMX1RPIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFjQTs7O2VBQUE7OzsyREFaZ0I7Z0VBQ007eUJBRUc7cUJBQ0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRzFCLElBQU1BLG9CQUFvQkMsSUFBQUEsZ0JBQVMsRUFBQyxtQkFDOUJDLHFCQUFxQkQsSUFBQUEsZ0JBQVMsRUFBQyx5QkFDL0JFLHNCQUFzQkYsSUFBQUEsZ0JBQVMsRUFBQyx5QkFDaENHLHNCQUFzQkgsSUFBQUEsZ0JBQVMsRUFBQztJQUV0QyxXQUFlSSxJQUFBQSxnQkFBVywrQkFBQzthQUFNQyxXQUNuQkMsTUFBTSxFQUFFQyxPQUFPLEVBQUVDLFNBQVMsRUFBRUMsVUFBVTtnQ0FEbkJKO1FBRTdCLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0MsT0FBTyxHQUFHQTtRQUNmLElBQUksQ0FBQ0MsU0FBUyxHQUFHQTtRQUNqQixJQUFJLENBQUNDLFVBQVUsR0FBR0E7Ozs7WUFHcEJDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0osTUFBTTtZQUNwQjs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0osT0FBTztZQUNyQjs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0osU0FBUztZQUN2Qjs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0osVUFBVTtZQUN4Qjs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQSxTQUFTQyxPQUFPO2dCQUNkLElBQUlDO2dCQUVKLElBQU1DLG1CQUFtQixJQUFJLENBQUNYLE1BQU0sRUFBRSxHQUFHO2dCQUV6Q1MsUUFBUUcsS0FBSyxDQUFDLEFBQUMsbUJBQW1DLE9BQWpCRCxrQkFBaUI7Z0JBRWxELElBQU1ULFlBQVksSUFBSSxDQUFDQSxTQUFTLENBQUNNLFFBQVEsQ0FBQ0MsVUFDcENOLGFBQWEsSUFBSSxDQUFDQSxVQUFVLENBQUNLLFFBQVEsQ0FBQ0MsVUFDdENJLGdCQUFnQlgsVUFBVVksT0FBTyxJQUNqQ0MsaUJBQWlCWixXQUFXVyxPQUFPO2dCQUV6QyxJQUFJRCxrQkFBa0JFLGdCQUFnQjtvQkFDcEMsSUFBTUMsa0JBQWtCZCxVQUFVZSxRQUFRLENBQUNSLFVBQ3JDUyxtQkFBbUJmLFdBQVdjLFFBQVEsQ0FBQ1IsVUFDdkNVLFVBQVUsQUFBQyxPQUErQ04sT0FBekNHLGlCQUFnQiwyQkFBdURFLE9BQTlCTCxlQUFjLGtCQUEyREUsT0FBM0NHLGtCQUFpQiw0QkFBeUMsT0FBZkgsZ0JBQWUsT0FDbEpLLFlBQVlDLGtCQUFTLENBQUNDLFdBQVcsQ0FBQ0g7b0JBRXhDLE1BQU1DO2dCQUNSO2dCQUVBLElBQU1HLDZCQUE2QnJCLFVBQVVzQixTQUFTLENBQUNyQjtnQkFFdkQsSUFBSXNCLFVBQVVGLDRCQUE0QixHQUFHO2dCQUU3QyxJQUFJLElBQUksQ0FBQ3RCLE9BQU8sRUFBRTtvQkFDaEJ3QixVQUFVLENBQUNBLFNBQVMsR0FBRztnQkFDekI7Z0JBRUEsSUFBTSxBQUFFQyxRQUFVQyxZQUFHLENBQWJEO2dCQUVSaEIsUUFBUWdCLE1BQU1FLFdBQVcsQ0FBQ0gsU0FBU2hCO2dCQUVuQ0EsUUFBUW9CLEtBQUssQ0FBQyxBQUFDLHFCQUFxQyxPQUFqQmxCLGtCQUFpQjtnQkFFcEQsT0FBT0Q7WUFDVDs7OztZQUlPb0IsS0FBQUE7bUJBQVAsU0FBT0Esa0JBQWtCQyxhQUFhLEVBQUV0QixPQUFPO2dCQUM3QyxJQUFJdUIsYUFBYTtnQkFFakIsSUFBTUMsaUJBQWlCcEMsb0JBQW9Ca0M7Z0JBRTNDLElBQUlFLG1CQUFtQixNQUFNO29CQUMzQixJQUFNLEFBQUVQLFFBQVVDLFlBQUcsQ0FBYkQsT0FDRlEsT0FBT0QsZ0JBQ1BqQyxTQUFTUyxRQUFRMEIsWUFBWSxDQUFDRCxPQUM5QkUsZ0JBQWdCekMsbUJBQW1Cc0MsaUJBQ25DSSxpQkFBaUJ6QyxvQkFBb0JxQyxpQkFDckNoQyxVQUFVcUMsMEJBQTBCTCxnQkFBZ0J4QixVQUNwRFAsWUFBWXdCLE1BQU1hLGFBQWEsQ0FBQ0gsZUFBZTNCLFVBQy9DTixhQUFhdUIsTUFBTWEsYUFBYSxDQUFDRixnQkFBZ0I1QjtvQkFFdkR1QixhQUFhLElBQUlqQyxXQUFXQyxRQUFRQyxTQUFTQyxXQUFXQztnQkFDMUQ7Z0JBRUEsT0FBTzZCO1lBQ1Q7Ozs7S0FyQkEsOEJBQU9RLFFBQU87QUF3QmhCLFNBQVNGLDBCQUEwQkwsY0FBYztJQUMvQyxJQUFNUSxlQUFlaEQsa0JBQWtCd0MsaUJBQ2pDUyxzQkFBc0JELGFBQWFFLFVBQVUsSUFDN0MxQyxVQUFXeUMsd0JBQXdCRSxtQkFBUTtJQUVqRCxPQUFPM0M7QUFDVCJ9
187
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb20vY29tcGFyaXNvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGRvbSBmcm9tIFwiLi4vZG9tXCI7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgRVFVQUxfVE8gfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBkb21Bc3NpZ25lZCB9IGZyb20gXCIuLi9kb21cIjtcblxuY29uc3QgdGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvY29tcGFyaXNvbi9AKlwiKSxcbiAgICAgIGxlZnRWYWx1ZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9jb21wYXJpc29uL3ZhbHVlWzBdXCIpLFxuICAgICAgcmlnaHRWYWx1ZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9jb21wYXJpc29uL3ZhbHVlWzFdXCIpLFxuICAgICAgdmFsdWVDb21wYXJpc29uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3ZhbHVlL2NvbXBhcmlzb25cIiksXG4gICAgICBjb25kaXRpb25Db21wYXJpc29uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2NvbmRpdGlvbi9jb21wYXJpc29uXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBkb21Bc3NpZ25lZChjbGFzcyBDb21wYXJpc29uIHtcbiAgY29uc3RydWN0b3Ioc3RyaW5nLCBuZWdhdGVkLCBsZWZ0VmFsdWUsIHJpZ2h0VmFsdWUpIHtcbiAgICB0aGlzLnN0cmluZyA9IHN0cmluZztcbiAgICB0aGlzLm5lZ2F0ZWQgPSBuZWdhdGVkO1xuICAgIHRoaXMubGVmdFZhbHVlID0gbGVmdFZhbHVlO1xuICAgIHRoaXMucmlnaHRWYWx1ZSA9IHJpZ2h0VmFsdWU7XG4gIH1cblxuICBnZXRTdHJpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RyaW5nO1xuICB9XG5cbiAgaXNOZWdhdGVkKCkge1xuICAgIHJldHVybiB0aGlzLm5lZ2F0ZWQ7XG4gIH1cblxuICBnZXRMZWZ0VmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubGVmdFZhbHVlO1xuICB9XG5cbiAgZ2V0UmlnaHRWYWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5yaWdodFZhbHVlO1xuICB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCkge1xuICAgIGxldCB2YWx1ZTtcblxuICAgIGNvbnN0IGNvbXBhcmlzb25TdHJpbmcgPSB0aGlzLnN0cmluZzsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSAnJHtjb21wYXJpc29uU3RyaW5nfScgY29tcGFyaXNvbi4uLmApO1xuXG4gICAgY29uc3QgbGVmdFZhbHVlID0gdGhpcy5sZWZ0VmFsdWUuZXZhbHVhdGUoY29udGV4dCksXG4gICAgICAgICAgcmlnaHRWYWx1ZSA9IHRoaXMucmlnaHRWYWx1ZS5ldmFsdWF0ZShjb250ZXh0KSxcbiAgICAgICAgICBsZWZ0VmFsdWVUeXBlID0gbGVmdFZhbHVlLmdldFR5cGUoKSxcbiAgICAgICAgICByaWdodFZhbHVlVHlwZSA9IHJpZ2h0VmFsdWUuZ2V0VHlwZSgpO1xuXG4gICAgaWYgKGxlZnRWYWx1ZVR5cGUgIT09IHJpZ2h0VmFsdWVUeXBlKSB7XG4gICAgICBjb25zdCBsZWZ0VmFsdWVTdHJpbmcgPSBsZWZ0VmFsdWUuYXNTdHJpbmcoY29udGV4dCksXG4gICAgICAgICAgICByaWdodFZhbHVlU3RyaW5nID0gcmlnaHRWYWx1ZS5hc1N0cmluZyhjb250ZXh0KSxcbiAgICAgICAgICAgIG1lc3NhZ2UgPSBgVGhlICR7bGVmdFZhbHVlU3RyaW5nfSBsZWZ0IHZhbHVlJ3MgdHlwZSBpcyAnJHtsZWZ0VmFsdWVUeXBlfScgd2hlcmVhcyB0aGUgJHtyaWdodFZhbHVlU3RyaW5nfSByaWdodCB2YWx1ZSdzIHR5cGUgaXMgJyR7cmlnaHRWYWx1ZVR5cGV9Jy5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgY29uc3QgbGVmdFZhbHVlRXF1YWxUb1JpZ2h0VmFsdWUgPSBsZWZ0VmFsdWUuaXNFcXVhbFRvKHJpZ2h0VmFsdWUpO1xuXG4gICAgbGV0IGJvb2xlYW4gPSBsZWZ0VmFsdWVFcXVhbFRvUmlnaHRWYWx1ZTsgLy8vXG5cbiAgICBpZiAodGhpcy5uZWdhdGVkKSB7XG4gICAgICBib29sZWFuID0gIWJvb2xlYW47IC8vL1xuICAgIH1cblxuICAgIGNvbnN0IHsgVmFsdWUgfSA9IGRvbTtcblxuICAgIHZhbHVlID0gVmFsdWUuZnJvbUJvb2xlYW4oYm9vbGVhbiwgY29udGV4dCk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5ldmFsdWF0ZWQgdGhlICcke2NvbXBhcmlzb25TdHJpbmd9JyBjb21wYXJpc29uLmApO1xuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIkNvbXBhcmlzb25cIjtcblxuICBzdGF0aWMgZnJvbVZhbHVlTm9kZSh2YWx1ZE5vZGUsIGNvbnRleHQpIHtcbiAgICBsZXQgY29tcGFyaXNvbiA9IG51bGw7XG5cbiAgICBjb25zdCB2YWx1ZUNvbXBhcmlzb25Ob2RlID0gdmFsdWVDb21wYXJpc29uTm9kZVF1ZXJ5KHZhbHVkTm9kZSk7XG5cbiAgICBpZiAodmFsdWVDb21wYXJpc29uTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgY29tcGFyaXNvbk5vZGUgPSB2YWx1ZUNvbXBhcmlzb25Ob2RlOyAvLy9cblxuICAgICAgY29tcGFyaXNvbiA9IGNvbXBhcmlzb25Gcm9tQ29tcGFyaXNvbk5vZGUoY29tcGFyaXNvbk5vZGUsIGNvbnRleHQpO1xuICAgIH1cblxuICAgIHJldHVybiBjb21wYXJpc29uO1xuICB9XG5cbiAgc3RhdGljIGZyb21Db25kaXRpb25Ob2RlKGNvbmRpdGlvbk5vZGUsIGNvbnRleHQpIHtcbiAgICBsZXQgY29tcGFyaXNvbiA9IG51bGw7XG5cbiAgICBjb25zdCBjb25kaXRpb25Db21wYXJpc29uTm9kZSA9IGNvbmRpdGlvbkNvbXBhcmlzb25Ob2RlUXVlcnkoY29uZGl0aW9uTm9kZSk7XG5cbiAgICBpZiAoY29uZGl0aW9uQ29tcGFyaXNvbk5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IGNvbXBhcmlzb25Ob2RlID0gY29uZGl0aW9uQ29tcGFyaXNvbk5vZGU7IC8vL1xuXG4gICAgICBjb21wYXJpc29uID0gY29tcGFyaXNvbkZyb21Db21wYXJpc29uTm9kZShjb21wYXJpc29uTm9kZSwgY29udGV4dCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbXBhcmlzb247XG4gIH1cbn0pO1xuXG5mdW5jdGlvbiBuZWdhdGVkRnJvbUNvbXBhcmlzb25Ob2RlKGNvbXBhcmlzb25Ob2RlKSB7XG4gIGNvbnN0IHRlcm1pbmFsTm9kZSA9IHRlcm1pbmFsTm9kZVF1ZXJ5KGNvbXBhcmlzb25Ob2RlKSxcbiAgICAgICAgdGVybWluYWxOb2RlQ29udGVudCA9IHRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCksXG4gICAgICAgIG5lZ2F0ZWQgPSAodGVybWluYWxOb2RlQ29udGVudCAhPT0gRVFVQUxfVE8pO1xuXG4gIHJldHVybiBuZWdhdGVkO1xufVxuXG5mdW5jdGlvbiBjb21wYXJpc29uRnJvbUNvbXBhcmlzb25Ob2RlKGNvbXBhcmlzb25Ob2RlLCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgVmFsdWUsIENvbXBhcmlzb24gfSA9IGRvbSxcbiAgICAgICAgbm9kZSA9IGNvbXBhcmlzb25Ob2RlLCAgLy8vXG4gICAgICAgIHN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKG5vZGUpLFxuICAgICAgICBsZWZ0VmFsdWVOb2RlID0gbGVmdFZhbHVlTm9kZVF1ZXJ5KGNvbXBhcmlzb25Ob2RlKSxcbiAgICAgICAgcmlnaHRWYWx1ZU5vZGUgPSByaWdodFZhbHVlTm9kZVF1ZXJ5KGNvbXBhcmlzb25Ob2RlKSxcbiAgICAgICAgbmVnYXRlZCA9IG5lZ2F0ZWRGcm9tQ29tcGFyaXNvbk5vZGUoY29tcGFyaXNvbk5vZGUsIGNvbnRleHQpLFxuICAgICAgICBsZWZ0VmFsdWUgPSBWYWx1ZS5mcm9tVmFsdWVOb2RlKGxlZnRWYWx1ZU5vZGUsIGNvbnRleHQpLFxuICAgICAgICByaWdodFZhbHVlID0gVmFsdWUuZnJvbVZhbHVlTm9kZShyaWdodFZhbHVlTm9kZSwgY29udGV4dCksXG4gICAgICAgIGNvbXBhcmlzb24gPSBuZXcgQ29tcGFyaXNvbihzdHJpbmcsIG5lZ2F0ZWQsIGxlZnRWYWx1ZSwgcmlnaHRWYWx1ZSk7XG5cbiAgcmV0dXJuIGNvbXBhcmlzb247XG59XG4iXSwibmFtZXMiOlsidGVybWluYWxOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJsZWZ0VmFsdWVOb2RlUXVlcnkiLCJyaWdodFZhbHVlTm9kZVF1ZXJ5IiwidmFsdWVDb21wYXJpc29uTm9kZVF1ZXJ5IiwiY29uZGl0aW9uQ29tcGFyaXNvbk5vZGVRdWVyeSIsImRvbUFzc2lnbmVkIiwiQ29tcGFyaXNvbiIsInN0cmluZyIsIm5lZ2F0ZWQiLCJsZWZ0VmFsdWUiLCJyaWdodFZhbHVlIiwiZ2V0U3RyaW5nIiwiaXNOZWdhdGVkIiwiZ2V0TGVmdFZhbHVlIiwiZ2V0UmlnaHRWYWx1ZSIsImV2YWx1YXRlIiwiY29udGV4dCIsInZhbHVlIiwiY29tcGFyaXNvblN0cmluZyIsInRyYWNlIiwibGVmdFZhbHVlVHlwZSIsImdldFR5cGUiLCJyaWdodFZhbHVlVHlwZSIsImxlZnRWYWx1ZVN0cmluZyIsImFzU3RyaW5nIiwicmlnaHRWYWx1ZVN0cmluZyIsIm1lc3NhZ2UiLCJleGNlcHRpb24iLCJFeGNlcHRpb24iLCJmcm9tTWVzc2FnZSIsImxlZnRWYWx1ZUVxdWFsVG9SaWdodFZhbHVlIiwiaXNFcXVhbFRvIiwiYm9vbGVhbiIsIlZhbHVlIiwiZG9tIiwiZnJvbUJvb2xlYW4iLCJkZWJ1ZyIsImZyb21WYWx1ZU5vZGUiLCJ2YWx1ZE5vZGUiLCJjb21wYXJpc29uIiwidmFsdWVDb21wYXJpc29uTm9kZSIsImNvbXBhcmlzb25Ob2RlIiwiY29tcGFyaXNvbkZyb21Db21wYXJpc29uTm9kZSIsImZyb21Db25kaXRpb25Ob2RlIiwiY29uZGl0aW9uTm9kZSIsImNvbmRpdGlvbkNvbXBhcmlzb25Ob2RlIiwibmFtZSIsIm5lZ2F0ZWRGcm9tQ29tcGFyaXNvbk5vZGUiLCJ0ZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGVDb250ZW50IiwiZ2V0Q29udGVudCIsIkVRVUFMX1RPIiwibm9kZSIsIm5vZGVBc1N0cmluZyIsImxlZnRWYWx1ZU5vZGUiLCJyaWdodFZhbHVlTm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBZUE7OztlQUFBOzs7MkRBYmdCO2dFQUNNO3lCQUVHO3FCQUNDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUcxQixJQUFNQSxvQkFBb0JDLElBQUFBLGdCQUFTLEVBQUMsbUJBQzlCQyxxQkFBcUJELElBQUFBLGdCQUFTLEVBQUMseUJBQy9CRSxzQkFBc0JGLElBQUFBLGdCQUFTLEVBQUMseUJBQ2hDRywyQkFBMkJILElBQUFBLGdCQUFTLEVBQUMsc0JBQ3JDSSwrQkFBK0JKLElBQUFBLGdCQUFTLEVBQUM7SUFFL0MsV0FBZUssSUFBQUEsZ0JBQVcsK0JBQUM7YUFBTUMsV0FDbkJDLE1BQU0sRUFBRUMsT0FBTyxFQUFFQyxTQUFTLEVBQUVDLFVBQVU7Z0NBRG5CSjtRQUU3QixJQUFJLENBQUNDLE1BQU0sR0FBR0E7UUFDZCxJQUFJLENBQUNDLE9BQU8sR0FBR0E7UUFDZixJQUFJLENBQUNDLFNBQVMsR0FBR0E7UUFDakIsSUFBSSxDQUFDQyxVQUFVLEdBQUdBOzs7O1lBR3BCQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNKLE1BQU07WUFDcEI7OztZQUVBSyxLQUFBQTttQkFBQUEsU0FB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
@@ -98,7 +98,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
98
98
  return newObj;
99
99
  }
100
100
  var _Parameters;
101
- var parametersNodeQuery = (0, _query.nodeQuery)("/forEachLoop/anonymousProcedure/parameters"), parameterNodesQuery = (0, _query.nodesQuery)("/parameters/parameter"), arrayAssignmentParametersNodeQuery = (0, _query.nodeQuery)("/arrayAssignment/parameters"), objectAssignmentParametersNodeQuery = (0, _query.nodeQuery)("/objectAssignment/parameters"), procedureDeclarationParametersNodeQuery = (0, _query.nodeQuery)("/procedureDeclaration/parameters");
101
+ var parameterNodesQuery = (0, _query.nodesQuery)("/parameters/parameter"), someParametersNodeQuery = (0, _query.nodeQuery)("/some/parameters"), arrayAssignmentParametersNodeQuery = (0, _query.nodeQuery)("/arrayAssignment/parameters"), objectAssignmentParametersNodeQuery = (0, _query.nodeQuery)("/objectAssignment/parameters"), procedureDeclarationParametersNodeQuery = (0, _query.nodeQuery)("/procedureDeclaration/parameters");
102
102
  var _default = (0, _dom.domAssigned)((_Parameters = /*#__PURE__*/ function() {
103
103
  function Parameters(string, array) {
104
104
  _class_call_check(this, Parameters);
@@ -196,19 +196,19 @@ var _default = (0, _dom.domAssigned)((_Parameters = /*#__PURE__*/ function() {
196
196
  }
197
197
  ], [
198
198
  {
199
- key: "fromStringAndArray",
200
- value: function fromStringAndArray(string, array) {
201
- var parameters = new Parameters(string, array);
199
+ key: "fromSomeNode",
200
+ value: function fromSomeNode(someNode, context) {
201
+ var Parameter = _dom.default.Parameter, someParametersNode = someParametersNodeQuery(someNode), parameterNode = someParametersNode, parameterNodes = parameterNodesQuery(parameterNode), array = parameterNodes.map(function(parameterNode) {
202
+ var parameter = Parameter.fromParameterNode(parameterNode, context);
203
+ return parameter;
204
+ }), string = stringFromArray(array, context), parameters = new Parameters(string, array);
202
205
  return parameters;
203
206
  }
204
207
  },
205
208
  {
206
- key: "fromForEachLoopNode",
207
- value: function fromForEachLoopNode(forEachLoopNode, context) {
208
- var Parameter = _dom.default.Parameter, parametersNode = parametersNodeQuery(forEachLoopNode), parameterNodes = parameterNodesQuery(parametersNode), array = parameterNodes.map(function(parameterNode) {
209
- var parameter = Parameter.fromParameterNode(parameterNode, context);
210
- return parameter;
211
- }), string = stringFromArray(array, context), parameters = new Parameters(string, array);
209
+ key: "fromStringAndArray",
210
+ value: function fromStringAndArray(string, array) {
211
+ var parameters = new Parameters(string, array);
212
212
  return parameters;
213
213
  }
214
214
  },
@@ -257,4 +257,4 @@ function arrayFromParameterNodes(parameterNodes, context) {
257
257
  return array;
258
258
  }
259
259
 
260
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb20vcGFyYW1ldGVycy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGRvbSBmcm9tIFwiLi4vZG9tXCI7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgZG9tQXNzaWduZWQgfSBmcm9tIFwiLi4vZG9tXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIG5vZGVzUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IHBhcmFtZXRlcnNOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvZm9yRWFjaExvb3AvYW5vbnltb3VzUHJvY2VkdXJlL3BhcmFtZXRlcnNcIiksXG4gICAgICBwYXJhbWV0ZXJOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9wYXJhbWV0ZXJzL3BhcmFtZXRlclwiKSxcbiAgICAgIGFycmF5QXNzaWdubWVudFBhcmFtZXRlcnNOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvYXJyYXlBc3NpZ25tZW50L3BhcmFtZXRlcnNcIiksXG4gICAgICBvYmplY3RBc3NpZ25tZW50UGFyYW1ldGVyc05vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9vYmplY3RBc3NpZ25tZW50L3BhcmFtZXRlcnNcIiksXG4gICAgICBwcm9jZWR1cmVEZWNsYXJhdGlvblBhcmFtZXRlcnNOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcHJvY2VkdXJlRGVjbGFyYXRpb24vcGFyYW1ldGVyc1wiKTtcblxuZXhwb3J0IGRlZmF1bHQgZG9tQXNzaWduZWQoY2xhc3MgUGFyYW1ldGVycyB7XG4gIGNvbnN0cnVjdG9yKHN0cmluZywgYXJyYXkpIHtcbiAgICB0aGlzLnN0cmluZyA9IHN0cmluZztcbiAgICB0aGlzLmFycmF5ID0gYXJyYXk7XG4gIH1cblxuICBnZXRTdHJpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RyaW5nO1xuICB9XG5cbiAgZ2V0QXJyYXkoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXJyYXk7XG4gIH1cblxuICBnZXRMZW5ndGgoKSB7XG4gICAgY29uc3QgbGVuZ3RoID0gdGhpcy5hcnJheS5sZW5ndGg7XG5cbiAgICByZXR1cm4gbGVuZ3RoO1xuICB9XG5cbiAgZ2V0UGFyYW1ldGVyKGluZGV4KSB7XG4gICAgY29uc3QgcGFyYW1ldGVyID0gdGhpcy5hcnJheVtpbmRleF0gfHwgbnVsbDtcblxuICAgIHJldHVybiBwYXJhbWV0ZXI7XG4gIH1cblxuICBzb21lUGFyYW1ldGVyKGNhbGxiYWNrKSB7IHJldHVybiB0aGlzLmFycmF5LnNvbWUoY2FsbGJhY2spOyB9XG5cbiAgZm9yRWFjaFBhcmFtZXRlcihjYWxsYmFjaykgeyB0aGlzLmFycmF5LmZvckVhY2goY2FsbGJhY2spOyB9XG5cbiAgbWF0Y2hWYWx1ZXModmFsdWVzLCBjb250ZXh0KSB7XG4gICAgY29uc3QgdmFsdWVzU3RyaW5nID0gdmFsdWVzLmdldFN0cmluZygpLFxuICAgICAgICAgIHBhcmFtZXRlcnNTdHJpbmcgPSB0aGlzLnN0cmluZzsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBNYXRjaGluZyB0aGUgJHt2YWx1ZXNTdHJpbmd9IHZhbHVlcyBhZ2FpbnN0IHRoZSAnJHtwYXJhbWV0ZXJzU3RyaW5nfScgcGFyYW1ldGVycy4uLmApO1xuXG4gICAgY29uc3QgdmFsdWVzTGVuZ3RoID0gdmFsdWVzLmdldExlbmd0aCgpLFxuICAgICAgICAgIHBhcmFtZXRlcnNMZW5ndGggPSB0aGlzLmdldExlbmd0aCgpO1xuXG4gICAgaWYgKHZhbHVlc0xlbmd0aCAhPT0gcGFyYW1ldGVyc0xlbmd0aCkge1xuICAgICAgY29uc3QgbWVzc2FnZSA9IGBUaGUgJHt2YWx1ZXNTdHJpbmd9IHZhbHVlcyBhbmQgJyR7cGFyYW1ldGVyc1N0cmluZ30nIHBhcmFtZXRlcnMgYXJlIG5vdCBvZiB0aGUgc2FtZSBsZW5ndGguYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIHRoaXMuZm9yRWFjaFBhcmFtZXRlcigocGFyYW1ldGVyLCBpbmRleCkgPT4ge1xuICAgICAgaWYgKHBhcmFtZXRlciAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHZhbHVlcy5nZXRWYWx1ZShpbmRleCk7XG5cbiAgICAgICAgcGFyYW1ldGVyLm1hdGNoVmFsdWUodmFsdWUsIGNvbnRleHQpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgY29udGV4dC5kZWJ1ZyhgLi4ubWF0Y2hlZCB0aGUgJHt2YWx1ZXNTdHJpbmd9IHZhbHVlcyBhZ2FpbnN0IHRoZSAnJHtwYXJhbWV0ZXJzU3RyaW5nfScgcGFyYW1ldGVycy5gKTtcbiAgfVxuXG4gIG1hdGNoUGFyYW1ldGVyKHBhcmFtZXRlciwgY29udGV4dCkge1xuICAgIGNvbnN0IHBhcmFtZXRlclN0cmluZyA9IHBhcmFtZXRlci5nZXRTdHJpbmcoKSxcbiAgICAgICAgICBwYXJhbWV0ZXJzU3RyaW5nID0gdGhpcy5zdHJpbmc7IC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgTWF0Y2hpbmcgdGhlICcke3BhcmFtZXRlclN0cmluZ30nIHBhcmFtZXRlciBhZ2FpbnN0IHRoZSAnJHtwYXJhbWV0ZXJzU3RyaW5nfScgcGFyYW1ldGVycy4uLmApO1xuXG4gICAgY29uc3QgcGFyYW1ldGVyQSA9IHBhcmFtZXRlciwgLy8vXG4gICAgICAgICAgcGFyYW1ldGVyTWF0Y2hlcyA9IHRoaXMuc29tZVBhcmFtZXRlcigocGFyYW1ldGVyKSA9PiB7XG4gICAgICAgICAgICBpZiAocGFyYW1ldGVyICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgIGNvbnN0IHBhcmFtZXRlckIgPSBwYXJhbWV0ZXIsIC8vL1xuICAgICAgICAgICAgICAgICAgICBwYXJhbWV0ZXJCTWF0Y2hlc1BhcmFtZXRlckEgPSBwYXJhbWV0ZXJBLm1hdGNoUGFyYW1ldGVyKHBhcmFtZXRlckIsIGNvbnRleHQpO1xuXG4gICAgICAgICAgICAgIGlmIChwYXJhbWV0ZXJCTWF0Y2hlc1BhcmFtZXRlckEpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuXG4gICAgaWYgKCFwYXJhbWV0ZXJNYXRjaGVzKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSAnJHtwYXJhbWV0ZXJTdHJpbmd9JyBwYXJhbWV0ZXIgZG9lcyBub3QgbWF0Y2ggYW55IG9mIHRoZSAnJHtwYXJhbWV0ZXJzU3RyaW5nfScgcGFyYW1ldGVycy5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgY29udGV4dC5kZWJ1ZyhgLi4ubWF0Y2hlZCB0aGUgJyR7cGFyYW1ldGVyU3RyaW5nfScgcGFyYW1ldGVyIGFnYWluc3QgdGhlICcke3BhcmFtZXRlcnNTdHJpbmd9JyBwYXJhbWV0ZXJzLmApO1xuICB9XG5cbiAgbWF0Y2hQYXJhbWV0ZXJzKHBhcmFtZXRlcnMsIGNvbnRleHQpIHtcbiAgICBwYXJhbWV0ZXJzLmZvckVhY2hQYXJhbWV0ZXIoKHBhcmFtZXRlcikgPT4ge1xuICAgICAgaWYgKHBhcmFtZXRlciAhPT0gbnVsbCkge1xuICAgICAgICB0aGlzLm1hdGNoUGFyYW1ldGVyKHBhcmFtZXRlciwgY29udGV4dCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiUGFyYW1ldGVyc1wiO1xuXG4gIHN0YXRpYyBmcm9tU3RyaW5nQW5kQXJyYXkoc3RyaW5nLCBhcnJheSkge1xuICAgIGNvbnN0IHBhcmFtZXRlcnMgPSBuZXcgUGFyYW1ldGVycyhzdHJpbmcsIGFycmF5KTtcblxuICAgIHJldHVybiBwYXJhbWV0ZXJzO1xuICB9XG5cbiAgc3RhdGljIGZyb21Gb3JFYWNoTG9vcE5vZGUoZm9yRWFjaExvb3BOb2RlLCBjb250ZXh0KSB7XG4gICAgY29uc3QgeyBQYXJhbWV0ZXIgfSA9IGRvbSxcbiAgICAgICAgICBwYXJhbWV0ZXJzTm9kZSA9IHBhcmFtZXRlcnNOb2RlUXVlcnkoZm9yRWFjaExvb3BOb2RlKSxcbiAgICAgICAgICBwYXJhbWV0ZXJOb2RlcyA9IHBhcmFtZXRlck5vZGVzUXVlcnkocGFyYW1ldGVyc05vZGUpLFxuICAgICAgICAgIGFycmF5ID0gcGFyYW1ldGVyTm9kZXMubWFwKChwYXJhbWV0ZXJOb2RlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwYXJhbWV0ZXIgPSBQYXJhbWV0ZXIuZnJvbVBhcmFtZXRlck5vZGUocGFyYW1ldGVyTm9kZSwgY29udGV4dCk7XG5cbiAgICAgICAgICAgIHJldHVybiBwYXJhbWV0ZXI7XG4gICAgICAgICAgfSksXG4gICAgICAgICAgc3RyaW5nID0gc3RyaW5nRnJvbUFycmF5KGFycmF5LCBjb250ZXh0KSxcbiAgICAgICAgICBwYXJhbWV0ZXJzID0gbmV3IFBhcmFtZXRlcnMoc3RyaW5nLCBhcnJheSk7XG5cbiAgICByZXR1cm4gcGFyYW1ldGVycztcbiAgfVxuXG4gIHN0YXRpYyBmcm9tQXJyYXlBc3NpZ25tZW50Tm9kZShhcnJheUFzc2lnbm1lbnROb2RlLCBjb250ZXh0KSB7XG4gICAgY29uc3QgYXJyYXlBc3NpZ25tZW50UGFyYW1ldGVyc05vZGUgPSBhcnJheUFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZVF1ZXJ5KGFycmF5QXNzaWdubWVudE5vZGUpLFxuICAgICAgICAgIHBhcmFtZXRlcnNOb2RlID0gYXJyYXlBc3NpZ25tZW50UGFyYW1ldGVyc05vZGUsICAvLy9cbiAgICAgICAgICBub2RlID0gcGFyYW1ldGVyc05vZGUsICAvLy9cbiAgICAgICAgICBzdHJpbmcgPSBjb250ZXh0Lm5vZGVBc1N0cmluZyhub2RlKSxcbiAgICAgICAgICBwYXJhbWV0ZXJOb2RlcyA9IHBhcmFtZXRlck5vZGVzUXVlcnkocGFyYW1ldGVyc05vZGUpLFxuICAgICAgICAgIGFycmF5ID0gYXJyYXlGcm9tUGFyYW1ldGVyTm9kZXMocGFyYW1ldGVyTm9kZXMsIGNvbnRleHQpLFxuICAgICAgICAgIHBhcmFtZXRlcnMgPSBuZXcgUGFyYW1ldGVycyhzdHJpbmcsIGFycmF5KTtcblxuICAgIHJldHVybiBwYXJhbWV0ZXJzO1xuICB9XG5cbiAgc3RhdGljIGZyb21PYmplY3RBc3NpZ25tZW50Tm9kZShvYmplY3RBc3NpZ25tZW50Tm9kZSwgY29udGV4dCkge1xuICAgIGNvbnN0IG9iamVjdEFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZSA9IG9iamVjdEFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZVF1ZXJ5KG9iamVjdEFzc2lnbm1lbnROb2RlKSxcbiAgICAgICAgICBwYXJhbWV0ZXJzTm9kZSA9IG9iamVjdEFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZSwgIC8vL1xuICAgICAgICAgIG5vZGUgPSBwYXJhbWV0ZXJzTm9kZSwgIC8vL1xuICAgICAgICAgIHN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKG5vZGUpLFxuICAgICAgICAgIHBhcmFtZXRlck5vZGVzID0gcGFyYW1ldGVyTm9kZXNRdWVyeShwYXJhbWV0ZXJzTm9kZSksXG4gICAgICAgICAgYXJyYXkgPSBhcnJheUZyb21QYXJhbWV0ZXJOb2RlcyhwYXJhbWV0ZXJOb2RlcywgY29udGV4dCksXG4gICAgICAgICAgcGFyYW1ldGVycyA9IG5ldyBQYXJhbWV0ZXJzKHN0cmluZywgYXJyYXkpO1xuXG4gICAgcmV0dXJuIHBhcmFtZXRlcnM7XG4gIH1cblxuICBzdGF0aWMgZnJvbVByb2NlZHVyZURlY2xhcmF0aW9uTm9kZShwcm9jZWR1cmVEZWNsYXJhdGlvbk5vZGUsIGNvbnRleHQpIHtcbiAgICBsZXQgcGFyYW1ldGVycyA9IG51bGw7XG5cbiAgICBjb25zdCBwcm9jZWR1cmVEZWNsYXJhdGlvblBhcmFtZXRlcnNOb2RlID0gcHJvY2VkdXJlRGVjbGFyYXRpb25QYXJhbWV0ZXJzTm9kZVF1ZXJ5KHByb2NlZHVyZURlY2xhcmF0aW9uTm9kZSk7XG5cbiAgICBpZiAocHJvY2VkdXJlRGVjbGFyYXRpb25QYXJhbWV0ZXJzTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgcGFyYW1ldGVyc05vZGUgPSBwcm9jZWR1cmVEZWNsYXJhdGlvblBhcmFtZXRlcnNOb2RlLCAgLy8vXG4gICAgICAgICAgICBub2RlID0gcGFyYW1ldGVyc05vZGUsICAvLy9cbiAgICAgICAgICAgIHN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKG5vZGUpLFxuICAgICAgICAgICAgcGFyYW1ldGVyTm9kZXMgPSBwYXJhbWV0ZXJOb2Rlc1F1ZXJ5KHBhcmFtZXRlcnNOb2RlKSxcbiAgICAgICAgICAgIGFycmF5ID0gYXJyYXlGcm9tUGFyYW1ldGVyTm9kZXMocGFyYW1ldGVyTm9kZXMsIGNvbnRleHQpO1xuXG4gICAgICBwYXJhbWV0ZXJzID0gbmV3IFBhcmFtZXRlcnMoc3RyaW5nLCBhcnJheSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhcmFtZXRlcnM7XG4gIH1cbn0pO1xuXG5leHBvcnQgZnVuY3Rpb24gc3RyaW5nRnJvbUFycmF5KGFycmF5LCBjb250ZXh0KSB7XG4gIGNvbnN0IHBhcmFtZXRlcnNTdHJpbmcgPSBhcnJheS5yZWR1Y2UoKHBhcmFtZXRlcnNTdHJpbmcsIHBhcmFtZXRlcikgPT4ge1xuICAgICAgICAgIGNvbnN0IHBhcmFtZXRlclN0cmluZyA9IHBhcmFtZXRlci5nZXRTdHJpbmcoKTtcblxuICAgICAgICAgIHBhcmFtZXRlcnNTdHJpbmcgPSAocGFyYW1ldGVyc1N0cmluZyA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlclN0cmluZyA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAke3BhcmFtZXRlcnNTdHJpbmd9LCAke3BhcmFtZXRlclN0cmluZ31gO1xuXG4gICAgICAgICAgcmV0dXJuIHBhcmFtZXRlcnNTdHJpbmc7XG4gICAgICAgIH0sIG51bGwpLFxuICAgICAgICBzdHJpbmcgPSBwYXJhbWV0ZXJzU3RyaW5nOyAgLy8vXG5cbiAgcmV0dXJuIHN0cmluZztcbn1cblxuZnVuY3Rpb24gYXJyYXlGcm9tUGFyYW1ldGVyTm9kZXMocGFyYW1ldGVyTm9kZXMsIGNvbnRleHQpIHtcbiAgY29uc3QgeyBQYXJhbWV0ZXIgfSA9IGRvbSxcbiAgICAgICAgYXJyYXkgPSBwYXJhbWV0ZXJOb2Rlcy5tYXAoKHBhcmFtZXRlck5vZGUpID0+IHsgLy8vXG4gICAgICAgICAgY29uc3QgcGFyYW1ldGVyID0gUGFyYW1ldGVyLmZyb21QYXJhbWV0ZXJOb2RlKHBhcmFtZXRlck5vZGUsIGNvbnRleHQpO1xuXG4gICAgICAgICAgcmV0dXJuIHBhcmFtZXRlcjtcbiAgICAgICAgfSk7XG5cbiAgcmV0dXJuIGFycmF5O1xufVxuIl0sIm5hbWVzIjpbInN0cmluZ0Zyb21BcnJheSIsInBhcmFtZXRlcnNOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJwYXJhbWV0ZXJOb2Rlc1F1ZXJ5Iiwibm9kZXNRdWVyeSIsImFycmF5QXNzaWdubWVudFBhcmFtZXRlcnNOb2RlUXVlcnkiLCJvYmplY3RBc3NpZ25tZW50UGFyYW1ldGVyc05vZGVRdWVyeSIsInByb2NlZHVyZURlY2xhcmF0aW9uUGFyYW1ldGVyc05vZGVRdWVyeSIsImRvbUFzc2lnbmVkIiwiUGFyYW1ldGVycyIsInN0cmluZyIsImFycmF5IiwiZ2V0U3RyaW5nIiwiZ2V0QXJyYXkiLCJnZXRMZW5ndGgiLCJsZW5ndGgiLCJnZXRQYXJhbWV0ZXIiLCJpbmRleCIsInBhcmFtZXRlciIsInNvbWVQYXJhbWV0ZXIiLCJjYWxsYmFjayIsInNvbWUiLCJmb3JFYWNoUGFyYW1ldGVyIiwiZm9yRWFjaCIsIm1hdGNoVmFsdWVzIiwidmFsdWVzIiwiY29udGV4dCIsInZhbHVlc1N0cmluZyIsInBhcmFtZXRlcnNTdHJpbmciLCJ0cmFjZSIsInZhbHVlc0xlbmd0aCIsInBhcmFtZXRlcnNMZW5ndGgiLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJ2YWx1ZSIsImdldFZhbHVlIiwibWF0Y2hWYWx1ZSIsImRlYnVnIiwibWF0Y2hQYXJhbWV0ZXIiLCJwYXJhbWV0ZXJTdHJpbmciLCJwYXJhbWV0ZXJBIiwicGFyYW1ldGVyTWF0Y2hlcyIsInBhcmFtZXRlckIiLCJwYXJhbWV0ZXJCTWF0Y2hlc1BhcmFtZXRlckEiLCJtYXRjaFBhcmFtZXRlcnMiLCJwYXJhbWV0ZXJzIiwiZnJvbVN0cmluZ0FuZEFycmF5IiwiZnJvbUZvckVhY2hMb29wTm9kZSIsImZvckVhY2hMb29wTm9kZSIsIlBhcmFtZXRlciIsImRvbSIsInBhcmFtZXRlcnNOb2RlIiwicGFyYW1ldGVyTm9kZXMiLCJtYXAiLCJwYXJhbWV0ZXJOb2RlIiwiZnJvbVBhcmFtZXRlck5vZGUiLCJmcm9tQXJyYXlBc3NpZ25tZW50Tm9kZSIsImFycmF5QXNzaWdubWVudE5vZGUiLCJhcnJheUFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZSIsIm5vZGUiLCJub2RlQXNTdHJpbmciLCJhcnJheUZyb21QYXJhbWV0ZXJOb2RlcyIsImZyb21PYmplY3RBc3NpZ25tZW50Tm9kZSIsIm9iamVjdEFzc2lnbm1lbnROb2RlIiwib2JqZWN0QXNzaWdubWVudFBhcmFtZXRlcnNOb2RlIiwiZnJvbVByb2NlZHVyZURlY2xhcmF0aW9uTm9kZSIsInByb2NlZHVyZURlY2xhcmF0aW9uTm9kZSIsInByb2NlZHVyZURlY2xhcmF0aW9uUGFyYW1ldGVyc05vZGUiLCJuYW1lIiwicmVkdWNlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFjQSxPQTZKRztlQTdKSDs7SUErSmdCQSxlQUFlO2VBQWZBOzs7MkRBM0tBO2dFQUNNO3FCQUdnQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFdEMsSUFBTUMsc0JBQXNCQyxJQUFB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
260
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb20vcGFyYW1ldGVycy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGRvbSBmcm9tIFwiLi4vZG9tXCI7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgZG9tQXNzaWduZWQgfSBmcm9tIFwiLi4vZG9tXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIG5vZGVzUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IHBhcmFtZXRlck5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL3BhcmFtZXRlcnMvcGFyYW1ldGVyXCIpLFxuICAgICAgc29tZVBhcmFtZXRlcnNOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvc29tZS9wYXJhbWV0ZXJzXCIpLFxuICAgICAgYXJyYXlBc3NpZ25tZW50UGFyYW1ldGVyc05vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9hcnJheUFzc2lnbm1lbnQvcGFyYW1ldGVyc1wiKSxcbiAgICAgIG9iamVjdEFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL29iamVjdEFzc2lnbm1lbnQvcGFyYW1ldGVyc1wiKSxcbiAgICAgIHByb2NlZHVyZURlY2xhcmF0aW9uUGFyYW1ldGVyc05vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9wcm9jZWR1cmVEZWNsYXJhdGlvbi9wYXJhbWV0ZXJzXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBkb21Bc3NpZ25lZChjbGFzcyBQYXJhbWV0ZXJzIHtcbiAgY29uc3RydWN0b3Ioc3RyaW5nLCBhcnJheSkge1xuICAgIHRoaXMuc3RyaW5nID0gc3RyaW5nO1xuICAgIHRoaXMuYXJyYXkgPSBhcnJheTtcbiAgfVxuXG4gIGdldFN0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5zdHJpbmc7XG4gIH1cblxuICBnZXRBcnJheSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcnJheTtcbiAgfVxuXG4gIGdldExlbmd0aCgpIHtcbiAgICBjb25zdCBsZW5ndGggPSB0aGlzLmFycmF5Lmxlbmd0aDtcblxuICAgIHJldHVybiBsZW5ndGg7XG4gIH1cblxuICBnZXRQYXJhbWV0ZXIoaW5kZXgpIHtcbiAgICBjb25zdCBwYXJhbWV0ZXIgPSB0aGlzLmFycmF5W2luZGV4XSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIHBhcmFtZXRlcjtcbiAgfVxuXG4gIHNvbWVQYXJhbWV0ZXIoY2FsbGJhY2spIHsgcmV0dXJuIHRoaXMuYXJyYXkuc29tZShjYWxsYmFjayk7IH1cblxuICBmb3JFYWNoUGFyYW1ldGVyKGNhbGxiYWNrKSB7IHRoaXMuYXJyYXkuZm9yRWFjaChjYWxsYmFjayk7IH1cblxuICBtYXRjaFZhbHVlcyh2YWx1ZXMsIGNvbnRleHQpIHtcbiAgICBjb25zdCB2YWx1ZXNTdHJpbmcgPSB2YWx1ZXMuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgcGFyYW1ldGVyc1N0cmluZyA9IHRoaXMuc3RyaW5nOyAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYE1hdGNoaW5nIHRoZSAke3ZhbHVlc1N0cmluZ30gdmFsdWVzIGFnYWluc3QgdGhlICcke3BhcmFtZXRlcnNTdHJpbmd9JyBwYXJhbWV0ZXJzLi4uYCk7XG5cbiAgICBjb25zdCB2YWx1ZXNMZW5ndGggPSB2YWx1ZXMuZ2V0TGVuZ3RoKCksXG4gICAgICAgICAgcGFyYW1ldGVyc0xlbmd0aCA9IHRoaXMuZ2V0TGVuZ3RoKCk7XG5cbiAgICBpZiAodmFsdWVzTGVuZ3RoICE9PSBwYXJhbWV0ZXJzTGVuZ3RoKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSAke3ZhbHVlc1N0cmluZ30gdmFsdWVzIGFuZCAnJHtwYXJhbWV0ZXJzU3RyaW5nfScgcGFyYW1ldGVycyBhcmUgbm90IG9mIHRoZSBzYW1lIGxlbmd0aC5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgdGhpcy5mb3JFYWNoUGFyYW1ldGVyKChwYXJhbWV0ZXIsIGluZGV4KSA9PiB7XG4gICAgICBpZiAocGFyYW1ldGVyICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVzLmdldFZhbHVlKGluZGV4KTtcblxuICAgICAgICBwYXJhbWV0ZXIubWF0Y2hWYWx1ZSh2YWx1ZSwgY29udGV4dCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5tYXRjaGVkIHRoZSAke3ZhbHVlc1N0cmluZ30gdmFsdWVzIGFnYWluc3QgdGhlICcke3BhcmFtZXRlcnNTdHJpbmd9JyBwYXJhbWV0ZXJzLmApO1xuICB9XG5cbiAgbWF0Y2hQYXJhbWV0ZXIocGFyYW1ldGVyLCBjb250ZXh0KSB7XG4gICAgY29uc3QgcGFyYW1ldGVyU3RyaW5nID0gcGFyYW1ldGVyLmdldFN0cmluZygpLFxuICAgICAgICAgIHBhcmFtZXRlcnNTdHJpbmcgPSB0aGlzLnN0cmluZzsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBNYXRjaGluZyB0aGUgJyR7cGFyYW1ldGVyU3RyaW5nfScgcGFyYW1ldGVyIGFnYWluc3QgdGhlICcke3BhcmFtZXRlcnNTdHJpbmd9JyBwYXJhbWV0ZXJzLi4uYCk7XG5cbiAgICBjb25zdCBwYXJhbWV0ZXJBID0gcGFyYW1ldGVyLCAvLy9cbiAgICAgICAgICBwYXJhbWV0ZXJNYXRjaGVzID0gdGhpcy5zb21lUGFyYW1ldGVyKChwYXJhbWV0ZXIpID0+IHtcbiAgICAgICAgICAgIGlmIChwYXJhbWV0ZXIgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgY29uc3QgcGFyYW1ldGVyQiA9IHBhcmFtZXRlciwgLy8vXG4gICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlckJNYXRjaGVzUGFyYW1ldGVyQSA9IHBhcmFtZXRlckEubWF0Y2hQYXJhbWV0ZXIocGFyYW1ldGVyQiwgY29udGV4dCk7XG5cbiAgICAgICAgICAgICAgaWYgKHBhcmFtZXRlckJNYXRjaGVzUGFyYW1ldGVyQSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG5cbiAgICBpZiAoIXBhcmFtZXRlck1hdGNoZXMpIHtcbiAgICAgIGNvbnN0IG1lc3NhZ2UgPSBgVGhlICcke3BhcmFtZXRlclN0cmluZ30nIHBhcmFtZXRlciBkb2VzIG5vdCBtYXRjaCBhbnkgb2YgdGhlICcke3BhcmFtZXRlcnNTdHJpbmd9JyBwYXJhbWV0ZXJzLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5tYXRjaGVkIHRoZSAnJHtwYXJhbWV0ZXJTdHJpbmd9JyBwYXJhbWV0ZXIgYWdhaW5zdCB0aGUgJyR7cGFyYW1ldGVyc1N0cmluZ30nIHBhcmFtZXRlcnMuYCk7XG4gIH1cblxuICBtYXRjaFBhcmFtZXRlcnMocGFyYW1ldGVycywgY29udGV4dCkge1xuICAgIHBhcmFtZXRlcnMuZm9yRWFjaFBhcmFtZXRlcigocGFyYW1ldGVyKSA9PiB7XG4gICAgICBpZiAocGFyYW1ldGVyICE9PSBudWxsKSB7XG4gICAgICAgIHRoaXMubWF0Y2hQYXJhbWV0ZXIocGFyYW1ldGVyLCBjb250ZXh0KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJQYXJhbWV0ZXJzXCI7XG5cbiAgc3RhdGljIGZyb21Tb21lTm9kZShzb21lTm9kZSwgY29udGV4dCkge1xuICAgIGNvbnN0IHsgUGFyYW1ldGVyIH0gPSBkb20sXG4gICAgICAgICAgc29tZVBhcmFtZXRlcnNOb2RlID0gc29tZVBhcmFtZXRlcnNOb2RlUXVlcnkoc29tZU5vZGUpLFxuICAgICAgICAgIHBhcmFtZXRlck5vZGUgPSBzb21lUGFyYW1ldGVyc05vZGUsIC8vL1xuICAgICAgICAgIHBhcmFtZXRlck5vZGVzID0gcGFyYW1ldGVyTm9kZXNRdWVyeShwYXJhbWV0ZXJOb2RlKSxcbiAgICAgICAgICBhcnJheSA9IHBhcmFtZXRlck5vZGVzLm1hcCgocGFyYW1ldGVyTm9kZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcGFyYW1ldGVyID0gUGFyYW1ldGVyLmZyb21QYXJhbWV0ZXJOb2RlKHBhcmFtZXRlck5vZGUsIGNvbnRleHQpO1xuXG4gICAgICAgICAgICByZXR1cm4gcGFyYW1ldGVyO1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIHN0cmluZyA9IHN0cmluZ0Zyb21BcnJheShhcnJheSwgY29udGV4dCksXG4gICAgICAgICAgcGFyYW1ldGVycyA9IG5ldyBQYXJhbWV0ZXJzKHN0cmluZywgYXJyYXkpO1xuXG4gICAgcmV0dXJuIHBhcmFtZXRlcnM7XG4gIH1cblxuICBzdGF0aWMgZnJvbVN0cmluZ0FuZEFycmF5KHN0cmluZywgYXJyYXkpIHtcbiAgICBjb25zdCBwYXJhbWV0ZXJzID0gbmV3IFBhcmFtZXRlcnMoc3RyaW5nLCBhcnJheSk7XG5cbiAgICByZXR1cm4gcGFyYW1ldGVycztcbiAgfVxuXG4gIHN0YXRpYyBmcm9tQXJyYXlBc3NpZ25tZW50Tm9kZShhcnJheUFzc2lnbm1lbnROb2RlLCBjb250ZXh0KSB7XG4gICAgY29uc3QgYXJyYXlBc3NpZ25tZW50UGFyYW1ldGVyc05vZGUgPSBhcnJheUFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZVF1ZXJ5KGFycmF5QXNzaWdubWVudE5vZGUpLFxuICAgICAgICAgIHBhcmFtZXRlcnNOb2RlID0gYXJyYXlBc3NpZ25tZW50UGFyYW1ldGVyc05vZGUsICAvLy9cbiAgICAgICAgICBub2RlID0gcGFyYW1ldGVyc05vZGUsICAvLy9cbiAgICAgICAgICBzdHJpbmcgPSBjb250ZXh0Lm5vZGVBc1N0cmluZyhub2RlKSxcbiAgICAgICAgICBwYXJhbWV0ZXJOb2RlcyA9IHBhcmFtZXRlck5vZGVzUXVlcnkocGFyYW1ldGVyc05vZGUpLFxuICAgICAgICAgIGFycmF5ID0gYXJyYXlGcm9tUGFyYW1ldGVyTm9kZXMocGFyYW1ldGVyTm9kZXMsIGNvbnRleHQpLFxuICAgICAgICAgIHBhcmFtZXRlcnMgPSBuZXcgUGFyYW1ldGVycyhzdHJpbmcsIGFycmF5KTtcblxuICAgIHJldHVybiBwYXJhbWV0ZXJzO1xuICB9XG5cbiAgc3RhdGljIGZyb21PYmplY3RBc3NpZ25tZW50Tm9kZShvYmplY3RBc3NpZ25tZW50Tm9kZSwgY29udGV4dCkge1xuICAgIGNvbnN0IG9iamVjdEFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZSA9IG9iamVjdEFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZVF1ZXJ5KG9iamVjdEFzc2lnbm1lbnROb2RlKSxcbiAgICAgICAgICBwYXJhbWV0ZXJzTm9kZSA9IG9iamVjdEFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZSwgIC8vL1xuICAgICAgICAgIG5vZGUgPSBwYXJhbWV0ZXJzTm9kZSwgIC8vL1xuICAgICAgICAgIHN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKG5vZGUpLFxuICAgICAgICAgIHBhcmFtZXRlck5vZGVzID0gcGFyYW1ldGVyTm9kZXNRdWVyeShwYXJhbWV0ZXJzTm9kZSksXG4gICAgICAgICAgYXJyYXkgPSBhcnJheUZyb21QYXJhbWV0ZXJOb2RlcyhwYXJhbWV0ZXJOb2RlcywgY29udGV4dCksXG4gICAgICAgICAgcGFyYW1ldGVycyA9IG5ldyBQYXJhbWV0ZXJzKHN0cmluZywgYXJyYXkpO1xuXG4gICAgcmV0dXJuIHBhcmFtZXRlcnM7XG4gIH1cblxuICBzdGF0aWMgZnJvbVByb2NlZHVyZURlY2xhcmF0aW9uTm9kZShwcm9jZWR1cmVEZWNsYXJhdGlvbk5vZGUsIGNvbnRleHQpIHtcbiAgICBsZXQgcGFyYW1ldGVycyA9IG51bGw7XG5cbiAgICBjb25zdCBwcm9jZWR1cmVEZWNsYXJhdGlvblBhcmFtZXRlcnNOb2RlID0gcHJvY2VkdXJlRGVjbGFyYXRpb25QYXJhbWV0ZXJzTm9kZVF1ZXJ5KHByb2NlZHVyZURlY2xhcmF0aW9uTm9kZSk7XG5cbiAgICBpZiAocHJvY2VkdXJlRGVjbGFyYXRpb25QYXJhbWV0ZXJzTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgcGFyYW1ldGVyc05vZGUgPSBwcm9jZWR1cmVEZWNsYXJhdGlvblBhcmFtZXRlcnNOb2RlLCAgLy8vXG4gICAgICAgICAgICBub2RlID0gcGFyYW1ldGVyc05vZGUsICAvLy9cbiAgICAgICAgICAgIHN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKG5vZGUpLFxuICAgICAgICAgICAgcGFyYW1ldGVyTm9kZXMgPSBwYXJhbWV0ZXJOb2Rlc1F1ZXJ5KHBhcmFtZXRlcnNOb2RlKSxcbiAgICAgICAgICAgIGFycmF5ID0gYXJyYXlGcm9tUGFyYW1ldGVyTm9kZXMocGFyYW1ldGVyTm9kZXMsIGNvbnRleHQpO1xuXG4gICAgICBwYXJhbWV0ZXJzID0gbmV3IFBhcmFtZXRlcnMoc3RyaW5nLCBhcnJheSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhcmFtZXRlcnM7XG4gIH1cbn0pO1xuXG5leHBvcnQgZnVuY3Rpb24gc3RyaW5nRnJvbUFycmF5KGFycmF5LCBjb250ZXh0KSB7XG4gIGNvbnN0IHBhcmFtZXRlcnNTdHJpbmcgPSBhcnJheS5yZWR1Y2UoKHBhcmFtZXRlcnNTdHJpbmcsIHBhcmFtZXRlcikgPT4ge1xuICAgICAgICAgIGNvbnN0IHBhcmFtZXRlclN0cmluZyA9IHBhcmFtZXRlci5nZXRTdHJpbmcoKTtcblxuICAgICAgICAgIHBhcmFtZXRlcnNTdHJpbmcgPSAocGFyYW1ldGVyc1N0cmluZyA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlclN0cmluZyA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAke3BhcmFtZXRlcnNTdHJpbmd9LCAke3BhcmFtZXRlclN0cmluZ31gO1xuXG4gICAgICAgICAgcmV0dXJuIHBhcmFtZXRlcnNTdHJpbmc7XG4gICAgICAgIH0sIG51bGwpLFxuICAgICAgICBzdHJpbmcgPSBwYXJhbWV0ZXJzU3RyaW5nOyAgLy8vXG5cbiAgcmV0dXJuIHN0cmluZztcbn1cblxuZnVuY3Rpb24gYXJyYXlGcm9tUGFyYW1ldGVyTm9kZXMocGFyYW1ldGVyTm9kZXMsIGNvbnRleHQpIHtcbiAgY29uc3QgeyBQYXJhbWV0ZXIgfSA9IGRvbSxcbiAgICAgICAgYXJyYXkgPSBwYXJhbWV0ZXJOb2Rlcy5tYXAoKHBhcmFtZXRlck5vZGUpID0+IHsgLy8vXG4gICAgICAgICAgY29uc3QgcGFyYW1ldGVyID0gUGFyYW1ldGVyLmZyb21QYXJhbWV0ZXJOb2RlKHBhcmFtZXRlck5vZGUsIGNvbnRleHQpO1xuXG4gICAgICAgICAgcmV0dXJuIHBhcmFtZXRlcjtcbiAgICAgICAgfSk7XG5cbiAgcmV0dXJuIGFycmF5O1xufVxuIl0sIm5hbWVzIjpbInN0cmluZ0Zyb21BcnJheSIsInBhcmFtZXRlck5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5Iiwic29tZVBhcmFtZXRlcnNOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJhcnJheUFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZVF1ZXJ5Iiwib2JqZWN0QXNzaWdubWVudFBhcmFtZXRlcnNOb2RlUXVlcnkiLCJwcm9jZWR1cmVEZWNsYXJhdGlvblBhcmFtZXRlcnNOb2RlUXVlcnkiLCJkb21Bc3NpZ25lZCIsIlBhcmFtZXRlcnMiLCJzdHJpbmciLCJhcnJheSIsImdldFN0cmluZyIsImdldEFycmF5IiwiZ2V0TGVuZ3RoIiwibGVuZ3RoIiwiZ2V0UGFyYW1ldGVyIiwiaW5kZXgiLCJwYXJhbWV0ZXIiLCJzb21lUGFyYW1ldGVyIiwiY2FsbGJhY2siLCJzb21lIiwiZm9yRWFjaFBhcmFtZXRlciIsImZvckVhY2giLCJtYXRjaFZhbHVlcyIsInZhbHVlcyIsImNvbnRleHQiLCJ2YWx1ZXNTdHJpbmciLCJwYXJhbWV0ZXJzU3RyaW5nIiwidHJhY2UiLCJ2YWx1ZXNMZW5ndGgiLCJwYXJhbWV0ZXJzTGVuZ3RoIiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwidmFsdWUiLCJnZXRWYWx1ZSIsIm1hdGNoVmFsdWUiLCJkZWJ1ZyIsIm1hdGNoUGFyYW1ldGVyIiwicGFyYW1ldGVyU3RyaW5nIiwicGFyYW1ldGVyQSIsInBhcmFtZXRlck1hdGNoZXMiLCJwYXJhbWV0ZXJCIiwicGFyYW1ldGVyQk1hdGNoZXNQYXJhbWV0ZXJBIiwibWF0Y2hQYXJhbWV0ZXJzIiwicGFyYW1ldGVycyIsImZyb21Tb21lTm9kZSIsInNvbWVOb2RlIiwiUGFyYW1ldGVyIiwiZG9tIiwic29tZVBhcmFtZXRlcnNOb2RlIiwicGFyYW1ldGVyTm9kZSIsInBhcmFtZXRlck5vZGVzIiwibWFwIiwiZnJvbVBhcmFtZXRlck5vZGUiLCJmcm9tU3RyaW5nQW5kQXJyYXkiLCJmcm9tQXJyYXlBc3NpZ25tZW50Tm9kZSIsImFycmF5QXNzaWdubWVudE5vZGUiLCJhcnJheUFzc2lnbm1lbnRQYXJhbWV0ZXJzTm9kZSIsInBhcmFtZXRlcnNOb2RlIiwibm9kZSIsIm5vZGVBc1N0cmluZyIsImFycmF5RnJvbVBhcmFtZXRlck5vZGVzIiwiZnJvbU9iamVjdEFzc2lnbm1lbnROb2RlIiwib2JqZWN0QXNzaWdubWVudE5vZGUiLCJvYmplY3RBc3NpZ25tZW50UGFyYW1ldGVyc05vZGUiLCJmcm9tUHJvY2VkdXJlRGVjbGFyYXRpb25Ob2RlIiwicHJvY2VkdXJlRGVjbGFyYXRpb25Ob2RlIiwicHJvY2VkdXJlRGVjbGFyYXRpb25QYXJhbWV0ZXJzTm9kZSIsIm5hbWUiLCJyZWR1Y2UiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQWNBLE9BOEpHO2VBOUpIOztJQWdLZ0JBLGVBQWU7ZUFBZkE7OzsyREE1S0E7Z0VBQ007cUJBR2dCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
@@ -91,14 +91,14 @@ function _interop_require_wildcard(obj, nodeInterop) {
91
91
  return newObj;
92
92
  }
93
93
  var _AnonymousProcedure;
94
- var nonsenseNodesQuery = (0, _query.nodesQuery)("/forEachLoop/anonymousProcedure/block/nonsense"), parametersNodeQuery = (0, _query.nodeQuery)("/forEachLoop/anonymousProcedure/parameters");
94
+ var nonsenseNodesQuery = (0, _query.nodesQuery)("/some/anonymousProcedure/returnBlock/nonsense"), parametersNodeQuery = (0, _query.nodeQuery)("/some/anonymousProcedure/parameters");
95
95
  var _default = (0, _dom.domAssigned)((_AnonymousProcedure = /*#__PURE__*/ function() {
96
- function AnonymousProcedure(string, parameters, nonsensical, block) {
96
+ function AnonymousProcedure(string, parameters, nonsensical, returnBlock) {
97
97
  _class_call_check(this, AnonymousProcedure);
98
98
  this.string = string;
99
99
  this.parameters = parameters;
100
100
  this.nonsensical = nonsensical;
101
- this.block = block;
101
+ this.returnBlock = returnBlock;
102
102
  }
103
103
  _create_class(AnonymousProcedure, [
104
104
  {
@@ -120,14 +120,15 @@ var _default = (0, _dom.domAssigned)((_AnonymousProcedure = /*#__PURE__*/ functi
120
120
  }
121
121
  },
122
122
  {
123
- key: "getBlock",
124
- value: function getBlock() {
125
- return this.block;
123
+ key: "getReturnBlock",
124
+ value: function getReturnBlock() {
125
+ return this.returnBlock;
126
126
  }
127
127
  },
128
128
  {
129
129
  key: "call",
130
130
  value: function call(values, context) {
131
+ debugger;
131
132
  var anonymousProcedureString = this.string; ///
132
133
  context.trace("Calling the '".concat(anonymousProcedureString, "' anonymous procedure..."));
133
134
  if (this.nonsensical) {
@@ -136,28 +137,28 @@ var _default = (0, _dom.domAssigned)((_AnonymousProcedure = /*#__PURE__*/ functi
136
137
  }
137
138
  this.parameters.matchValues(values, context);
138
139
  var variables = (0, _procedure.variablesFromValuesAndParameters)(values, this.parameters, context);
139
- this.block.evaluate(variables, context);
140
+ this.returnBlock.evaluate(variables, context);
140
141
  context.debug("...called the '".concat(anonymousProcedureString, "' anonymous procedure."));
141
142
  }
142
143
  }
143
144
  ], [
144
145
  {
145
- key: "fromForEachLoopNode",
146
- value: function fromForEachLoopNode(forEachLoopNode, context) {
147
- var Block = _dom.default.Block, Parameters = _dom.default.Parameters, string = stringFromForEachLoopNode(forEachLoopNode, context), parameters = Parameters.fromForEachLoopNode(forEachLoopNode, context), nonsensical = nonsensicalFromForEachLoopNode(forEachLoopNode, context), block = Block.fromForEachLoopNode(forEachLoopNode, context), anonymousProcedureDeclaration = new AnonymousProcedure(string, parameters, nonsensical, block);
146
+ key: "fromSomeNode",
147
+ value: function fromSomeNode(someNode, context) {
148
+ var ReturnBlock = _dom.default.ReturnBlock, Parameters = _dom.default.Parameters, string = stringFromSomeNode(someNode, context), parameters = Parameters.fromSomeNode(someNode, context), nonsensical = nonsensicalFromSomeNode(someNode, context), returnBlock = ReturnBlock.fromSomeNode(someNode, context), anonymousProcedureDeclaration = new AnonymousProcedure(string, parameters, nonsensical, returnBlock);
148
149
  return anonymousProcedureDeclaration;
149
150
  }
150
151
  }
151
152
  ]);
152
153
  return AnonymousProcedure;
153
154
  }(), _define_property(_AnonymousProcedure, "name", "AnonymousProcedure"), _AnonymousProcedure));
154
- function stringFromForEachLoopNode(forEachLoopNode, context) {
155
- var parametersNode = parametersNodeQuery(forEachLoopNode), parametersString = context.nodeAsString(parametersNode), string = "(".concat(parametersString, ") { ... }");
155
+ function stringFromSomeNode(someNode, context) {
156
+ var parametersNode = parametersNodeQuery(someNode), parametersString = context.nodeAsString(parametersNode), string = "(".concat(parametersString, ") { ... }");
156
157
  return string;
157
158
  }
158
- function nonsensicalFromForEachLoopNode(forEachLoopNode, context) {
159
- var nonsenseNodes = nonsenseNodesQuery(forEachLoopNode), nonsenseNodesLength = nonsenseNodes.length, nonsensical = nonsenseNodesLength > 0;
159
+ function nonsensicalFromSomeNode(someNode, context) {
160
+ var nonsenseNodes = nonsenseNodesQuery(someNode), nonsenseNodesLength = nonsenseNodes.length, nonsensical = nonsenseNodesLength > 0;
160
161
  return nonsensical;
161
162
  }
162
163
 
163
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kb20vcHJvY2VkdXJlL2Fub255bW91cy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGRvbSBmcm9tIFwiLi4vLi4vZG9tXCI7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi8uLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgZG9tQXNzaWduZWQgfSBmcm9tIFwiLi4vLi4vZG9tXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIG5vZGVzUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyB2YXJpYWJsZXNGcm9tVmFsdWVzQW5kUGFyYW1ldGVycyB9IGZyb20gXCIuLi9wcm9jZWR1cmVcIjtcblxuY29uc3Qgbm9uc2Vuc2VOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9mb3JFYWNoTG9vcC9hbm9ueW1vdXNQcm9jZWR1cmUvYmxvY2svbm9uc2Vuc2VcIiksXG4gICAgICBwYXJhbWV0ZXJzTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2ZvckVhY2hMb29wL2Fub255bW91c1Byb2NlZHVyZS9wYXJhbWV0ZXJzXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBkb21Bc3NpZ25lZChjbGFzcyBBbm9ueW1vdXNQcm9jZWR1cmUge1xuICBjb25zdHJ1Y3RvcihzdHJpbmcsIHBhcmFtZXRlcnMsIG5vbnNlbnNpY2FsLCBibG9jaykge1xuICAgIHRoaXMuc3RyaW5nID0gc3RyaW5nO1xuICAgIHRoaXMucGFyYW1ldGVycyA9IHBhcmFtZXRlcnM7XG4gICAgdGhpcy5ub25zZW5zaWNhbCA9IG5vbnNlbnNpY2FsO1xuICAgIHRoaXMuYmxvY2sgPSBibG9jaztcbiAgfVxuXG4gIGdldFN0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5zdHJpbmc7XG4gIH1cblxuICBnZXRQYXJhbWV0ZXJzKCkge1xuICAgIHJldHVybiB0aGlzLnBhcmFtdGVycztcbiAgfVxuXG4gIGlzTm9uc2Vuc2ljYWwoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9uc2Vuc2ljYWw7XG4gIH1cblxuICBnZXRCbG9jaygpIHtcbiAgICByZXR1cm4gdGhpcy5ibG9jaztcbiAgfVxuXG4gIGNhbGwodmFsdWVzLCBjb250ZXh0KSB7XG4gICAgY29uc3QgYW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nID0gdGhpcy5zdHJpbmc7IC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgQ2FsbGluZyB0aGUgJyR7YW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nfScgYW5vbnltb3VzIHByb2NlZHVyZS4uLmApO1xuXG4gICAgaWYgKHRoaXMubm9uc2Vuc2ljYWwpIHtcbiAgICAgIGNvbnN0IG1lc3NhZ2UgPSBgVGhlICcke2Fub255bW91c1Byb2NlZHVyZVN0cmluZ30nIGFub255bW91cyBwcm9jZWR1cmUgaXMgbm9uc2Vuc2ljYWwuYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIHRoaXMucGFyYW1ldGVycy5tYXRjaFZhbHVlcyh2YWx1ZXMsIGNvbnRleHQpO1xuXG4gICAgY29uc3QgdmFyaWFibGVzID0gdmFyaWFibGVzRnJvbVZhbHVlc0FuZFBhcmFtZXRlcnModmFsdWVzLCB0aGlzLnBhcmFtZXRlcnMsIGNvbnRleHQpO1xuXG4gICAgdGhpcy5ibG9jay5ldmFsdWF0ZSh2YXJpYWJsZXMsIGNvbnRleHQpO1xuXG4gICAgY29udGV4dC5kZWJ1ZyhgLi4uY2FsbGVkIHRoZSAnJHthbm9ueW1vdXNQcm9jZWR1cmVTdHJpbmd9JyBhbm9ueW1vdXMgcHJvY2VkdXJlLmApO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIkFub255bW91c1Byb2NlZHVyZVwiO1xuXG4gIHN0YXRpYyBmcm9tRm9yRWFjaExvb3BOb2RlKGZvckVhY2hMb29wTm9kZSwgY29udGV4dCkge1xuICAgIGNvbnN0IHsgQmxvY2ssIFBhcmFtZXRlcnMgfSA9IGRvbSxcbiAgICAgICAgICBzdHJpbmcgPSBzdHJpbmdGcm9tRm9yRWFjaExvb3BOb2RlKGZvckVhY2hMb29wTm9kZSwgY29udGV4dCksXG4gICAgICAgICAgcGFyYW1ldGVycyA9IFBhcmFtZXRlcnMuZnJvbUZvckVhY2hMb29wTm9kZShmb3JFYWNoTG9vcE5vZGUsIGNvbnRleHQpLFxuICAgICAgICAgIG5vbnNlbnNpY2FsID0gbm9uc2Vuc2ljYWxGcm9tRm9yRWFjaExvb3BOb2RlKGZvckVhY2hMb29wTm9kZSwgY29udGV4dCksXG4gICAgICAgICAgYmxvY2sgPSBCbG9jay5mcm9tRm9yRWFjaExvb3BOb2RlKGZvckVhY2hMb29wTm9kZSwgY29udGV4dCksXG4gICAgICAgICAgYW5vbnltb3VzUHJvY2VkdXJlRGVjbGFyYXRpb24gPSBuZXcgQW5vbnltb3VzUHJvY2VkdXJlKHN0cmluZywgcGFyYW1ldGVycywgbm9uc2Vuc2ljYWwsIGJsb2NrKTtcblxuICAgIHJldHVybiBhbm9ueW1vdXNQcm9jZWR1cmVEZWNsYXJhdGlvbjtcbiAgfVxufSk7XG5cbmZ1bmN0aW9uIHN0cmluZ0Zyb21Gb3JFYWNoTG9vcE5vZGUoZm9yRWFjaExvb3BOb2RlLCBjb250ZXh0KSB7XG4gIGNvbnN0IHBhcmFtZXRlcnNOb2RlID0gcGFyYW1ldGVyc05vZGVRdWVyeShmb3JFYWNoTG9vcE5vZGUpLFxuICAgICAgICBwYXJhbWV0ZXJzU3RyaW5nID0gY29udGV4dC5ub2RlQXNTdHJpbmcocGFyYW1ldGVyc05vZGUpLFxuICAgICAgICBzdHJpbmcgPSBgKCR7cGFyYW1ldGVyc1N0cmluZ30pIHsgLi4uIH1gO1xuXG4gIHJldHVybiBzdHJpbmc7XG59XG5cbmZ1bmN0aW9uIG5vbnNlbnNpY2FsRnJvbUZvckVhY2hMb29wTm9kZShmb3JFYWNoTG9vcE5vZGUsIGNvbnRleHQpIHtcbiAgY29uc3Qgbm9uc2Vuc2VOb2RlcyA9IG5vbnNlbnNlTm9kZXNRdWVyeShmb3JFYWNoTG9vcE5vZGUpLFxuICAgICAgICBub25zZW5zZU5vZGVzTGVuZ3RoID0gbm9uc2Vuc2VOb2Rlcy5sZW5ndGgsXG4gICAgICAgIG5vbnNlbnNpY2FsID0gKG5vbnNlbnNlTm9kZXNMZW5ndGggPiAwKTtcblxuICByZXR1cm4gbm9uc2Vuc2ljYWw7XG59XG4iXSwibmFtZXMiOlsibm9uc2Vuc2VOb2Rlc1F1ZXJ5Iiwibm9kZXNRdWVyeSIsInBhcmFtZXRlcnNOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJkb21Bc3NpZ25lZCIsIkFub255bW91c1Byb2NlZHVyZSIsInN0cmluZyIsInBhcmFtZXRlcnMiLCJub25zZW5zaWNhbCIsImJsb2NrIiwiZ2V0U3RyaW5nIiwiZ2V0UGFyYW1ldGVycyIsInBhcmFtdGVycyIsImlzTm9uc2Vuc2ljYWwiLCJnZXRCbG9jayIsImNhbGwiLCJ2YWx1ZXMiLCJjb250ZXh0IiwiYW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nIiwidHJhY2UiLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJtYXRjaFZhbHVlcyIsInZhcmlhYmxlcyIsInZhcmlhYmxlc0Zyb21WYWx1ZXNBbmRQYXJhbWV0ZXJzIiwiZXZhbHVhdGUiLCJkZWJ1ZyIsImZyb21Gb3JFYWNoTG9vcE5vZGUiLCJmb3JFYWNoTG9vcE5vZGUiLCJCbG9jayIsImRvbSIsIlBhcmFtZXRlcnMiLCJzdHJpbmdGcm9tRm9yRWFjaExvb3BOb2RlIiwibm9uc2Vuc2ljYWxGcm9tRm9yRWFjaExvb3BOb2RlIiwiYW5vbnltb3VzUHJvY2VkdXJlRGVjbGFyYXRpb24iLCJuYW1lIiwicGFyYW1ldGVyc05vZGUiLCJwYXJhbWV0ZXJzU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwibm9uc2Vuc2VOb2RlcyIsIm5vbnNlbnNlTm9kZXNMZW5ndGgiLCJsZW5ndGgiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVlBOzs7ZUFBQTs7OzJEQVZnQjtnRUFDTTtxQkFHZ0I7eUJBQ1c7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
164
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kb20vcHJvY2VkdXJlL2Fub255bW91cy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGRvbSBmcm9tIFwiLi4vLi4vZG9tXCI7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi8uLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgZG9tQXNzaWduZWQgfSBmcm9tIFwiLi4vLi4vZG9tXCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIG5vZGVzUXVlcnkgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyB2YXJpYWJsZXNGcm9tVmFsdWVzQW5kUGFyYW1ldGVycyB9IGZyb20gXCIuLi9wcm9jZWR1cmVcIjtcblxuY29uc3Qgbm9uc2Vuc2VOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9zb21lL2Fub255bW91c1Byb2NlZHVyZS9yZXR1cm5CbG9jay9ub25zZW5zZVwiKSxcbiAgICAgIHBhcmFtZXRlcnNOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvc29tZS9hbm9ueW1vdXNQcm9jZWR1cmUvcGFyYW1ldGVyc1wiKTtcblxuZXhwb3J0IGRlZmF1bHQgZG9tQXNzaWduZWQoY2xhc3MgQW5vbnltb3VzUHJvY2VkdXJlIHtcbiAgY29uc3RydWN0b3Ioc3RyaW5nLCBwYXJhbWV0ZXJzLCBub25zZW5zaWNhbCwgcmV0dXJuQmxvY2spIHtcbiAgICB0aGlzLnN0cmluZyA9IHN0cmluZztcbiAgICB0aGlzLnBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzO1xuICAgIHRoaXMubm9uc2Vuc2ljYWwgPSBub25zZW5zaWNhbDtcbiAgICB0aGlzLnJldHVybkJsb2NrID0gcmV0dXJuQmxvY2s7XG4gIH1cblxuICBnZXRTdHJpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RyaW5nO1xuICB9XG5cbiAgZ2V0UGFyYW1ldGVycygpIHtcbiAgICByZXR1cm4gdGhpcy5wYXJhbXRlcnM7XG4gIH1cblxuICBpc05vbnNlbnNpY2FsKCkge1xuICAgIHJldHVybiB0aGlzLm5vbnNlbnNpY2FsO1xuICB9XG5cbiAgZ2V0UmV0dXJuQmxvY2soKSB7XG4gICAgcmV0dXJuIHRoaXMucmV0dXJuQmxvY2s7XG4gIH1cblxuICBjYWxsKHZhbHVlcywgY29udGV4dCkge1xuICAgIGRlYnVnZ2VyXG5cbiAgICBjb25zdCBhbm9ueW1vdXNQcm9jZWR1cmVTdHJpbmcgPSB0aGlzLnN0cmluZzsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBDYWxsaW5nIHRoZSAnJHthbm9ueW1vdXNQcm9jZWR1cmVTdHJpbmd9JyBhbm9ueW1vdXMgcHJvY2VkdXJlLi4uYCk7XG5cbiAgICBpZiAodGhpcy5ub25zZW5zaWNhbCkge1xuICAgICAgY29uc3QgbWVzc2FnZSA9IGBUaGUgJyR7YW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nfScgYW5vbnltb3VzIHByb2NlZHVyZSBpcyBub25zZW5zaWNhbC5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgdGhpcy5wYXJhbWV0ZXJzLm1hdGNoVmFsdWVzKHZhbHVlcywgY29udGV4dCk7XG5cbiAgICBjb25zdCB2YXJpYWJsZXMgPSB2YXJpYWJsZXNGcm9tVmFsdWVzQW5kUGFyYW1ldGVycyh2YWx1ZXMsIHRoaXMucGFyYW1ldGVycywgY29udGV4dCk7XG5cbiAgICB0aGlzLnJldHVybkJsb2NrLmV2YWx1YXRlKHZhcmlhYmxlcywgY29udGV4dCk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5jYWxsZWQgdGhlICcke2Fub255bW91c1Byb2NlZHVyZVN0cmluZ30nIGFub255bW91cyBwcm9jZWR1cmUuYCk7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiQW5vbnltb3VzUHJvY2VkdXJlXCI7XG5cbiAgc3RhdGljIGZyb21Tb21lTm9kZShzb21lTm9kZSwgY29udGV4dCkge1xuICAgIGNvbnN0IHsgUmV0dXJuQmxvY2ssIFBhcmFtZXRlcnMgfSA9IGRvbSxcbiAgICAgICAgICBzdHJpbmcgPSBzdHJpbmdGcm9tU29tZU5vZGUoc29tZU5vZGUsIGNvbnRleHQpLFxuICAgICAgICAgIHBhcmFtZXRlcnMgPSBQYXJhbWV0ZXJzLmZyb21Tb21lTm9kZShzb21lTm9kZSwgY29udGV4dCksXG4gICAgICAgICAgbm9uc2Vuc2ljYWwgPSBub25zZW5zaWNhbEZyb21Tb21lTm9kZShzb21lTm9kZSwgY29udGV4dCksXG4gICAgICAgICAgcmV0dXJuQmxvY2sgPSBSZXR1cm5CbG9jay5mcm9tU29tZU5vZGUoc29tZU5vZGUsIGNvbnRleHQpLFxuICAgICAgICAgIGFub255bW91c1Byb2NlZHVyZURlY2xhcmF0aW9uID0gbmV3IEFub255bW91c1Byb2NlZHVyZShzdHJpbmcsIHBhcmFtZXRlcnMsIG5vbnNlbnNpY2FsLCByZXR1cm5CbG9jayk7XG5cbiAgICByZXR1cm4gYW5vbnltb3VzUHJvY2VkdXJlRGVjbGFyYXRpb247XG4gIH1cbn0pO1xuXG5mdW5jdGlvbiBzdHJpbmdGcm9tU29tZU5vZGUoc29tZU5vZGUsIGNvbnRleHQpIHtcbiAgY29uc3QgcGFyYW1ldGVyc05vZGUgPSBwYXJhbWV0ZXJzTm9kZVF1ZXJ5KHNvbWVOb2RlKSxcbiAgICAgICAgcGFyYW1ldGVyc1N0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKHBhcmFtZXRlcnNOb2RlKSxcbiAgICAgICAgc3RyaW5nID0gYCgke3BhcmFtZXRlcnNTdHJpbmd9KSB7IC4uLiB9YDtcblxuICByZXR1cm4gc3RyaW5nO1xufVxuXG5mdW5jdGlvbiBub25zZW5zaWNhbEZyb21Tb21lTm9kZShzb21lTm9kZSwgY29udGV4dCkge1xuICBjb25zdCBub25zZW5zZU5vZGVzID0gbm9uc2Vuc2VOb2Rlc1F1ZXJ5KHNvbWVOb2RlKSxcbiAgICAgICAgbm9uc2Vuc2VOb2Rlc0xlbmd0aCA9IG5vbnNlbnNlTm9kZXMubGVuZ3RoLFxuICAgICAgICBub25zZW5zaWNhbCA9IChub25zZW5zZU5vZGVzTGVuZ3RoID4gMCk7XG5cbiAgcmV0dXJuIG5vbnNlbnNpY2FsO1xufVxuIl0sIm5hbWVzIjpbIm5vbnNlbnNlTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJwYXJhbWV0ZXJzTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwiZG9tQXNzaWduZWQiLCJBbm9ueW1vdXNQcm9jZWR1cmUiLCJzdHJpbmciLCJwYXJhbWV0ZXJzIiwibm9uc2Vuc2ljYWwiLCJyZXR1cm5CbG9jayIsImdldFN0cmluZyIsImdldFBhcmFtZXRlcnMiLCJwYXJhbXRlcnMiLCJpc05vbnNlbnNpY2FsIiwiZ2V0UmV0dXJuQmxvY2siLCJjYWxsIiwidmFsdWVzIiwiY29udGV4dCIsImFub255bW91c1Byb2NlZHVyZVN0cmluZyIsInRyYWNlIiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwibWF0Y2hWYWx1ZXMiLCJ2YXJpYWJsZXMiLCJ2YXJpYWJsZXNGcm9tVmFsdWVzQW5kUGFyYW1ldGVycyIsImV2YWx1YXRlIiwiZGVidWciLCJmcm9tU29tZU5vZGUiLCJzb21lTm9kZSIsIlJldHVybkJsb2NrIiwiZG9tIiwiUGFyYW1ldGVycyIsInN0cmluZ0Zyb21Tb21lTm9kZSIsIm5vbnNlbnNpY2FsRnJvbVNvbWVOb2RlIiwiYW5vbnltb3VzUHJvY2VkdXJlRGVjbGFyYXRpb24iLCJuYW1lIiwicGFyYW1ldGVyc05vZGUiLCJwYXJhbWV0ZXJzU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwibm9uc2Vuc2VOb2RlcyIsIm5vbnNlbnNlTm9kZXNMZW5ndGgiLCJsZW5ndGgiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVlBOzs7ZUFBQTs7OzJEQVZnQjtnRUFDTTtxQkFHZ0I7eUJBQ1c7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWpELElB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
@@ -0,0 +1,162 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ var _dom = /*#__PURE__*/ _interop_require_wildcard(require("../dom"));
12
+ var _exception = /*#__PURE__*/ _interop_require_default(require("../exception"));
13
+ var _query = require("../utilities/query");
14
+ var _types = require("../types");
15
+ function _class_call_check(instance, Constructor) {
16
+ if (!(instance instanceof Constructor)) {
17
+ throw new TypeError("Cannot call a class as a function");
18
+ }
19
+ }
20
+ function _defineProperties(target, props) {
21
+ for(var i = 0; i < props.length; i++){
22
+ var descriptor = props[i];
23
+ descriptor.enumerable = descriptor.enumerable || false;
24
+ descriptor.configurable = true;
25
+ if ("value" in descriptor) descriptor.writable = true;
26
+ Object.defineProperty(target, descriptor.key, descriptor);
27
+ }
28
+ }
29
+ function _create_class(Constructor, protoProps, staticProps) {
30
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
31
+ if (staticProps) _defineProperties(Constructor, staticProps);
32
+ return Constructor;
33
+ }
34
+ function _define_property(obj, key, value) {
35
+ if (key in obj) {
36
+ Object.defineProperty(obj, key, {
37
+ value: value,
38
+ enumerable: true,
39
+ configurable: true,
40
+ writable: true
41
+ });
42
+ } else {
43
+ obj[key] = value;
44
+ }
45
+ return obj;
46
+ }
47
+ function _interop_require_default(obj) {
48
+ return obj && obj.__esModule ? obj : {
49
+ default: obj
50
+ };
51
+ }
52
+ function _getRequireWildcardCache(nodeInterop) {
53
+ if (typeof WeakMap !== "function") return null;
54
+ var cacheBabelInterop = new WeakMap();
55
+ var cacheNodeInterop = new WeakMap();
56
+ return (_getRequireWildcardCache = function(nodeInterop) {
57
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
58
+ })(nodeInterop);
59
+ }
60
+ function _interop_require_wildcard(obj, nodeInterop) {
61
+ if (!nodeInterop && obj && obj.__esModule) {
62
+ return obj;
63
+ }
64
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
65
+ return {
66
+ default: obj
67
+ };
68
+ }
69
+ var cache = _getRequireWildcardCache(nodeInterop);
70
+ if (cache && cache.has(obj)) {
71
+ return cache.get(obj);
72
+ }
73
+ var newObj = {
74
+ __proto__: null
75
+ };
76
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
77
+ for(var key in obj){
78
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
79
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
80
+ if (desc && (desc.get || desc.set)) {
81
+ Object.defineProperty(newObj, key, desc);
82
+ } else {
83
+ newObj[key] = obj[key];
84
+ }
85
+ }
86
+ }
87
+ newObj.default = obj;
88
+ if (cache) {
89
+ cache.set(obj, newObj);
90
+ }
91
+ return newObj;
92
+ }
93
+ var _Some;
94
+ var variableNodeQuery = (0, _query.nodeQuery)("/some/variable"), valueSomeNodeQuery = (0, _query.nodeQuery)("/value/some"), parametersNodeQuery = (0, _query.nodeQuery)("/some/anonymousProcedure/parameters");
95
+ var _default = (0, _dom.domAssigned)((_Some = /*#__PURE__*/ function() {
96
+ function Some(string, variable, anonymousProcedure) {
97
+ _class_call_check(this, Some);
98
+ this.string = string;
99
+ this.variable = variable;
100
+ this.anonymousProcedure = anonymousProcedure;
101
+ }
102
+ _create_class(Some, [
103
+ {
104
+ key: "getString",
105
+ value: function getString() {
106
+ return this.string;
107
+ }
108
+ },
109
+ {
110
+ key: "getVariable",
111
+ value: function getVariable() {
112
+ return this.variable;
113
+ }
114
+ },
115
+ {
116
+ key: "getAnonymousProcedure",
117
+ value: function getAnonymousProcedure() {
118
+ return this.anonymousProcedure;
119
+ }
120
+ },
121
+ {
122
+ key: "evaluate",
123
+ value: function evaluate(context) {
124
+ var _this = this;
125
+ debugger;
126
+ var someString = this.getString();
127
+ context.trace("Evaluating the '".concat(someString, "' some loop..."));
128
+ var value = this.variable.evaluate(context), valueType = value.getType();
129
+ if (valueType !== _types.NODES_TYPE) {
130
+ var valueString = value.asString(context), message = "The ".concat(valueString, " value's '").concat(valueType, "' type should be '").concat(_types.NODES_TYPE, "'."), exception = _exception.default.fromMessage(message);
131
+ throw exception;
132
+ }
133
+ var nodes = value.getNodes();
134
+ nodes.some(function(node) {
135
+ var Value = _dom.default.Value, Values = _dom.default.Values, value = Value.fromNode(node, context), values = Values.fromValue(value, context);
136
+ _this.anonymousProcedure.call(values, context);
137
+ });
138
+ context.trace("...evaluated the '".concat(someString, "' some loop."));
139
+ }
140
+ }
141
+ ], [
142
+ {
143
+ key: "fromValueNode",
144
+ value: function fromValueNode(valueNode, context) {
145
+ var some = null;
146
+ var valueSomeNode = valueSomeNodeQuery(valueNode);
147
+ if (valueSomeNode !== null) {
148
+ var Variable = _dom.default.Variable, AnonymousProcedure = _dom.default.AnonymousProcedure, someNode = valueSomeNode, string = stringFromSomeNode(someNode, context), variable = Variable.fromSomeNode(someNode, context), anonymousProcedure = AnonymousProcedure.fromSomeNode(someNode, context);
149
+ some = new Some(string, variable, anonymousProcedure);
150
+ }
151
+ return some;
152
+ }
153
+ }
154
+ ]);
155
+ return Some;
156
+ }(), _define_property(_Some, "name", "Some"), _Some));
157
+ function stringFromSomeNode(someNode, context) {
158
+ var variableNode = variableNodeQuery(someNode), parametersNode = parametersNodeQuery(someNode), variableString = context.nodeAsString(variableNode), parametersString = context.nodeAsString(parametersNode), string = "Some(".concat(variableString, ", (").concat(parametersString, ") { ... })");
159
+ return string;
160
+ }
161
+
162
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb20vc29tZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGRvbSBmcm9tIFwiLi4vZG9tXCI7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgTk9ERVNfVFlQRSB9IGZyb20gXCIuLi90eXBlc1wiO1xuaW1wb3J0IHsgZG9tQXNzaWduZWQgfSBmcm9tIFwiLi4vZG9tXCI7XG5cbmNvbnN0IHZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3NvbWUvdmFyaWFibGVcIiksXG4gICAgICB2YWx1ZVNvbWVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdmFsdWUvc29tZVwiKSxcbiAgICAgIHBhcmFtZXRlcnNOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvc29tZS9hbm9ueW1vdXNQcm9jZWR1cmUvcGFyYW1ldGVyc1wiKTtcblxuZXhwb3J0IGRlZmF1bHQgZG9tQXNzaWduZWQoY2xhc3MgU29tZSB7XG4gIGNvbnN0cnVjdG9yKHN0cmluZywgdmFyaWFibGUsIGFub255bW91c1Byb2NlZHVyZSkge1xuICAgIHRoaXMuc3RyaW5nID0gc3RyaW5nO1xuICAgIHRoaXMudmFyaWFibGUgPSB2YXJpYWJsZTtcbiAgICB0aGlzLmFub255bW91c1Byb2NlZHVyZSA9IGFub255bW91c1Byb2NlZHVyZTtcbiAgfVxuXG4gIGdldFN0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5zdHJpbmc7XG4gIH1cblxuICBnZXRWYXJpYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YXJpYWJsZTtcbiAgfVxuXG4gIGdldEFub255bW91c1Byb2NlZHVyZSgpIHtcbiAgICByZXR1cm4gdGhpcy5hbm9ueW1vdXNQcm9jZWR1cmU7XG4gIH1cblxuICBldmFsdWF0ZShjb250ZXh0KSB7XG4gICAgZGVidWdnZXJcblxuICAgIGNvbnN0IHNvbWVTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC50cmFjZShgRXZhbHVhdGluZyB0aGUgJyR7c29tZVN0cmluZ30nIHNvbWUgbG9vcC4uLmApO1xuXG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLnZhcmlhYmxlLmV2YWx1YXRlKGNvbnRleHQpLFxuICAgICAgICAgIHZhbHVlVHlwZSA9IHZhbHVlLmdldFR5cGUoKTtcblxuICAgIGlmICh2YWx1ZVR5cGUgIT09IE5PREVTX1RZUEUpIHtcbiAgICAgIGNvbnN0IHZhbHVlU3RyaW5nID0gdmFsdWUuYXNTdHJpbmcoY29udGV4dCksXG4gICAgICAgICAgICBtZXNzYWdlID0gYFRoZSAke3ZhbHVlU3RyaW5nfSB2YWx1ZSdzICcke3ZhbHVlVHlwZX0nIHR5cGUgc2hvdWxkIGJlICcke05PREVTX1RZUEV9Jy5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgY29uc3Qgbm9kZXMgPSB2YWx1ZS5nZXROb2RlcygpO1xuXG4gICAgbm9kZXMuc29tZSgobm9kZSkgPT4ge1xuICAgICAgY29uc3QgeyBWYWx1ZSwgVmFsdWVzIH0gPSBkb20sXG4gICAgICAgICAgICB2YWx1ZSA9IFZhbHVlLmZyb21Ob2RlKG5vZGUsIGNvbnRleHQpLFxuICAgICAgICAgICAgdmFsdWVzID0gVmFsdWVzLmZyb21WYWx1ZSh2YWx1ZSwgY29udGV4dCk7XG5cbiAgICAgIHRoaXMuYW5vbnltb3VzUHJvY2VkdXJlLmNhbGwodmFsdWVzLCBjb250ZXh0KTtcbiAgICB9KTtcblxuICAgIGNvbnRleHQudHJhY2UoYC4uLmV2YWx1YXRlZCB0aGUgJyR7c29tZVN0cmluZ30nIHNvbWUgbG9vcC5gKTtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJTb21lXCI7XG5cbiAgc3RhdGljIGZyb21WYWx1ZU5vZGUodmFsdWVOb2RlLCBjb250ZXh0KSB7XG4gICAgbGV0IHNvbWUgPSBudWxsO1xuXG4gICAgY29uc3QgdmFsdWVTb21lTm9kZSA9IHZhbHVlU29tZU5vZGVRdWVyeSh2YWx1ZU5vZGUpO1xuXG4gICAgaWYgKHZhbHVlU29tZU5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHsgVmFyaWFibGUsIEFub255bW91c1Byb2NlZHVyZSB9ID0gZG9tLFxuICAgICAgICAgICAgc29tZU5vZGUgPSB2YWx1ZVNvbWVOb2RlLCAvLy9cbiAgICAgICAgICAgIHN0cmluZyA9IHN0cmluZ0Zyb21Tb21lTm9kZShzb21lTm9kZSwgY29udGV4dCksXG4gICAgICAgICAgICB2YXJpYWJsZSA9IFZhcmlhYmxlLmZyb21Tb21lTm9kZShzb21lTm9kZSwgY29udGV4dCksXG4gICAgICAgICAgICBhbm9ueW1vdXNQcm9jZWR1cmUgPSBBbm9ueW1vdXNQcm9jZWR1cmUuZnJvbVNvbWVOb2RlKHNvbWVOb2RlLCBjb250ZXh0KTtcblxuICAgICAgc29tZSA9IG5ldyBTb21lKHN0cmluZywgdmFyaWFibGUsIGFub255bW91c1Byb2NlZHVyZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHNvbWU7XG4gIH1cbn0pO1xuXG5mdW5jdGlvbiBzdHJpbmdGcm9tU29tZU5vZGUoc29tZU5vZGUsIGNvbnRleHQpIHtcbiAgY29uc3QgdmFyaWFibGVOb2RlID0gdmFyaWFibGVOb2RlUXVlcnkoc29tZU5vZGUpLFxuICAgICAgICBwYXJhbWV0ZXJzTm9kZSA9IHBhcmFtZXRlcnNOb2RlUXVlcnkoc29tZU5vZGUpLFxuICAgICAgICB2YXJpYWJsZVN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKHZhcmlhYmxlTm9kZSksXG4gICAgICAgIHBhcmFtZXRlcnNTdHJpbmcgPSBjb250ZXh0Lm5vZGVBc1N0cmluZyhwYXJhbWV0ZXJzTm9kZSksXG4gICAgICAgIHN0cmluZyA9IGBTb21lKCR7dmFyaWFibGVTdHJpbmd9LCAoJHtwYXJhbWV0ZXJzU3RyaW5nfSkgeyAuLi4gfSlgO1xuXG4gIHJldHVybiBzdHJpbmc7XG59Il0sIm5hbWVzIjpbInZhcmlhYmxlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidmFsdWVTb21lTm9kZVF1ZXJ5IiwicGFyYW1ldGVyc05vZGVRdWVyeSIsImRvbUFzc2lnbmVkIiwiU29tZSIsInN0cmluZyIsInZhcmlhYmxlIiwiYW5vbnltb3VzUHJvY2VkdXJlIiwiZ2V0U3RyaW5nIiwiZ2V0VmFyaWFibGUiLCJnZXRBbm9ueW1vdXNQcm9jZWR1cmUiLCJldmFsdWF0ZSIsImNvbnRleHQiLCJzb21lU3RyaW5nIiwidHJhY2UiLCJ2YWx1ZSIsInZhbHVlVHlwZSIsImdldFR5cGUiLCJOT0RFU19UWVBFIiwidmFsdWVTdHJpbmciLCJhc1N0cmluZyIsIm1lc3NhZ2UiLCJleGNlcHRpb24iLCJFeGNlcHRpb24iLCJmcm9tTWVzc2FnZSIsIm5vZGVzIiwiZ2V0Tm9kZXMiLCJzb21lIiwibm9kZSIsIlZhbHVlIiwiZG9tIiwiVmFsdWVzIiwiZnJvbU5vZGUiLCJ2YWx1ZXMiLCJmcm9tVmFsdWUiLCJjYWxsIiwiZnJvbVZhbHVlTm9kZSIsInZhbHVlTm9kZSIsInZhbHVlU29tZU5vZGUiLCJWYXJpYWJsZSIsIkFub255bW91c1Byb2NlZHVyZSIsInNvbWVOb2RlIiwic3RyaW5nRnJvbVNvbWVOb2RlIiwiZnJvbVNvbWVOb2RlIiwibmFtZSIsInZhcmlhYmxlTm9kZSIsInBhcmFtZXRlcnNOb2RlIiwidmFyaWFibGVTdHJpbmciLCJub2RlQXNTdHJpbmciLCJwYXJhbWV0ZXJzU3RyaW5nIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFhQTs7O2VBQUE7OzsyREFYZ0I7Z0VBQ007cUJBRUk7cUJBQ0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRzNCLElBQU1BLG9CQUFvQkMsSUFBQUEsZ0JBQVMsRUFBQyxtQkFDOUJD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